Search code examples
owlpellethermitopenlink-virtuoso

What flavors of reasoning are supported in VOS?


What kind of OWL profiles are supported in VOS DL, EL, QL ,RL? Is is possible to use or integrate standard reasoners? (Hermit, Pellets, etc.)


Solution

  • Virtuoso has its own built-in Inference & Reasoning capabilities. That said, if absolutely necessary, you can integrate 3rd party reasoners via a custom development efforts using the Server Extension API which allows integrated using a variety of runtime environments supported by Virtuoso (e.g., Java, Python, PHP, .NET, Ruby, Mono, etc.) or directly using 'C'.

    Virtuoso Functionality

    Virtuoso Open Source Edition supports built-in Reasoning and Inference. By that I mean it automatically applies said functionality for the following relationship types:

    • owl:sameAs
    • owl:equivalentProperty
    • owl:equivalentClass
    • owl:inverseOf
    • owl:InverseFunctionalProperty
    • rdfs:subPropertyOf
    • rdfs:subClassOf

    All of the above are enabled via pragma and rules mapped to a named graph.

    The commercial editions of Virtuoso go further by supporting Custom Inference Rules, courtesy of SPARQL as the Rules Language -- facilitated by terms from the SPIN Ontology.

    You would use Custom Inference rules to implement rules based on other reasoning profiles described by terms from OWL. Basically, you are only limited by imagination since SPARQL offers functionality delivered by Rules Languages of yore, e.g., Datalog, etc.

    All of this functionality is native to Virtuoso and scales massively.

    Related