Skip to content

Commit

Permalink
Merge pull request #299 from tom-rm-meyer-ISST/feat/shared-uom
Browse files Browse the repository at this point in the history
[New Model]: Shared Aspect for Quantity with Unit of Measure
  • Loading branch information
agg3fe authored Nov 3, 2023
2 parents 703971a + 6d05162 commit bad7e99
Show file tree
Hide file tree
Showing 4 changed files with 305 additions and 1 deletion.
2 changes: 1 addition & 1 deletion .github/workflows/bulk-validation.yml
Original file line number Diff line number Diff line change
Expand Up @@ -28,7 +28,7 @@ jobs:
- name: validate models
uses: ./.github/actions/model-validation
with:
bamm_version: 2.3.1
bamm_version: 2.3.2
bulk: true
- name: Archive
uses: actions/upload-artifact@v3
Expand Down
291 changes: 291 additions & 0 deletions io.catenax.shared.quantity/1.0.0/Quantity.ttl
Original file line number Diff line number Diff line change
@@ -0,0 +1,291 @@
#######################################################################
# Copyright (c) 2023 ISTOS GmbH (a member of the DMG Mori Group)
# Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V. (represented by Fraunhofer ISST)
# Copyright (c) 2023 TRUMPF Werkzeugmaschinen SE + Co. KG
# Copyright (c) 2023 Volkswagen AG
# Copyright (c) 2023 BASF SE
# Copyright (c) 2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG)
# Copyright (c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V. (represented by Fraunhofer IML)
# Copyright (c) 2023 Henkel AG & Co. KGaA
# Copyright (c) 2023 Mercedes Benz AG
# Copyright (c) 2023 SAP SE
# Copyright (c) 2023 SupplyOn AG
# Copyright (c) 2023 ZF Friedrichshafen AG
# Copyright (c) 2023 CGI Deutschland B.V. & Co. KG
# Copyright (c) 2023 T-Systems International GmbH
# Copyright (c) 2023 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
#
# This work is made available under the terms of the
# Creative Commons Attribution 4.0 International (CC-BY-4.0) license,
# which is available at
# https://creativecommons.org/licenses/by/4.0/legalcode.
#
# SPDX-License-Identifier: CC-BY-4.0
#######################################################################
@prefix samm: <urn:samm:org.eclipse.esmf.samm:meta-model:2.0.0#>.
@prefix samm-c: <urn:samm:org.eclipse.esmf.samm:characteristic:2.0.0#>.
@prefix samm-e: <urn:samm:org.eclipse.esmf.samm:entity:2.0.0#>.
@prefix unit: <urn:samm:org.eclipse.esmf.samm:unit:2.0.0#>.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#>.
@prefix : <urn:samm:io.catenax.shared.quantity:1.0.0#>.

:Quantity a samm:Aspect;
samm:preferredName "Quantity with Unit of Measure"@en;
samm:description "The aspect may be reused whenever any kind of Quantity and / or unit of measure is used. One can use all defined units via the item unit or differentiate via mass, miscellaneous, countable, linear, area and volume units."@en;
samm:properties (:massProperty :linearProperty :areaProperty :volumeProperty :countProperty :timeProperty :miscProperty :itemQuantityProperty);
samm:operations ();
samm:events ().
:massProperty a samm:Property;
samm:preferredName "Mass related property"@en;
samm:description "This property defines unit and value for mass related properties."@en;
samm:characteristic :MassCharacteristic.
:linearProperty a samm:Property;
samm:preferredName "Linear property"@en;
samm:description "This property defines unit and value for linear properties."@en;
samm:characteristic :LinearCharacteristic.
:areaProperty a samm:Property;
samm:preferredName "Area related property"@en;
samm:description "This property defines unit and value for area related properties."@en;
samm:characteristic :AreaCharacteristic.
:volumeProperty a samm:Property;
samm:preferredName "Volume related property"@en;
samm:description "This property defines unit and value for volume related properties."@en;
samm:characteristic :VolumeCharacteristic.
:countProperty a samm:Property;
samm:preferredName "Countable property"@en;
samm:description "This property defines unit and value for countable properties."@en;
samm:characteristic :CountQuantityCharacteristic.
:timeProperty a samm:Property;
samm:preferredName "Time related property"@en;
samm:description "This property defines unit and value for time related properties."@en;
samm:characteristic :TimeCharacteristic.
:miscProperty a samm:Property;
samm:preferredName "Miscellaneous unit property"@en;
samm:description "This property defines unit and value for miscellaneous properties."@en;
samm:characteristic :MiscQuantityCharacteristic.
:itemQuantityProperty a samm:Property;
samm:preferredName "Item Quantity property"@en;
samm:description "This property defines common units and the value for items. Items may be measured as mass, countable, miscellaneous, linear, area or volume."@en;
samm:characteristic :ItemQuantityCharacteristic.
:MassCharacteristic a samm:Characteristic;
samm:preferredName "Mass Characteristic"@en;
samm:description "Characteristic for mass measurements of an item."@en;
samm:dataType :MassEntity.
:LinearCharacteristic a samm:Characteristic;
samm:preferredName "Linear Characteristic"@en;
samm:description "Characteristic for linear measurements of an item."@en;
samm:dataType :LinearEntity.
:AreaCharacteristic a samm:Characteristic;
samm:preferredName "Area Characteristic"@en;
samm:description "Characteristic for area measurements of an item."@en;
samm:dataType :AreaEntity.
:VolumeCharacteristic a samm:Characteristic;
samm:preferredName "Volume Characteristic"@en;
samm:description "Characteristic for volume measurements of an item."@en;
samm:dataType :VolumeEntity.
:CountQuantityCharacteristic a samm:Characteristic;
samm:preferredName "Count Quantity Characteristic"@en;
samm:description "Characteristic for countable measurements of an item."@en;
samm:dataType :CountQuantityEntity.
:TimeCharacteristic a samm:Characteristic;
samm:preferredName "Time Characteristic"@en;
samm:description "Characteristic for time measurements of an item."@en;
samm:dataType :TimeEntity.
:MiscQuantityCharacteristic a samm:Characteristic;
samm:preferredName "Miscellaneous Quantity Characteristic"@en;
samm:description "Characteristic for miscellaneous measurements of an item."@en;
samm:dataType :MiscQuantityEntity.
:ItemQuantityCharacteristic a samm:Characteristic;
samm:preferredName "Item Quantity Characteristic"@en;
samm:description "Characteristic for measurements of an item (mass, count, linear, area, volume, misc)."@en;
samm:dataType :ItemQuantityEntity.
:quantityValue a samm:Property;
samm:preferredName "Quantity Value"@en;
samm:description "The quantity value associated with the unit."@en;
samm:characteristic :QuantityValueCharacteristic;
samm:exampleValue "20.5"^^xsd:float.
:QuantityValueCharacteristic a samm-c:Quantifiable;
samm:preferredName "Quantity Value Characteristic"@en;
samm:description "The quantity value associated with the unit expressed as float."@en;
samm:dataType xsd:float.
:MassEntity a samm:Entity;
samm:preferredName "Mass Entity"@en;
samm:description "Entity for mass measurements of an item with an unit and value."@en;
samm:properties ([
samm:property :quantityValue;
samm:payloadName "value"
] [
samm:property :massUnit;
samm:payloadName "unit"
]).
:massUnit a samm:Property;
samm:preferredName "Mass Unit"@en;
samm:description "The unit of a mass related attribute."@en;
samm:characteristic :MassUnitEnumeration;
samm:exampleValue "unit:kilogram"^^samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>.
:MassUnitEnumeration a samm-c:Enumeration;
samm:preferredName "Mass Unit Enumeration"@en;
samm:description "Enumeration for mass units."@en;
samm:dataType samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>;
samm-c:values ("unit:gram"^^samm:curie "unit:kilogram"^^samm:curie "unit:tonneMetricTon"^^samm:curie "unit:tonUsOrShortTonUkorus"^^samm:curie "unit:ounceAvoirdupois"^^samm:curie "unit:pound"^^samm:curie).
:LinearEntity a samm:Entity;
samm:preferredName "Linear Entity"@en;
samm:description "Entity for linear measurements of an item with an unit and value."@en;
samm:properties ([
samm:property :quantityValue;
samm:payloadName "value"
] [
samm:property :linearUnit;
samm:payloadName "unit"
]).
:linearUnit a samm:Property;
samm:preferredName "Linear Unit"@en;
samm:description "The unit of a linear attribute."@en;
samm:characteristic :LinearUnitEnumeration;
samm:exampleValue "unit:millimetre"^^samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>.
:LinearUnitEnumeration a samm-c:Enumeration;
samm:preferredName "Linear Unit Enumeration"@en;
samm:description "The unit of a linear attribute that may be used for height, width, length and diameter."@en;
samm:dataType samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>;
samm-c:values ("unit:millimetre"^^samm:curie "unit:centimetre"^^samm:curie "unit:metre"^^samm:curie "unit:kilometre"^^samm:curie "unit:inch"^^samm:curie "unit:foot"^^samm:curie "unit:yard"^^samm:curie).
:AreaEntity a samm:Entity;
samm:preferredName "Area Entity"@en;
samm:description "Entity for area measurements of an item with an unit and value."@en;
samm:properties ([
samm:property :quantityValue;
samm:payloadName "value"
] [
samm:property :areaUnit;
samm:payloadName "unit"
]).
:areaUnit a samm:Property;
samm:preferredName "Area Unit"@en;
samm:description "The unit of a area related attribute."@en;
samm:characteristic :AreaUnitEnumeration;
samm:exampleValue "unit:litre"^^samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>.
:AreaUnitEnumeration a samm-c:Enumeration;
samm:preferredName "Area Unit Enumeration"@en;
samm:description "The unit of an area attribute."@en;
samm:dataType samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>;
samm-c:values ("unit:squareCentimetre"^^samm:curie "unit:squareMetre"^^samm:curie "unit:squareInch"^^samm:curie "unit:squareFoot"^^samm:curie "unit:squareYard"^^samm:curie).
:VolumeEntity a samm:Entity;
samm:preferredName "Volume Entity"@en;
samm:description "Entity for volume measurements of an item with an unit and value."@en;
samm:properties ([
samm:property :quantityValue;
samm:payloadName "value"
] [
samm:property :volumeUnit;
samm:payloadName "unit"
]).
:volumeUnit a samm:Property;
samm:preferredName "Volume Unit"@en;
samm:description "The unit of a volume related attribute."@en;
samm:characteristic :VolumeUnitEnumeration;
samm:exampleValue "unit:litre"^^samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>.
:VolumeUnitEnumeration a samm-c:Enumeration;
samm:preferredName "Volume Unit Enumeration"@en;
samm:description "Enumeration for volume units."@en;
samm:dataType samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>;
samm-c:values ("unit:cubicMetre"^^samm:curie "unit:litre"^^samm:curie "unit:millilitre"^^samm:curie "unit:cubicCentimetre"^^samm:curie "unit:cubicInch"^^samm:curie "unit:cubicFoot"^^samm:curie "unit:cubicYard"^^samm:curie "unit:hectolitre"^^samm:curie).
:countUnit a samm:Property;
samm:preferredName "Count Unit"@en;
samm:description "The unit of a countable attribute."@en;
samm:characteristic :CountUnitEnumeration;
samm:exampleValue "unit:piece"^^samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>.
:CountUnitEnumeration a samm-c:Enumeration;
samm:preferredName "Count Unit Enumeration"@en;
samm:description "Enumeration for count units."@en;
samm:dataType samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>;
samm-c:values ("unit:piece"^^samm:curie "unit:count"^^samm:curie "unit:pair"^^samm:curie "unit:page"^^samm:curie "unit:cycle"^^samm:curie).
:timeUnit a samm:Property;
samm:preferredName "Time Unit"@en;
samm:description "The unit of a time attribute."@en;
samm:characteristic :TimeUnitEnumeration;
samm:exampleValue "unit:seconds"^^samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>.
:TimeUnitEnumeration a samm-c:Enumeration;
samm:preferredName "Time Unit Enumeration"@en;
samm:description "Enumeration for time units."@en;
samm:dataType samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>;
samm-c:values ("unit:secondUnitOfTime"^^samm:curie "unit:minuteUnitOfTime"^^samm:curie "unit:hourUnitOfTime"^^samm:curie "unit:day"^^samm:curie).
:miscUnit a samm:Property;
samm:preferredName "Misc Unit"@en;
samm:description "The unit of a miscellaneous attribute."@en;
samm:characteristic :MiscUnitEnumeration;
samm:exampleValue "unit:kilowattHour"^^samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>.
:MiscUnitEnumeration a samm-c:Enumeration;
samm:preferredName "Count Unit Enumeration"@en;
samm:description "Enumeration for miscellaneous units."@en;
samm:dataType samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>;
samm-c:values ("unit:kilowattHour"^^samm:curie).
:ItemQuantityEntity a samm:Entity;
samm:preferredName "Item Quantity Entity"@en;
samm:description "Entity for common measurements of an item (mass, count, linear, area, volume, misc) with an unit and a value."@en;
samm:properties ([
samm:property :quantityValue;
samm:payloadName "value"
] [
samm:property :itemUnit;
samm:payloadName "unit"
]).
:itemUnit a samm:Property;
samm:preferredName "Item Unit"@en;
samm:description "The unit of an item. Common units may be related to mass, count, linear, area, volume or misc."@en;
samm:characteristic :ItemUnitEnumeration;
samm:exampleValue "unit:piece"^^samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>.
:ItemUnitEnumeration a samm-c:Enumeration;
samm:preferredName "Item Unit Enumeration"@en;
samm:description "Enumeration for common item units."@en;
samm:dataType samm:curie;
samm:see <https://eclipse-esmf.github.io/samm-specification/2.1.0/index.html>;
samm-c:values ("unit:piece"^^samm:curie "unit:set"^^samm:curie "unit:pair"^^samm:curie "unit:page"^^samm:curie "unit:cycle"^^samm:curie "unit:kilowattHour"^^samm:curie "unit:gram"^^samm:curie "unit:kilogram"^^samm:curie "unit:tonneMetricTon"^^samm:curie "unit:tonUsOrShortTonUkorus"^^samm:curie "unit:ounceAvoirdupois"^^samm:curie "unit:pound"^^samm:curie "unit:metre"^^samm:curie "unit:centimetre"^^samm:curie "unit:kilometre"^^samm:curie "unit:inch"^^samm:curie "unit:foot"^^samm:curie "unit:yard"^^samm:curie "unit:squareCentimetre"^^samm:curie "unit:squareMetre"^^samm:curie "unit:squareInch"^^samm:curie "unit:squareFoot"^^samm:curie "unit:squareYard"^^samm:curie "unit:cubicCentimetre"^^samm:curie "unit:cubicMetre"^^samm:curie "unit:cubicInch"^^samm:curie "unit:cubicFoot"^^samm:curie "unit:cubicYard"^^samm:curie "unit:litre"^^samm:curie "unit:millilitre"^^samm:curie "unit:hectolitre"^^samm:curie "unit:secondUnitOfTime"^^samm:curie "unit:minuteUnitOfTime"^^samm:curie "unit:hourUnitOfTime"^^samm:curie "unit:day"^^samm:curie).
:CountQuantityEntity a samm:Entity;
samm:preferredName "Count Quantity Entity"@en;
samm:description "Entity for countable measurements of an item with an unit and a value."@en;
samm:properties ([
samm:property :quantityValue;
samm:payloadName "value"
] [
samm:property :countUnit;
samm:payloadName "unit"
]).
:TimeEntity a samm:Entity;
samm:preferredName "Time Entity"@en;
samm:description "Entity for time measurements of an item with an unit and a value."@en;
samm:properties ([
samm:property :quantityValue;
samm:payloadName "value"
] [
samm:property :timeUnit;
samm:payloadName "unit"
]).
:MiscQuantityEntity a samm:Entity;
samm:preferredName "Miscellaneous Quantity Entity"@en;
samm:description "Entity for miscellaneous measurements of an item with an unit and a value."@en;
samm:properties ([
samm:property :quantityValue;
samm:payloadName "value"
] [
samm:property :miscUnit;
samm:payloadName "unit"
]).
1 change: 1 addition & 0 deletions io.catenax.shared.quantity/1.0.0/metadata.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{"status": "release"}
12 changes: 12 additions & 0 deletions io.catenax.shared.quantity/RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -0,0 +1,12 @@
# Changelog
All notable changes to this model will be documented in this file.

## [1.0.0] - 2023-10-23
### Added
- initial model created

### Changed
n/a

### Removed
n/a

0 comments on commit bad7e99

Please sign in to comment.