Does dotNetRDF's RDFS Reasoner support multiple Superclass Type Inference?

80 views Asked by At

i observed that when using the StaticRDFSReasoner or just the RDFSReasoner and if i have a Schema like this(TURTLE Notation):

 ex:A a rdfs:Class;
       
      rdfs:subClassOf ex:B, ex:C . 

And data like this with an Instance 'a' of class A:

ex:a a ex:A .

Then i only get one inferred Triple :

ex:a a ex:B . 

But since A is supposed to be the approximation of Intersection of class B and class C i should also get the following Triple inferred :

ex:a a ex:C . 

because 'a' should be a member of both Class B AND Class C.

I looked at the implementation of the Reasoner here,but still couldn't figure it out why it doesn't work:

https://github.com/dotnetrdf/dotnetrdf/blob/master/Libraries/dotNetRDF/Query/Inference/RDFSReasoner.cs

Maybe someone here can help me why this isn't working. If i switch order of B and C it gets inferred, that 'a' is a member of Class C.

0

There are 0 answers