Reconcile ontological types of same-named SAREF entities.
To aid in identifying modelling discrepancies, here is the list of same-named SAREF entities. The specific issue raised is user confusion as to which type of ontological entity to choose between, say either DatatypeProperty or ObjectProperty. This is especially problematic for generated anonymous classes. Refer to the first set of 11 listed below. [subClassOf relations should be indicated in this list.]
Although OWL 2 allows the use of the same IRI for certain entities but not others (see https://www.w3.org/2007/OWL/wiki/Punning), we should disallow the use of this Punning feature. An inference rule or SPARQL pipeline query can be used to detect the use of punning.
Recall that DatatypeProperty relates individuals to literal data as a range, and ObjectProperty relates individuals to other individuals also by range.
Side note: Should we place an entity into SAREF core if there are more than three defined instances with all the same entity type? NO; examine the various definitions of ObjectProperty contains.
- {Frequency saref4envi owl:Class} No Comment.
- {Frequency saref4envi owl:NamedIndividual} "An individual representing the property frequency."
- {frequency saref4ehaw owl:DatatypeProperty} Not a problem! "The frequency is the number of instructions an embedded processor - within a health device - can perform per second (MIPS)."
- {Height saref4auto owl:Class} "A Property of interest for the automotive domain."
- {Height saref4envi owl:NamedIndividual} "An individual representing the property height."
- {height saref4bldg owl:ObjectProperty} Not a problem! "Height of the vibration isolator before tha application of load. Usually measured in millimeters (mm)."
- {Humidity saref4watr owl:NamedIndividual} "Property of the environment indicating the humidity."
- {Humidity core owl:Class} "A saref:Property related to some measurements that are characterized by a certain value that is measured in a humidity unit"
- {PublicTransport saref4auto owl:NamedIndividual} "A type of vehicle role"
- {PublicTransport saref4auto owl:Class} "A type of vehicle. Example of public transport is a bus or a tram"
- {Temperature core owl:Class} "A saref:Property related to some measurements that are characterized by a certain value that is measured in a temperature unit (degree_Celsius, degree_Fahrenheit, or degree_kelvin)"
- {Temperature saref4watr owl:NamedIndividual} "Property of the water indicating its temperature."
- {Temperature saref4wear owl:NamedIndividual} "The temperature of the environment."
- {Unknown saref4auto owl:Class} "A type of state for Platoon or for a Vehicle in a Platoon"
- {Unknown saref4auto owl:NamedIndividual} "A type of platoon role"
- {hasCommand saref4wear owl:DatatypeProperty} "A relationship defining a command triggered by an actuating function."
- {hasCommand core owl:ObjectProperty} "A relationship between a function and a command"
- {hasHeight saref4auto owl:ObjectProperty} "A relation to express the height of an entity, e.g., a vehicle or an entity in the vehicle environment"
- {hasHeight saref4wear owl:DatatypeProperty} "A relationship defining the height dimension of a wearable."
- {hasIdentifier saref4auto owl:ObjectProperty} "A relation between an entity and its identifier (s4auto:Identifier) which is used to identify 1) a vehicle (station) during data exchange with other devices/stations 2) a platoon during data exchange with other devices/stations, 3) a parking spot within a parking area during data exchange with other devices/stations. In all cases, this identifier may be a pseudonym. It may change over space and/or over time."
- {hasIdentifier saref4envi owl:DatatypeProperty} "A relationship providing the identifier of an entity (e.g., digital representation)"
- {hasIdentifier saref4inma owl:ObjectProperty} "A relationship determining the GTIN-12 identifier"
- {hasLength saref4wear owl:DatatypeProperty} "A relationship defining the length dimension of a wearable."
- {hasLength saref4auto owl:ObjectProperty} "A relation to express the length of an entity, e.g., a vehicle or an entity in the vehicle environment or a platoon (Length of the platoon is the sum of all vehicles' length + inter-vehicle distance)"
- {hasWidth saref4wear owl:DatatypeProperty} "A relationship defining the width dimention of a wearable."
- {hasWidth saref4auto owl:ObjectProperty} "A relation to express the width of an entity, e.g., a vehicle or an entity in the vehicle environment"
- {Actuator core owl:Class}
- {Actuator saref4envi owl:Class}
- {Actuator saref4bldg owl:Class}
- {Agriculture saref4auto owl:NamedIndividual}
- {Agriculture saref4watr owl:NamedIndividual}
- {BatteryRemainingTime saref4watr owl:NamedIndividual}
- {BatteryRemainingTime saref4wear owl:NamedIndividual}
- {Building saref4agri owl:Class}
- {Building saref4bldg owl:Class}
- {BuildingSpace saref4bldg owl:Class}
- {BuildingSpace saref4agri owl:Class}
- {CommunicationProtocol saref4ehaw owl:Class}
- {CommunicationProtocol saref4envi owl:Class}
- {Device saref4envi owl:Class}
- {Device saref4ener owl:Class}
- {Device core owl:Class}
- {Emergency saref4ehaw owl:NamedIndividual}
- {Emergency saref4ener owl:NamedIndividual}
- {Emergency saref4auto owl:NamedIndividual}
- {Energy core owl:Class}
- {Energy saref4ener owl:Class}
- {EnvironmentalProperty saref4wear owl:Class}
- {EnvironmentalProperty saref4watr owl:Class}
- {ID saref4agri owl:Class}
- {ID saref4inma owl:Class}
- {Intake saref4watr owl:Class}
- {Intake saref4agri owl:Class}
- {Interface saref4wear owl:Class}
- {Interface saref4ehaw owl:Class}
- {LengthUnit saref4auto owl:Class}
- {LengthUnit saref4envi owl:Class}
- {Light saref4envi owl:Class}
- {Light core owl:Class}
- {Measurement saref4inma owl:Class}
- {Measurement core owl:Class}
- {PhysicalObject saref4envi owl:Class}
- {PhysicalObject saref4bldg owl:Class}
- {Power core owl:Class}
- {Power saref4ener owl:Class}
- {Precipitation saref4agri owl:NamedIndividual}
- {Precipitation saref4watr owl:NamedIndividual}
- {Pump saref4watr owl:Class}
- {Pump saref4bldg owl:Class}
- {Running saref4ener owl:NamedIndividual}
- {Running saref4ehaw owl:NamedIndividual}
- {Safety core owl:NamedIndividual}
- {Safety saref4ehaw owl:NamedIndividual}
- {Sensor saref4bldg owl:Class}
- {Sensor core owl:Class}
- {Size saref4auto owl:Class}
- {Size saref4inma owl:Class}
- {State core owl:Class}
- {State saref4ener owl:Class}
- {State saref4auto owl:Class}
- {System saref4envi owl:Class}
- {System saref4syst owl:Class}
- {Tank saref4bldg owl:Class}
- {Tank saref4watr owl:Class}
- {UUID saref4auto owl:Class}
- {UUID saref4inma owl:Class}
- {User saref4ehaw owl:Class}
- {User saref4wear owl:Class}
- {Valve saref4watr owl:Class}
- {Valve saref4bldg owl:Class}
- {Water saref4watr owl:Class}
- {Water core owl:Class}
- {contains saref4bldg owl:ObjectProperty} "A relation between a physical space and the objects located in such space."
- {contains saref4agri owl:ObjectProperty} "contains"
- {contains saref4ehaw owl:ObjectProperty} "A Body Area Network or BAN contains one or multiple health devices"
- {contains saref4envi owl:ObjectProperty} "A relation between a physical object and the physical objects that can be contained in it."
- {controlsFeature saref4wear owl:ObjectProperty}
- {controlsFeature saref4watr owl:ObjectProperty}
- {featureIsControlledByDevice saref4wear owl:ObjectProperty}
- {featureIsControlledByDevice saref4watr owl:ObjectProperty}
- {featureIsMeasuredByDevice saref4watr owl:ObjectProperty}
- {featureIsMeasuredByDevice saref4wear owl:ObjectProperty}
- {hasCreationDate saref4envi owl:DatatypeProperty}
- {hasCreationDate saref4city owl:DatatypeProperty}
- {hasIDValue saref4auto owl:DatatypeProperty}
- {hasIDValue saref4inma owl:DatatypeProperty}
- {hasInterface saref4ehaw owl:ObjectProperty}
- {hasInterface saref4wear owl:ObjectProperty}
- {hasFunction core owl:ObjectProperty}
- {hasFunction saref4ener owl:ObjectProperty}
- {hasMeasurement core owl:ObjectProperty}
- {hasMeasurement saref4ehaw owl:ObjectProperty}
- {hasMember saref4agri owl:ObjectProperty}
- {hasMember saref4auto owl:ObjectProperty}
- {hasSize saref4inma owl:ObjectProperty}
- {hasSize saref4auto owl:ObjectProperty}
- {hasState core owl:ObjectProperty}
- {hasState saref4auto owl:ObjectProperty}
- {hasVersion saref4envi owl:DatatypeProperty}
- {hasVersion saref4watr owl:DatatypeProperty}
- {hasVersion saref4inma owl:DatatypeProperty}
- {isContainedIn saref4agri owl:ObjectProperty}
- {isContainedIn saref4bldg owl:ObjectProperty}
- {isContainedIn saref4envi owl:ObjectProperty}
- {isLocatedIn saref4wear owl:ObjectProperty}
- {isLocatedIn saref4agri owl:ObjectProperty}
- {isMemberOf saref4auto owl:ObjectProperty}
- {isMemberOf saref4agri owl:ObjectProperty}
- {measuresFeature saref4wear owl:ObjectProperty}
- {measuresFeature saref4watr owl:ObjectProperty}
- {powerSource saref4ener owl:DatatypeProperty}
- {powerSource saref4bldg owl:DatatypeProperty}