OIMs - Object Information Models

What is an Object Information Model (OIM)?The Ontology for OIMs is in fact the Ontology for Reference Class Ontologies. It adds to the Taxonomy of Reference Data (RDL) the interrelations between the classes defined in that RDL. An Object Information Model (OIM) represents the kinds of lifecycle information of the members of an OWL Class. That Class shall play a role in the template class, i.e. shall be the (rdf:)object of at least one of the (rdf:)Properties of that template. NOTE That OWL Class is meant to be any owl:Class representing a Part 2 entity data type, a part 4 subClassOf it, or a user-defined subClassOf it. The reason why we call it Object Information Model and not the commonly used term Product Information Model is that we can also define them for the Activity Class and all the subclasses thereof. OIMs are the result of consultations and consensus between domain experts. Since such consultations will be an ongoing activity, the OWL ontology for object information models will grow over time. Mapping data in any system to the format defined in this part of ISO 15926 can be done upfront and is a deterministic activity, in case the applicable specialized template is already listed in the applicable OIM. If not yet, the user can add that specialized template to that OIM for the short term, and propose a normative addition to that OIM for the long term. In principle an OIM is all-inclusive and infinitely large, in practice its contents will be determined by business needs. All OIMs are listed in the normative OWL Ontology for Object Information Models. The normative version of the listing of this schema will be available from the Internet. The OWL Ontology for Templates and the Ontology for Reference Data are imported in the OWL Ontology for Object Information Models. This means that all known generic classes and templates are available as if they were defined in this OIM ontology. The OIM for an object does not include the OIM for its components. These shall be defined separately. Example of an OIM
Figure 1 - OIM (partial) of a centrifugal pump Part of the OIM of a centrifugal pump can also be shown as follows:
Figure 2 - Specialization of Classes and their OIMs Templates are n-ary relationships between two or more objects. These objects are referenced by means of rdf:Properties. Those objects that we wish to maintain an OIM for must get a set of inverse Properties. These inverse Properties are dynamically collected by the software and presented as the OIM at that time. For example: the instances of PUMP in Figure 2 participate in instances of template class ST-PUMP-3153-012 as 'whole'. The inverse Property of this is shown as 'isWholeIn': <owl:ObjectProperty rdf:ID="isWholeIn"> <owl:inverseOf rdf:resource="#whole"/> </owl:ObjectProperty> These inverse properties are the placeholder of cardinalities. The three examples shown in Figure 2 define that:
SpecializationAs can be seen in Figure 2 the CENTRIFUGAL PUMP Class is a subClassOf PUMP Class. It inherits the Properties of that PUMP Class. So the CentrifugalPump Class inherits the isPossessorIn and isWholeIn Properties from the PUMP Class (obviously there are many more!). Via the template class ST-PUMP-3401-023 it can be inferred that it has a NOMINAL VOLUME CAPACITY. The situation with the number of bearings is such that via inheritance from PUMP we know that there are 2 - 6 bearings, but in this case we have also specialized the template to indicate that for CENTRIFUGAL PUMP the number of bearings is further constrained to 2 - 3. OntologyThe Ontology for Object Information Models imports the Ontology for Data Model and Taxonomy for Reference Data that defines the Class hierarchy. It adds to that the specialized templates in which these imported Classes participate. In cases where an organization needs an extension of the above ontologies (click on the ovals to find more information) :
Figure 3 - Private extensions of ontologies As stated before, the pick list of an OIM is dynamically put together by software. These pick lists are used to configure a Document Type. ExampleElectric motorELECTRIC MOTOR is an instance of ClassOfInanimatePhysicalObject that has templates for the following information: allowable starting voltage percentage breakdown torque cold locked rotor time hot locked rotor time locked rotor torque number of allowable consecutive cold starts number of allowable consecutive hot starts power factor at 1/1 load power factor at 3/4 load rated current rated output power rated torque rated voltage starting current at 0.8 un starting current at 1.0 un starting power factor time constant at nominal voltage upper limit starting current multiplier Induction motorINDUCTION MOTOR is a ClassOfInanimatePhysicalObject that is a subClassOf above class ELECTRIC MOTOR, and it adds templates for the information below to those applicable for that ELECTRIC MOTOR class: allowable starting voltage drop factor asynchronous speed asynchronous speed at 1/1 load breakdown torque multiplier efficiency inertia locked rotor torque multiplier lower limit rated efficiency at 1/1 load lower limit rated output at duty type s1 lower limit rated speed at 1/1 load lower limit rated torque lower limit starting time number of starts per hour percentage power factor power factor at 1/2 load rated efficiency rated efficiency at 1/1 load rated efficiency at 1/2 load rated efficiency at 3/4 load rated frequency rated output at duty type s1 rated output shaft power rated power rated rotational speed rated speed at 1/1 load ratio rotational inertia rotational inertia at rated speed sound pressure level at nominal load sound pressure level, sinus load speed/torque curve standard rated current starting current starting current multiplier starting time at 80% voltage starting time at 80% voltage with driven equipment starting time at nominal voltage starting time at nominal voltage with driven equipment temperature rise temperature rise, windings thermal time constant eexe motor time constant at 0.8 nominal voltage time constant multiplier upper limit breakdown torque multiplier upper limit locked rotor torque multiplier upper limit number of starts per hour upper limit permissible starting current upper limit sound power level at nominal load upper limit temperature rise upper limit time constant multiplier vibration detection method voltage change factor ListingBelow a example code listing for the first three Properties of the ELECTRIC MOTOR class is given: |
|
<rdf:RDF
xml:base="http://oim.rdlfacade.org/data" xmlns="http://oim.rdlfacade.org/data#" xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#" xmlns:xsd="http://www.w3.org/2001/XMLSchema#" xmlns:rdfs="http://www.w3.org/2000/01/rdf-schema#" xmlns:owl="http://www.w3.org/2002/07/owl#" xmlns:part2="http://dm.rdlfacade.org/data#" xmlns:part4="http://rdl.rdlfacade.org/data#" xmlns:part7="http://tpl.rdlfacade.org/data#">
<owl:Ontology rdf:about=""> <rdfs:comment xml:lang="en">Ontology for Object Information Models (partly), according ISO 15926-7 and in OWL</rdfs:comment> <rdfs:label xml:lang="en">Ontology for OIMs (partly)</rdfs:label> <owl:imports rdf:resource="http://dm.rdlfacade.org/data"/> <owl:imports rdf:resource="http://rdl.rdlfacade.org/data"/> <owl:imports rdf:resource="http://tpl.rdlfacade.org/data"/> <owl:versionInfo>March 2008</owl:versionInfo> </owl:Ontology>
<owl:ObjectProperty rdf:ID="isPossessorIn"> <owl:inverseOf rdf:resource="http://tpl.rdlfacade.org/data#possessor"/> </owl:ObjectProperty>
<part2:ClassOfInanimatePhysicalObject rdf:about="http://rdl.rdlfacade.org/data#RDS415124"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#isPossessorIn"/> <owl:allValuesFrom rdf:resource="#ST-ELECTRIC_MOTOR-3401-025" /> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> </part2:ClassOfInanimatePhysicalObject>
<part2:ClassOfInanimatePhysicalObject rdf:about="http://rdl.rdlfacade.org/data#RDS415124"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#isPossessorIn"/> <owl:allValuesFrom rdf:resource="#ST-ELECTRIC_MOTOR-3401-026" /> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> </part2:ClassOfInanimatePhysicalObject>
<part2:ClassOfInanimatePhysicalObject rdf:about="http://rdl.rdlfacade.org/data#RDS415124"> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="#isPossessorIn"/> <owl:allValuesFrom rdf:resource="#ST-ELECTRIC_MOTOR-3401-027" /> <owl:maxCardinality rdf:datatype="http://www.w3.org/2001/XMLSchema#nonNegativeInteger">1</owl:maxCardinality> </owl:Restriction> </rdfs:subClassOf> </part2:ClassOfInanimatePhysicalObject>
<part2:ClassOfMultidimensionalObject rdf:ID="ST-ELECTRIC_MOTOR-3401-025"> <rdfs:subClassOf rdf:resource="http://tpl.rdlfacade.org/data#ST-3401"/> <rdfs:label xml:lang="en">Electric Motor allowable starting voltage percentage</rdfs:label> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="http://tpl.rdlfacade.org/data#possessor"/> <owl:allValuesFrom rdf:resource="http://rdl.rdlfacade.org/data#RDS415124"/> <!--ELECTRIC MOTOR--> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="http://tpl.rdlfacade.org/data#propertyType"/> <owl:hasValue rdf:resource="http://rdl.rdlfacade.org/data#RDS13658045"/> <!--ALLOWABLE STARTING VOLTAGE PERCENTAGE--> </owl:Restriction> </rdfs:subClassOf>
<rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="http://tpl.rdlfacade.org/data#unitOfMeasure"/> <owl:hasValue rdf:resource="http://rdl.rdlfacade.org/data#RDS13657820"/> <!--PERCENTAGE--> </owl:Restriction> </rdfs:subClassOf> </part2:ClassOfMultidimensionalObject>
<part2:ClassOfMultidimensionalObject rdf:ID="ST-ELECTRIC_MOTOR-3401-026"> <rdfs:subClassOf rdf:resource="http://tpl.rdlfacade.org/data#ST-3401"/> <rdfs:label xml:lang="en">Electric Motor breakdown torque</rdfs:label> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="http://tpl.rdlfacade.org/data#possessor"/> <owl:allValuesFrom rdf:resource="http://rdl.rdlfacade.org/data#RDS415124"/> <!--ELECTRIC MOTOR--> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="http://tpl.rdlfacade.org/data#propertyType"/> <owl:hasValue rdf:resource="http://rdl.rdlfacade.org/data#RDS6652260"/> <!--BREAKDOWN TORQUE--> </owl:Restriction> </rdfs:subClassOf> </part2:ClassOfMultidimensionalObject>
<part2:ClassOfMultidimensionalObject rdf:ID="ST-ELECTRIC_MOTOR-3401-027"> <rdfs:subClassOf rdf:resource="http://tpl.rdlfacade.org/data#ST-3401"/> <rdfs:label xml:lang="en">Electric Motor cold locked rotor time</rdfs:label> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="http://tpl.rdlfacade.org/data#possessor"/> <owl:allValuesFrom rdf:resource="http://rdl.rdlfacade.org/data#RDS415124"/> <!--ELECTRIC MOTOR--> </owl:Restriction> </rdfs:subClassOf> <rdfs:subClassOf> <owl:Restriction> <owl:onProperty rdf:resource="http://tpl.rdlfacade.org/data#propertyType"/> <owl:hasValue rdf:resource="http://rdl.rdlfacade.org/data#RDS6450064"/> <!--COLD LOCKED ROTOR TIME--> </owl:Restriction> </rdfs:subClassOf> </part2:ClassOfMultidimensionalObject>
</rdf:RDF> |
This results in the following triples:
NOTE - In the above listing there are duplicates that will be removed once this data is entered in a Façade. These duplicates are colored green.
We can generate a picklist from the OIM for RDS415124 (ELECTRIC MOTOR), from the above set of triples:
|