Hi @siddharthdedhia11 thanks for your interest in neo4j and neosemantics
You can implement custom reasoning or inferencing behaviors that work on specific models, of course. You can do that with custom stored procedures that get triggered explicitly or using event handlers (triggers in APOC).
What's interesting and powerful about general purpose inferencing/reasoning based on ontologies is that you can drive its behaviour by modifying the ontology (without having to recompile or redeploy code). But these require some sort of explicit definition of the expected behavior and that is exactly what the ontology provides.
What's the rationale behind your reluctance to use ontologies? Ontologies can work on non-RDF data and also they don't need to be necessarily complex OWL ones you can get quite interesting inferences with very simple ontologies (taxonomies). I'd suggest you have a look at this article for ideas. It runs inferenceing on non-RDF data and uses for that a very simple ontology.
Hope this helps.