I forgot to mention that I also have a ObjectProperty definition for 
'proposedSchema' 


    <owl:ObjectProperty rdf:about="&v1;proposedScheme">
        <rdfs:domain rdf:resource="&v1;PotentialCustomer"/>
        <rdfs:range rdf:resource="&v1;Scheme"/>
    </owl:ObjectProperty>

thanks,
Sourajit


________________________________
From: sourajit basak <[email protected]>
To: "[email protected]" <[email protected]>
Sent: Thursday, 18 August 2011 6:44 PM
Subject: basic inference capabilities in Jena

Suppose I have two class definition like -


<owl:Class rdf:about="&v1;Customer">
    <!-- property restrictions -->

 </owl:Class>

 <owl:Class rdf:about="&v1;PotentialCustomer">
        <rdfs:subClassOf rdf:resource="&v1;Customer"/>
        <rdfs:subClassOf>
            <owl:Restriction>
                <owl:onProperty rdf:resource="&v1;proposedScheme"/>
                <owl:allValuesFrom rdf:resource="&v1;Scheme"/>
            </owl:Restriction>
        </rdfs:subClassOf>
  </owl:Class>

At runtime, I create an instance of Customer and explicitly assert the type. 
However, for PotentialCustomer, I don't explicitly assert a type but only set 
the 'proposedSchema' property. If I query for PotentialCustomers, will Jena 
list correctly. This inferring of triples is a feature handled by reasoners but 
I am trying to avoid using reasoners when my system is online.

thanks,
Sourajit

Reply via email to