From 7f4071979eef48c7d2e2c793ffcd03ea81a0ab3b Mon Sep 17 00:00:00 2001 From: maxim-bo <125879132+maxim-bo@users.noreply.github.com> Date: Mon, 7 Aug 2023 21:01:08 +0200 Subject: [PATCH 01/22] added new properties: partGeometry and manufacturerId --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 211 ++++++++++++++++++ .../2.0.0/metadata.json | 1 + .../RELEASE_NOTES.md | 8 + 3 files changed, 220 insertions(+) create mode 100644 io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl create mode 100644 io.catenax.single_level_bom_as_specified/2.0.0/metadata.json diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl new file mode 100644 index 000000000..77c95e8b2 --- /dev/null +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -0,0 +1,211 @@ +####################################################################### +# Copyright (c) 2022 T-Systems International GmbH +# Copyright (c) 2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) +# Copyright (c) 2022 Volkswagen AG +# Copyright (c) 2022 Robert Bosch GmbH +# Copyright (c) 2022 ZF Friedrichshafen AG +# Copyright (c) 2022 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 bamm: . +@prefix bamm-c: . +@prefix bamm-e: . +@prefix unit: . +@prefix rdf: . +@prefix rdfs: . +@prefix xsd: . +@prefix : . + +:SingleLevelBomAsSpecified a bamm:Aspect; + bamm:preferredName "Single Level BOM as Specified"@en; + bamm:description "The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This “top-down” view is in contrast to the “bottom-up” view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; + bamm:properties (:catenaXId :childParts :catenaXId :childParts :manufacturerId); + bamm:operations (); + bamm:events (). +:catenaXId a bamm:Property; + bamm:preferredName "Catena-X ID"@en; + bamm:description "A unique reference within Catena-X of this items"@en; + bamm:characteristic :CatenaXIdTrait; + bamm:exampleValue "urn:uuid:055c1128-0375-47c8-98de-7cf802c3241d". +:childParts a bamm:Property; + bamm:preferredName "Child Parts"@en; + bamm:description "The child part of the observed parent item"@en; + bamm:characteristic :ChildPartsCharacteristic. +:CatenaXIdTrait a bamm-c:Trait; + bamm-c:baseCharacteristic bamm-c:Text; + bamm-c:constraint :Uuidv4RegularExpression. +:ownerPartId a bamm:Property; + bamm:preferredName "Owner Part ID"@en; + bamm:description "This is the key field of the component which usually keeps the part numbers used in after-sales, e.g. when repairing broken parts and searching for a replacement. This ownerPartId itself isn't usually bound to one part version, with the assumption that all part versions with the same ownerPartId are mutually interchangeable."@en; + bamm:characteristic :CatenaXIdTrait; + bamm:exampleValue "uuid!". +:Uuidv4RegularExpression a bamm-c:RegularExpressionConstraint; + bamm:preferredName "Catena-X ID Regular Expression"@en; + bamm:description "The provided regular expression ensures that the UUID is composed of five groups of characters separated by hyphens, in the form 8-4-4-4-12 for a total of 36 characters (32 hexadecimal characters and 4 hyphens)."@en; + bamm:value "(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$)|(^urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$)". +:ChildPartsCharacteristic a bamm-c:Set; + bamm:preferredName "Child Parts Characteristic"@en; + bamm:description "The characteristic of the child part property"@en; + bamm:dataType :ChildPartsEntity. +:ChildPartsEntity a bamm:Entity; + bamm:preferredName "Child Parts Entity"@en; + bamm:description "Encapsulates the properties describing the child part item"@en; + bamm:properties (:childPartsCategory :part :childPartsCategory :part :childCatenaXId). +:childPartsCategory a bamm:Property; + bamm:preferredName "Child Parts Category"@en; + bamm:description "The BomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This “top-down” view is in contrast to the “bottom-up” view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; + bamm:characteristic bamm-c:Text; + bamm:exampleValue "e.g. vehicle, winter wheels, bicycle rack". +:part a bamm:Property; + bamm:preferredName "Part"@en; + bamm:description "The description of the part in the primary language of the production facility of the product owner."@en; + bamm:characteristic :PartCharacteristic. +:childCatenaXId a bamm:Property; + bamm:preferredName "Child CatenaXId"@en; + bamm:description "Describes the Catena-X ID of the child part"@en; + bamm:characteristic bamm-c:Text; + bamm:exampleValue "urn:uuid:218b26f4-4a0b-4a7f-b2c1-d248927718bf ". +:PartCharacteristic a bamm-c:Set; + bamm:preferredName "Part Characteristic"@en; + bamm:description "Characteristic of the part."@en; + bamm:dataType :PartEntity. +:PartEntity a bamm:Entity; + bamm:preferredName "Part Entity"@en; + bamm:description "Entity encapsulating the properies describing a part"@en; + bamm:properties (:ownerPartId [ + bamm:property :partVersion; + bamm:optional "true"^^xsd:boolean +] [ + bamm:property :partQuantity; + bamm:optional "true"^^xsd:boolean +] [ + bamm:property :partDescription; + bamm:optional "true"^^xsd:boolean +] [ + bamm:property :partClassification; + bamm:optional "true"^^xsd:boolean +] [ + bamm:property :lastModifiedOn; + bamm:optional "true"^^xsd:boolean +] [ + bamm:property :createdOn; + bamm:optional "true"^^xsd:boolean +] :ownerPartId [ + bamm:property :partVersion; + bamm:optional "true"^^xsd:boolean +] [ + bamm:property :partQuantity; + bamm:optional "true"^^xsd:boolean +] [ + bamm:property :partDescription; + bamm:optional "true"^^xsd:boolean +] [ + bamm:property :partClassification; + bamm:optional "true"^^xsd:boolean +] [ + bamm:property :lastModifiedOn; + bamm:optional "true"^^xsd:boolean +] [ + bamm:property :createdOn; + bamm:optional "true"^^xsd:boolean +] [ + bamm:property :partGeometry; + bamm:optional "true"^^xsd:boolean +]). +:partVersion a bamm:Property; + bamm:preferredName "Part Version"@en; + bamm:description "This is the version of the part. The engineering will at times supercede an older part version by a newer one, which might have different material aspects, physical dimensions etc., still maintaining compatibility."@en; + bamm:characteristic bamm-c:Text; + bamm:exampleValue "05". +:partQuantity a bamm:Property; + bamm:preferredName "Part Quantity"@en; + bamm:description "This is the quantity how often this part is in the item."@en; + bamm:characteristic :PartQuantityCharacteristic. +:partDescription a bamm:Property; + bamm:preferredName "Part Description"@en; + bamm:description "The description of the part in the primary language of the production facility of the product owner."@en; + bamm:characteristic bamm-c:Text; + bamm:exampleValue "The steering wheel is nice and round". +:partClassification a bamm:Property; + bamm:preferredName "Part Classification"@en; + bamm:description "The part classification."@en; + bamm:characteristic :PartClassificationCharacteristic. +:lastModifiedOn a bamm:Property; + bamm:preferredName "Last Modified On"@en; + bamm:description "The time the item was modified the last time"@en; + bamm:characteristic bamm-c:Timestamp; + bamm:exampleValue "2022-02-03T14:48:54.709Z"^^xsd:dateTime. +:createdOn a bamm:Property; + bamm:preferredName "Created On"@en; + bamm:description "The time the item was created on"@en; + bamm:characteristic bamm-c:Timestamp; + bamm:exampleValue "2022-02-03T14:48:54.709Z"^^xsd:dateTime. +:partGeometry a bamm:Property; + bamm:preferredName "Part Geometry"@en; + bamm:description "Some parts are intended to be used on either the left or right side, e.g. mirrors, hence this entity describes on which side a part is to be used"@en; + bamm:characteristic :PartGeometryCharacteristic; + bamm:exampleValue "L - Left". +:PartQuantityCharacteristic a bamm:Characteristic; + bamm:preferredName "Part Quantity Characteristic"@en; + bamm:description "The characteristic of the part quantity."@en; + bamm:dataType :PartQuantityEntity. +:PartQuantityEntity a bamm:Entity; + bamm:preferredName "Part Quantity Entity"@en; + bamm:description "The entity encapsulating the properties describing the quantity of a part."@en; + bamm:properties (:measurementUnit :quantityNumber :measurementUnit :quantityNumber). +:measurementUnit a bamm:Property; + bamm:preferredName "Measurement Unit"@en; + bamm:description "Unit of measurement for the quantity of serialized objects."@en; + bamm:characteristic bamm-c:UnitReference; + bamm:exampleValue "kW"^^bamm:curie. +:quantityNumber a bamm:Property; + bamm:preferredName "Quantity Number"@en; + bamm:description "The number of objects related to the measurement unit."@en; + bamm:characteristic :NumberOfObjects; + bamm:exampleValue "350"^^xsd:double. +:NumberOfObjects a bamm:Characteristic; + bamm:preferredName "Number of Objects"@en; + bamm:description "Quantifiable number of objects in reference to the measurementUnit."@en; + bamm:dataType xsd:double. +:PartClassificationCharacteristic a bamm-c:Set; + bamm:preferredName "Part Classification Characteristic"@en; + bamm:description "The characteristic of the part classification."@en; + bamm:dataType :PartClassificationEntity. +:PartClassificationEntity a bamm:Entity; + bamm:preferredName "Part Classification Entity"@en; + bamm:description "The entity encapsulating the properties of the part classification."@en; + bamm:properties (:key :value :key :value). +:key a bamm:Property; + bamm:preferredName "Key"@en; + bamm:description "Key within the classification."@en; + bamm:characteristic bamm-c:Text; + bamm:exampleValue "BMW:PartFamily". +:value a bamm:Property; + bamm:preferredName "Value"@en; + bamm:description "Value within the classification."@en; + bamm:characteristic bamm-c:Text; + bamm:exampleValue "STEEWHL". +:PartGeometryCharacteristic a bamm-c:Enumeration; + bamm:preferredName "Part Geometry Characteristic"@en; + bamm:description "Describes the characteristic of the left or right mark entity with its possible values (left or right)"@en; + bamm:dataType xsd:string; + bamm-c:values ("L - Left" "R - Right"). +:manufacturerId a bamm:Property; + bamm:preferredName "Manufacturer ID"@en; + bamm:description "The ID of the initial issuer of the single level BoMAsSpecified"@en; + bamm:characteristic :Text; + bamm:exampleValue "BPNL1234567890LR". +:Text a bamm:Characteristic; + bamm:preferredName "Text"@en; + bamm:description "Describes a Property which contains plain text. This is intended exclusively for human readable strings, not for identifiers, measurement values, etc."@en; + bamm:dataType xsd:string. diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/metadata.json b/io.catenax.single_level_bom_as_specified/2.0.0/metadata.json new file mode 100644 index 000000000..a182c7b85 --- /dev/null +++ b/io.catenax.single_level_bom_as_specified/2.0.0/metadata.json @@ -0,0 +1 @@ +{ "status" : "release"} \ No newline at end of file diff --git a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md index af162d886..53731580b 100644 --- a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md +++ b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md @@ -3,6 +3,14 @@ All notable changes to this model will be documented in this file. ## [Unreleased] +## [1.0.0] - 2023-06-30 +### Added +- added new properties: partGeometry (represting the side a part belongs to, e.g. left or right) and manufacturerId (BPN of the manufacturer) + +### Changed + +### Removed + ## [1.0.0] - 2023-06-30 ### Added - added new properties: createdOn, lastModifiedOn From d297efcd359333fd43259bf78108ee02286f60e1 Mon Sep 17 00:00:00 2001 From: maxim-bo <125879132+maxim-bo@users.noreply.github.com> Date: Mon, 7 Aug 2023 21:29:39 +0200 Subject: [PATCH 02/22] fixed release notes date --- io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md index 53731580b..c63a961b2 100644 --- a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md +++ b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md @@ -3,7 +3,7 @@ All notable changes to this model will be documented in this file. ## [Unreleased] -## [1.0.0] - 2023-06-30 +## [1.0.0] - 2023-08-07 ### Added - added new properties: partGeometry (represting the side a part belongs to, e.g. left or right) and manufacturerId (BPN of the manufacturer) From 48f0536aefa16a39162fd6ed83bd2823378e7577 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Wed, 16 Aug 2023 11:38:41 +0200 Subject: [PATCH 03/22] fix: adjust value to be less error prone fix: adjust value to be less error prone --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 8 ++++---- 1 file changed, 4 insertions(+), 4 deletions(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index 77c95e8b2..5f31e88fa 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -28,7 +28,7 @@ :SingleLevelBomAsSpecified a bamm:Aspect; bamm:preferredName "Single Level BOM as Specified"@en; - bamm:description "The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This “top-down” view is in contrast to the “bottom-up” view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; + bamm:description "The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This �top-down� view is in contrast to the �bottom-up� view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; bamm:properties (:catenaXId :childParts :catenaXId :childParts :manufacturerId); bamm:operations (); bamm:events (). @@ -63,7 +63,7 @@ bamm:properties (:childPartsCategory :part :childPartsCategory :part :childCatenaXId). :childPartsCategory a bamm:Property; bamm:preferredName "Child Parts Category"@en; - bamm:description "The BomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This “top-down” view is in contrast to the “bottom-up” view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; + bamm:description "The BomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This �top-down� view is in contrast to the �bottom-up� view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; bamm:characteristic bamm-c:Text; bamm:exampleValue "e.g. vehicle, winter wheels, bicycle rack". :part a bamm:Property; @@ -154,7 +154,7 @@ bamm:preferredName "Part Geometry"@en; bamm:description "Some parts are intended to be used on either the left or right side, e.g. mirrors, hence this entity describes on which side a part is to be used"@en; bamm:characteristic :PartGeometryCharacteristic; - bamm:exampleValue "L - Left". + bamm:exampleValue "left". :PartQuantityCharacteristic a bamm:Characteristic; bamm:preferredName "Part Quantity Characteristic"@en; bamm:description "The characteristic of the part quantity."@en; @@ -199,7 +199,7 @@ bamm:preferredName "Part Geometry Characteristic"@en; bamm:description "Describes the characteristic of the left or right mark entity with its possible values (left or right)"@en; bamm:dataType xsd:string; - bamm-c:values ("L - Left" "R - Right"). + bamm-c:values ("left" "right"). :manufacturerId a bamm:Property; bamm:preferredName "Manufacturer ID"@en; bamm:description "The ID of the initial issuer of the single level BoMAsSpecified"@en; From bd728e9ea52198a16f8811b9ce1d74ee935624a3 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Wed, 16 Aug 2023 11:42:59 +0200 Subject: [PATCH 04/22] fix: escape quotation mark, save file as utf-8 encoding --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index 5f31e88fa..0ae1b7794 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -28,7 +28,7 @@ :SingleLevelBomAsSpecified a bamm:Aspect; bamm:preferredName "Single Level BOM as Specified"@en; - bamm:description "The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This �top-down� view is in contrast to the �bottom-up� view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; + bamm:description "The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; bamm:properties (:catenaXId :childParts :catenaXId :childParts :manufacturerId); bamm:operations (); bamm:events (). @@ -63,7 +63,7 @@ bamm:properties (:childPartsCategory :part :childPartsCategory :part :childCatenaXId). :childPartsCategory a bamm:Property; bamm:preferredName "Child Parts Category"@en; - bamm:description "The BomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This �top-down� view is in contrast to the �bottom-up� view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; + bamm:description "The BomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; bamm:characteristic bamm-c:Text; bamm:exampleValue "e.g. vehicle, winter wheels, bicycle rack". :part a bamm:Property; From 68a0792ad62a92617379a0019f389dd461d3f862 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Wed, 16 Aug 2023 11:43:53 +0200 Subject: [PATCH 05/22] fix: set correct version in release note --- io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md index c63a961b2..5f99ae870 100644 --- a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md +++ b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md @@ -3,7 +3,7 @@ All notable changes to this model will be documented in this file. ## [Unreleased] -## [1.0.0] - 2023-08-07 +## [2.0.0] - 2023-08-07 ### Added - added new properties: partGeometry (represting the side a part belongs to, e.g. left or right) and manufacturerId (BPN of the manufacturer) From dd128b6863ca2be98b2509a54ab43f614991c584 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Wed, 16 Aug 2023 11:49:00 +0200 Subject: [PATCH 06/22] fix: use samm mata model 2.0.0 --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index 0ae1b7794..5065b17a5 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -17,7 +17,7 @@ # SPDX-License-Identifier: CC-BY-4.0 ####################################################################### -@prefix bamm: . +@prefix samm: . @prefix bamm-c: . @prefix bamm-e: . @prefix unit: . From 4ae8fbf2ba5bc52a37af42127a6358001d71c3dd Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Wed, 16 Aug 2023 11:58:53 +0200 Subject: [PATCH 07/22] fix: proper markdown formatting --- .../RELEASE_NOTES.md | 11 +++++++++-- 1 file changed, 9 insertions(+), 2 deletions(-) diff --git a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md index 5f99ae870..7ba6284ca 100644 --- a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md +++ b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md @@ -1,10 +1,13 @@ # Changelog + All notable changes to this model will be documented in this file. ## [Unreleased] ## [2.0.0] - 2023-08-07 + ### Added + - added new properties: partGeometry (represting the side a part belongs to, e.g. left or right) and manufacturerId (BPN of the manufacturer) ### Changed @@ -12,14 +15,18 @@ All notable changes to this model will be documented in this file. ### Removed ## [1.0.0] - 2023-06-30 + ### Added + - added new properties: createdOn, lastModifiedOn ### Changed + - changed model name from BomAsSpecified to SingleLevelBomAsSpecified for consistency reasons with other Bom models -- moved new model to a new namespace +- moved new model to a new namespace - changed existing properties: identifier -> catenaXId, item -> childParts - minor adjustments of exemplary values to reflect current state of the model ### Removed -- removed non-needed properties: index, quantity \ No newline at end of file + +- removed non-needed properties: index, quantity From 4a71fe4d87fc1b4f75bcb86978193b4b748e311b Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Thu, 17 Aug 2023 11:52:17 +0200 Subject: [PATCH 08/22] fix: change to samm 2.0 --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 348 +++++++++--------- 1 file changed, 174 insertions(+), 174 deletions(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index 5065b17a5..3111db4cf 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -18,194 +18,194 @@ ####################################################################### @prefix samm: . -@prefix bamm-c: . -@prefix bamm-e: . -@prefix unit: . +@prefix samm-c: . +@prefix samm-e: . +@prefix unit: . @prefix rdf: . @prefix rdfs: . @prefix xsd: . -@prefix : . +@prefix : . -:SingleLevelBomAsSpecified a bamm:Aspect; - bamm:preferredName "Single Level BOM as Specified"@en; - bamm:description "The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; - bamm:properties (:catenaXId :childParts :catenaXId :childParts :manufacturerId); - bamm:operations (); - bamm:events (). -:catenaXId a bamm:Property; - bamm:preferredName "Catena-X ID"@en; - bamm:description "A unique reference within Catena-X of this items"@en; - bamm:characteristic :CatenaXIdTrait; - bamm:exampleValue "urn:uuid:055c1128-0375-47c8-98de-7cf802c3241d". -:childParts a bamm:Property; - bamm:preferredName "Child Parts"@en; - bamm:description "The child part of the observed parent item"@en; - bamm:characteristic :ChildPartsCharacteristic. -:CatenaXIdTrait a bamm-c:Trait; - bamm-c:baseCharacteristic bamm-c:Text; - bamm-c:constraint :Uuidv4RegularExpression. -:ownerPartId a bamm:Property; - bamm:preferredName "Owner Part ID"@en; - bamm:description "This is the key field of the component which usually keeps the part numbers used in after-sales, e.g. when repairing broken parts and searching for a replacement. This ownerPartId itself isn't usually bound to one part version, with the assumption that all part versions with the same ownerPartId are mutually interchangeable."@en; - bamm:characteristic :CatenaXIdTrait; - bamm:exampleValue "uuid!". -:Uuidv4RegularExpression a bamm-c:RegularExpressionConstraint; - bamm:preferredName "Catena-X ID Regular Expression"@en; - bamm:description "The provided regular expression ensures that the UUID is composed of five groups of characters separated by hyphens, in the form 8-4-4-4-12 for a total of 36 characters (32 hexadecimal characters and 4 hyphens)."@en; - bamm:value "(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$)|(^urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$)". -:ChildPartsCharacteristic a bamm-c:Set; - bamm:preferredName "Child Parts Characteristic"@en; - bamm:description "The characteristic of the child part property"@en; - bamm:dataType :ChildPartsEntity. -:ChildPartsEntity a bamm:Entity; - bamm:preferredName "Child Parts Entity"@en; - bamm:description "Encapsulates the properties describing the child part item"@en; - bamm:properties (:childPartsCategory :part :childPartsCategory :part :childCatenaXId). -:childPartsCategory a bamm:Property; - bamm:preferredName "Child Parts Category"@en; - bamm:description "The BomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; - bamm:characteristic bamm-c:Text; - bamm:exampleValue "e.g. vehicle, winter wheels, bicycle rack". -:part a bamm:Property; - bamm:preferredName "Part"@en; - bamm:description "The description of the part in the primary language of the production facility of the product owner."@en; - bamm:characteristic :PartCharacteristic. -:childCatenaXId a bamm:Property; - bamm:preferredName "Child CatenaXId"@en; - bamm:description "Describes the Catena-X ID of the child part"@en; - bamm:characteristic bamm-c:Text; - bamm:exampleValue "urn:uuid:218b26f4-4a0b-4a7f-b2c1-d248927718bf ". -:PartCharacteristic a bamm-c:Set; - bamm:preferredName "Part Characteristic"@en; - bamm:description "Characteristic of the part."@en; - bamm:dataType :PartEntity. -:PartEntity a bamm:Entity; - bamm:preferredName "Part Entity"@en; - bamm:description "Entity encapsulating the properies describing a part"@en; - bamm:properties (:ownerPartId [ - bamm:property :partVersion; - bamm:optional "true"^^xsd:boolean +:SingleLevelBomAsSpecified a samm:Aspect; + samm:preferredName "Single Level BOM as Specified"@en; + samm:description "The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; + samm:properties (:catenaXId :childParts :catenaXId :childParts :manufacturerId); + samm:operations (); + samm:events (). +:catenaXId a samm:Property; + samm:preferredName "Catena-X ID"@en; + samm:description "A unique reference within Catena-X of this items"@en; + samm:characteristic :CatenaXIdTrait; + samm:exampleValue "urn:uuid:055c1128-0375-47c8-98de-7cf802c3241d". +:childParts a samm:Property; + samm:preferredName "Child Parts"@en; + samm:description "The child part of the observed parent item"@en; + samm:characteristic :ChildPartsCharacteristic. +:CatenaXIdTrait a samm-c:Trait; + samm-c:baseCharacteristic samm-c:Text; + samm-c:constraint :Uuidv4RegularExpression. +:ownerPartId a samm:Property; + samm:preferredName "Owner Part ID"@en; + samm:description "This is the key field of the component which usually keeps the part numbers used in after-sales, e.g. when repairing broken parts and searching for a replacement. This ownerPartId itself isn't usually bound to one part version, with the assumption that all part versions with the same ownerPartId are mutually interchangeable."@en; + samm:characteristic :CatenaXIdTrait; + samm:exampleValue "uuid!". +:Uuidv4RegularExpression a samm-c:RegularExpressionConstraint; + samm:preferredName "Catena-X ID Regular Expression"@en; + samm:description "The provided regular expression ensures that the UUID is composed of five groups of characters separated by hyphens, in the form 8-4-4-4-12 for a total of 36 characters (32 hexadecimal characters and 4 hyphens)."@en; + samm:value "(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$)|(^urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$)". +:ChildPartsCharacteristic a samm-c:Set; + samm:preferredName "Child Parts Characteristic"@en; + samm:description "The characteristic of the child part property"@en; + samm:dataType :ChildPartsEntity. +:ChildPartsEntity a samm:Entity; + samm:preferredName "Child Parts Entity"@en; + samm:description "Encapsulates the properties describing the child part item"@en; + samm:properties (:childPartsCategory :part :childPartsCategory :part :childCatenaXId). +:childPartsCategory a samm:Property; + samm:preferredName "Child Parts Category"@en; + samm:description "The BomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; + samm:characteristic samm-c:Text; + samm:exampleValue "e.g. vehicle, winter wheels, bicycle rack". +:part a samm:Property; + samm:preferredName "Part"@en; + samm:description "The description of the part in the primary language of the production facility of the product owner."@en; + samm:characteristic :PartCharacteristic. +:childCatenaXId a samm:Property; + samm:preferredName "Child CatenaXId"@en; + samm:description "Describes the Catena-X ID of the child part"@en; + samm:characteristic samm-c:Text; + samm:exampleValue "urn:uuid:218b26f4-4a0b-4a7f-b2c1-d248927718bf ". +:PartCharacteristic a samm-c:Set; + samm:preferredName "Part Characteristic"@en; + samm:description "Characteristic of the part."@en; + samm:dataType :PartEntity. +:PartEntity a samm:Entity; + samm:preferredName "Part Entity"@en; + samm:description "Entity encapsulating the properies describing a part"@en; + samm:properties (:ownerPartId [ + samm:property :partVersion; + samm:optional "true"^^xsd:boolean ] [ - bamm:property :partQuantity; - bamm:optional "true"^^xsd:boolean + samm:property :partQuantity; + samm:optional "true"^^xsd:boolean ] [ - bamm:property :partDescription; - bamm:optional "true"^^xsd:boolean + samm:property :partDescription; + samm:optional "true"^^xsd:boolean ] [ - bamm:property :partClassification; - bamm:optional "true"^^xsd:boolean + samm:property :partClassification; + samm:optional "true"^^xsd:boolean ] [ - bamm:property :lastModifiedOn; - bamm:optional "true"^^xsd:boolean + samm:property :lastModifiedOn; + samm:optional "true"^^xsd:boolean ] [ - bamm:property :createdOn; - bamm:optional "true"^^xsd:boolean + samm:property :createdOn; + samm:optional "true"^^xsd:boolean ] :ownerPartId [ - bamm:property :partVersion; - bamm:optional "true"^^xsd:boolean + samm:property :partVersion; + samm:optional "true"^^xsd:boolean ] [ - bamm:property :partQuantity; - bamm:optional "true"^^xsd:boolean + samm:property :partQuantity; + samm:optional "true"^^xsd:boolean ] [ - bamm:property :partDescription; - bamm:optional "true"^^xsd:boolean + samm:property :partDescription; + samm:optional "true"^^xsd:boolean ] [ - bamm:property :partClassification; - bamm:optional "true"^^xsd:boolean + samm:property :partClassification; + samm:optional "true"^^xsd:boolean ] [ - bamm:property :lastModifiedOn; - bamm:optional "true"^^xsd:boolean + samm:property :lastModifiedOn; + samm:optional "true"^^xsd:boolean ] [ - bamm:property :createdOn; - bamm:optional "true"^^xsd:boolean + samm:property :createdOn; + samm:optional "true"^^xsd:boolean ] [ - bamm:property :partGeometry; - bamm:optional "true"^^xsd:boolean + samm:property :partGeometry; + samm:optional "true"^^xsd:boolean ]). -:partVersion a bamm:Property; - bamm:preferredName "Part Version"@en; - bamm:description "This is the version of the part. The engineering will at times supercede an older part version by a newer one, which might have different material aspects, physical dimensions etc., still maintaining compatibility."@en; - bamm:characteristic bamm-c:Text; - bamm:exampleValue "05". -:partQuantity a bamm:Property; - bamm:preferredName "Part Quantity"@en; - bamm:description "This is the quantity how often this part is in the item."@en; - bamm:characteristic :PartQuantityCharacteristic. -:partDescription a bamm:Property; - bamm:preferredName "Part Description"@en; - bamm:description "The description of the part in the primary language of the production facility of the product owner."@en; - bamm:characteristic bamm-c:Text; - bamm:exampleValue "The steering wheel is nice and round". -:partClassification a bamm:Property; - bamm:preferredName "Part Classification"@en; - bamm:description "The part classification."@en; - bamm:characteristic :PartClassificationCharacteristic. -:lastModifiedOn a bamm:Property; - bamm:preferredName "Last Modified On"@en; - bamm:description "The time the item was modified the last time"@en; - bamm:characteristic bamm-c:Timestamp; - bamm:exampleValue "2022-02-03T14:48:54.709Z"^^xsd:dateTime. -:createdOn a bamm:Property; - bamm:preferredName "Created On"@en; - bamm:description "The time the item was created on"@en; - bamm:characteristic bamm-c:Timestamp; - bamm:exampleValue "2022-02-03T14:48:54.709Z"^^xsd:dateTime. -:partGeometry a bamm:Property; - bamm:preferredName "Part Geometry"@en; - bamm:description "Some parts are intended to be used on either the left or right side, e.g. mirrors, hence this entity describes on which side a part is to be used"@en; - bamm:characteristic :PartGeometryCharacteristic; - bamm:exampleValue "left". -:PartQuantityCharacteristic a bamm:Characteristic; - bamm:preferredName "Part Quantity Characteristic"@en; - bamm:description "The characteristic of the part quantity."@en; - bamm:dataType :PartQuantityEntity. -:PartQuantityEntity a bamm:Entity; - bamm:preferredName "Part Quantity Entity"@en; - bamm:description "The entity encapsulating the properties describing the quantity of a part."@en; - bamm:properties (:measurementUnit :quantityNumber :measurementUnit :quantityNumber). -:measurementUnit a bamm:Property; - bamm:preferredName "Measurement Unit"@en; - bamm:description "Unit of measurement for the quantity of serialized objects."@en; - bamm:characteristic bamm-c:UnitReference; - bamm:exampleValue "kW"^^bamm:curie. -:quantityNumber a bamm:Property; - bamm:preferredName "Quantity Number"@en; - bamm:description "The number of objects related to the measurement unit."@en; - bamm:characteristic :NumberOfObjects; - bamm:exampleValue "350"^^xsd:double. -:NumberOfObjects a bamm:Characteristic; - bamm:preferredName "Number of Objects"@en; - bamm:description "Quantifiable number of objects in reference to the measurementUnit."@en; - bamm:dataType xsd:double. -:PartClassificationCharacteristic a bamm-c:Set; - bamm:preferredName "Part Classification Characteristic"@en; - bamm:description "The characteristic of the part classification."@en; - bamm:dataType :PartClassificationEntity. -:PartClassificationEntity a bamm:Entity; - bamm:preferredName "Part Classification Entity"@en; - bamm:description "The entity encapsulating the properties of the part classification."@en; - bamm:properties (:key :value :key :value). -:key a bamm:Property; - bamm:preferredName "Key"@en; - bamm:description "Key within the classification."@en; - bamm:characteristic bamm-c:Text; - bamm:exampleValue "BMW:PartFamily". -:value a bamm:Property; - bamm:preferredName "Value"@en; - bamm:description "Value within the classification."@en; - bamm:characteristic bamm-c:Text; - bamm:exampleValue "STEEWHL". -:PartGeometryCharacteristic a bamm-c:Enumeration; - bamm:preferredName "Part Geometry Characteristic"@en; - bamm:description "Describes the characteristic of the left or right mark entity with its possible values (left or right)"@en; - bamm:dataType xsd:string; - bamm-c:values ("left" "right"). -:manufacturerId a bamm:Property; - bamm:preferredName "Manufacturer ID"@en; - bamm:description "The ID of the initial issuer of the single level BoMAsSpecified"@en; - bamm:characteristic :Text; - bamm:exampleValue "BPNL1234567890LR". -:Text a bamm:Characteristic; - bamm:preferredName "Text"@en; - bamm:description "Describes a Property which contains plain text. This is intended exclusively for human readable strings, not for identifiers, measurement values, etc."@en; - bamm:dataType xsd:string. +:partVersion a samm:Property; + samm:preferredName "Part Version"@en; + samm:description "This is the version of the part. The engineering will at times supercede an older part version by a newer one, which might have different material aspects, physical dimensions etc., still maintaining compatibility."@en; + samm:characteristic samm-c:Text; + samm:exampleValue "05". +:partQuantity a samm:Property; + samm:preferredName "Part Quantity"@en; + samm:description "This is the quantity how often this part is in the item."@en; + samm:characteristic :PartQuantityCharacteristic. +:partDescription a samm:Property; + samm:preferredName "Part Description"@en; + samm:description "The description of the part in the primary language of the production facility of the product owner."@en; + samm:characteristic samm-c:Text; + samm:exampleValue "The steering wheel is nice and round". +:partClassification a samm:Property; + samm:preferredName "Part Classification"@en; + samm:description "The part classification."@en; + samm:characteristic :PartClassificationCharacteristic. +:lastModifiedOn a samm:Property; + samm:preferredName "Last Modified On"@en; + samm:description "The time the item was modified the last time"@en; + samm:characteristic samm-c:Timestamp; + samm:exampleValue "2022-02-03T14:48:54.709Z"^^xsd:dateTime. +:createdOn a samm:Property; + samm:preferredName "Created On"@en; + samm:description "The time the item was created on"@en; + samm:characteristic samm-c:Timestamp; + samm:exampleValue "2022-02-03T14:48:54.709Z"^^xsd:dateTime. +:partGeometry a samm:Property; + samm:preferredName "Part Geometry"@en; + samm:description "Some parts are intended to be used on either the left or right side, e.g. mirrors, hence this entity describes on which side a part is to be used"@en; + samm:characteristic :PartGeometryCharacteristic; + samm:exampleValue "left". +:PartQuantityCharacteristic a samm:Characteristic; + samm:preferredName "Part Quantity Characteristic"@en; + samm:description "The characteristic of the part quantity."@en; + samm:dataType :PartQuantityEntity. +:PartQuantityEntity a samm:Entity; + samm:preferredName "Part Quantity Entity"@en; + samm:description "The entity encapsulating the properties describing the quantity of a part."@en; + samm:properties (:measurementUnit :quantityNumber :measurementUnit :quantityNumber). +:measurementUnit a samm:Property; + samm:preferredName "Measurement Unit"@en; + samm:description "Unit of measurement for the quantity of serialized objects."@en; + samm:characteristic samm-c:UnitReference; + samm:exampleValue "kW"^^samm:curie. +:quantityNumber a samm:Property; + samm:preferredName "Quantity Number"@en; + samm:description "The number of objects related to the measurement unit."@en; + samm:characteristic :NumberOfObjects; + samm:exampleValue "350"^^xsd:double. +:NumberOfObjects a samm:Characteristic; + samm:preferredName "Number of Objects"@en; + samm:description "Quantifiable number of objects in reference to the measurementUnit."@en; + samm:dataType xsd:double. +:PartClassificationCharacteristic a samm-c:Set; + samm:preferredName "Part Classification Characteristic"@en; + samm:description "The characteristic of the part classification."@en; + samm:dataType :PartClassificationEntity. +:PartClassificationEntity a samm:Entity; + samm:preferredName "Part Classification Entity"@en; + samm:description "The entity encapsulating the properties of the part classification."@en; + samm:properties (:key :value :key :value). +:key a samm:Property; + samm:preferredName "Key"@en; + samm:description "Key within the classification."@en; + samm:characteristic samm-c:Text; + samm:exampleValue "BMW:PartFamily". +:value a samm:Property; + samm:preferredName "Value"@en; + samm:description "Value within the classification."@en; + samm:characteristic samm-c:Text; + samm:exampleValue "STEEWHL". +:PartGeometryCharacteristic a samm-c:Enumeration; + samm:preferredName "Part Geometry Characteristic"@en; + samm:description "Describes the characteristic of the left or right mark entity with its possible values (left or right)"@en; + samm:dataType xsd:string; + samm-c:values ("left" "right"). +:manufacturerId a samm:Property; + samm:preferredName "Manufacturer ID"@en; + samm:description "The ID of the initial issuer of the single level BoMAsSpecified"@en; + samm:characteristic :Text; + samm:exampleValue "BPNL1234567890LR". +:Text a samm:Characteristic; + samm:preferredName "Text"@en; + samm:description "Describes a Property which contains plain text. This is intended exclusively for human readable strings, not for identifiers, measurement values, etc."@en; + samm:dataType xsd:string. From aa67f87e33930deb72ba363f950ce594d51aab14 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Mon, 21 Aug 2023 11:11:33 +0200 Subject: [PATCH 09/22] fix: make model valid --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index 3111db4cf..3c3fc2cad 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -208,4 +208,4 @@ :Text a samm:Characteristic; samm:preferredName "Text"@en; samm:description "Describes a Property which contains plain text. This is intended exclusively for human readable strings, not for identifiers, measurement values, etc."@en; - samm:dataType xsd:string. + samm:dataType xsd:string. \ No newline at end of file From ef62a3b9d429b1531bde721ac25ef89b5df1ad67 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Tue, 22 Aug 2023 16:19:27 +0200 Subject: [PATCH 10/22] fix: remove duplicate properties and unsued definitions --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 10 +++------- 1 file changed, 3 insertions(+), 7 deletions(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index 3c3fc2cad..c5ce19d29 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -29,7 +29,7 @@ :SingleLevelBomAsSpecified a samm:Aspect; samm:preferredName "Single Level BOM as Specified"@en; samm:description "The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; - samm:properties (:catenaXId :childParts :catenaXId :childParts :manufacturerId); + samm:properties (:catenaXId :childParts :manufacturerId); samm:operations (); samm:events (). :catenaXId a samm:Property; @@ -184,7 +184,7 @@ :PartClassificationEntity a samm:Entity; samm:preferredName "Part Classification Entity"@en; samm:description "The entity encapsulating the properties of the part classification."@en; - samm:properties (:key :value :key :value). + samm:properties (:key :value). :key a samm:Property; samm:preferredName "Key"@en; samm:description "Key within the classification."@en; @@ -203,9 +203,5 @@ :manufacturerId a samm:Property; samm:preferredName "Manufacturer ID"@en; samm:description "The ID of the initial issuer of the single level BoMAsSpecified"@en; - samm:characteristic :Text; + samm:characteristic samm-c:Text; samm:exampleValue "BPNL1234567890LR". -:Text a samm:Characteristic; - samm:preferredName "Text"@en; - samm:description "Describes a Property which contains plain text. This is intended exclusively for human readable strings, not for identifiers, measurement values, etc."@en; - samm:dataType xsd:string. \ No newline at end of file From edd6eb39a74d772830f7eca3622831f3e34797ba Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Tue, 22 Aug 2023 16:26:25 +0200 Subject: [PATCH 11/22] fix: add valid random example uuid --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index c5ce19d29..c7918f72f 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -48,7 +48,7 @@ samm:preferredName "Owner Part ID"@en; samm:description "This is the key field of the component which usually keeps the part numbers used in after-sales, e.g. when repairing broken parts and searching for a replacement. This ownerPartId itself isn't usually bound to one part version, with the assumption that all part versions with the same ownerPartId are mutually interchangeable."@en; samm:characteristic :CatenaXIdTrait; - samm:exampleValue "uuid!". + samm:exampleValue "b4741433-92bb-4027-9a02-bbc64a58d193". :Uuidv4RegularExpression a samm-c:RegularExpressionConstraint; samm:preferredName "Catena-X ID Regular Expression"@en; samm:description "The provided regular expression ensures that the UUID is composed of five groups of characters separated by hyphens, in the form 8-4-4-4-12 for a total of 36 characters (32 hexadecimal characters and 4 hyphens)."@en; From 65450f3fe31cc0014593ffcadd6ab727a9f9d08a Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Tue, 22 Aug 2023 16:35:47 +0200 Subject: [PATCH 12/22] fix: rename catenaXIf to assetId fix: add valid random uuid example --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index c7918f72f..ccbbaee62 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -29,26 +29,26 @@ :SingleLevelBomAsSpecified a samm:Aspect; samm:preferredName "Single Level BOM as Specified"@en; samm:description "The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; - samm:properties (:catenaXId :childParts :manufacturerId); + samm:properties (:assetId :childParts :manufacturerId); samm:operations (); samm:events (). -:catenaXId a samm:Property; +:assetId a samm:Property; samm:preferredName "Catena-X ID"@en; samm:description "A unique reference within Catena-X of this items"@en; - samm:characteristic :CatenaXIdTrait; + samm:characteristic :assetIdTrait; samm:exampleValue "urn:uuid:055c1128-0375-47c8-98de-7cf802c3241d". :childParts a samm:Property; samm:preferredName "Child Parts"@en; samm:description "The child part of the observed parent item"@en; samm:characteristic :ChildPartsCharacteristic. -:CatenaXIdTrait a samm-c:Trait; +:assetIdTrait a samm-c:Trait; samm-c:baseCharacteristic samm-c:Text; samm-c:constraint :Uuidv4RegularExpression. :ownerPartId a samm:Property; samm:preferredName "Owner Part ID"@en; samm:description "This is the key field of the component which usually keeps the part numbers used in after-sales, e.g. when repairing broken parts and searching for a replacement. This ownerPartId itself isn't usually bound to one part version, with the assumption that all part versions with the same ownerPartId are mutually interchangeable."@en; - samm:characteristic :CatenaXIdTrait; - samm:exampleValue "b4741433-92bb-4027-9a02-bbc64a58d193". + samm:characteristic :assetIdTrait; + samm:exampleValue "urn:uuid:b4741433-92bb-4027-9a02-bbc64a58d193". :Uuidv4RegularExpression a samm-c:RegularExpressionConstraint; samm:preferredName "Catena-X ID Regular Expression"@en; samm:description "The provided regular expression ensures that the UUID is composed of five groups of characters separated by hyphens, in the form 8-4-4-4-12 for a total of 36 characters (32 hexadecimal characters and 4 hyphens)."@en; @@ -60,7 +60,7 @@ :ChildPartsEntity a samm:Entity; samm:preferredName "Child Parts Entity"@en; samm:description "Encapsulates the properties describing the child part item"@en; - samm:properties (:childPartsCategory :part :childPartsCategory :part :childCatenaXId). + samm:properties (:childPartsCategory :part :childPartsCategory :part :childassetId). :childPartsCategory a samm:Property; samm:preferredName "Child Parts Category"@en; samm:description "The BomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; @@ -70,8 +70,8 @@ samm:preferredName "Part"@en; samm:description "The description of the part in the primary language of the production facility of the product owner."@en; samm:characteristic :PartCharacteristic. -:childCatenaXId a samm:Property; - samm:preferredName "Child CatenaXId"@en; +:childassetId a samm:Property; + samm:preferredName "Child assetId"@en; samm:description "Describes the Catena-X ID of the child part"@en; samm:characteristic samm-c:Text; samm:exampleValue "urn:uuid:218b26f4-4a0b-4a7f-b2c1-d248927718bf ". From 50a9925fe630c90fa964ee4a85e8bf3badad16b5 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Wed, 23 Aug 2023 09:01:17 +0200 Subject: [PATCH 13/22] chore: update release notes --- io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md index 7ba6284ca..cbddad2b1 100644 --- a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md +++ b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md @@ -4,11 +4,15 @@ All notable changes to this model will be documented in this file. ## [Unreleased] -## [2.0.0] - 2023-08-07 +## [2.0.0] - 2023-08-28 ### Added - added new properties: partGeometry (represting the side a part belongs to, e.g. left or right) and manufacturerId (BPN of the manufacturer) +- adjusted bamm meta model to samm meta model since it samm is default since 07.07.2023 +- rename property catenaXIf to assetId to accomodate ongoing discussion +- removed unused property since it is already defined by samm-characteristics +- adjust examle value of CatenaXIdTrait to a valid random uuid value ### Changed From 2149f07f7565b1e4cdff1d3d3b87846473703a35 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Wed, 23 Aug 2023 09:43:52 +0200 Subject: [PATCH 14/22] fix: typo in release notes --- io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md index cbddad2b1..a52cb0e5f 100644 --- a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md +++ b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md @@ -10,7 +10,7 @@ All notable changes to this model will be documented in this file. - added new properties: partGeometry (represting the side a part belongs to, e.g. left or right) and manufacturerId (BPN of the manufacturer) - adjusted bamm meta model to samm meta model since it samm is default since 07.07.2023 -- rename property catenaXIf to assetId to accomodate ongoing discussion +- rename property catenaXId to assetId to accomodate ongoing discussion - removed unused property since it is already defined by samm-characteristics - adjust examle value of CatenaXIdTrait to a valid random uuid value From f9f1260e55f1b8372a107f6c427c3ea394aaa2bf Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Wed, 23 Aug 2023 11:12:51 +0200 Subject: [PATCH 15/22] fix: add valid uuid4 example value --- io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index be893720e..53561f5c0 100644 --- a/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -112,7 +112,7 @@ bamm:preferredName "Owner Part ID"@en; bamm:description "This is the key field of the component which usually keeps the part numbers used in after-sales, e.g. when repairing broken parts and searching for a replacement. This ownerPartId itself isn't usually bound to one part version, with the assumption that all part versions with the same ownerPartId are mutually interchangeable."@en; bamm:characteristic :CatenaXIdTrait; - bamm:exampleValue "uuid!". + bamm:exampleValue "urn:uuid:c4b1b329-07fa-4dc1-b9d0-aa753100672c". :partVersion a bamm:Property; bamm:preferredName "Part Version"@en; bamm:description "This is the version of the part. The engineering will at times supercede an older part version by a newer one, which might have different material aspects, physical dimensions etc., still maintaining compatibility."@en; From 0e344ffcf7ad502efa28cc36c2fbf0d84b0ae2a4 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Wed, 23 Aug 2023 13:29:10 +0200 Subject: [PATCH 16/22] chore: adjust License header --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index 53561f5c0..d14d0c87e 100644 --- a/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -1,10 +1,10 @@ ####################################################################### # Copyright (c) 2022 T-Systems International GmbH -# Copyright (c) 2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) +# Copyright (c) 2022,2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # Copyright (c) 2022 Volkswagen AG # Copyright (c) 2022 Robert Bosch GmbH # Copyright (c) 2022 ZF Friedrichshafen AG -# Copyright (c) 2022 Contributors to the Eclipse Foundation +# Copyright (c) 2022,2023 Contributors to the Eclipse Foundation # # See the NOTICE file(s) distributed with this work for additional # information regarding copyright ownership. From 0286b39280bb66112c42b8beb3ff3e1d5c772dfd Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Wed, 23 Aug 2023 14:56:35 +0200 Subject: [PATCH 17/22] chore: update license header --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 6 +++--- .../2.0.0/SingleLevelBomAsSpecified.ttl | 4 ++-- 2 files changed, 5 insertions(+), 5 deletions(-) diff --git a/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index d14d0c87e..10b7da773 100644 --- a/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -1,10 +1,10 @@ ####################################################################### # Copyright (c) 2022 T-Systems International GmbH -# Copyright (c) 2022,2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) +# Copyright (c) 2022 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # Copyright (c) 2022 Volkswagen AG # Copyright (c) 2022 Robert Bosch GmbH # Copyright (c) 2022 ZF Friedrichshafen AG -# Copyright (c) 2022,2023 Contributors to the Eclipse Foundation +# Copyright (c) 2022 Contributors to the Eclipse Foundation # # See the NOTICE file(s) distributed with this work for additional # information regarding copyright ownership. @@ -112,7 +112,7 @@ bamm:preferredName "Owner Part ID"@en; bamm:description "This is the key field of the component which usually keeps the part numbers used in after-sales, e.g. when repairing broken parts and searching for a replacement. This ownerPartId itself isn't usually bound to one part version, with the assumption that all part versions with the same ownerPartId are mutually interchangeable."@en; bamm:characteristic :CatenaXIdTrait; - bamm:exampleValue "urn:uuid:c4b1b329-07fa-4dc1-b9d0-aa753100672c". + bamm:exampleValue "uuid!" :partVersion a bamm:Property; bamm:preferredName "Part Version"@en; bamm:description "This is the version of the part. The engineering will at times supercede an older part version by a newer one, which might have different material aspects, physical dimensions etc., still maintaining compatibility."@en; diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index ccbbaee62..fb65a73bc 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -1,10 +1,10 @@ ####################################################################### # Copyright (c) 2022 T-Systems International GmbH -# Copyright (c) 2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) +# Copyright (c) 2022,2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # Copyright (c) 2022 Volkswagen AG # Copyright (c) 2022 Robert Bosch GmbH # Copyright (c) 2022 ZF Friedrichshafen AG -# Copyright (c) 2022 Contributors to the Eclipse Foundation +# Copyright (c) 2022,2023 Contributors to the Eclipse Foundation # # See the NOTICE file(s) distributed with this work for additional # information regarding copyright ownership. From fddfb9e9158813934965a3eaa4953ca6f03d2d40 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Wed, 23 Aug 2023 14:58:41 +0200 Subject: [PATCH 18/22] fix: revert changes --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 4 ++-- 1 file changed, 2 insertions(+), 2 deletions(-) diff --git a/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index 10b7da773..be893720e 100644 --- a/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -1,6 +1,6 @@ ####################################################################### # Copyright (c) 2022 T-Systems International GmbH -# Copyright (c) 2022 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) +# Copyright (c) 2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) # Copyright (c) 2022 Volkswagen AG # Copyright (c) 2022 Robert Bosch GmbH # Copyright (c) 2022 ZF Friedrichshafen AG @@ -112,7 +112,7 @@ bamm:preferredName "Owner Part ID"@en; bamm:description "This is the key field of the component which usually keeps the part numbers used in after-sales, e.g. when repairing broken parts and searching for a replacement. This ownerPartId itself isn't usually bound to one part version, with the assumption that all part versions with the same ownerPartId are mutually interchangeable."@en; bamm:characteristic :CatenaXIdTrait; - bamm:exampleValue "uuid!" + bamm:exampleValue "uuid!". :partVersion a bamm:Property; bamm:preferredName "Part Version"@en; bamm:description "This is the version of the part. The engineering will at times supercede an older part version by a newer one, which might have different material aspects, physical dimensions etc., still maintaining compatibility."@en; From 93ab4f6d7bc03bcd4b0727b3c6737230faa9146b Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Fri, 25 Aug 2023 09:27:01 +0200 Subject: [PATCH 19/22] fix: unit definition --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index fb65a73bc..16d9dea96 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -167,7 +167,7 @@ samm:preferredName "Measurement Unit"@en; samm:description "Unit of measurement for the quantity of serialized objects."@en; samm:characteristic samm-c:UnitReference; - samm:exampleValue "kW"^^samm:curie. + samm:exampleValue "unit:kW"^^samm:curie. :quantityNumber a samm:Property; samm:preferredName "Quantity Number"@en; samm:description "The number of objects related to the measurement unit."@en; From 5c13485e30380df26d914000e6509f5f319fcc50 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Fri, 25 Aug 2023 10:32:06 +0200 Subject: [PATCH 20/22] fix: adjust release notes, adjust reference in example values --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 6 +++--- .../RELEASE_NOTES.md | 11 +++++++---- 2 files changed, 10 insertions(+), 7 deletions(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index 16d9dea96..4393fc4ee 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -33,8 +33,8 @@ samm:operations (); samm:events (). :assetId a samm:Property; - samm:preferredName "Catena-X ID"@en; - samm:description "A unique reference within Catena-X of this items"@en; + samm:preferredName "assetID"@en; + samm:description "A unique reference to an asset which could be registered within Catena-X DataSpace"@en; samm:characteristic :assetIdTrait; samm:exampleValue "urn:uuid:055c1128-0375-47c8-98de-7cf802c3241d". :childParts a samm:Property; @@ -50,7 +50,7 @@ samm:characteristic :assetIdTrait; samm:exampleValue "urn:uuid:b4741433-92bb-4027-9a02-bbc64a58d193". :Uuidv4RegularExpression a samm-c:RegularExpressionConstraint; - samm:preferredName "Catena-X ID Regular Expression"@en; + samm:preferredName "Regular Expression for the assetID"@en; samm:description "The provided regular expression ensures that the UUID is composed of five groups of characters separated by hyphens, in the form 8-4-4-4-12 for a total of 36 characters (32 hexadecimal characters and 4 hyphens)."@en; samm:value "(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$)|(^urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$)". :ChildPartsCharacteristic a samm-c:Set; diff --git a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md index a52cb0e5f..9f5f4c7d4 100644 --- a/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md +++ b/io.catenax.single_level_bom_as_specified/RELEASE_NOTES.md @@ -9,15 +9,18 @@ All notable changes to this model will be documented in this file. ### Added - added new properties: partGeometry (represting the side a part belongs to, e.g. left or right) and manufacturerId (BPN of the manufacturer) -- adjusted bamm meta model to samm meta model since it samm is default since 07.07.2023 -- rename property catenaXId to assetId to accomodate ongoing discussion -- removed unused property since it is already defined by samm-characteristics -- adjust examle value of CatenaXIdTrait to a valid random uuid value + ### Changed +- rename property catenaXId to assetId to accomodate ongoing discussion +- adjust examle value of CatenaXIdTrait to a valid random uuid value +- adjusted bamm meta model to samm meta model since it samm is default since 07.07.2023 + ### Removed +- removed unused property since it is already defined by samm-characteristics + ## [1.0.0] - 2023-06-30 ### Added From 886cd8f57426b4793128775ffbd408ec2d22a719 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Tue, 29 Aug 2023 09:46:48 +0200 Subject: [PATCH 21/22] fix: rename childParts to childItems to comply with IRS request fix: replace part with item --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 257 ++++++++---------- 1 file changed, 119 insertions(+), 138 deletions(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index 4393fc4ee..f2d893292 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -1,24 +1,5 @@ -####################################################################### -# Copyright (c) 2022 T-Systems International GmbH -# Copyright (c) 2022,2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) -# Copyright (c) 2022 Volkswagen AG -# Copyright (c) 2022 Robert Bosch GmbH -# Copyright (c) 2022 ZF Friedrichshafen AG -# Copyright (c) 2022,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: . -@prefix samm-c: . +@prefix samm: . +@prefix samm-c: . @prefix samm-e: . @prefix unit: . @prefix rdf: . @@ -29,7 +10,7 @@ :SingleLevelBomAsSpecified a samm:Aspect; samm:preferredName "Single Level BOM as Specified"@en; samm:description "The SingleLevelBomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; - samm:properties (:assetId :childParts :manufacturerId); + samm:properties (:assetId :childItems :manufacturerId); samm:operations (); samm:events (). :assetId a samm:Property; @@ -37,109 +18,23 @@ samm:description "A unique reference to an asset which could be registered within Catena-X DataSpace"@en; samm:characteristic :assetIdTrait; samm:exampleValue "urn:uuid:055c1128-0375-47c8-98de-7cf802c3241d". -:childParts a samm:Property; - samm:preferredName "Child Parts"@en; - samm:description "The child part of the observed parent item"@en; - samm:characteristic :ChildPartsCharacteristic. +:manufacturerId a samm:Property; + samm:preferredName "Manufacturer ID"@en; + samm:description "The ID of the initial issuer of the single level BoMAsSpecified"@en; + samm:characteristic samm-c:Text; + samm:exampleValue "BPNL1234567890LR". :assetIdTrait a samm-c:Trait; samm-c:baseCharacteristic samm-c:Text; samm-c:constraint :Uuidv4RegularExpression. -:ownerPartId a samm:Property; - samm:preferredName "Owner Part ID"@en; - samm:description "This is the key field of the component which usually keeps the part numbers used in after-sales, e.g. when repairing broken parts and searching for a replacement. This ownerPartId itself isn't usually bound to one part version, with the assumption that all part versions with the same ownerPartId are mutually interchangeable."@en; - samm:characteristic :assetIdTrait; - samm:exampleValue "urn:uuid:b4741433-92bb-4027-9a02-bbc64a58d193". :Uuidv4RegularExpression a samm-c:RegularExpressionConstraint; samm:preferredName "Regular Expression for the assetID"@en; samm:description "The provided regular expression ensures that the UUID is composed of five groups of characters separated by hyphens, in the form 8-4-4-4-12 for a total of 36 characters (32 hexadecimal characters and 4 hyphens)."@en; samm:value "(^[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$)|(^urn:uuid:[0-9a-fA-F]{8}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{4}-[0-9a-fA-F]{12}$)". -:ChildPartsCharacteristic a samm-c:Set; - samm:preferredName "Child Parts Characteristic"@en; - samm:description "The characteristic of the child part property"@en; - samm:dataType :ChildPartsEntity. -:ChildPartsEntity a samm:Entity; - samm:preferredName "Child Parts Entity"@en; - samm:description "Encapsulates the properties describing the child part item"@en; - samm:properties (:childPartsCategory :part :childPartsCategory :part :childassetId). -:childPartsCategory a samm:Property; - samm:preferredName "Child Parts Category"@en; - samm:description "The BomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; - samm:characteristic samm-c:Text; - samm:exampleValue "e.g. vehicle, winter wheels, bicycle rack". -:part a samm:Property; - samm:preferredName "Part"@en; - samm:description "The description of the part in the primary language of the production facility of the product owner."@en; - samm:characteristic :PartCharacteristic. :childassetId a samm:Property; samm:preferredName "Child assetId"@en; samm:description "Describes the Catena-X ID of the child part"@en; samm:characteristic samm-c:Text; samm:exampleValue "urn:uuid:218b26f4-4a0b-4a7f-b2c1-d248927718bf ". -:PartCharacteristic a samm-c:Set; - samm:preferredName "Part Characteristic"@en; - samm:description "Characteristic of the part."@en; - samm:dataType :PartEntity. -:PartEntity a samm:Entity; - samm:preferredName "Part Entity"@en; - samm:description "Entity encapsulating the properies describing a part"@en; - samm:properties (:ownerPartId [ - samm:property :partVersion; - samm:optional "true"^^xsd:boolean -] [ - samm:property :partQuantity; - samm:optional "true"^^xsd:boolean -] [ - samm:property :partDescription; - samm:optional "true"^^xsd:boolean -] [ - samm:property :partClassification; - samm:optional "true"^^xsd:boolean -] [ - samm:property :lastModifiedOn; - samm:optional "true"^^xsd:boolean -] [ - samm:property :createdOn; - samm:optional "true"^^xsd:boolean -] :ownerPartId [ - samm:property :partVersion; - samm:optional "true"^^xsd:boolean -] [ - samm:property :partQuantity; - samm:optional "true"^^xsd:boolean -] [ - samm:property :partDescription; - samm:optional "true"^^xsd:boolean -] [ - samm:property :partClassification; - samm:optional "true"^^xsd:boolean -] [ - samm:property :lastModifiedOn; - samm:optional "true"^^xsd:boolean -] [ - samm:property :createdOn; - samm:optional "true"^^xsd:boolean -] [ - samm:property :partGeometry; - samm:optional "true"^^xsd:boolean -]). -:partVersion a samm:Property; - samm:preferredName "Part Version"@en; - samm:description "This is the version of the part. The engineering will at times supercede an older part version by a newer one, which might have different material aspects, physical dimensions etc., still maintaining compatibility."@en; - samm:characteristic samm-c:Text; - samm:exampleValue "05". -:partQuantity a samm:Property; - samm:preferredName "Part Quantity"@en; - samm:description "This is the quantity how often this part is in the item."@en; - samm:characteristic :PartQuantityCharacteristic. -:partDescription a samm:Property; - samm:preferredName "Part Description"@en; - samm:description "The description of the part in the primary language of the production facility of the product owner."@en; - samm:characteristic samm-c:Text; - samm:exampleValue "The steering wheel is nice and round". -:partClassification a samm:Property; - samm:preferredName "Part Classification"@en; - samm:description "The part classification."@en; - samm:characteristic :PartClassificationCharacteristic. :lastModifiedOn a samm:Property; samm:preferredName "Last Modified On"@en; samm:description "The time the item was modified the last time"@en; @@ -155,14 +50,11 @@ samm:description "Some parts are intended to be used on either the left or right side, e.g. mirrors, hence this entity describes on which side a part is to be used"@en; samm:characteristic :PartGeometryCharacteristic; samm:exampleValue "left". -:PartQuantityCharacteristic a samm:Characteristic; - samm:preferredName "Part Quantity Characteristic"@en; - samm:description "The characteristic of the part quantity."@en; - samm:dataType :PartQuantityEntity. -:PartQuantityEntity a samm:Entity; - samm:preferredName "Part Quantity Entity"@en; - samm:description "The entity encapsulating the properties describing the quantity of a part."@en; - samm:properties (:measurementUnit :quantityNumber :measurementUnit :quantityNumber). +:PartGeometryCharacteristic a samm-c:Enumeration; + samm:preferredName "Part Geometry Characteristic"@en; + samm:description "Describes the characteristic of the left or right mark entity with its possible values (left or right)"@en; + samm:dataType xsd:string; + samm-c:values ("left" "right"). :measurementUnit a samm:Property; samm:preferredName "Measurement Unit"@en; samm:description "Unit of measurement for the quantity of serialized objects."@en; @@ -177,14 +69,6 @@ samm:preferredName "Number of Objects"@en; samm:description "Quantifiable number of objects in reference to the measurementUnit."@en; samm:dataType xsd:double. -:PartClassificationCharacteristic a samm-c:Set; - samm:preferredName "Part Classification Characteristic"@en; - samm:description "The characteristic of the part classification."@en; - samm:dataType :PartClassificationEntity. -:PartClassificationEntity a samm:Entity; - samm:preferredName "Part Classification Entity"@en; - samm:description "The entity encapsulating the properties of the part classification."@en; - samm:properties (:key :value). :key a samm:Property; samm:preferredName "Key"@en; samm:description "Key within the classification."@en; @@ -195,13 +79,110 @@ samm:description "Value within the classification."@en; samm:characteristic samm-c:Text; samm:exampleValue "STEEWHL". -:PartGeometryCharacteristic a samm-c:Enumeration; - samm:preferredName "Part Geometry Characteristic"@en; - samm:description "Describes the characteristic of the left or right mark entity with its possible values (left or right)"@en; - samm:dataType xsd:string; - samm-c:values ("left" "right"). -:manufacturerId a samm:Property; - samm:preferredName "Manufacturer ID"@en; - samm:description "The ID of the initial issuer of the single level BoMAsSpecified"@en; +:childItems a samm:Property; + samm:preferredName "Child Items"@en; + samm:description "The child Items of the observed parent item"@en; + samm:characteristic :ChildItemCharacteristic. +:ChildItemCharacteristic a samm-c:Set; + samm:preferredName "Child Item Characteristic"@en; + samm:description "The characteristic of the child item property"@en; + samm:dataType :ChildItemEntity. +:ChildItemEntity a samm:Entity; + samm:preferredName "Child Item Entity"@en; + samm:description "Encapsulates the properties describing the child item"@en; + samm:properties (:childItemCategory :item :childItemCategory :item :childassetId). +:item a samm:Property; + samm:preferredName "Item"@en; + samm:description "The description of the part in the primary language of the production facility of the product owner."@en; + samm:characteristic :ItemCharacteristic. +:ownerItemId a samm:Property; + samm:preferredName "Owner Item ID"@en; + samm:description "This is the key field of the component which usually keeps the part numbers used in after-sales, e.g. when repairing broken parts and searching for a replacement. This ownerPartId itself isn't usually bound to one part version, with the assumption that all part versions with the same ownerPartId are mutually interchangeable."@en; + samm:characteristic :assetIdTrait; + samm:exampleValue "urn:uuid:b4741433-92bb-4027-9a02-bbc64a58d193". +:ItemCharacteristic a samm-c:Set; + samm:preferredName "Item Characteristic"@en; + samm:description "Characteristic of the item."@en; + samm:dataType :ItemEntity. +:ItemEntity a samm:Entity; + samm:preferredName "Item Entity"@en; + samm:description "Entity encapsulating the properies describing a item"@en; + samm:properties (:ownerItemId [ + samm:property :itemVersion; + samm:optional "true"^^xsd:boolean +] [ + samm:property :itemQuantity; + samm:optional "true"^^xsd:boolean +] [ + samm:property :itemDescription; + samm:optional "true"^^xsd:boolean +] [ + samm:property :itemClassification; + samm:optional "true"^^xsd:boolean +] [ + samm:property :lastModifiedOn; + samm:optional "true"^^xsd:boolean +] [ + samm:property :createdOn; + samm:optional "true"^^xsd:boolean +] :ownerItemId [ + samm:property :itemVersion; + samm:optional "true"^^xsd:boolean +] [ + samm:property :itemQuantity; + samm:optional "true"^^xsd:boolean +] [ + samm:property :itemDescription; + samm:optional "true"^^xsd:boolean +] [ + samm:property :itemClassification; + samm:optional "true"^^xsd:boolean +] [ + samm:property :lastModifiedOn; + samm:optional "true"^^xsd:boolean +] [ + samm:property :createdOn; + samm:optional "true"^^xsd:boolean +] [ + samm:property :partGeometry; + samm:optional "true"^^xsd:boolean +]). +:itemVersion a samm:Property; + samm:preferredName "Item Version"@en; + samm:description "This is the version of the item. The engineering will at times supercede an older item version by a newer one, which might have different material aspects, physical dimensions etc., still maintaining compatibility."@en; samm:characteristic samm-c:Text; - samm:exampleValue "BPNL1234567890LR". + samm:exampleValue "05". +:itemQuantity a samm:Property; + samm:preferredName "Item Quantity"@en; + samm:description "This is the quantity how often this item is in the item."@en; + samm:characteristic :ItemQuantityCharacteristic. +:itemDescription a samm:Property; + samm:preferredName "Item Description"@en; + samm:description "The description of the item in the primary language of the production facility of the product owner."@en; + samm:characteristic samm-c:Text; + samm:exampleValue "The steering wheel is nice and round". +:itemClassification a samm:Property; + samm:preferredName "Item Classification"@en; + samm:description "The item classification."@en; + samm:characteristic :ItemClassificationCharacteristic. +:ItemQuantityCharacteristic a samm:Characteristic; + samm:preferredName "Item Quantity Characteristic"@en; + samm:description "The characteristic of the item quantity."@en; + samm:dataType :ItemQuantityEntity. +:ItemQuantityEntity a samm:Entity; + samm:preferredName "Item Quantity Entity"@en; + samm:description "The entity encapsulating the properties describing the quantity of a item."@en; + samm:properties (:measurementUnit :quantityNumber :measurementUnit :quantityNumber). +:ItemClassificationCharacteristic a samm-c:Set; + samm:preferredName "Item Classification Characteristic"@en; + samm:description "The characteristic of the item classification."@en; + samm:dataType :ItemClassificationEntity. +:ItemClassificationEntity a samm:Entity; + samm:preferredName "Item Classification Entity"@en; + samm:description "The entity encapsulating the properties of the item classification."@en; + samm:properties (:key :value). +:childItemCategory a samm:Property; + samm:preferredName "Child Item Category"@en; + samm:description "The BomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; + samm:characteristic samm-c:Text; + samm:exampleValue "e.g. vehicle, winter wheels, bicycle rack". From 24958a53f45bc8e5013a7d47a5fdff2d31746287 Mon Sep 17 00:00:00 2001 From: "Rickert, Luis" Date: Tue, 29 Aug 2023 14:48:35 +0200 Subject: [PATCH 22/22] fix: adjust name of item position --- .../2.0.0/SingleLevelBomAsSpecified.ttl | 22 +++++++++---------- 1 file changed, 11 insertions(+), 11 deletions(-) diff --git a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl index f2d893292..eab683438 100644 --- a/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl +++ b/io.catenax.single_level_bom_as_specified/2.0.0/SingleLevelBomAsSpecified.ttl @@ -45,16 +45,6 @@ samm:description "The time the item was created on"@en; samm:characteristic samm-c:Timestamp; samm:exampleValue "2022-02-03T14:48:54.709Z"^^xsd:dateTime. -:partGeometry a samm:Property; - samm:preferredName "Part Geometry"@en; - samm:description "Some parts are intended to be used on either the left or right side, e.g. mirrors, hence this entity describes on which side a part is to be used"@en; - samm:characteristic :PartGeometryCharacteristic; - samm:exampleValue "left". -:PartGeometryCharacteristic a samm-c:Enumeration; - samm:preferredName "Part Geometry Characteristic"@en; - samm:description "Describes the characteristic of the left or right mark entity with its possible values (left or right)"@en; - samm:dataType xsd:string; - samm-c:values ("left" "right"). :measurementUnit a samm:Property; samm:preferredName "Measurement Unit"@en; samm:description "Unit of measurement for the quantity of serialized objects."@en; @@ -144,7 +134,7 @@ samm:property :createdOn; samm:optional "true"^^xsd:boolean ] [ - samm:property :partGeometry; + samm:property :itemPositioning; samm:optional "true"^^xsd:boolean ]). :itemVersion a samm:Property; @@ -186,3 +176,13 @@ samm:description "The BomAsSpecified defines the view of the OEM or producer of the whole product, e.g. the OEM of a vehicle. It is free of any supplier-related information and specifies the promised and guaranteed content of the whole product to the end customer. This \"top-down\" view is in contrast to the \"bottom-up\" view of the SingleLevelBoMAsPlanned, though several sub-aspects are shared. The BomAsSpecified is merely one aspect, which is attached to the twin of the whole product and itself does neither introduce further twins nor reference them. Instead it merely comprises all functional information required by dismantlers, workshops or requestors for used parts to search for and to make a match on the market place."@en; samm:characteristic samm-c:Text; samm:exampleValue "e.g. vehicle, winter wheels, bicycle rack". +:itemPositioning a samm:Property; + samm:preferredName "Item Positioning"@en; + samm:description "Some parts are intended to be used on either the left or right side, e.g. mirrors, hence this entity describes on which side a part is to be used"@en; + samm:characteristic :ItemPositioningCharacteristic; + samm:exampleValue "left". +:ItemPositioningCharacteristic a samm-c:Enumeration; + samm:preferredName "Item Positioning Characteristic"@en; + samm:description "Describes the characteristic of the left or right mark entity with its possible values (left or right)"@en; + samm:dataType xsd:string; + samm-c:values ("left" "right").