Property assertion "on a class"

I’m trying to create a property assertion “on a class” in such a way that a reasoner could infer the property to be had by all of its members.

I’m try to follow a StackOverflow note at

I have the following in an .n3 file:

carnot:Event
  rdf:type rdfs:Class ;
  rdf:type sh:NodeShape ;
  rdfs:label "Event" ;
  rdfs:subClassOf (schema:startDate value "1800-01-01T00:00:00+05:30"^^xsd:dateTime) ;
  rdfs:subClassOf schema:Event .

When I try to load the .n4 file, I get the following error

Expected ':', found ' ' [line 5]

Is this not supported in Stardog?
thanks
phil

Protege uses the Manchester syntax here but you will need to use the Turtle serialization for Stardog. If you look further down the answer, you will see an example of this:

:C      a                owl:Class ;
        rdfs:subClassOf  [ a               owl:Restriction ;
                           owl:hasValue    :v ;
                           owl:onProperty  :p
                         ] .

Try this syntax.

Jess

That worked.
Thanks again.
phil

Actually, it worked syntactically, i.r.,

prefix carnot: <http://Carnot.org/> .

carnot:Event a owl:Class ;
rdfs:subClassOf  [ a  owl:Restriction ;
							     owl:hasValue    0 ;
							     owl:onProperty  carnot:setStartDate
							   ] .

But it didn’t the value to members of Pairing, which is a subClass of Event.
phil

Didn't what? "Add"? How did you check this? Sample data + query or the general procedure would be helpful indeed.

This topic was automatically closed 14 days after the last reply. New replies are no longer allowed.