Re: RDF validity question

Hi. A different perspective - maybe this is simpler using a different 
ontological model? E.g.

ex:76329
     rdf:type ont:ValveActuator ;
     ex:hasValve ex:34543 ; # myValve
     ex:hasActuator ex:84128 ;   # myValveActuator
     meta:effectiveDate "2022-08-24T10:42:00Z"^^xsd:dateTime .

rdl:Valve, rdl:Actuator rdfs:subClassOf rdl:Part .
rdl:Part rdfs:subClassOf rdl:Artefact .

This is based on interpreting Valves, Actuators, and ValveActuators as 
separate parts. Though from what I remember, ValveActuators are a type 
of actuators rather than a separate part connecting valves to actuators, 
so this could be a more consistent representation of that:

ex:34543 a rdl:Valve ;
   ex:hasActuator ex:84128 .
ex:84128 a rdl:Actuator ;
   ex:isActuatorForValve ex:34543 .

Where ex:hasActuator and ex:isActuatorForValve are subproperties of 
ex:hasPart with domain/range Valve to Actuator and vice-versa respectively.

Regards,
Harsh


On 26/08/2022 07:55, Pierre-Antoine Champin wrote:
> 
> On 25/08/2022 23:31, Mark Wallace wrote:
>>
>> No. In short,  ranges and domains are for stating things about 
>> properties (Tbox/schema) and not about instances of classes.
>>
>> If you want to reify the predicate, you could do so using:
>>
>>  1. rdf:Statement in RDF
>>  2. owl:Axiom in OWL2,
>>  3. define your owl owl:Class that will represent the relationship.
>>     E.g. my:HasPartRelation a owl:Class, with possible subclass
>>     HasActuatorRelation or some such.
>>
> +1 to what Mark wrote.
> 
> A possible 4th alternative is to use RDF-star [1], although it is not 
> yet an official standard, and its inter-relation with OWL are not yet 
> specified.
> 
> Your example in Turtle-star would look like that:
> 
>    ex:34543 ont:valveHasActuator ex:84128 {|
>      meta:effectiveDate "2022-08-24T10:42:00Z"^^xsd:dateTime
>    |}.
> 
> [1] https://www.w3.org/2021/12/rdf-star.html
> 
>> What is it you want your date/time to indicate?
>>
>> Very respectfully,
>>
>> Mark
>>
>> *From:* hans.teijgeler@quicknet.nl <hans.teijgeler@quicknet.nl>
>> *Sent:* Thursday, August 25, 2022 2:27 PM
>> *To:* semantic-web@w3.org
>> *Subject:* RDF validity question
>>
>> Hi,
>>
>> I am trying to reify predicates in a different way, and I need to know 
>> whether this is valid RDF.
>>
>> Assume I define an rdf:Property:
>>
>> ont:hasPart
>>
>> rdf:type owl:ObjectProperty ;
>>
>> rdfs:domain rdl:Artefact ;
>>
>>     rdfs:range rdl:Artefact .
>>
>> ont:valveHasActuator
>>
>>     rdf:type owl:ObjectProperty ;
>>
>> rdfs:subPropertyOf ont:hasPart ;
>>
>> rdfs:domain rdl:Valve ;
>>
>>     rdfs:range rdl:ValveActuator .
>>
>> Then I have project information that tells that individual valve 
>> actuator 84128 is a part of individual valve 34543, effective that 
>> dateTime.
>>
>> ex:76329
>>
>> rdf:type ont:valveHasActuator ;
>>
>> rdfs:domain ex:34543 ; # myValve
>>
>> rdfs:range ex:84128 ;   # myValveActuator
>>
>> meta:effectiveDate "2022-08-24T10:42:00Z"^^xsd:dateTime .
>>
>> Is this semantically and syntactically correct RDF? (it passed the 
>> syntactic test).
>>
>> I hope to hear from you!
>>
>> (sorry Guus, I need the answer asap)
>>

-- 
---
Harshvardhan J. Pandit, Ph.D
Research Fellow
ADAPT Centre, Trinity College Dublin
https://harshp.com/

Received on Friday, 26 August 2022 08:02:03 UTC