From 529e7d08e2f15c917a332a6e517444a7ef6ca7fe Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Mar=C3=ADa?= Date: Fri, 19 Jun 2020 15:39:04 +0200 Subject: [PATCH] updated ontology and example --- documentation/diagrams/saref4inmaOverview.png | Bin 98564 -> 0 bytes examples/saref4inma_data_example.ttl | 1145 ++++++++------ ontology/saref4inma.ttl | 1408 ++++++++--------- 3 files changed, 1313 insertions(+), 1240 deletions(-) delete mode 100644 documentation/diagrams/saref4inmaOverview.png diff --git a/documentation/diagrams/saref4inmaOverview.png b/documentation/diagrams/saref4inmaOverview.png deleted file mode 100644 index e15f74e0984e47a08414df8cd461e4ee9c17f686..0000000000000000000000000000000000000000 GIT binary patch literal 0 HcmV?d00001 literal 98564 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

0@_dgU!+mr^5XuTH_!Xuxu%`yK4PoZ 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 . +@prefix : . +@prefix ex: . @prefix rdf: . +@prefix xml: . +@prefix xsd: . @prefix rdfs: . +@prefix time: . +@prefix saref: . @prefix s4bldg: . @prefix s4inma: . -@prefix saref: . -@prefix time: . -@prefix xsd: . -@prefix dctype: . -@prefix dcterms: . - - a dctype:Dataset ; - dcterms:license ; - dcterms:conformsTo ; - dcterms:conformsTo ; - dcterms:title "Example saref4inma_data_example"@en ; - dcterms:description "Example saref4inma_data_example"@en . - -ex:ABS_Plastic_Role_8mm_MaterialBatch742 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:MaterialBatch ; - s4inma:belongsToCategory ex:ABS_Plastic_Role_8mm_MaterialCategory ; - s4inma:hasCertificate "ABS High-precision quality max tolerance of 0.1mm" ; - s4inma:hasIdentifier ex:nr71324352 ; -. -ex:ABS_Plastic_Role_8mm_MaterialCategory - rdf:type ex:Plastic ; - rdf:type owl:NamedIndividual ; -. -ex:BIC_Site_A - rdf:type owl:NamedIndividual ; - rdf:type s4inma:Site ; - s4bldg:hasSpace ex:BIC_Site_A_Area_18 ; - s4bldg:hasSpace ex:BIC_Site_A_Area_19 ; -. -ex:BIC_Site_A_Area_18 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:Area ; - s4bldg:contains ex:Cutting_and_Milling_WorkCenter ; -. -ex:BIC_Site_A_Area_19 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:Area ; - s4bldg:contains ex:Welding_WorkCenter ; -. -ex:BIC_Site_B - rdf:type owl:NamedIndividual ; - rdf:type s4inma:Site ; -. -ex:CuttingFunction - rdf:type owl:Class ; - rdfs:comment "Example of actuating function used in SAREF4INMA. More functions can be defined if needed. It is also possible to link here function code lists from existing standards."^^xsd:string ; - rdfs:subClassOf s4inma:ProductionEquipmentFunction ; - rdfs:subClassOf saref:ActuatingFunction ; -. -ex:Cutting_and_Milling_WorkCenter - rdf:type owl:NamedIndividual ; - rdf:type s4inma:WorkCenter ; -. -ex:Eindhoven_BIC - rdf:type owl:NamedIndividual ; - rdf:type s4inma:Factory ; - s4bldg:hasSpace ex:BIC_Site_A ; - s4bldg:hasSpace ex:BIC_Site_B ; -. -ex:End_Time_Batch392 - rdf:type time:Instant ; -. -ex:FormingFunction - rdf:type owl:Class ; - rdfs:comment "Example of actuating function used in SAREF4INMA. More functions can be defined if needed. It is also possible to link here function code lists from existing standards."^^xsd:string ; - rdfs:subClassOf s4inma:ProductionEquipmentFunction ; - rdfs:subClassOf saref:ActuatingFunction ; -. -ex:JIDFUHWEUF323 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN14ID ; -. -ex:JSDFHKLSDF982374 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN14ID ; -. -ex:JoiningFunction - rdf:type owl:Class ; - rdfs:comment "Example of actuating function used in SAREF4INMA. More functions can be defined if needed. It is also possible to link here function code lists from existing standards."^^xsd:string ; - rdfs:subClassOf s4inma:ProductionEquipmentFunction ; - rdfs:subClassOf saref:ActuatingFunction ; -. -ex:LaserCuttingMachine - rdf:type owl:Class ; - rdfs:subClassOf s4inma:ProductionEquipment ; -. -ex:Laser_Cutting_Machine_1 - rdf:type ex:LaserCuttingMachine ; - rdf:type owl:NamedIndividual ; - s4bldg:isContainedIn ex:Welding_WorkCenter ; - s4inma:belongsToCategory ex:Lazor_Series_8030_ProdEquipCategory ; - saref:hasFunction ex:CuttingFunction ; -. -ex:Lazor_Series_8030_ProdEquipCategory - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ProductionEquipmentCategory ; - s4inma:isCategoryOf ex:Laser_Cutting_Machine_1 ; -. -ex:MillingMachine - rdf:type owl:Class ; - rdfs:subClassOf s4inma:ProductionEquipment ; -. -ex:MouldingMachine - rdf:type owl:Class ; - rdfs:subClassOf s4inma:ProductionEquipment ; -. -ex:PhilBrau_S40-S50_Generic_Body_ItemBatch3290 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ItemBatch ; - s4inma:consistsOfBatch ex:ABS_Plastic_Role_8mm_MaterialBatch742 ; - s4inma:consistsOfBatch ex:Torx_screws_D2mm_L8mm_MaterialBatch323 ; - s4inma:hasIdentifier ex:nr55689876777421 ; -. -ex:PhilBrau_S40_Premium_Gold_Shaver_ItemBatch392 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ItemBatch ; - time:hasBeginning ex:Start_Time_Batch392 ; - time:hasEnd ex:End_Time_Batch392 ; - s4inma:belongsToCategory ex:PhilBrau_S40_Premium_Gold_Shaver_ItemCategory ; - s4inma:creates ex:Shaver10023 ; - s4inma:hasIdentifier ex:nr34275874234908 ; - s4inma:isFeatureOfInterestOf ex:Welding_Machine_2_Measurement_W101520_AVG ; - s4inma:needsEquipment ex:Laser_Cutting_Machine_1 ; - saref:hasProperty ex:WeldingTemperature ; -. -ex:PhilBrau_S40_Premium_Gold_Shaver_ItemCategory - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ItemCategory ; - s4inma:hasIdentifier ex:nr98647656 ; - s4inma:hasModelNumber "nr98647656"^^xsd:string ; - s4inma:isCategoryOf ex:PhilBrau_S40_Premium_Gold_Shaver_ItemBatch392 ; - s4inma:isProducedBy ex:Lazor_Series_8030_ProdEquipCategory ; - saref:hasManufacturer "PhilBrau"^^xsd:string ; - saref:relatesToMeasurement ex:WeldMachineTempSensor1_Measurement_A10568 ; -. -ex:Philips_screws_D2mm_L8mm_MaterialCategory - rdf:type ex:Screw ; - rdf:type owl:NamedIndividual ; -. -ex:Plastic - rdf:type owl:Class ; - rdfs:subClassOf s4inma:MaterialCategory ; -. -ex:Screw - rdf:type owl:Class ; - rdfs:subClassOf s4inma:MaterialCategory ; -. -ex:Shaver10023 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:Item ; - s4inma:consistsOfItem ex:ShaverBody9440 ; - s4inma:consistsOfItem ex:ShaverHead3002 ; - s4inma:consistsOfItem ex:StepMotor083 ; - s4inma:hasSerialNumber ex:nr7865654345676 ; - s4inma:isCreatedIn ex:PhilBrau_S40_Premium_Gold_Shaver_ItemBatch392 ; - s4inma:isFeatureOfInterestOf ex:Welding_Machine_2_Measurement_W101520 ; - s4inma:isFeatureOfInterestOf ex:Welding_Machine_2_Measurement_W101521 ; - s4inma:isFeatureOfInterestOf ex:Welding_Machine_2_Measurement_W101522 ; - s4inma:isFeatureOfInterestOf ex:Welding_Machine_2_Measurement_W101523 ; - saref:hasProperty ex:WeldingTemperature ; -. -ex:ShaverBody9440 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:Item ; - s4inma:hasSerialNumber ex:UFHLEIJKFNESDKL323 ; - s4inma:isCreatedIn ex:PhilBrau_S40-S50_Generic_Body_ItemBatch3290 ; -. -ex:ShaverHead3002 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:Item ; - s4inma:consistsOfItem ex:Steel_Sheets_RVS331_MaterialBatch311 ; - s4inma:hasSerialNumber ex:JIDFUHWEUF323 ; -. -ex:StampingMachine - rdf:type owl:Class ; - rdfs:subClassOf s4inma:ProductionEquipment ; -. -ex:Start_Time_Batch392 - rdf:type time:Instant ; -. -ex:SteelSheet - rdf:type owl:Class ; - rdfs:subClassOf s4inma:MaterialCategory ; -. -ex:Steel_Sheets_RVS331_MaterialBatch311 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:MaterialBatch ; - s4inma:belongsToCategory ex:Steel_Sheets_RVS331_MaterialCategory ; - s4inma:hasCertificate "Steel Certificate 3.1" ; - s4inma:hasIdentifier ex:nr79009856 ; -. -ex:Steel_Sheets_RVS331_MaterialCategory - rdf:type ex:SteelSheet ; - rdf:type owl:NamedIndividual ; -. -ex:StepMotor083 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:Item ; - s4inma:hasSerialNumber ex:JSDFHKLSDF982374 ; - s4inma:isCreatedIn ex:Step_Moters_Q88_Secure_ItemBatch423 ; -. -ex:Step_Moters_Q88_Secure_ItemBatch423 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ItemBatch ; - s4inma:consistsOfItem ex:Steel_Sheets_RVS331_MaterialBatch311 ; - s4inma:consistsOfItem ex:Torx_screws_D2mm_L8mm_MaterialBatch323 ; - s4inma:hasIdentifier ex:nr34254657687978 ; -. -ex:Step_Motors_Q88_Secure_ItemCategory - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ItemCategory ; - s4inma:hasModelNumber ex:nr83049304 ; - s4inma:isProducedBy ex:Lazor_Series_8030_ProdEquipCategory ; - s4inma:isProducedBy ex:WandI_Welding_Series_1000_ProdEquipCategory ; -. -ex:Torx_screws_D2mm_L8mm_MaterialBatch323 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:MaterialBatch ; - s4inma:belongsToCategory ex:Torx_screws_D2mm_L8mm_MaterialCategory ; - s4inma:hasIdentifier ex:nr74536275 ; -. -ex:Torx_screws_D2mm_L8mm_MaterialBatch324 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:MaterialBatch ; - s4inma:belongsToCategory ex:Torx_screws_D2mm_L8mm_MaterialCategory ; - s4inma:hasIdentifier ex:nr76567876 ; -. -ex:Torx_screws_D2mm_L8mm_MaterialCategory - rdf:type ex:Screw ; - rdf:type owl:NamedIndividual ; -. -ex:UFHLEIJKFNESDKL323 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN14ID ; -. -ex:WandI_Welding_Series_1000_ProdEquipCategory - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ProductionEquipmentCategory ; -. -ex:WeldMachineTempSensor1_Measurement_A10568 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:Measurement ; - saref:hasValue 228 ; - saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; - saref:isMeasuredIn ; - saref:relatesToProperty ex:WeldingTemperature ; -. -ex:WeldingMachine - rdf:type owl:Class ; - rdfs:subClassOf s4inma:ProductionEquipment ; -. -ex:WeldingMachineTemperatureSensor1 - rdf:type owl:NamedIndividual ; - rdf:type saref:TemperatureSensor ; - saref:makesMeasurement ex:WeldMachineTempSensor1_Measurement_A10568 ; - saref:makesMeasurement ex:Welding_Machine_2_Measurement_W101520 ; - saref:makesMeasurement ex:Welding_Machine_2_Measurement_W101520_AVG ; - saref:makesMeasurement ex:Welding_Machine_2_Measurement_W101521 ; - saref:makesMeasurement ex:Welding_Machine_2_Measurement_W101522 ; - saref:makesMeasurement ex:Welding_Machine_2_Measurement_W101523 ; -. -ex:WeldingMachineTemperatureSensor2 - rdf:type owl:NamedIndividual ; - rdf:type saref:TemperatureSensor ; -. -ex:WeldingTemperature - rdf:type owl:NamedIndividual ; - rdf:type saref:Temperature ; -. -ex:Welding_Machine_1 - rdf:type ex:WeldingMachine ; - rdf:type owl:NamedIndividual ; - s4inma:belongsToCategory ex:WandI_Welding_Series_1000_ProdEquipCategory ; - saref:controlsProperty ex:WeldingTemperature ; - saref:hasFunction ex:JoiningFunction ; -. -ex:Welding_Machine_2 - rdf:type ex:WeldingMachine ; - rdf:type owl:NamedIndividual ; - s4bldg:isContainedIn ex:Welding_WorkCenter ; - s4inma:belongsToCategory ex:WandI_Welding_Series_1000_ProdEquipCategory ; - saref:consistsOf ex:WeldingMachineTemperatureSensor1 ; - saref:controlsProperty ex:WeldingTemperature ; - saref:hasFunction ex:JoiningFunction ; - saref:makesMeasurement ex:Welding_Machine_2_Measurement_W101520 ; - saref:makesMeasurement ex:Welding_Machine_2_Measurement_W101520_AVG ; - saref:makesMeasurement ex:Welding_Machine_2_Measurement_W101521 ; - saref:makesMeasurement ex:Welding_Machine_2_Measurement_W101522 ; - saref:makesMeasurement ex:Welding_Machine_2_Measurement_W101523 ; -. -ex:Welding_Machine_2_Measurement_W101520 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ActualMeasurement ; - s4inma:hasFeatureOfInterest ex:Shaver10023 ; - saref:hasTimestamp "2019-01-28T12:11:10"^^xsd:dateTime ; - saref:hasValue 223 ; - saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; - saref:isMeasuredIn ; - saref:relatesToProperty ex:WeldingTemperature ; -. -ex:Welding_Machine_2_Measurement_W101520_AVG - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ActualMeasurement ; - s4inma:hasFeatureOfInterest ex:PhilBrau_S40_Premium_Gold_Shaver_ItemBatch392 ; - saref:hasTimestamp "2019-01-28T12:11:40"^^xsd:dateTime ; - saref:hasValue 232 ; - saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; - saref:isMeasuredIn ; - saref:relatesToProperty ex:WeldingTemperature ; -. -ex:Welding_Machine_2_Measurement_W101521 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ActualMeasurement ; - s4inma:hasFeatureOfInterest ex:Shaver10023 ; - saref:hasTimestamp "2019-01-28T12:11:20"^^xsd:dateTime ; - saref:hasValue 228 ; - saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; - saref:isMeasuredIn ; - saref:relatesToProperty ex:WeldingTemperature ; -. -ex:Welding_Machine_2_Measurement_W101522 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ActualMeasurement ; - s4inma:hasFeatureOfInterest ex:Shaver10023 ; - saref:hasTimestamp "2019-01-28T12:11:30"^^xsd:dateTime ; - saref:hasValue 231 ; - saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; - saref:isMeasuredIn ; - saref:relatesToProperty ex:WeldingTemperature ; -. -ex:Welding_Machine_2_Measurement_W101523 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:ActualMeasurement ; - s4inma:hasFeatureOfInterest ex:Shaver10023 ; - saref:hasTimestamp "2019-01-28T12:11:40"^^xsd:dateTime ; - saref:hasValue 232 ; - saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; - saref:isMeasuredIn ; - saref:relatesToProperty ex:WeldingTemperature ; -. -ex:Welding_WorkCenter - rdf:type owl:NamedIndividual ; - rdf:type s4inma:WorkCenter ; - saref:consistsOf ex:Laser_Cutting_Machine_1 ; - saref:consistsOf ex:Welding_Machine_1 ; - saref:consistsOf ex:Welding_Machine_2 ; -. -ex:dateTimeStamp_1 - rdf:type xsd:dateTimeStamp ; -. -ex:nr34254657687978 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN14ID ; -. -ex:nr34275874234908 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN14ID ; - s4inma:hasIDValue "nr34275874234908"^^xsd:string ; -. -ex:nr55689876777421 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN14ID ; -. -ex:nr71324352 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN8ID ; -. -ex:nr74536275 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN8ID ; -. -ex:nr76567876 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN8ID ; -. -ex:nr7865654345676 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN14ID ; - s4inma:hasIDValue "nr7865654345676"^^xsd:string ; -. -ex:nr79009856 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN8ID ; -. -ex:nr82849583748573 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN14ID ; -. -ex:nr83049304 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN8ID ; -. -ex:nr98647656 - rdf:type owl:NamedIndividual ; - rdf:type s4inma:GTIN8ID ; - s4inma:hasIDValue "nr98647656"^^xsd:string ; -. -owl:maxQualifiedCardinality - rdf:type owl:AnnotationProperty ; -. -s4inma:ActualMeasurement - rdfs:comment "Describes whether the measurement is actually measured during the production process. Disjoint with ExpectedMeasurement."^^xsd:string ; -. -s4inma:Area - rdf:type owl:Class ; -. -s4inma:Batch - rdfs:subClassOf [ - rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIDValue ; - owl:someValuesFrom xsd:string ; - ] ; - rdfs:subClassOf [ - rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIdentifier ; - owl:someValuesFrom s4inma:ID ; - ] ; -. -s4inma:ExpectedMeasurement - rdfs:comment "Describes whether the measurement is expected (i.e., planned before the production process). Disjoint with ActualMeasurement."^^xsd:string ; - owl:disjointWith s4inma:ActualMeasurement ; -. -s4inma:Factory - rdf:type owl:Class ; -. -s4inma:GTIN14ID - rdf:type owl:Class ; -. -s4inma:GTIN8ID - rdf:type owl:Class ; -. -s4inma:Item - rdf:type owl:Class ; - rdfs:subClassOf [ - rdf:type owl:Restriction ; - owl:allValuesFrom xsd:string ; - owl:onProperty s4inma:hasIDValue ; - ] ; - rdfs:subClassOf [ - rdf:type owl:Restriction ; - owl:allValuesFrom s4inma:ID ; - owl:onProperty s4inma:hasSerialNumber ; - ] ; -. -s4inma:ItemBatch - rdf:type owl:Class ; -. -s4inma:ItemCategory - rdf:type owl:Class ; - rdfs:subClassOf [ - rdf:type owl:Restriction ; - owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onDataRange xsd:string ; - owl:onProperty saref:hasManufacturer ; - ] ; - rdfs:subClassOf [ - rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIDValue ; - owl:someValuesFrom xsd:string ; - ] ; -. -s4inma:MaterialBatch - rdf:type owl:Class ; -. -s4inma:MaterialCategory - rdf:type owl:Class ; -. -s4inma:Measurement - rdf:type owl:Class ; -. -s4inma:ProductionEquipment - rdfs:subClassOf [ - rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIDValue ; - owl:someValuesFrom xsd:string ; - ] ; -. -s4inma:ProductionEquipmentCategory - rdf:type owl:Class ; -. -s4inma:Site - rdf:type owl:Class ; -. -s4inma:WorkCenter - rdf:type owl:Class ; -. -s4inma:creates - rdfs:comment "A relation between a production process (e.g., Batch) that creates one or more tangible objects (e.g., Items)"^^xsd:string ; -. -s4inma:isCreatedIn - owl:inverseOf s4inma:creates ; -. -saref:Device - rdf:type owl:Class ; - rdfs:label "Device"^^xsd:string ; - rdfs:subClassOf s4bldg:PhysicalObject ; -. -saref:Temperature - rdf:type owl:Class ; -. -saref:TemperatureSensor - rdf:type owl:Class ; -. -[ - owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; -]. -[ - owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; -]. +@base . + + rdf:type owl:Ontology ; + owl:imports ; + owl:versionInfo "Created with TopBraid Composer"^^xsd:string . + + + + +################################################################# +# Object Properties +################################################################# + +### https://saref.etsi.org/saref4inma/creates +s4inma:creates owl:inverseOf s4inma:isCreatedIn ; + rdfs:comment "A relation between a production process (e.g., Batch) that creates one or more tangible objects (e.g., Items)"^^xsd:string . + + +### https://saref.etsi.org/saref4inma/isCreatedIn + +################################################################# +# Data properties +################################################################# + +### https://saref.etsi.org/saref4inma/hasCertificate +s4inma:hasCertificate rdfs:range xsd:string . + + +################################################################# +# Classes +################################################################# + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#CuttingFunction +ex:CuttingFunction rdf:type owl:Class ; + rdfs:subClassOf s4inma:ProductionEquipmentFunction , + saref:ActuatingFunction . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#FormingFunction +ex:FormingFunction rdf:type owl:Class ; + rdfs:subClassOf s4inma:ProductionEquipmentFunction , + saref:ActuatingFunction ; + rdfs:comment "Example of actuating function used in SAREF4INMA. More functions can be defined if needed. It is also possible to link here function code lists from existing standards."^^xsd:string . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#JoiningFunction +ex:JoiningFunction rdf:type owl:Class ; + rdfs:subClassOf s4inma:ProductionEquipmentFunction , + saref:ActuatingFunction . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#LaserCuttingMachine +ex:LaserCuttingMachine rdf:type owl:Class ; + rdfs:subClassOf s4inma:ProductionEquipment . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#MillingMachine +ex:MillingMachine rdf:type owl:Class ; + rdfs:subClassOf s4inma:ProductionEquipment . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#MouldingMachine +ex:MouldingMachine rdf:type owl:Class ; + rdfs:subClassOf s4inma:ProductionEquipment . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Plastic +ex:Plastic rdf:type owl:Class ; + rdfs:subClassOf s4inma:MaterialCategory . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Screw +ex:Screw rdf:type owl:Class ; + rdfs:subClassOf s4inma:MaterialCategory . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#StampingMachine +ex:StampingMachine rdf:type owl:Class ; + rdfs:subClassOf s4inma:ProductionEquipment . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#SteelSheet +ex:SteelSheet rdf:type owl:Class ; + rdfs:subClassOf s4inma:MaterialCategory . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#WeldingMachine +ex:WeldingMachine rdf:type owl:Class ; + rdfs:subClassOf s4inma:ProductionEquipment . + + +### http://www.w3.org/2006/time#Instant +time:Instant rdf:type owl:Class . + + +### https://w3id.org/def/saref4bldg#PhysicalObject +s4bldg:PhysicalObject rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/ActualMeasurement +s4inma:ActualMeasurement owl:disjointWith s4inma:ExpectedMeasurement ; + rdfs:comment "Describes whether the measurement is actually measured during the production process. Disjoint with ExpectedMeasurement."^^xsd:string . + + +### https://saref.etsi.org/saref4inma/Area +s4inma:Area rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/Batch +s4inma:Batch rdfs:subClassOf [ rdf:type owl:Restriction ; + owl:onProperty s4inma:hasIdentifier ; + owl:someValuesFrom s4inma:ID + ] , + [ rdf:type owl:Restriction ; + owl:onProperty s4inma:hasIDValue ; + owl:someValuesFrom xsd:string + ] . + + +### https://saref.etsi.org/saref4inma/ExpectedMeasurement +s4inma:ExpectedMeasurement rdfs:comment "Describes whether the measurement is expected (i.e., planned before the production process). Disjoint with ActualMeasurement."^^xsd:string . + + +### https://saref.etsi.org/saref4inma/Factory +s4inma:Factory rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/GTIN14ID +s4inma:GTIN14ID rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/GTIN8ID +s4inma:GTIN8ID rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/Item +s4inma:Item rdf:type owl:Class ; + rdfs:subClassOf [ rdf:type owl:Restriction ; + owl:onProperty s4inma:hasIdentifier ; + owl:allValuesFrom s4inma:ID + ] , + [ rdf:type owl:Restriction ; + owl:onProperty s4inma:hasIDValue ; + owl:allValuesFrom xsd:string + ] . + + +### https://saref.etsi.org/saref4inma/ItemBatch +s4inma:ItemBatch rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/ItemCategory +s4inma:ItemCategory rdf:type owl:Class ; + rdfs:subClassOf [ rdf:type owl:Restriction ; + owl:onProperty s4inma:hasIDValue ; + owl:someValuesFrom xsd:string + ] . + + +### https://saref.etsi.org/saref4inma/MaterialBatch +s4inma:MaterialBatch rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/MaterialCategory +s4inma:MaterialCategory rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/Measurement +s4inma:Measurement rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/ProductionEquipment +s4inma:ProductionEquipment rdfs:subClassOf [ rdf:type owl:Restriction ; + owl:onProperty s4inma:hasIDValue ; + owl:someValuesFrom xsd:string + ] . + + +### https://saref.etsi.org/saref4inma/ProductionEquipmentCategory +s4inma:ProductionEquipmentCategory rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/Site +s4inma:Site rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/WorkCenter +s4inma:WorkCenter rdf:type owl:Class . + + +### https://w3id.org/saref#ActuatingFunction +saref:ActuatingFunction rdf:type owl:Class . + + +### https://w3id.org/saref#Device +saref:Device rdf:type owl:Class ; + rdfs:subClassOf s4bldg:PhysicalObject ; + rdfs:label "Device"^^xsd:string . + + +### https://w3id.org/saref#Temperature +saref:Temperature rdf:type owl:Class . + + +### https://w3id.org/saref#TemperatureSensor +saref:TemperatureSensor rdf:type owl:Class . + + +################################################################# +# Individuals +################################################################# + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#ABS_Plastic_Role_8mm_MaterialBatch742 +ex:ABS_Plastic_Role_8mm_MaterialBatch742 rdf:type owl:NamedIndividual , + s4inma:MaterialBatch ; + s4inma:hasCertificate "ABS High-precision quality max tolerance of 0.1mm" ; + s4inma:belongsToCategory ex:ABS_Plastic_Role_8mm_MaterialCategory ; + s4inma:hasIdentifier ex:nr71324352 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#ABS_Plastic_Role_8mm_MaterialCategory +ex:ABS_Plastic_Role_8mm_MaterialCategory rdf:type owl:NamedIndividual , + ex:Plastic . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#BIC_Site_A +ex:BIC_Site_A rdf:type owl:NamedIndividual , + s4inma:Site ; + s4bldg:hasSpace ex:BIC_Site_A_Area_18 , + ex:BIC_Site_A_Area_19 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#BIC_Site_A_Area_18 +ex:BIC_Site_A_Area_18 rdf:type owl:NamedIndividual , + s4inma:Area ; + s4bldg:contains ex:Cutting_and_Milling_WorkCenter . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#BIC_Site_A_Area_19 +ex:BIC_Site_A_Area_19 rdf:type owl:NamedIndividual , + s4inma:Area ; + s4bldg:contains ex:Welding_WorkCenter . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#BIC_Site_B +ex:BIC_Site_B rdf:type owl:NamedIndividual , + s4inma:Site . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#CuttingFunction +ex:CuttingFunction rdf:type owl:NamedIndividual . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Cutting_and_Milling_WorkCenter +ex:Cutting_and_Milling_WorkCenter rdf:type owl:NamedIndividual , + s4inma:WorkCenter . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Eindhoven_BIC +ex:Eindhoven_BIC rdf:type owl:NamedIndividual , + s4inma:Factory ; + s4bldg:hasSpace ex:BIC_Site_A , + ex:BIC_Site_B . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#End_Time_Batch392 +ex:End_Time_Batch392 rdf:type owl:NamedIndividual , + time:Instant . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#JIDFUHWEUF323 +ex:JIDFUHWEUF323 rdf:type owl:NamedIndividual , + s4inma:GTIN14ID . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#JSDFHKLSDF982374 +ex:JSDFHKLSDF982374 rdf:type owl:NamedIndividual , + s4inma:GTIN14ID . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#JoiningFunction +ex:JoiningFunction rdf:type owl:NamedIndividual . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Laser_Cutting_Machine_1 +ex:Laser_Cutting_Machine_1 rdf:type owl:NamedIndividual , + ex:LaserCuttingMachine ; + s4bldg:isContainedIn ex:Welding_WorkCenter ; + s4inma:belongsToCategory ex:Lazor_Series_8030_ProdEquipCategory ; + saref:hasFunction ex:CuttingFunction . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Lazor_Series_8030_ProdEquipCategory +ex:Lazor_Series_8030_ProdEquipCategory rdf:type owl:NamedIndividual , + s4inma:ProductionEquipmentCategory ; + s4inma:isCategoryOf ex:Laser_Cutting_Machine_1 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#PhilBrau_S40-S50_Generic_Body_ItemBatch3290 +ex:PhilBrau_S40-S50_Generic_Body_ItemBatch3290 rdf:type owl:NamedIndividual , + s4inma:ItemBatch ; + s4inma:consistsOfBatch ex:ABS_Plastic_Role_8mm_MaterialBatch742 , + ex:Torx_screws_D2mm_L8mm_MaterialBatch323 ; + s4inma:hasIdentifier ex:nr55689876777421 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#PhilBrau_S40_Premium_Gold_Shaver_ItemBatch392 +ex:PhilBrau_S40_Premium_Gold_Shaver_ItemBatch392 rdf:type owl:NamedIndividual , + s4inma:ItemBatch ; + s4inma:creates ex:Shaver10023 ; + time:hasBeginning ex:Start_Time_Batch392 ; + time:hasEnd ex:End_Time_Batch392 ; + s4inma:belongsToCategory ex:PhilBrau_S40_Premium_Gold_Shaver_ItemCategory ; + s4inma:hasIdentifier ex:nr34275874234908 ; + s4inma:isFeatureOfInterestOf ex:Welding_Machine_2_Measurement_W101520_AVG ; + s4inma:needsEquipment ex:Laser_Cutting_Machine_1 ; + saref:hasProperty ex:WeldingTemperature . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#PhilBrau_S40_Premium_Gold_Shaver_ItemCategory +ex:PhilBrau_S40_Premium_Gold_Shaver_ItemCategory rdf:type owl:NamedIndividual , + s4inma:ItemCategory ; + s4inma:hasIdentifier ex:nr98647656 ; + s4inma:hasModelNumber "nr98647656"^^xsd:string ; + s4inma:isCategoryOf ex:PhilBrau_S40_Premium_Gold_Shaver_ItemBatch392 ; + s4inma:isProducedBy ex:Lazor_Series_8030_ProdEquipCategory ; + saref:hasManufacturer "PhilBrau"^^xsd:string ; + saref:relatesToMeasurement ex:WeldMachineTempSensor1_Measurement_A10568 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Philips_screws_D2mm_L8mm_MaterialCategory +ex:Philips_screws_D2mm_L8mm_MaterialCategory rdf:type owl:NamedIndividual , + ex:Screw . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Shaver10023 +ex:Shaver10023 rdf:type owl:NamedIndividual , + s4inma:Item ; + s4inma:isCreatedIn ex:PhilBrau_S40_Premium_Gold_Shaver_ItemBatch392 ; + s4inma:consistsOfItem ex:ShaverBody9440 , + ex:ShaverHead3002 , + ex:StepMotor083 ; + s4inma:hasIdentifier ex:nr7865654345676 ; + s4inma:isFeatureOfInterestOf ex:Welding_Machine_2_Measurement_W101520 , + ex:Welding_Machine_2_Measurement_W101521 , + ex:Welding_Machine_2_Measurement_W101522 , + ex:Welding_Machine_2_Measurement_W101523 ; + saref:hasProperty ex:WeldingTemperature . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#ShaverBody9440 +ex:ShaverBody9440 rdf:type owl:NamedIndividual , + s4inma:Item ; + s4inma:isCreatedIn ex:PhilBrau_S40-S50_Generic_Body_ItemBatch3290 ; + s4inma:hasIdentifier ex:UFHLEIJKFNESDKL323 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#ShaverHead3002 +ex:ShaverHead3002 rdf:type owl:NamedIndividual , + s4inma:Item ; + s4inma:consistsOfItem ex:Steel_Sheets_RVS331_MaterialBatch311 ; + s4inma:hasIdentifier ex:JIDFUHWEUF323 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Start_Time_Batch392 +ex:Start_Time_Batch392 rdf:type owl:NamedIndividual , + time:Instant . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Steel_Sheets_RVS331_MaterialBatch311 +ex:Steel_Sheets_RVS331_MaterialBatch311 rdf:type owl:NamedIndividual , + s4inma:MaterialBatch ; + s4inma:hasCertificate "Steel Certificate 3.1" ; + s4inma:belongsToCategory ex:Steel_Sheets_RVS331_MaterialCategory ; + s4inma:hasIdentifier ex:nr79009856 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Steel_Sheets_RVS331_MaterialCategory +ex:Steel_Sheets_RVS331_MaterialCategory rdf:type owl:NamedIndividual , + ex:SteelSheet . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#StepMotor083 +ex:StepMotor083 rdf:type owl:NamedIndividual , + s4inma:Item ; + s4inma:isCreatedIn ex:Step_Moters_Q88_Secure_ItemBatch423 ; + s4inma:hasIdentifier ex:JSDFHKLSDF982374 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Step_Moters_Q88_Secure_ItemBatch423 +ex:Step_Moters_Q88_Secure_ItemBatch423 rdf:type owl:NamedIndividual , + s4inma:ItemBatch ; + s4inma:consistsOfItem ex:Steel_Sheets_RVS331_MaterialBatch311 , + ex:Torx_screws_D2mm_L8mm_MaterialBatch323 ; + s4inma:hasIdentifier ex:nr34254657687978 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Step_Motors_Q88_Secure_ItemCategory +ex:Step_Motors_Q88_Secure_ItemCategory rdf:type owl:NamedIndividual , + s4inma:ItemCategory ; + s4inma:hasIdentifier ex:nr83049304 ; + s4inma:isProducedBy ex:Lazor_Series_8030_ProdEquipCategory , + ex:WandI_Welding_Series_1000_ProdEquipCategory . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Torx_screws_D2mm_L8mm_MaterialBatch323 +ex:Torx_screws_D2mm_L8mm_MaterialBatch323 rdf:type owl:NamedIndividual , + s4inma:MaterialBatch ; + s4inma:belongsToCategory ex:Torx_screws_D2mm_L8mm_MaterialCategory ; + s4inma:hasIdentifier ex:nr74536275 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Torx_screws_D2mm_L8mm_MaterialBatch324 +ex:Torx_screws_D2mm_L8mm_MaterialBatch324 rdf:type owl:NamedIndividual , + s4inma:MaterialBatch ; + s4inma:belongsToCategory ex:Torx_screws_D2mm_L8mm_MaterialCategory ; + s4inma:hasIdentifier ex:nr76567876 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Torx_screws_D2mm_L8mm_MaterialCategory +ex:Torx_screws_D2mm_L8mm_MaterialCategory rdf:type owl:NamedIndividual , + ex:Screw . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#UFHLEIJKFNESDKL323 +ex:UFHLEIJKFNESDKL323 rdf:type owl:NamedIndividual , + s4inma:GTIN14ID . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#WandI_Welding_Series_1000_ProdEquipCategory +ex:WandI_Welding_Series_1000_ProdEquipCategory rdf:type owl:NamedIndividual , + s4inma:ProductionEquipmentCategory . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#WeldMachineTempSensor1_Measurement_A10568 +ex:WeldMachineTempSensor1_Measurement_A10568 rdf:type owl:NamedIndividual , + s4inma:Measurement ; + saref:hasValue 228 ; + saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; + saref:isMeasuredIn ; + saref:relatesToProperty ex:WeldingTemperature . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#WeldingMachineTemperatureSensor1 +ex:WeldingMachineTemperatureSensor1 rdf:type owl:NamedIndividual , + saref:TemperatureSensor ; + saref:makesMeasurement ex:WeldMachineTempSensor1_Measurement_A10568 , + ex:Welding_Machine_2_Measurement_W101520 , + ex:Welding_Machine_2_Measurement_W101520_AVG , + ex:Welding_Machine_2_Measurement_W101521 , + ex:Welding_Machine_2_Measurement_W101522 , + ex:Welding_Machine_2_Measurement_W101523 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#WeldingMachineTemperatureSensor2 +ex:WeldingMachineTemperatureSensor2 rdf:type owl:NamedIndividual , + saref:TemperatureSensor . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#WeldingTemperature +ex:WeldingTemperature rdf:type owl:NamedIndividual , + saref:Temperature . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Welding_Machine_1 +ex:Welding_Machine_1 rdf:type owl:NamedIndividual , + ex:WeldingMachine ; + s4inma:belongsToCategory ex:WandI_Welding_Series_1000_ProdEquipCategory ; + saref:controlsProperty ex:WeldingTemperature ; + saref:hasFunction ex:JoiningFunction . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Welding_Machine_2 +ex:Welding_Machine_2 rdf:type owl:NamedIndividual , + ex:WeldingMachine ; + s4bldg:isContainedIn ex:Welding_WorkCenter ; + s4inma:belongsToCategory ex:WandI_Welding_Series_1000_ProdEquipCategory ; + saref:consistsOf ex:WeldingMachineTemperatureSensor1 ; + saref:controlsProperty ex:WeldingTemperature ; + saref:hasFunction ex:JoiningFunction ; + saref:makesMeasurement ex:Welding_Machine_2_Measurement_W101520 , + ex:Welding_Machine_2_Measurement_W101520_AVG , + ex:Welding_Machine_2_Measurement_W101521 , + ex:Welding_Machine_2_Measurement_W101522 , + ex:Welding_Machine_2_Measurement_W101523 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Welding_Machine_2_Measurement_W101520 +ex:Welding_Machine_2_Measurement_W101520 rdf:type owl:NamedIndividual , + s4inma:ActualMeasurement ; + s4inma:hasFeatureOfInterest ex:Shaver10023 ; + saref:hasTimestamp "2019-01-28T12:11:10"^^xsd:dateTime ; + saref:hasValue 223 ; + saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; + saref:isMeasuredIn ; + saref:relatesToProperty ex:WeldingTemperature . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Welding_Machine_2_Measurement_W101520_AVG +ex:Welding_Machine_2_Measurement_W101520_AVG rdf:type owl:NamedIndividual , + s4inma:ActualMeasurement ; + s4inma:hasFeatureOfInterest ex:PhilBrau_S40_Premium_Gold_Shaver_ItemBatch392 ; + saref:hasTimestamp "2019-01-28T12:11:40"^^xsd:dateTime ; + saref:hasValue 232 ; + saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; + saref:isMeasuredIn ; + saref:relatesToProperty ex:WeldingTemperature . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Welding_Machine_2_Measurement_W101521 +ex:Welding_Machine_2_Measurement_W101521 rdf:type owl:NamedIndividual , + s4inma:ActualMeasurement ; + s4inma:hasFeatureOfInterest ex:Shaver10023 ; + saref:hasTimestamp "2019-01-28T12:11:20"^^xsd:dateTime ; + saref:hasValue 228 ; + saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; + saref:isMeasuredIn ; + saref:relatesToProperty ex:WeldingTemperature . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Welding_Machine_2_Measurement_W101522 +ex:Welding_Machine_2_Measurement_W101522 rdf:type owl:NamedIndividual , + s4inma:ActualMeasurement ; + s4inma:hasFeatureOfInterest ex:Shaver10023 ; + saref:hasTimestamp "2019-01-28T12:11:30"^^xsd:dateTime ; + saref:hasValue 231 ; + saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; + saref:isMeasuredIn ; + saref:relatesToProperty ex:WeldingTemperature . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Welding_Machine_2_Measurement_W101523 +ex:Welding_Machine_2_Measurement_W101523 rdf:type owl:NamedIndividual , + s4inma:ActualMeasurement ; + s4inma:hasFeatureOfInterest ex:Shaver10023 ; + saref:hasTimestamp "2019-01-28T12:11:40"^^xsd:dateTime ; + saref:hasValue 232 ; + saref:isMeasuredByDevice ex:WeldingMachineTemperatureSensor1 ; + saref:isMeasuredIn ; + saref:relatesToProperty ex:WeldingTemperature . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#Welding_WorkCenter +ex:Welding_WorkCenter rdf:type owl:NamedIndividual , + s4inma:WorkCenter ; + saref:consistsOf ex:Laser_Cutting_Machine_1 , + ex:Welding_Machine_1 , + ex:Welding_Machine_2 . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#nr34254657687978 +ex:nr34254657687978 rdf:type owl:NamedIndividual , + s4inma:GTIN14ID . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#nr34275874234908 +ex:nr34275874234908 rdf:type owl:NamedIndividual , + s4inma:GTIN14ID ; + s4inma:hasIDValue "nr34275874234908"^^xsd:string . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#nr55689876777421 +ex:nr55689876777421 rdf:type owl:NamedIndividual , + s4inma:GTIN14ID . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#nr71324352 +ex:nr71324352 rdf:type owl:NamedIndividual , + s4inma:GTIN8ID . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#nr74536275 +ex:nr74536275 rdf:type owl:NamedIndividual , + s4inma:GTIN8ID . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#nr76567876 +ex:nr76567876 rdf:type owl:NamedIndividual , + s4inma:GTIN8ID . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#nr7865654345676 +ex:nr7865654345676 rdf:type owl:NamedIndividual , + s4inma:GTIN14ID ; + s4inma:hasIDValue "nr7865654345676"^^xsd:string . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#nr79009856 +ex:nr79009856 rdf:type owl:NamedIndividual , + s4inma:GTIN8ID . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#nr82849583748573 +ex:nr82849583748573 rdf:type owl:NamedIndividual , + s4inma:GTIN14ID . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#nr83049304 +ex:nr83049304 rdf:type owl:NamedIndividual , + s4inma:GTIN8ID . + + +### https://saref.etsi.org/saref4inma/v1.1.2/example/example1INMA#nr98647656 +ex:nr98647656 rdf:type owl:NamedIndividual , + s4inma:GTIN8ID ; + s4inma:hasIDValue "nr98647656"^^xsd:string . + + +[ owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger +] . + +[ owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger + ] . + +[ owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger + ] . + +################################################################# +# Annotations +################################################################# + +ex:CuttingFunction rdfs:comment "Example of actuating function used in SAREF4INMA. More functions can be defined if needed. It is also possible to link here function code lists from existing standards."^^xsd:string . + + +ex:JoiningFunction rdfs:comment "Example of actuating function used in SAREF4INMA. More functions can be defined if needed. It is also possible to link here function code lists from existing standards."^^xsd:string . + + +### Generated by the OWL API (version 4.2.8.20170104-2310) https://github.com/owlcs/owlapi diff --git a/ontology/saref4inma.ttl b/ontology/saref4inma.ttl index 344e67a..58fe881 100644 --- a/ontology/saref4inma.ttl +++ b/ontology/saref4inma.ttl @@ -1,729 +1,679 @@ -@prefix : . -@prefix dct: . -@prefix owl: . -@prefix rdf: . -@prefix xml: . -@prefix xsd: . -@prefix rdfs: . -@prefix skos: . -@prefix time: . -@prefix saref: . -@prefix s4bldg: . -@prefix s4inma: . -@prefix vann: . -@prefix schema: . -@base . - - rdf:type owl:Ontology ; - dct:modified "2020-05-25"^^xsd:date ; - dct:title "SAREF4INMA: an extension of SAREF for the industry and manufacturing domain"@en ; - dct:issued "2019-04-30"^^xsd:date ; - owl:imports ; - vann:preferredNamespacePrefix "s4inma" ; - vann:preferredNamespaceUri "https://saref.etsi.org/saref4inma/" ; - dct:creator ; - dct:contributor [ a schema:Person ; schema:givenName "Matthijs" ; schema:familyName "Punter" ; schema:affiliation [ a schema:Organization ; schema:name "TNO" ] ] ; - dct:creator ; - dct:source ; - rdfs:seeAlso ; - dct:publisher ; - dct:description "SAREF4INMA is an extension of SAREF for the industry and manufacturing domain. SAREF4INMA focuses on extending SAREF for the industry and manufacturing domain to solve the lack of interoperability between various types of production equipment that produce items in a factory and, once outside the factory, between different organizations in the value chain to uniquely track back the produced items to the corresponding production equipment, batches, material and precise time in which they were manufactured. SAREF4INMA is specified and published by ETSI in the TS 103 410-5 associated to this ontology file. SAREF4INMA was created to be aligned with related initiatives in the smart industry and manufacturing domain in terms of modelling and standardization, such as the Reference Architecture Model for Industry 4.0 (RAMI), which combines several standards used by the various national initiatives in Europe that support digitalization in manufacturing. The full list of use cases, standards and requirements that guided the creation of SAREF4INMA are described in the associated ETSI TR 103 507. "^^xsd:string ; - dct:creator ; - dct:license ; - dct:contributor ; - dct:creator [ a schema:Person ; schema:givenName "Alba" ; schema:familyName "Fernandez Izquierdo" ; schema:affiliation [ a schema:Organization ; schema:name "UPM" ] ] ; - dct:created "2015-03-29"^^xsd:date ; - rdfs:comment """Information about changes compared to version 1.1.1: - - Updated namespaces for compatibility with SAREF v3."""@en ; - owl:versionIRI ; - owl:versionInfo "v1.1.2" . - - -dct:issued a owl:AnnotationProperty . -dct:modified a owl:AnnotationProperty . -dct:source a owl:AnnotationProperty . -dct:creator a owl:AnnotationProperty . -dct:title a owl:AnnotationProperty . -dct:description a owl:AnnotationProperty . -dct:license a owl:AnnotationProperty . -dct:publisher a owl:AnnotationProperty . -vann:preferredNamespacePrefix a owl:AnnotationProperty . -vann:preferredNamespaceUri a owl:AnnotationProperty . -schema:Person a owl:Class . -schema:Organization a owl:Class . -schema:affiliation a owl:ObjectProperty . -schema:name a owl:DatatypeProperty . -schema:givenName a owl:DatatypeProperty . -schema:familyName a owl:DatatypeProperty . - - -################################################################# -# Annotation properties -################################################################# - -### http://purl.org/dc/terms/contributor -dct:contributor rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/created -dct:created rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/creator -dct:creator rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/description -dct:description rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/issued -dct:issued rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/license -dct:license rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/modified -dct:modified rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/publisher -dct:publisher rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/source -dct:source rdf:type owl:AnnotationProperty . - - -### http://purl.org/dc/terms/title -dct:title rdf:type owl:AnnotationProperty . - - -### http://www.w3.org/2002/07/owl#maxQualifiedCardinality -owl:maxQualifiedCardinality rdf:type owl:AnnotationProperty . - - -################################################################# -# Object Properties -################################################################# - -### https://saref.etsi.org/saref4inma/belongsToCategory -s4inma:belongsToCategory rdf:type owl:ObjectProperty ; - owl:inverseOf s4inma:isCategoryOf ; - rdfs:comment "Link between an entity and its category" ; - rdfs:label "belongs to category"@en . - - -### https://saref.etsi.org/saref4inma/consistsOfBatch -s4inma:consistsOfBatch rdf:type owl:ObjectProperty ; - rdfs:comment "A relation to express that a batch can recursively consists of other batches"@en ; - rdfs:label "consists of batch"@en . - - -### https://saref.etsi.org/saref4inma/consistsOfItem -s4inma:consistsOfItem rdf:type owl:ObjectProperty ; - rdfs:comment "A relation to express that an item can recursively consists of other Items"@en ; - rdfs:label "consists of item"@en . - - -### https://saref.etsi.org/saref4inma/creates -s4inma:creates rdf:type owl:ObjectProperty ; - owl:inverseOf s4inma:isCreatedIn ; - rdfs:comment "A relation between a production process (e.g., Batch) that creates one or more tangible objects (e.g., Items)"@en ; - rdfs:label "creates"@en . - - -### https://saref.etsi.org/saref4inma/hasFeatureOfInterest -s4inma:hasFeatureOfInterest rdf:type owl:ObjectProperty ; - rdfs:comment "Relation between a measurement and the feature of interest it is about"@en ; - owl:inverseOf s4inma:isFeatureOfInterestOf ; - rdfs:label "has feature of interest"@en . - - -### https://saref.etsi.org/saref4inma/hasGTIN12ID -s4inma:hasGTIN12ID rdf:type owl:ObjectProperty ; - rdfs:comment "Global Trade Item Number 12 digits long"@en ; - rdfs:subPropertyOf s4inma:hasIdentifier ; - rdfs:range s4inma:GTIN12ID ; - rdfs:label "has GTIN12ID "@en . - - -### https://saref.etsi.org/saref4inma/hasGTIN13ID -s4inma:hasGTIN13ID rdf:type owl:ObjectProperty ; - rdfs:comment "Global Trade Item Number 13 digits long"@en ; - rdfs:subPropertyOf s4inma:hasIdentifier ; - rdfs:range s4inma:GTIN13ID ; - rdfs:label "has GTIN13ID"@en . - - -### https://saref.etsi.org/saref4inma/hasGTIN14ID -s4inma:hasGTIN14ID rdf:type owl:ObjectProperty ; - rdfs:comment "Global Trade Item Number 14 digits long"@en ; - rdfs:subPropertyOf s4inma:hasIdentifier ; - rdfs:range s4inma:GTIN14ID ; - rdfs:label "has GTIN14ID"@en . - - -### https://saref.etsi.org/saref4inma/hasGTIN8ID -s4inma:hasGTIN8ID rdf:type owl:ObjectProperty ; - rdfs:comment "Global Trade Item Number 8 digits long"@en ; - rdfs:subPropertyOf s4inma:hasIdentifier ; - rdfs:range s4inma:GTIN8ID ; - rdfs:label "has GTIN8ID"@en . - - -### https://saref.etsi.org/saref4inma/hasIRDI -s4inma:hasIRDI rdf:type owl:ObjectProperty ; - rdfs:comment "The international registration data identifier (IRDI) is an internationally unique identifier for a data element. Source: ISO/IEC 11179, Part 3, Basic Attributes of Data Elements (draft)"@en ; - rdfs:subPropertyOf s4inma:hasIdentifier ; - rdfs:range s4inma:IRDI ; - rdfs:label "has IRDI"@en . - - -### https://saref.etsi.org/saref4inma/hasIdentifier -s4inma:hasIdentifier rdf:type owl:ObjectProperty ; - rdfs:range s4inma:ID ; - rdfs:comment "link between an entity and its unique identifier" ; - rdfs:label "has identifier"@en . - - -### https://saref.etsi.org/saref4inma/hasSize -s4inma:hasSize rdf:type owl:ObjectProperty ; - rdfs:comment "A relationship to count the amount of certain objects in a collection (e.g., size of a material batch)"@en ; - rdfs:label "has size"@en . - - -### https://saref.etsi.org/saref4inma/hasUUID -s4inma:hasUUID rdf:type owl:ObjectProperty ; - rdfs:comment "Link between an entity and its UUID Universally Unique IDentifier"@en ; - rdfs:subPropertyOf s4inma:hasIdentifier ; - rdfs:range s4inma:UUID ; - rdfs:label "has UUID"@en . - - -### https://saref.etsi.org/saref4inma/hasUpdate -s4inma:hasUpdate rdf:type owl:ObjectProperty ; - rdfs:comment "The newer version of a ItemCategory." ; - rdfs:label "has update"@en . - - -### https://saref.etsi.org/saref4inma/isCategoryOf -s4inma:isCategoryOf rdf:type owl:ObjectProperty ; - rdfs:comment "A relation between a category and the set of items in this category."@en ; - rdfs:label "is category of"@en . - - -### https://saref.etsi.org/saref4inma/isCreatedIn -s4inma:isCreatedIn rdf:type owl:ObjectProperty ; - rdfs:comment "An Item is created in an ItemBatch."@en ; - rdfs:label "is created in"@en . - - -### https://saref.etsi.org/saref4inma/isFeatureOfInterestOf -s4inma:isFeatureOfInterestOf rdf:type owl:ObjectProperty ; - rdfs:comment "relation between a feature of interest and a measurement"@en ; - rdfs:label "is feature of interest of"@en . - - -### https://saref.etsi.org/saref4inma/isProducedBy -s4inma:isProducedBy rdf:type owl:ObjectProperty ; - owl:inverseOf s4inma:produces ; - rdfs:comment "Items are produced using certain types of ProductionEquipmentCategories, for example: welding machines or laser cutting machines." ; - rdfs:label "is produced by"@en . - - -### https://saref.etsi.org/saref4inma/needsEquipment -s4inma:needsEquipment rdf:type owl:ObjectProperty ; - rdfs:comment "A relationship indicating that an entity needs a particular equipment to be produced"@en ; - rdfs:label "needs equipment"@en . - - -### https://saref.etsi.org/saref4inma/produces -s4inma:produces rdf:type owl:ObjectProperty ; - rdfs:comment "ProductionEquipmentCategory, such as welding machines or laser cutting machines, produce certain categories of items (inverse of s4inma:isProducedBy)"@en ; - rdfs:label "produces"@en . - - -### https://w3id.org/saref#hasFunction -saref:hasFunction rdf:type owl:ObjectProperty . - - -### https://w3id.org/saref#hasState -saref:hasState rdf:type owl:ObjectProperty ; - rdfs:label "has state"@en . - - -### https://w3id.org/saref#makesMeasurement -saref:makesMeasurement rdf:type owl:ObjectProperty . - - -### https://w3id.org/saref#measuresProperty -saref:measuresProperty rdf:type owl:ObjectProperty . - - -################################################################# -# Data properties -################################################################# - -### https://saref.etsi.org/saref4inma/hasCertificate -s4inma:hasCertificate rdf:type owl:DatatypeProperty ; - rdfs:range xsd:string ; - rdfs:comment "The MaterialBatch can contain material quality certificates, for example a NEN 10204:2004 3.1 steel certificate."@en ; - rdfs:label "has certificate"@en . - - -### https://saref.etsi.org/saref4inma/hasGTIN12IDValue -s4inma:hasGTIN12IDValue rdf:type owl:DatatypeProperty ; - rdfs:comment "Value for the Global Trade Item Number 12 digits long identifier"@en ; - rdfs:subPropertyOf s4inma:hasIDValue ; - rdfs:range xsd:string ; - rdfs:label "has GTIN12ID value"@en . - - -### https://saref.etsi.org/saref4inma/hasGTIN13IDValue -s4inma:hasGTIN13IDValue rdf:type owl:DatatypeProperty ; - rdfs:comment "Value for the Global Trade Item Number 13 digits long identifier"@en ; - rdfs:subPropertyOf s4inma:hasIDValue ; - rdfs:range xsd:string ; - rdfs:label "has GTIN13ID value"@en . - - -### https://saref.etsi.org/saref4inma/hasGTIN14IDValue -s4inma:hasGTIN14IDValue rdf:type owl:DatatypeProperty ; - rdfs:comment "Value for the Global Trade Item Number 14 digits long identifier"@en ; - rdfs:subPropertyOf s4inma:hasIDValue ; - rdfs:range xsd:string ; - rdfs:label "has GTIN14ID"@en . - - -### https://saref.etsi.org/saref4inma/hasGTIN8IDValue -s4inma:hasGTIN8IDValue rdf:type owl:DatatypeProperty ; - rdfs:comment "Value for the Global Trade Item Number 8 digits long identifier"@en ; - rdfs:subPropertyOf s4inma:hasIDValue ; - rdfs:range xsd:string ; - rdfs:label "has GTIN8ID Value"@en . - - -### https://saref.etsi.org/saref4inma/hasIDValue -s4inma:hasIDValue rdf:type owl:DatatypeProperty ; - rdfs:range xsd:string ; - rdfs:comment "A relation to express the value of an indentifier as a string (it can be used as alternative to or in combination with the s4inma:hasIdentifier object property "@en ; - rdfs:label "has identifier value"@en . - - -### https://saref.etsi.org/saref4inma/hasIRDIValue -s4inma:hasIRDIValue rdf:type owl:DatatypeProperty ; - rdfs:comment "Value for the international registration data identifier"@en ; - rdfs:subPropertyOf s4inma:hasIDValue ; - rdfs:range xsd:string ; - rdfs:label "has IRDI"@en . - - -### https://saref.etsi.org/saref4inma/hasModelNumber -s4inma:hasModelNumber rdf:type owl:DatatypeProperty ; - rdfs:comment "A relation to express the model number of a certain object (item, product, equipment, etc.) "@en ; - rdfs:label "has model number"@en . - - -### https://saref.etsi.org/saref4inma/hasSerialNumber -s4inma:hasSerialNumber rdf:type owl:DatatypeProperty ; - rdfs:comment "A relation to describe the serial number of a certain Item, which is unique per Item."@en ; - rdfs:label "has serial number"@en . - - -### https://saref.etsi.org/saref4inma/hasUUIDValue -s4inma:hasUUIDValue rdf:type owl:DatatypeProperty ; - rdfs:comment "Value for the Universally Unique IDentifier"@en ; - rdfs:subPropertyOf s4inma:hasIDValue ; - rdfs:range xsd:string ; - rdfs:label "has UUID value"@en . - - -### https://saref.etsi.org/saref4inma/hasVersion -s4inma:hasVersion rdf:type owl:DatatypeProperty ; - rdfs:comment "An item has a certain revision or version number, whereas a higher number indicates a newer version."@en ; - rdfs:label "has version"@en . - - -################################################################# -# Classes -################################################################# - -### http://www.w3.org/2004/02/skos/core#ConceptScheme -skos:ConceptScheme rdf:type owl:Class . - - -### https://saref.etsi.org/saref4bldg/Building - rdf:type owl:Class . - - -### https://saref.etsi.org/saref4bldg/BuildingSpace - rdf:type owl:Class . - - -### https://saref.etsi.org/saref4bldg/PhysicalObject - rdf:type owl:Class . - - -### https://saref.etsi.org/saref4inma/ActualMeasurement -s4inma:ActualMeasurement rdf:type owl:Class ; - rdfs:subClassOf s4inma:Measurement ; - owl:disjointWith s4inma:ExpectedMeasurement ; - rdfs:comment "Describes whether the measurement is actually measured during the production process. Disjoint with ExpectedMeasurement."@en ; - rdfs:label "Actual measurement"@en . - - -### https://saref.etsi.org/saref4inma/Area -s4inma:Area rdf:type owl:Class ; - rdfs:subClassOf ; - rdfs:comment "A subclass of s4bldg:BuildingSpace used to define the physical spaces of the building. According to IEC 62264, areas are physical, geographical or logical groupings of resources determined by the site. A site can be divided in areas, whereas areas contain work centers.s."@en ; - rdfs:label "Area"@en . - - -### https://saref.etsi.org/saref4inma/Batch -s4inma:Batch rdf:type owl:Class ; - rdfs:subClassOf owl:Thing , - saref:FeatureOfInterest , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:consistsOfBatch ; - owl:allValuesFrom s4inma:Batch - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIdentifier ; - owl:allValuesFrom s4inma:ID - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:isFeatureOfInterestOf ; - owl:allValuesFrom s4inma:Measurement - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:needsEquipment ; - owl:allValuesFrom s4inma:ProductionEquipment - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasSize ; - owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass s4inma:Size - ] ; - rdfs:comment "A uniform collection of tangible objects or Lot. This can either be a collection of produced items (i.e. the outflow of products) or a collection of raw material or required material (i.e. the inflow of products). It is assumed that the objects in a batch are similar and thus have shared attributes. Note that this definition is broader than the definition in IEC 61512, which defines a batch as the material that is being produced (whereas in SAREF4INMA a batch can be items or materials). "@en ; - rdfs:label "Batch"@en . - - -### https://saref.etsi.org/saref4inma/ExpectedMeasurement -s4inma:ExpectedMeasurement rdf:type owl:Class ; - rdfs:subClassOf s4inma:Measurement ; - rdfs:comment "Describes whether the measurement is expected (i.e., planned before the production process). Disjoint with ActualMeasurement."@en ; - rdfs:label "Expected measurement"@en . - - -### https://saref.etsi.org/saref4inma/Factory -s4inma:Factory rdf:type owl:Class ; - rdfs:subClassOf ; - rdfs:comment "A subclass of s4bldg:Building specialized for the purpose of SAREF4INMA, a factory represents one or more organizations sharing a definit mission, goals and objectives which provides an output such as a product (definition taken from IEC 62264). A factory can be divided in one or multiple sites. "@en ; - rdfs:label "Factory"@en . - - -### https://saref.etsi.org/saref4inma/GTIN12ID -s4inma:GTIN12ID rdf:type owl:Class ; - rdfs:subClassOf s4inma:ID ; - rdfs:comment "GTIN-12 (UPC-A) is a 12-digit number used primarily in North America"@en ; - rdfs:label "GTIN12ID"@en . - - -### https://saref.etsi.org/saref4inma/GTIN13ID -s4inma:GTIN13ID rdf:type owl:Class ; - rdfs:subClassOf s4inma:ID ; - rdfs:comment "GTIN-13 (EAN/UCC-13) is a 13-digit number used predominately outside of North America"@en ; - rdfs:label "GTIN13ID"@en . - - -### https://saref.etsi.org/saref4inma/GTIN14ID -s4inma:GTIN14ID rdf:type owl:Class ; - rdfs:subClassOf s4inma:ID ; - rdfs:comment "GTIN-14 (EAN/UCC-14 or ITF-14 or also known as ITF Symbol, SCC-14, DUN-14, UPC Case Code, UPC Shipping Container Code, UCC Code 128, EAN Code 128) is a 14-digit number used to identify trade items at various packaging levels."@en ; - rdfs:label "GTIN14ID"@en . - - -### https://saref.etsi.org/saref4inma/GTIN8ID -s4inma:GTIN8ID rdf:type owl:Class ; - rdfs:subClassOf s4inma:ID ; - rdfs:comment "GTIN-8 (EAN/UCC-8) is an 8-digit number used predominately outside of North America."@en ; - rdfs:label "GTIN18ID"@en . - - -### https://saref.etsi.org/saref4inma/ID -s4inma:ID rdf:type owl:Class ; - rdfs:subClassOf skos:ConceptScheme , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIDValue ; - owl:someValuesFrom xsd:string - ] ; - rdfs:comment "A unique identifier."@en ; - rdfs:label "Identifier"@en . - - -### https://saref.etsi.org/saref4inma/IRDI -s4inma:IRDI rdf:type owl:Class ; - rdfs:subClassOf s4inma:ID ; - rdfs:comment "International Registration Data Identifier (IRDI) is based on the international standards ISO/IEC 11179-6, ISO 29002 and ISO 6532 and used in eCl@ss and the Asset Administration Shell as unique identifier."@en ; - rdfs:label "IRDI"@en . - - -### https://saref.etsi.org/saref4inma/Item -s4inma:Item rdf:type owl:Class ; - rdfs:subClassOf saref:FeatureOfInterest , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIdentifier ; - owl:someValuesFrom s4inma:ID - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:consistsOfItem ; - owl:allValuesFrom s4inma:Item - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIdentifier ; - owl:allValuesFrom s4inma:ID - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:isCreatedIn ; - owl:allValuesFrom s4inma:ItemBatch - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:isFeatureOfInterestOf ; - owl:allValuesFrom s4inma:Measurement - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:isCreatedIn ; - owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onClass s4inma:ItemBatch - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIDValue ; - owl:allValuesFrom xsd:string - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasSerialNumber ; - owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onDataRange xsd:string - ] ; - rdfs:comment "A tangible object which can be unique identified, for example, with a GTIN in the form of a barcode/QR/RFID tag. An item product can be the result of the organization's production process (i.e. outflow of objects/goods) or can be uniquely identifiable material (i.e. inflow of objects/supplies). Each item is part of exactly one ItemBatch, whereas each ItemBatch contains only Items which have similar properties. An item can consists of multiple Batches and other Items (i.e. subassemblies)."@en ; - rdfs:label "Item"@en . - - -### https://saref.etsi.org/saref4inma/ItemBatch -s4inma:ItemBatch rdf:type owl:Class ; - rdfs:subClassOf s4inma:Batch , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:belongsToCategory ; - owl:allValuesFrom s4inma:ItemCategory - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:creates ; - owl:allValuesFrom s4inma:Item - ] ; - rdfs:comment "A uniform collection of tangible objects which are relevant for the prodcution process. The ItemBatch consists of a set of objects with similar properties (e.g. a certain type of sensors or metal sheets). The difference between ItemBatch and MaterialBatch is that individual items can be traced in a ItemBatch, whereas this is not possible in a MaterialBatch, meaning that, for example, it is possible to trace the individual metal sheet used in a ItemBatch. This implies that the objects in an ItemBatch have an unique identifier (e.g. a GTIN code in the form of a barcode/QR-code or RFID tag)."@en ; - rdfs:label "Item Batch"@en . - - -### https://saref.etsi.org/saref4inma/ItemCategory -s4inma:ItemCategory rdf:type owl:Class ; - rdfs:subClassOf [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIdentifier ; - owl:someValuesFrom s4inma:ID - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIdentifier ; - owl:allValuesFrom s4inma:ID - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasUpdate ; - owl:allValuesFrom s4inma:ItemCategory - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:isCategoryOf ; - owl:allValuesFrom s4inma:ItemBatch - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:isProducedBy ; - owl:allValuesFrom s4inma:ProductionEquipmentCategory - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasModelNumber ; - owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onDataRange xsd:string - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasVersion ; - owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onDataRange xsd:string - ] ; - rdfs:comment "An ItemCategory describes a single type of item in terms of its static properties. Each ItemCategory can have multiple related ItemBatches, which all contain individual Items. The essential properties of each Item in all ItemBatches are the same. However, each batch might use different MaterialBatches and/or different ProductionEquipment. Therefore, small deviations between batches might occur, while the essential properties of all Items related to an ItemCategory are similar."@en ; - rdfs:label "Item category"@en . - - -### https://saref.etsi.org/saref4inma/MaterialBatch -s4inma:MaterialBatch rdf:type owl:Class ; - rdfs:subClassOf s4inma:Batch , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:belongsToCategory ; - owl:allValuesFrom s4inma:MaterialCategory - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasCertificate ; - owl:allValuesFrom xsd:string - ] ; - rdfs:comment "A uniform collection of tangible raw material which are relevant for the prodcution process. The MaterialBatch can consists of a set of objects with similar properties (e.g. a certain type of screws) or a stock of homogeen material (e.g. oil, water). The difference between MaterialBatch and ItemBatch is that individual items cannot be traced in a MaterialBatch, whereas this is possible in an ItemBatch, meaning that, for example, it is not possible to trace the individual screw used in a MaterialBatch."@en ; - rdfs:label "Material Batch"@en . - - -### https://saref.etsi.org/saref4inma/MaterialCategory -s4inma:MaterialCategory rdf:type owl:Class ; - rdfs:subClassOf [ rdf:type owl:Restriction ; - owl:onProperty s4inma:isCategoryOf ; - owl:allValuesFrom s4inma:MaterialBatch - ] ; - rdfs:comment "A MaterialCategory describes a category of material in terms of its static properties. Examples are: a certain category of steel or plastic. Each MaterialCategory can have multiple related MaterialBatches, which represent the physical material. The essential properties of the material in all MaterialBatches are the same. However, each batch might use different MaterialBatches and/or different ProductionEquipment. Therefore, small deviations between batches might occur, while the essential properties of the material related to an MaterialCategory are similar."@en ; - rdfs:label "Material category"@en . - - -### https://saref.etsi.org/saref4inma/Measurement -s4inma:Measurement rdf:type owl:Class ; - rdfs:subClassOf saref:Measurement , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasFeatureOfInterest ; - owl:allValuesFrom [ rdf:type owl:Class ; - owl:unionOf ( s4inma:Batch - s4inma:Item - ) - ] - ] ; - rdfs:comment "A subclass of saref:Measurement that represents the measured value made over a property. It is also linked to the unit of measure in which the value is expressed and the timestamp of the measurement. The saref4imna:Measurement can be linked to individual Batches or Items. Moreover, the Measurement can be an ExpectedMeasurement (i.e. the value which is planned) or the ActualMeasurement (i.e. the value measured during production), which enables to check for deviations between the planned and actual values."@en ; - rdfs:label "Measurement"@en . - - -### https://saref.etsi.org/saref4inma/ProductionEquipment -s4inma:ProductionEquipment rdf:type owl:Class ; - rdfs:subClassOf , - saref:Device , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:belongsToCategory ; - owl:allValuesFrom s4inma:ProductionEquipmentCategory - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIdentifier ; - owl:allValuesFrom s4inma:ID - ] , - [ rdf:type owl:Restriction ; - owl:onProperty saref:hasFunction ; - owl:allValuesFrom s4inma:ProductionEquipmentFunction - ] , - [ rdf:type owl:Restriction ; - owl:onProperty saref:hasState ; - owl:allValuesFrom saref:State - ] , - [ rdf:type owl:Restriction ; - owl:onProperty saref:makesMeasurement ; - owl:allValuesFrom s4inma:Measurement - ] , - [ rdf:type owl:Restriction ; - owl:onProperty saref:measuresProperty ; - owl:allValuesFrom saref:Property - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasIDValue ; - owl:allValuesFrom xsd:string - ] ; - rdfs:comment "A production equipment is a specialization of a saref:Device and s4bldg:PhysicalObject that can produce items in a manufacturing process. This class represents an individual production equipment device and includes their specification in terms of functions, states and services. Different types of machines can be defined under this class as needed, for example, LaserCuttingMachine (i.e., a type of production equipment to cut steel material), MillingMachine (i.e., to drill holes in steel material), MouldingMachine (i.e., to mold liquid material, such as iron or plastic, and let it harden in a certain shape), WeldingMachine (i.e., join parts of material, such as steel, together), etc."@en ; - rdfs:label "ProductionEquipment"@en . - - -### https://saref.etsi.org/saref4inma/ProductionEquipmentCategory -s4inma:ProductionEquipmentCategory rdf:type owl:Class ; - rdfs:subClassOf [ rdf:type owl:Restriction ; - owl:onProperty s4inma:isCategoryOf ; - owl:allValuesFrom s4inma:ProductionEquipment - ] , - [ rdf:type owl:Restriction ; - owl:onProperty s4inma:hasModelNumber ; - owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; - owl:onDataRange xsd:string - ] ; - rdfs:comment "A ProductionEquipmentCategory represents a certain type of production equipment, which is generally static over time. More concretely, the ProductionEquipmentCategory represents a certain model and brand of a production equipment. Each ProductionEquipmentCategory can have multiple related ProductionEquipment, which represent the actual individual machines. Moreover, each ItemCategory can be produced by multiple ProductionEquipmentCategories."@en ; - rdfs:label "Production equipment category"@en . - - -### https://saref.etsi.org/saref4inma/ProductionEquipmentFunction -s4inma:ProductionEquipmentFunction rdf:type owl:Class ; - rdfs:comment "The class of functions of production equipments"@en ; - rdfs:subClassOf owl:Thing , - saref:Function ; - rdfs:label "Production equipment function"@en . - - -### https://saref.etsi.org/saref4inma/Site -s4inma:Site rdf:type owl:Class ; - rdfs:subClassOf ; - rdfs:comment "A subclass of s4bldg:BuildingSpace used to define the physical spaces of the building. According to IEC 62264, sites are identified physical, geographical, and/or logical component groupings of a manufacturing enterprise. A factory can be divided in sites, whereas sites can be divided areas"@en ; - rdfs:label "Site"@en . - - -### https://saref.etsi.org/saref4inma/Size -s4inma:Size rdf:type owl:Class ; - rdfs:subClassOf saref:Property ; - rdfs:comment "The amount of certain objects in a collection (e.g., size of a material batch)."@en ; - rdfs:label "Size"@en . - - -### https://saref.etsi.org/saref4inma/UUID -s4inma:UUID rdf:type owl:Class ; - rdfs:subClassOf s4inma:ID ; - rdfs:comment "A universally unique identifier (UUID) is a 128-bit number used to identify items and is also known as: globally unique identifier (GUID). In its canonical textual representation, the sixteen octets of a UUID are represented as 32 hexadecimal (base 16) digits, displayed in five groups separated by hyphens, in the form 8-4-4-4-12 for a total of 36 characters (32 alphanumeric characters and four hyphens). UUID are documented in ISO/IEC 11578:1996 \"Information technology – Open Systems Interconnection – Remote Procedure Call (RPC)\" and in ITU-T Rec. X.667 | ISO/IEC 9834-8:2005." ; - rdfs:label "UUID"@en . - - -### https://saref.etsi.org/saref4inma/WorkCenter -s4inma:WorkCenter rdf:type owl:Class ; - rdfs:subClassOf s4inma:ProductionEquipment ; - rdfs:comment "A subclass of s4inma:ProductionEquipment (and therefore of s4bld:PhysicalObject). It is an equipment element under an area in a role-based equipment hierarchy that performs production, storage or material movement (definition taken from IEC 62264). An Area contains work centers."@en ; - rdfs:label "Work center"@en . - - -### https://w3id.org/saref#Device -saref:Device rdf:type owl:Class . - - -### https://w3id.org/saref#FeatureOfInterest -saref:FeatureOfInterest rdf:type owl:Class . - - -### https://w3id.org/saref#Function -saref:Function rdf:type owl:Class . - - -### https://w3id.org/saref#Measurement -saref:Measurement rdf:type owl:Class . - - -### https://w3id.org/saref#Property -saref:Property rdf:type owl:Class . - - -### https://w3id.org/saref#State -saref:State rdf:type owl:Class . - - -################################################################# -# General axioms -################################################################# - -[ rdf:type owl:AllDisjointClasses ; - owl:members ( s4inma:Area - s4inma:Site - s4inma:WorkCenter - ) -] . - - -### Generated by the OWL API (version 4.2.8.20170104-2310) https://github.com/owlcs/owlapi +@prefix : . +@prefix owl: . +@prefix rdf: . +@prefix xml: . +@prefix xsd: . +@prefix rdfs: . +@base . + + rdf:type owl:Ontology ; + , + "Matthijs Punter, TNO" ; + "2015-03-29"^^xsd:date ; + , + , + , + "Alba Fernandez Izquierdo, UPM" ; + "SAREF4INMA is an extension of SAREF for the industry and manufacturing domain. SAREF4INMA focuses on extending SAREF for the industry and manufacturing domain to solve the lack of interoperability between various types of production equipment that produce items in a factory and, once outside the factory, between different organizations in the value chain to uniquely track back the produced items to the corresponding production equipment, batches, material and precise time in which they were manufactured. SAREF4INMA is specified and published by ETSI in the TS 103 410-5 associated to this ontology file. SAREF4INMA was created to be aligned with related initiatives in the smart industry and manufacturing domain in terms of modelling and standardization, such as the Reference Architecture Model for Industry 4.0 (RAMI), which combines several standards used by the various national initiatives in Europe that support digitalization in manufacturing. The full list of use cases, standards and requirements that guided the creation of SAREF4INMA are described in the associated ETSI TR 103 507. " ; + "2019-04-30"^^xsd:date ; + ; + "2019-04-30"^^xsd:date ; + , + , + ; + ; + "SAREF4INMA: an extension of SAREF for the industry and manufacturing domain" . + +################################################################# +# Annotation properties +################################################################# + +### http://purl.org/dc/terms/contributor + rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/terms/created + rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/terms/creator + rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/terms/description + rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/terms/issued + rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/terms/license + rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/terms/modified + rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/terms/publisher + rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/terms/source + rdf:type owl:AnnotationProperty . + + +### http://purl.org/dc/terms/title + rdf:type owl:AnnotationProperty . + + +### http://www.w3.org/2002/07/owl#maxQualifiedCardinality +owl:maxQualifiedCardinality rdf:type owl:AnnotationProperty . + + +################################################################# +# Object Properties +################################################################# + +### https://saref.etsi.org/saref4inma/belongsToCategory +:belongsToCategory rdf:type owl:ObjectProperty ; + owl:inverseOf :isCategoryOf ; + rdfs:comment "Link between an entity and its category" ; + rdfs:label "belongs to category" . + + +### https://saref.etsi.org/saref4inma/consistsOfBatch +:consistsOfBatch rdf:type owl:ObjectProperty ; + rdfs:comment "A relation to express that a batch can recursively consists of other batches" ; + rdfs:label "consists of batch" . + + +### https://saref.etsi.org/saref4inma/consistsOfItem +:consistsOfItem rdf:type owl:ObjectProperty ; + rdfs:comment "A relation to express that an item can recursively consists of other Items" ; + rdfs:label "consists of item" . + + +### https://saref.etsi.org/saref4inma/creates +:creates rdf:type owl:ObjectProperty ; + owl:inverseOf :isCreatedIn ; + rdfs:comment "A relation between a production process (e.g., Batch) that creates one or more tangible objects (e.g., Items)" ; + rdfs:label "creates" . + + +### https://saref.etsi.org/saref4inma/hasFeatureOfInterest +:hasFeatureOfInterest rdf:type owl:ObjectProperty ; + owl:inverseOf :isFeatureOfInterestOf ; + rdfs:label "has feature of interest" . + + +### https://saref.etsi.org/saref4inma/hasGTIN12ID +:hasGTIN12ID rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf :hasIdentifier ; + rdfs:range :GTIN12ID ; + rdfs:label "has GTIN12ID " . + + +### https://saref.etsi.org/saref4inma/hasGTIN13ID +:hasGTIN13ID rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf :hasIdentifier ; + rdfs:range :GTIN13ID ; + rdfs:label "has GTIN13ID" . + + +### https://saref.etsi.org/saref4inma/hasGTIN14ID +:hasGTIN14ID rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf :hasIdentifier ; + rdfs:range :GTIN14ID ; + rdfs:label "has GTIN14ID" . + + +### https://saref.etsi.org/saref4inma/hasGTIN8ID +:hasGTIN8ID rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf :hasIdentifier ; + rdfs:range :GTIN8ID ; + rdfs:label "has GTIN8ID" . + + +### https://saref.etsi.org/saref4inma/hasIRDI +:hasIRDI rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf :hasIdentifier ; + rdfs:range :IRDI ; + rdfs:label "has IRDI" . + + +### https://saref.etsi.org/saref4inma/hasIdentifier +:hasIdentifier rdf:type owl:ObjectProperty ; + rdfs:range :ID ; + rdfs:comment "link between an entity and its unique identifier" ; + rdfs:label "has identifier" . + + +### https://saref.etsi.org/saref4inma/hasSize +:hasSize rdf:type owl:ObjectProperty ; + rdfs:comment "A relationship to count the amount of certain objects in a collection (e.g., size of a material batch)" ; + rdfs:label "has size" . + + +### https://saref.etsi.org/saref4inma/hasUUID +:hasUUID rdf:type owl:ObjectProperty ; + rdfs:subPropertyOf :hasIdentifier ; + rdfs:range :UUID ; + rdfs:label "has UUID" . + + +### https://saref.etsi.org/saref4inma/hasUpdate +:hasUpdate rdf:type owl:ObjectProperty ; + rdfs:comment "The newer version of a ItemCategory." ; + rdfs:label "has update" . + + +### https://saref.etsi.org/saref4inma/isCategoryOf +:isCategoryOf rdf:type owl:ObjectProperty ; + rdfs:label "is category of" . + + +### https://saref.etsi.org/saref4inma/isCreatedIn +:isCreatedIn rdf:type owl:ObjectProperty ; + rdfs:comment "An Item is created in an ItemBatch." ; + rdfs:label "is created in" . + + +### https://saref.etsi.org/saref4inma/isFeatureOfInterestOf +:isFeatureOfInterestOf rdf:type owl:ObjectProperty ; + rdfs:label "is feature of interest of" . + + +### https://saref.etsi.org/saref4inma/isProducedBy +:isProducedBy rdf:type owl:ObjectProperty ; + owl:inverseOf :produces ; + rdfs:comment "Items are produced using certain types of ProductionEquipmentCategories, for example: welding machines or laser cutting machines." ; + rdfs:label "is produced by" . + + +### https://saref.etsi.org/saref4inma/needsEquipment +:needsEquipment rdf:type owl:ObjectProperty ; + rdfs:comment "A relationship indicating that an entity needs a particular equipment to be produced" ; + rdfs:label "needs equipment" . + + +### https://saref.etsi.org/saref4inma/produces +:produces rdf:type owl:ObjectProperty ; + rdfs:comment "ProductionEquipmentCategory, such as welding machines or laser cutting machines, produce certain categories of items (inverse of s4inma:isProducedBy)" ; + rdfs:label "produces" . + + +### https://saref.etsi.org/core/hasFunction + rdf:type owl:ObjectProperty . + + +### https://saref.etsi.org/core/hasState + rdf:type owl:ObjectProperty ; + rdfs:label "has state" . + + +### https://saref.etsi.org/core/makesMeasurement + rdf:type owl:ObjectProperty . + + +### https://saref.etsi.org/core/measuresProperty + rdf:type owl:ObjectProperty . + + +################################################################# +# Data properties +################################################################# + +### https://saref.etsi.org/saref4inma/hasCertificate +:hasCertificate rdf:type owl:DatatypeProperty ; + rdfs:range xsd:string ; + rdfs:comment "The MaterialBatch can contain material quality certificates, for example a NEN 10204:2004 3.1 steel certificate."^^rdfs:Literal ; + rdfs:label "has certificate" . + + +### https://saref.etsi.org/saref4inma/hasGTIN12IDValue +:hasGTIN12IDValue rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf :hasIDValue ; + rdfs:range xsd:string ; + rdfs:label "has GTIN12ID value" . + + +### https://saref.etsi.org/saref4inma/hasGTIN13IDValue +:hasGTIN13IDValue rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf :hasIDValue ; + rdfs:range xsd:string ; + rdfs:label "has GTIN13ID value" . + + +### https://saref.etsi.org/saref4inma/hasGTIN14IDValue +:hasGTIN14IDValue rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf :hasIDValue ; + rdfs:range xsd:string ; + rdfs:label "has GTIN14ID" . + + +### https://saref.etsi.org/saref4inma/hasGTIN8IDValue +:hasGTIN8IDValue rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf :hasIDValue ; + rdfs:range xsd:string . + + +### https://saref.etsi.org/saref4inma/hasIDValue +:hasIDValue rdf:type owl:DatatypeProperty ; + rdfs:range xsd:string ; + rdfs:comment "A relation to express the value of an indentifier as a string (it can be used as alternative to or in combination with the s4inma:hasIdentifier object property " ; + rdfs:label "has identifier value" . + + +### https://saref.etsi.org/saref4inma/hasIRDIValue +:hasIRDIValue rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf :hasIDValue ; + rdfs:range xsd:string ; + rdfs:label "has IRDI" . + + +### https://saref.etsi.org/saref4inma/hasModelNumber +:hasModelNumber rdf:type owl:DatatypeProperty ; + rdfs:comment "A relation to express the model number of a certain object (item, product, equipment, etc.) " ; + rdfs:label "has model number" . + + +### https://saref.etsi.org/saref4inma/hasSerialNumber +:hasSerialNumber rdf:type owl:DatatypeProperty ; + rdfs:comment "A relation to describe the serial number of a certain Item, which is unique per Item." ; + rdfs:label "has serial number" . + + +### https://saref.etsi.org/saref4inma/hasUUIDValue +:hasUUIDValue rdf:type owl:DatatypeProperty ; + rdfs:subPropertyOf :hasIDValue ; + rdfs:range xsd:string ; + rdfs:label "has UUID value" . + + +### https://saref.etsi.org/saref4inma/hasVersion +:hasVersion rdf:type owl:DatatypeProperty ; + rdfs:comment "An item has a certain revision or version number, whereas a higher number indicates a newer version."^^rdfs:Literal ; + rdfs:label "has version" . + + +################################################################# +# Classes +################################################################# + +### http://www.w3.org/2004/02/skos/core#ConceptScheme + rdf:type owl:Class . + + +### https://saref.etsi.org/saref4bldg/Building + rdf:type owl:Class . + + +### https://saref.etsi.org/saref4bldg/BuildingSpace + rdf:type owl:Class . + + +### https://saref.etsi.org/saref4bldg/PhysicalObject + rdf:type owl:Class . + + +### https://saref.etsi.org/saref4inma/ActualMeasurement +:ActualMeasurement rdf:type owl:Class ; + rdfs:subClassOf :Measurement ; + owl:disjointWith :ExpectedMeasurement ; + rdfs:comment "Describes whether the measurement is actually measured during the production process. Disjoint with ExpectedMeasurement." ; + rdfs:label "Actual measurement" . + + +### https://saref.etsi.org/saref4inma/Area +:Area rdf:type owl:Class ; + rdfs:subClassOf ; + rdfs:comment "A subclass of s4bldg:BuildingSpace used to define the physical spaces of the building. According to IEC 62264, areas are physical, geographical or logical groupings of resources determined by the site. A site can be divided in areas, whereas areas contain work centers.s." ; + rdfs:label "Area" . + + +### https://saref.etsi.org/saref4inma/Batch +:Batch rdf:type owl:Class ; + rdfs:subClassOf owl:Thing , + , + [ rdf:type owl:Restriction ; + owl:onProperty :consistsOfBatch ; + owl:allValuesFrom :Batch + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasIdentifier ; + owl:allValuesFrom :ID + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :isFeatureOfInterestOf ; + owl:allValuesFrom :Measurement + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :needsEquipment ; + owl:allValuesFrom :ProductionEquipment + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasSize ; + owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; + owl:onClass :Size + ] ; + rdfs:comment "A uniform collection of tangible objects or Lot. This can either be a collection of produced items (i.e. the outflow of products) or a collection of raw material or required material (i.e. the inflow of products). It is assumed that the objects in a batch are similar and thus have shared attributes. Note that this definition is broader than the definition in IEC 61512, which defines a batch as the material that is being produced (whereas in SAREF4INMA a batch can be items or materials). " ; + rdfs:label "Batch" . + + +### https://saref.etsi.org/saref4inma/ExpectedMeasurement +:ExpectedMeasurement rdf:type owl:Class ; + rdfs:subClassOf :Measurement ; + rdfs:comment "Describes whether the measurement is expected (i.e., planned before the production process). Disjoint with ActualMeasurement." ; + rdfs:label "Expected measurement" . + + +### https://saref.etsi.org/saref4inma/Factory +:Factory rdf:type owl:Class ; + rdfs:subClassOf ; + rdfs:comment "A subclass of s4bldg:Building specialized for the purpose of SAREF4INMA, a factory represents one or more organizations sharing a definit mission, goals and objectives which provides an output such as a product (definition taken from IEC 62264). A factory can be divided in one or multiple sites. " ; + rdfs:label "Factory" . + + +### https://saref.etsi.org/saref4inma/GTIN12ID +:GTIN12ID rdf:type owl:Class ; + rdfs:subClassOf :ID ; + rdfs:comment "GTIN-12 (UPC-A) is a 12-digit number used primarily in North America" ; + rdfs:label "GTIN12ID" . + + +### https://saref.etsi.org/saref4inma/GTIN13ID +:GTIN13ID rdf:type owl:Class ; + rdfs:subClassOf :ID ; + rdfs:comment "GTIN-13 (EAN/UCC-13) is a 13-digit number used predominately outside of North America" ; + rdfs:label "GTIN13ID" . + + +### https://saref.etsi.org/saref4inma/GTIN14ID +:GTIN14ID rdf:type owl:Class ; + rdfs:subClassOf :ID ; + rdfs:comment "GTIN-14 (EAN/UCC-14 or ITF-14 or also known as ITF Symbol, SCC-14, DUN-14, UPC Case Code, UPC Shipping Container Code, UCC Code 128, EAN Code 128) is a 14-digit number used to identify trade items at various packaging levels." ; + rdfs:label "GTIN14ID" . + + +### https://saref.etsi.org/saref4inma/GTIN8ID +:GTIN8ID rdf:type owl:Class ; + rdfs:subClassOf :ID ; + rdfs:comment "GTIN-8 (EAN/UCC-8) is an 8-digit number used predominately outside of North America."^^rdfs:Literal ; + rdfs:label "GTIN18ID" . + + +### https://saref.etsi.org/saref4inma/ID +:ID rdf:type owl:Class ; + rdfs:subClassOf , + [ rdf:type owl:Restriction ; + owl:onProperty :hasIDValue ; + owl:someValuesFrom xsd:string + ] ; + rdfs:comment "A unique identifier."^^rdfs:Literal ; + rdfs:label "Identifier" . + + +### https://saref.etsi.org/saref4inma/IRDI +:IRDI rdf:type owl:Class ; + rdfs:subClassOf :ID ; + rdfs:comment "International Registration Data Identifier (IRDI) is based on the international standards ISO/IEC 11179-6, ISO 29002 and ISO 6532 and used in eCl@ss and the Asset Administration Shell as unique identifier."^^rdfs:Literal ; + rdfs:label "IRDI" . + + +### https://saref.etsi.org/saref4inma/Item +:Item rdf:type owl:Class ; + rdfs:subClassOf , + [ rdf:type owl:Restriction ; + owl:onProperty :hasIdentifier ; + owl:someValuesFrom :ID + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :consistsOfItem ; + owl:allValuesFrom :Item + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasIdentifier ; + owl:allValuesFrom :ID + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :isCreatedIn ; + owl:allValuesFrom :ItemBatch + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :isFeatureOfInterestOf ; + owl:allValuesFrom :Measurement + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :isCreatedIn ; + owl:qualifiedCardinality "1"^^xsd:nonNegativeInteger ; + owl:onClass :ItemBatch + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasIDValue ; + owl:allValuesFrom xsd:string + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasSerialNumber ; + owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; + owl:onDataRange xsd:string + ] ; + rdfs:comment "A tangible object which can be unique identified, for example, with a GTIN in the form of a barcode/QR/RFID tag. An item product can be the result of the organization's production process (i.e. outflow of objects/goods) or can be uniquely identifiable material (i.e. inflow of objects/supplies). Each item is part of exactly one ItemBatch, whereas each ItemBatch contains only Items which have similar properties. An item can consists of multiple Batches and other Items (i.e. subassemblies)."^^rdfs:Literal ; + rdfs:label "Item" . + + +### https://saref.etsi.org/saref4inma/ItemBatch +:ItemBatch rdf:type owl:Class ; + rdfs:subClassOf :Batch , + [ rdf:type owl:Restriction ; + owl:onProperty :belongsToCategory ; + owl:allValuesFrom :ItemCategory + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :creates ; + owl:allValuesFrom :Item + ] ; + rdfs:comment "A uniform collection of tangible objects which are relevant for the prodcution process. The ItemBatch consists of a set of objects with similar properties (e.g. a certain type of sensors or metal sheets). The difference between ItemBatch and MaterialBatch is that individual items can be traced in a ItemBatch, whereas this is not possible in a MaterialBatch, meaning that, for example, it is possible to trace the individual metal sheet used in a ItemBatch. This implies that the objects in an ItemBatch have an unique identifier (e.g. a GTIN code in the form of a barcode/QR-code or RFID tag)."^^rdfs:Literal ; + rdfs:label "Item Batch" . + + +### https://saref.etsi.org/saref4inma/ItemCategory +:ItemCategory rdf:type owl:Class ; + rdfs:subClassOf [ rdf:type owl:Restriction ; + owl:onProperty :hasIdentifier ; + owl:someValuesFrom :ID + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasIdentifier ; + owl:allValuesFrom :ID + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasUpdate ; + owl:allValuesFrom :ItemCategory + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :isCategoryOf ; + owl:allValuesFrom :ItemBatch + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :isProducedBy ; + owl:allValuesFrom :ProductionEquipmentCategory + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasModelNumber ; + owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; + owl:onDataRange xsd:string + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasVersion ; + owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; + owl:onDataRange xsd:string + ] ; + rdfs:comment "An ItemCategory describes a single type of item in terms of its static properties. Each ItemCategory can have multiple related ItemBatches, which all contain individual Items. The essential properties of each Item in all ItemBatches are the same. However, each batch might use different MaterialBatches and/or different ProductionEquipment. Therefore, small deviations between batches might occur, while the essential properties of all Items related to an ItemCategory are similar." ; + rdfs:label "Item category" . + + +### https://saref.etsi.org/saref4inma/MaterialBatch +:MaterialBatch rdf:type owl:Class ; + rdfs:subClassOf :Batch , + [ rdf:type owl:Restriction ; + owl:onProperty :belongsToCategory ; + owl:allValuesFrom :MaterialCategory + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasCertificate ; + owl:allValuesFrom xsd:string + ] ; + rdfs:comment "A uniform collection of tangible raw material which are relevant for the prodcution process. The MaterialBatch can consists of a set of objects with similar properties (e.g. a certain type of screws) or a stock of homogeen material (e.g. oil, water). The difference between MaterialBatch and ItemBatch is that individual items cannot be traced in a MaterialBatch, whereas this is possible in an ItemBatch, meaning that, for example, it is not possible to trace the individual screw used in a MaterialBatch."^^rdfs:Literal ; + rdfs:label "Material Batch" . + + +### https://saref.etsi.org/saref4inma/MaterialCategory +:MaterialCategory rdf:type owl:Class ; + rdfs:subClassOf [ rdf:type owl:Restriction ; + owl:onProperty :isCategoryOf ; + owl:allValuesFrom :MaterialBatch + ] ; + rdfs:comment "A MaterialCategory describes a category of material in terms of its static properties. Examples are: a certain category of steel or plastic. Each MaterialCategory can have multiple related MaterialBatches, which represent the physical material. The essential properties of the material in all MaterialBatches are the same. However, each batch might use different MaterialBatches and/or different ProductionEquipment. Therefore, small deviations between batches might occur, while the essential properties of the material related to an MaterialCategory are similar." ; + rdfs:label "Material category" . + + +### https://saref.etsi.org/saref4inma/Measurement +:Measurement rdf:type owl:Class ; + rdfs:subClassOf , + [ rdf:type owl:Restriction ; + owl:onProperty :hasFeatureOfInterest ; + owl:allValuesFrom [ rdf:type owl:Class ; + owl:unionOf ( :Batch + :Item + ) + ] + ] ; + rdfs:comment "A subclass of saref:Measurement that represents the measured value made over a property. It is also linked to the unit of measure in which the value is expressed and the timestamp of the measurement. The saref4imna:Measurement can be linked to individual Batches or Items. Moreover, the Measurement can be an ExpectedMeasurement (i.e. the value which is planned) or the ActualMeasurement (i.e. the value measured during production), which enables to check for deviations between the planned and actual values." ; + rdfs:label "Measurement" . + + +### https://saref.etsi.org/saref4inma/ProductionEquipment +:ProductionEquipment rdf:type owl:Class ; + rdfs:subClassOf , + , + [ rdf:type owl:Restriction ; + owl:onProperty :belongsToCategory ; + owl:allValuesFrom :ProductionEquipmentCategory + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasIdentifier ; + owl:allValuesFrom :ID + ] , + [ rdf:type owl:Restriction ; + owl:onProperty ; + owl:allValuesFrom :ProductionEquipmentFunction + ] , + [ rdf:type owl:Restriction ; + owl:onProperty ; + owl:allValuesFrom + ] , + [ rdf:type owl:Restriction ; + owl:onProperty ; + owl:allValuesFrom :Measurement + ] , + [ rdf:type owl:Restriction ; + owl:onProperty ; + owl:allValuesFrom + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasIDValue ; + owl:allValuesFrom xsd:string + ] ; + rdfs:comment "A production equipment is a specialization of a saref:Device and s4bldg:PhysicalObject that can produce items in a manufacturing process. This class represents an individual production equipment device and includes their specification in terms of functions, states and services. Different types of machines can be defined under this class as needed, for example, LaserCuttingMachine (i.e., a type of production equipment to cut steel material), MillingMachine (i.e., to drill holes in steel material), MouldingMachine (i.e., to mold liquid material, such as iron or plastic, and let it harden in a certain shape), WeldingMachine (i.e., join parts of material, such as steel, together), etc." ; + rdfs:label "ProductionEquipment" . + + +### https://saref.etsi.org/saref4inma/ProductionEquipmentCategory +:ProductionEquipmentCategory rdf:type owl:Class ; + rdfs:subClassOf [ rdf:type owl:Restriction ; + owl:onProperty :isCategoryOf ; + owl:allValuesFrom :ProductionEquipment + ] , + [ rdf:type owl:Restriction ; + owl:onProperty :hasModelNumber ; + owl:maxQualifiedCardinality "1"^^xsd:nonNegativeInteger ; + owl:onDataRange xsd:string + ] ; + rdfs:comment "A ProductionEquipmentCategory represents a certain type of production equipment, which is generally static over time. More concretely, the ProductionEquipmentCategory represents a certain model and brand of a production equipment. Each ProductionEquipmentCategory can have multiple related ProductionEquipment, which represent the actual individual machines. Moreover, each ItemCategory can be produced by multiple ProductionEquipmentCategories."^^rdfs:Literal ; + rdfs:label "Production equipment category" . + + +### https://saref.etsi.org/saref4inma/ProductionEquipmentFunction +:ProductionEquipmentFunction rdf:type owl:Class ; + rdfs:subClassOf owl:Thing , + ; + rdfs:label "Production equipment function" . + + +### https://saref.etsi.org/saref4inma/Site +:Site rdf:type owl:Class ; + rdfs:subClassOf ; + rdfs:comment "A subclass of s4bldg:BuildingSpace used to define the physical spaces of the building. According to IEC 62264, sites are identified physical, geographical, and/or logical component groupings of a manufacturing enterprise. A factory can be divided in sites, whereas sites can be divided areas" ; + rdfs:label "Site" . + + +### https://saref.etsi.org/saref4inma/Size +:Size rdf:type owl:Class ; + rdfs:subClassOf ; + rdfs:comment "The amount of certain objects in a collection (e.g., size of a material batch)." ; + rdfs:label "Size" . + + +### https://saref.etsi.org/saref4inma/UUID +:UUID rdf:type owl:Class ; + rdfs:subClassOf :ID ; + rdfs:comment "A universally unique identifier (UUID) is a 128-bit number used to identify items and is also known as: globally unique identifier (GUID). In its canonical textual representation, the sixteen octets of a UUID are represented as 32 hexadecimal (base 16) digits, displayed in five groups separated by hyphens, in the form 8-4-4-4-12 for a total of 36 characters (32 alphanumeric characters and four hyphens). UUID are documented in ISO/IEC 11578:1996 \"Information technology – Open Systems Interconnection – Remote Procedure Call (RPC)\" and in ITU-T Rec. X.667 | ISO/IEC 9834-8:2005." ; + rdfs:label "UUID" . + + +### https://saref.etsi.org/saref4inma/WorkCenter +:WorkCenter rdf:type owl:Class ; + rdfs:subClassOf :ProductionEquipment ; + rdfs:comment "A subclass of s4inma:ProductionEquipment (and therefore of s4bld:PhysicalObject). It is an equipment element under an area in a role-based equipment hierarchy that performs production, storage or material movement (definition taken from IEC 62264). An Area contains work centers." ; + rdfs:label "Work center" . + + +### https://saref.etsi.org/core/Device + rdf:type owl:Class . + + +### https://saref.etsi.org/core/FeatureOfInterest + rdf:type owl:Class . + + +### https://saref.etsi.org/core/Function + rdf:type owl:Class . + + +### https://saref.etsi.org/core/Measurement + rdf:type owl:Class . + + +### https://saref.etsi.org/core/Property + rdf:type owl:Class . + + +### https://saref.etsi.org/core/State + rdf:type owl:Class . + + +################################################################# +# General axioms +################################################################# + +[ rdf:type owl:AllDisjointClasses ; + owl:members ( :Area + :Site + :WorkCenter + ) +] . + + +### Generated by the OWL API (version 5.1.9) https://github.com/owlcs/owlapi/ \ No newline at end of file -- GitLab