0

I'm trying to understand the following comma-separated object (source: a biomedical ontology), whose second entry is a bnode. I don't understand what the semicolons are doing inside the bnode.

:Conversion rdf:type owl:Class ;
        rdfs:subClassOf :Interaction ,
                        [ rdf:type owl:Restriction ;
                          owl:onProperty :participant ;
                          owl:allValuesFrom :PhysicalEntity
                        ] ;
mkk
  • 879
  • 6
  • 19
  • it's Turtle syntax and it means the subject is the blank node, i.e. the `[ ]` - it's an OWL class expression in particular a property restriction which simply means "the values of the `:participant` property are always a `:PhysicalEntity`" – UninformedUser Sep 24 '20 at 04:49
  • Thanks @UninformedUser! I have a somewhat-related question at https://stackoverflow.com/q/64039293/1798351. – mkk Sep 24 '20 at 05:41
  • More in general, commas separate triples that have the same subject and predicate and different objects, while semicolons separate triples with the same subject and different predicates and objects. – Ignazio Sep 25 '20 at 02:03

1 Answers1

0

Expanding on the comments provided above, the comma-separated list:

:Interaction ,
   [ rdf:type owl:Restriction ;
   owl:onProperty :participant ;
   owl:allValuesFrom :PhysicalEntity
   ] ;

defines two objects:

  1. the subset relation to :Interaction
  2. the owl:Restriction corresponding to the following blank node predicate list:
[ rdf:type owl:Restriction ;
    owl:onProperty :participant ;
    owl:allValuesFrom :PhysicalEntity
    ] ;

The predicate list above defines an owl property restriction, an owl:Class which is always defined anonymously.

The three elements in this list correspond to the three pieces of information that specify a property restriction:

  1. type declaration: owl:Restriction
  2. property being constrained: :participant
  3. constraint (in this case a value constraint): owl:allValuesFrom :PhysicalEntity
mkk
  • 879
  • 6
  • 19