From a0de09b7461102707a0cf3a027e2dc88450b2fee Mon Sep 17 00:00:00 2001 From: Tomasz Jacewski Date: Mon, 29 May 2023 21:06:50 +0200 Subject: [PATCH 1/9] copy SerialPartTypization 2.0.0 for renaming --- .../SerialPartTypization.ttl | 237 ++++++++++++++++++ 1 file changed, 237 insertions(+) create mode 100644 io.catenax.serial_part/SerialPartTypization.ttl diff --git a/io.catenax.serial_part/SerialPartTypization.ttl b/io.catenax.serial_part/SerialPartTypization.ttl new file mode 100644 index 00000000..a7ad3590 --- /dev/null +++ b/io.catenax.serial_part/SerialPartTypization.ttl @@ -0,0 +1,237 @@ +####################################################################### +# Copyright (c) 2022,2023 BASF SE +# Copyright (c) 2022,2023 Bayerische Motoren Werke Aktiengesellschaft (BMW AG) +# Copyright (c) 2022,2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V. (represented by Fraunhofer ISST & Fraunhofer IML) +# Copyright (c) 2022,2023 German Edge Cloud GmbH & Co. KG +# Copyright (c) 2022,2023 Henkel AG & Co. KGaA +# Copyright (c) 2022,2023 Mercedes Benz AG +# Copyright (c) 2022,2023 Robert Bosch Manufacturing Solutions GmbH +# Copyright (c) 2022,2023 SAP SE +# Copyright (c) 2022,2023 Siemens AG +# Copyright (c) 2022,2023 T-Systems International GmbH +# Copyright (c) 2022,2023 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 bamm: . +@prefix bamm-c: . +@prefix bamm-e: . +@prefix unit: . +@prefix rdf: . +@prefix rdfs: . +@prefix xsd: . +@prefix : . + +:SerialPartTypization a bamm:Aspect ; + bamm:preferredName "Serial Part Typization"@en ; + bamm:description "A serialized part is an instantiation of a (design-) part, where the particular instantiation can be uniquely identified by means of a serial numbers or a similar identifier (e.g. VAN) or a combination of multiple identifiers (e.g. combination of manufacturer, date and number)"@en ; + bamm:properties ( :catenaXId :localIdentifiers :manufacturingInformation :partTypeInformation ) ; + bamm:operations ( ) ; + bamm:name "SerialPartTypization" . + +:catenaXId a bamm:Property ; + bamm:preferredName "Catena-X Identifier"@en ; + bamm:description "The fully anonymous Catena-X ID of the serialized part, valid for the Catena-X dataspace."@en ; + bamm:characteristic :CatenaXIdTrait ; + bamm:exampleValue "urn:uuid:580d3adf-1981-44a0-a214-13d6ceed9379" ; + bamm:name "catenaXId" . + +:localIdentifiers a bamm:Property ; + bamm:preferredName "Local Identifiers"@en ; + bamm:description "A local identifier enables identification of a part in a specific dataspace, but is not unique in Catena-X dataspace. Multiple local identifiers may exist."@en ; + bamm:characteristic :LocalIdentifierCharacteristic ; + bamm:name "localIdentifiers" . + +:manufacturingInformation a bamm:Property ; + bamm:preferredName "Manufacturing Information"@en ; + bamm:description "Information from manufacturing process, such as manufacturing date and manufacturing country"@en ; + bamm:characteristic :ManufacturingCharacteristic ; + bamm:name "manufacturingInformation" . + +:partTypeInformation a bamm:Property ; + bamm:preferredName "Part Type Information"@en ; + bamm:description "The part type from which the serialized part has been instantiated"@en ; + bamm:characteristic :PartTypeInformationCharacteristic ; + bamm:name "partTypeInformation" . + +:CatenaXIdTrait a bamm-c:Trait ; + bamm:preferredName "Catena-X ID Trait"@en ; + bamm:description "Trait to ensure data format for Catena-X ID"@en ; + bamm-c:baseCharacteristic :UUIDv4 ; + bamm-c:constraint :UUIDv4RegularExpression ; + bamm:name "CatenaXIdTrait" . + +:LocalIdentifierCharacteristic a bamm-c:Set ; + bamm:preferredName "Local Identifier Characteristic"@en ; + bamm:description "A single serialized part may have multiple attributes, that uniquely identify a that part in a specific dataspace (e.g. the manufacturer`s dataspace)"@en ; + bamm:dataType :KeyValueList ; + bamm:name "LocalIdentifierCharacteristic" . + +:ManufacturingCharacteristic a bamm:Characteristic ; + bamm:preferredName "Manufacturing Characteristic"@en ; + bamm:description "Characteristic to describe manufacturing related data"@en ; + bamm:dataType :ManufacturingEntity ; + bamm:name "ManufacturingCharacteristic" . + +:PartTypeInformationCharacteristic a bamm:Characteristic ; + bamm:preferredName "Part Type Information Characteristic"@en ; + bamm:description "The characteristics of the part type"@en ; + bamm:dataType :PartTypeInformationEntity ; + bamm:name "PartTypeInformationCharacteristic" . + +:UUIDv4 a bamm:Characteristic ; + bamm:preferredName "UUIDv4"@en ; + bamm:description "A version 4 UUID is a universally unique identifier that is generated using random 32 hexadecimal characters."@en ; + bamm:dataType xsd:string ; + bamm:name "UUIDv4" . + +: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), optionally prefixed by \"urn:uuid:\" to make it an IRI."@en ; + bamm:see ; + 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}$)" ; + bamm:name "UUIDv4RegularExpression" . + +:KeyValueList a bamm:Entity ; + bamm:preferredName "Key Value List"@en ; + bamm:description "A list of key value pairs for local identifiers, which are composed of a key and a corresponding value."@en ; + bamm:properties ( :key :value ) ; + bamm:name "KeyValueList" . + +:ManufacturingEntity a bamm:Entity ; + bamm:preferredName "Manufacturing Entity"@en ; + bamm:description "Encapsulates the manufacturing relevant attributes"@en ; + bamm:properties ( :date [ bamm:property :country; bamm:optional true ] ) ; + bamm:name "ManufacturingEntity" . + +:PartTypeInformationEntity a bamm:Entity ; + bamm:preferredName "Part Type Information Entity"@en ; + bamm:description "Encapsulation for data related to the part type"@en ; + bamm:properties ( :manufacturerPartId [ bamm:property :customerPartId; bamm:optional true ] :nameAtManufacturer [ bamm:property :nameAtCustomer; bamm:optional true ] :classification ) ; + bamm:name "PartTypeInformationEntity" . + +:key a bamm:Property ; + bamm:preferredName "Identifier Key"@en ; + bamm:description "The key of a local identifier. "@en ; + bamm:characteristic :KeyCharacteristic ; + bamm:exampleValue "PartInstanceID" ; + bamm:name "key" . + +:value a bamm:Property ; + bamm:preferredName "Identifier Value"@en ; + bamm:description "The value of an identifier."@en ; + bamm:characteristic :ValueCharacteristic ; + bamm:exampleValue "SN12345678" ; + bamm:name "value" . + +:date a bamm:Property ; + bamm:preferredName "Production Date"@en ; + bamm:description "Timestamp of the manufacturing date as the final step in production process (e.g. final quality check, ready-for-shipment event)"@en ; + bamm:characteristic bamm-c:Timestamp ; + bamm:exampleValue "2022-02-04T14:48:54"^^xsd:dateTime ; + bamm:name "date" . + +:country a bamm:Property ; + bamm:preferredName "Country code"@en ; + bamm:description "Country code where the part was manufactured"@en ; + bamm:characteristic :ProductionCountryCodeTrait ; + bamm:exampleValue "HUR" ; + bamm:name "country" . + +:manufacturerPartId a bamm:Property ; + bamm:preferredName "Manufacturer Part ID"@en ; + bamm:description "Part ID as assigned by the manufacturer of the part. The Part ID identifies the part (as designed) in the manufacturer`s dataspace. The Part ID does not reference a specific instance of a part and thus should not be confused with the serial number."@en ; + bamm:characteristic :PartIdCharacteristic ; + bamm:exampleValue "123-0.740-3434-A" ; + bamm:name "manufacturerPartId" . + +:customerPartId a bamm:Property ; + bamm:preferredName "Customer Part ID"@en ; + bamm:description "Part ID as assigned by the manufacturer of the part. The Part ID identifies the part (as designed) in the customer`s dataspace. The Part ID does not reference a specific instance of a part and thus should not be confused with the serial number."@en ; + bamm:characteristic :PartIdCharacteristic ; + bamm:exampleValue "PRT-12345" ; + bamm:name "customerPartId" . + +:nameAtManufacturer a bamm:Property ; + bamm:preferredName "Name at Manufacturer"@en ; + bamm:description "Name of the part as assigned by the manufacturer"@en ; + bamm:characteristic :PartNameCharacteristic ; + bamm:exampleValue "Mirror left" ; + bamm:name "nameAtManufacturer" . + +:nameAtCustomer a bamm:Property ; + bamm:preferredName "Name at Customer"@en ; + bamm:description "Name of the part as assigned by the customer"@en ; + bamm:characteristic :PartNameCharacteristic ; + bamm:exampleValue "side element A" ; + bamm:name "nameAtCustomer" . + +:classification a bamm:Property ; + bamm:preferredName "Classifcation"@en ; + bamm:description "The classification of the part type according to STEP standard definition"@en ; + bamm:characteristic :ClassificationCharacteristic ; + bamm:exampleValue "software" ; + bamm:name "classification" . + +:KeyCharacteristic a bamm:Characteristic ; + bamm:preferredName "Key Characteristic"@en ; + bamm:description "The key characteristic of a local identifier. A specific subset of keys is predefined, but additionally any other custom key is allowed. Predefined keys (to be used when applicable):\n- \"manufacturerId\" - The Business Partner Number (BPN) of the manufacturer. Value: BPN-Nummer\n- \"partInstanceId\" - The identifier of the manufacturer for the serialized instance of the part, e.g. the serial number\n- \"batchId\" - The identifier of the batch, to which the serialzed part belongs\n- \"van\" - The anonymized vehicle identification number (VIN). Value: anonymized VIN according to OEM anonymization rules. Note: If the key \"van\" is available, \"partInstanceId\" must also be available and hold the identical value."@en ; + bamm:dataType xsd:string ; + bamm:name "KeyCharacteristic" . + +:ValueCharacteristic a bamm:Characteristic ; + bamm:preferredName "Value Characteristic"@en ; + bamm:description "The value of an identifier."@en ; + bamm:dataType xsd:string ; + bamm:name "ValueCharacteristic" . + +:ProductionCountryCodeTrait a bamm-c:Trait ; + bamm:preferredName "Production Country Code Trait"@en ; + bamm:description "Trait to ensure standard data format for country code"@en ; + bamm-c:baseCharacteristic :CountryCodeCharacteristic ; + bamm-c:constraint :CountryCodeRegularExpression ; + bamm:name "ProductionCountryCodeTrait" . + +:PartIdCharacteristic a bamm:Characteristic ; + bamm:preferredName "Part ID Characteristic"@en ; + bamm:description "The part ID is a multi-character string, ususally assigned by an ERP system"@en ; + bamm:dataType xsd:string ; + bamm:name "PartIdCharacteristic" . + +:PartNameCharacteristic a bamm:Characteristic ; + bamm:preferredName "Part Name Characteristic"@en ; + bamm:description "Part Name in string format from the respective system in the value chain"@en ; + bamm:dataType xsd:string ; + bamm:name "PartNameCharacteristic" . + +:ClassificationCharacteristic a bamm-c:Enumeration ; + bamm:preferredName "Classification Characteristic"@en ; + bamm:description "A part type must be placed into one of the following classes: 'component', 'product', 'software', �assembly�, 'tool', or 'raw material'."@en ; + bamm:see ; + bamm:dataType xsd:string ; + bamm-c:values ( "product" "raw material" "software" "assembly" "tool" "component" ) ; + bamm:name "ClassificationCharacteristic" . + +:CountryCodeCharacteristic a bamm:Characteristic ; + bamm:preferredName "Country Code Characteristic"@en ; + bamm:description "ISO 3166-1 alpha-3 � three-letter country codes "@en ; + bamm:see ; + bamm:dataType xsd:string ; + bamm:name "CountryCodeCharacteristic" . + +:CountryCodeRegularExpression a bamm-c:RegularExpressionConstraint ; + bamm:preferredName "Country Code Regular Expression"@en ; + bamm:description "Regular Expression that ensures a three-letter code "@en ; + bamm:value "^[A-Z][A-Z][A-Z]$" ; + bamm:name "CountryCodeRegularExpression" . + From 64c0e14b72a4af6a4ea2fd0bc6e4c75b13d18eed Mon Sep 17 00:00:00 2001 From: Tomasz Jacewski Date: Mon, 29 May 2023 21:21:27 +0200 Subject: [PATCH 2/9] renamed filename for git --- .../{SerialPartTypization.ttl => SerialPart.ttl} | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename io.catenax.serial_part/{SerialPartTypization.ttl => SerialPart.ttl} (100%) diff --git a/io.catenax.serial_part/SerialPartTypization.ttl b/io.catenax.serial_part/SerialPart.ttl similarity index 100% rename from io.catenax.serial_part/SerialPartTypization.ttl rename to io.catenax.serial_part/SerialPart.ttl From 5c8d15968e49081d863aff4a1f96c94c74a789d8 Mon Sep 17 00:00:00 2001 From: Tomasz Jacewski Date: Mon, 29 May 2023 21:25:39 +0200 Subject: [PATCH 3/9] renamed aspect, updated to SAMM 2.0.0 * improved naming for catenaX ID elements * fixed some encoding issues --- io.catenax.serial_part/SerialPart.ttl | 386 ++++++++++++-------------- 1 file changed, 178 insertions(+), 208 deletions(-) diff --git a/io.catenax.serial_part/SerialPart.ttl b/io.catenax.serial_part/SerialPart.ttl index a7ad3590..5bb6a8a7 100644 --- a/io.catenax.serial_part/SerialPart.ttl +++ b/io.catenax.serial_part/SerialPart.ttl @@ -23,215 +23,185 @@ # SPDX-License-Identifier: CC-BY-4.0 ####################################################################### -@prefix bamm: . -@prefix bamm-c: . -@prefix bamm-e: . -@prefix unit: . +@prefix samm: . +@prefix samm-c: . +@prefix samm-e: . +@prefix unit: . @prefix rdf: . @prefix rdfs: . @prefix xsd: . -@prefix : . - -:SerialPartTypization a bamm:Aspect ; - bamm:preferredName "Serial Part Typization"@en ; - bamm:description "A serialized part is an instantiation of a (design-) part, where the particular instantiation can be uniquely identified by means of a serial numbers or a similar identifier (e.g. VAN) or a combination of multiple identifiers (e.g. combination of manufacturer, date and number)"@en ; - bamm:properties ( :catenaXId :localIdentifiers :manufacturingInformation :partTypeInformation ) ; - bamm:operations ( ) ; - bamm:name "SerialPartTypization" . - -:catenaXId a bamm:Property ; - bamm:preferredName "Catena-X Identifier"@en ; - bamm:description "The fully anonymous Catena-X ID of the serialized part, valid for the Catena-X dataspace."@en ; - bamm:characteristic :CatenaXIdTrait ; - bamm:exampleValue "urn:uuid:580d3adf-1981-44a0-a214-13d6ceed9379" ; - bamm:name "catenaXId" . - -:localIdentifiers a bamm:Property ; - bamm:preferredName "Local Identifiers"@en ; - bamm:description "A local identifier enables identification of a part in a specific dataspace, but is not unique in Catena-X dataspace. Multiple local identifiers may exist."@en ; - bamm:characteristic :LocalIdentifierCharacteristic ; - bamm:name "localIdentifiers" . - -:manufacturingInformation a bamm:Property ; - bamm:preferredName "Manufacturing Information"@en ; - bamm:description "Information from manufacturing process, such as manufacturing date and manufacturing country"@en ; - bamm:characteristic :ManufacturingCharacteristic ; - bamm:name "manufacturingInformation" . - -:partTypeInformation a bamm:Property ; - bamm:preferredName "Part Type Information"@en ; - bamm:description "The part type from which the serialized part has been instantiated"@en ; - bamm:characteristic :PartTypeInformationCharacteristic ; - bamm:name "partTypeInformation" . - -:CatenaXIdTrait a bamm-c:Trait ; - bamm:preferredName "Catena-X ID Trait"@en ; - bamm:description "Trait to ensure data format for Catena-X ID"@en ; - bamm-c:baseCharacteristic :UUIDv4 ; - bamm-c:constraint :UUIDv4RegularExpression ; - bamm:name "CatenaXIdTrait" . - -:LocalIdentifierCharacteristic a bamm-c:Set ; - bamm:preferredName "Local Identifier Characteristic"@en ; - bamm:description "A single serialized part may have multiple attributes, that uniquely identify a that part in a specific dataspace (e.g. the manufacturer`s dataspace)"@en ; - bamm:dataType :KeyValueList ; - bamm:name "LocalIdentifierCharacteristic" . - -:ManufacturingCharacteristic a bamm:Characteristic ; - bamm:preferredName "Manufacturing Characteristic"@en ; - bamm:description "Characteristic to describe manufacturing related data"@en ; - bamm:dataType :ManufacturingEntity ; - bamm:name "ManufacturingCharacteristic" . - -:PartTypeInformationCharacteristic a bamm:Characteristic ; - bamm:preferredName "Part Type Information Characteristic"@en ; - bamm:description "The characteristics of the part type"@en ; - bamm:dataType :PartTypeInformationEntity ; - bamm:name "PartTypeInformationCharacteristic" . - -:UUIDv4 a bamm:Characteristic ; - bamm:preferredName "UUIDv4"@en ; - bamm:description "A version 4 UUID is a universally unique identifier that is generated using random 32 hexadecimal characters."@en ; - bamm:dataType xsd:string ; - bamm:name "UUIDv4" . - -: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), optionally prefixed by \"urn:uuid:\" to make it an IRI."@en ; - bamm:see ; - 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}$)" ; - bamm:name "UUIDv4RegularExpression" . - -:KeyValueList a bamm:Entity ; - bamm:preferredName "Key Value List"@en ; - bamm:description "A list of key value pairs for local identifiers, which are composed of a key and a corresponding value."@en ; - bamm:properties ( :key :value ) ; - bamm:name "KeyValueList" . - -:ManufacturingEntity a bamm:Entity ; - bamm:preferredName "Manufacturing Entity"@en ; - bamm:description "Encapsulates the manufacturing relevant attributes"@en ; - bamm:properties ( :date [ bamm:property :country; bamm:optional true ] ) ; - bamm:name "ManufacturingEntity" . - -:PartTypeInformationEntity a bamm:Entity ; - bamm:preferredName "Part Type Information Entity"@en ; - bamm:description "Encapsulation for data related to the part type"@en ; - bamm:properties ( :manufacturerPartId [ bamm:property :customerPartId; bamm:optional true ] :nameAtManufacturer [ bamm:property :nameAtCustomer; bamm:optional true ] :classification ) ; - bamm:name "PartTypeInformationEntity" . - -:key a bamm:Property ; - bamm:preferredName "Identifier Key"@en ; - bamm:description "The key of a local identifier. "@en ; - bamm:characteristic :KeyCharacteristic ; - bamm:exampleValue "PartInstanceID" ; - bamm:name "key" . - -:value a bamm:Property ; - bamm:preferredName "Identifier Value"@en ; - bamm:description "The value of an identifier."@en ; - bamm:characteristic :ValueCharacteristic ; - bamm:exampleValue "SN12345678" ; - bamm:name "value" . - -:date a bamm:Property ; - bamm:preferredName "Production Date"@en ; - bamm:description "Timestamp of the manufacturing date as the final step in production process (e.g. final quality check, ready-for-shipment event)"@en ; - bamm:characteristic bamm-c:Timestamp ; - bamm:exampleValue "2022-02-04T14:48:54"^^xsd:dateTime ; - bamm:name "date" . - -:country a bamm:Property ; - bamm:preferredName "Country code"@en ; - bamm:description "Country code where the part was manufactured"@en ; - bamm:characteristic :ProductionCountryCodeTrait ; - bamm:exampleValue "HUR" ; - bamm:name "country" . - -:manufacturerPartId a bamm:Property ; - bamm:preferredName "Manufacturer Part ID"@en ; - bamm:description "Part ID as assigned by the manufacturer of the part. The Part ID identifies the part (as designed) in the manufacturer`s dataspace. The Part ID does not reference a specific instance of a part and thus should not be confused with the serial number."@en ; - bamm:characteristic :PartIdCharacteristic ; - bamm:exampleValue "123-0.740-3434-A" ; - bamm:name "manufacturerPartId" . - -:customerPartId a bamm:Property ; - bamm:preferredName "Customer Part ID"@en ; - bamm:description "Part ID as assigned by the manufacturer of the part. The Part ID identifies the part (as designed) in the customer`s dataspace. The Part ID does not reference a specific instance of a part and thus should not be confused with the serial number."@en ; - bamm:characteristic :PartIdCharacteristic ; - bamm:exampleValue "PRT-12345" ; - bamm:name "customerPartId" . - -:nameAtManufacturer a bamm:Property ; - bamm:preferredName "Name at Manufacturer"@en ; - bamm:description "Name of the part as assigned by the manufacturer"@en ; - bamm:characteristic :PartNameCharacteristic ; - bamm:exampleValue "Mirror left" ; - bamm:name "nameAtManufacturer" . - -:nameAtCustomer a bamm:Property ; - bamm:preferredName "Name at Customer"@en ; - bamm:description "Name of the part as assigned by the customer"@en ; - bamm:characteristic :PartNameCharacteristic ; - bamm:exampleValue "side element A" ; - bamm:name "nameAtCustomer" . - -:classification a bamm:Property ; - bamm:preferredName "Classifcation"@en ; - bamm:description "The classification of the part type according to STEP standard definition"@en ; - bamm:characteristic :ClassificationCharacteristic ; - bamm:exampleValue "software" ; - bamm:name "classification" . - -:KeyCharacteristic a bamm:Characteristic ; - bamm:preferredName "Key Characteristic"@en ; - bamm:description "The key characteristic of a local identifier. A specific subset of keys is predefined, but additionally any other custom key is allowed. Predefined keys (to be used when applicable):\n- \"manufacturerId\" - The Business Partner Number (BPN) of the manufacturer. Value: BPN-Nummer\n- \"partInstanceId\" - The identifier of the manufacturer for the serialized instance of the part, e.g. the serial number\n- \"batchId\" - The identifier of the batch, to which the serialzed part belongs\n- \"van\" - The anonymized vehicle identification number (VIN). Value: anonymized VIN according to OEM anonymization rules. Note: If the key \"van\" is available, \"partInstanceId\" must also be available and hold the identical value."@en ; - bamm:dataType xsd:string ; - bamm:name "KeyCharacteristic" . - -:ValueCharacteristic a bamm:Characteristic ; - bamm:preferredName "Value Characteristic"@en ; - bamm:description "The value of an identifier."@en ; - bamm:dataType xsd:string ; - bamm:name "ValueCharacteristic" . - -:ProductionCountryCodeTrait a bamm-c:Trait ; - bamm:preferredName "Production Country Code Trait"@en ; - bamm:description "Trait to ensure standard data format for country code"@en ; - bamm-c:baseCharacteristic :CountryCodeCharacteristic ; - bamm-c:constraint :CountryCodeRegularExpression ; - bamm:name "ProductionCountryCodeTrait" . - -:PartIdCharacteristic a bamm:Characteristic ; - bamm:preferredName "Part ID Characteristic"@en ; - bamm:description "The part ID is a multi-character string, ususally assigned by an ERP system"@en ; - bamm:dataType xsd:string ; - bamm:name "PartIdCharacteristic" . - -:PartNameCharacteristic a bamm:Characteristic ; - bamm:preferredName "Part Name Characteristic"@en ; - bamm:description "Part Name in string format from the respective system in the value chain"@en ; - bamm:dataType xsd:string ; - bamm:name "PartNameCharacteristic" . - -:ClassificationCharacteristic a bamm-c:Enumeration ; - bamm:preferredName "Classification Characteristic"@en ; - bamm:description "A part type must be placed into one of the following classes: 'component', 'product', 'software', �assembly�, 'tool', or 'raw material'."@en ; - bamm:see ; - bamm:dataType xsd:string ; - bamm-c:values ( "product" "raw material" "software" "assembly" "tool" "component" ) ; - bamm:name "ClassificationCharacteristic" . - -:CountryCodeCharacteristic a bamm:Characteristic ; - bamm:preferredName "Country Code Characteristic"@en ; - bamm:description "ISO 3166-1 alpha-3 � three-letter country codes "@en ; - bamm:see ; - bamm:dataType xsd:string ; - bamm:name "CountryCodeCharacteristic" . - -:CountryCodeRegularExpression a bamm-c:RegularExpressionConstraint ; - bamm:preferredName "Country Code Regular Expression"@en ; - bamm:description "Regular Expression that ensures a three-letter code "@en ; - bamm:value "^[A-Z][A-Z][A-Z]$" ; - bamm:name "CountryCodeRegularExpression" . +@prefix : . + +:SerialPart a samm:Aspect ; + samm:preferredName "Serial Part"@en ; + samm:description "A serialized part is an instantiation of a (design-) part, where the particular instantiation can be uniquely identified by means of a serial number or a similar identifier (e.g. VAN) or a combination of multiple identifiers (e.g. combination of manufacturer, date and number)"@en ; + samm:properties ( :catenaXId :localIdentifiers :manufacturingInformation :partTypeInformation ) ; + samm:operations ( ) ; + samm:events ( ) . + +:catenaXId a samm:Property ; + samm:preferredName "Catena-X ID"@en ; + samm:description "The fully anonymous Catena-X ID of the serialized part, valid for the Catena-X dataspace."@en ; + samm:characteristic :CatenaXIdTrait ; + samm:exampleValue "urn:uuid:580d3adf-1981-44a0-a214-13d6ceed9379" . + +:localIdentifiers a samm:Property ; + samm:preferredName "Local Identifiers"@en ; + samm:description "A local identifier enables identification of a part in a specific dataspace, but is not unique in Catena-X dataspace. Multiple local identifiers may exist."@en ; + samm:characteristic :LocalIdentifierCharacteristic . + +:manufacturingInformation a samm:Property ; + samm:preferredName "Manufacturing Information"@en ; + samm:description "Information from manufacturing process, such as manufacturing date and manufacturing country"@en ; + samm:characteristic :ManufacturingCharacteristic . + +:partTypeInformation a samm:Property ; + samm:preferredName "Part Type Information"@en ; + samm:description "The part type from which the serialized part has been instantiated"@en ; + samm:characteristic :PartTypeInformationCharacteristic . + +:CatenaXIdTrait a samm-c:Trait ; + samm:preferredName "Catena-X ID Trait"@en ; + samm:description "Trait to ensure data format for Catena-X ID"@en ; + samm-c:baseCharacteristic :Uuidv4Characteristic ; + samm-c:constraint :Uuidv4RegularExpression . + +:LocalIdentifierCharacteristic a samm-c:Set ; + samm:preferredName "Local Identifier Characteristic"@en ; + samm:description "A single serialized part may have multiple attributes, that uniquely identify a that part in a specific dataspace (e.g. the manufacturer`s dataspace)"@en ; + samm:dataType :KeyValueList . + +:ManufacturingCharacteristic a samm:Characteristic ; + samm:preferredName "Manufacturing Characteristic"@en ; + samm:description "Characteristic to describe manufacturing related data"@en ; + samm:dataType :ManufacturingEntity . + +:PartTypeInformationCharacteristic a samm:Characteristic ; + samm:preferredName "Part Type Information Characteristic"@en ; + samm:description "The characteristics of the part type"@en ; + samm:dataType :PartTypeInformationEntity . + +:Uuidv4Characteristic a samm:Characteristic ; + samm:preferredName "UUIDv4 Characteristic"@en ; + samm:description "A version 4 UUID is a universally unique identifier that is generated using random 32 hexadecimal characters."@en ; + samm:dataType xsd:string . + +: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), optionally prefixed by \"urn:uuid:\" to make it an IRI."@en ; + samm:see ; + samm:value "(^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}$)" . + +:KeyValueList a samm:Entity ; + samm:preferredName "Key Value List"@en ; + samm:description "A list of key value pairs for local identifiers, which are composed of a key and a corresponding value."@en ; + samm:properties ( :key :value ) . + +:ManufacturingEntity a samm:Entity ; + samm:preferredName "Manufacturing Entity"@en ; + samm:description "Encapsulates the manufacturing relevant attributes"@en ; + samm:properties ( :date [ samm:property :country; samm:optional true ] ) . + +:PartTypeInformationEntity a samm:Entity ; + samm:preferredName "Part Type Information Entity"@en ; + samm:description "Encapsulation for data related to the part type"@en ; + samm:properties ( :manufacturerPartId [ samm:property :customerPartId; samm:optional true ] :nameAtManufacturer [ samm:property :nameAtCustomer; samm:optional true ] :classification ) . + +:key a samm:Property ; + samm:preferredName "Identifier Key"@en ; + samm:description "The key of a local identifier. "@en ; + samm:characteristic :KeyCharacteristic ; + samm:exampleValue "PartInstanceID" . + +:value a samm:Property ; + samm:preferredName "Identifier Value"@en ; + samm:description "The value of an identifier."@en ; + samm:characteristic :ValueCharacteristic ; + samm:exampleValue "SN12345678" . + +:date a samm:Property ; + samm:preferredName "Production Date"@en ; + samm:description "Timestamp of the manufacturing date as the final step in production process (e.g. final quality check, ready-for-shipment event)"@en ; + samm:characteristic samm-c:Timestamp ; + samm:exampleValue "2022-02-04T14:48:54"^^xsd:dateTime . + +:country a samm:Property ; + samm:preferredName "Country code"@en ; + samm:description "Country code where the part was manufactured"@en ; + samm:characteristic :ProductionCountryCodeTrait ; + samm:exampleValue "HUR" . + +:manufacturerPartId a samm:Property ; + samm:preferredName "Manufacturer Part ID"@en ; + samm:description "Part ID as assigned by the manufacturer of the part. The Part ID identifies the part (as designed) in the manufacturer`s dataspace. The Part ID does not reference a specific instance of a part and thus should not be confused with the serial number."@en ; + samm:characteristic :PartIdCharacteristic ; + samm:exampleValue "123-0.740-3434-A" . + +:customerPartId a samm:Property ; + samm:preferredName "Customer Part ID"@en ; + samm:description "Part ID as assigned by the manufacturer of the part. The Part ID identifies the part (as designed) in the customer`s dataspace. The Part ID does not reference a specific instance of a part and thus should not be confused with the serial number."@en ; + samm:characteristic :PartIdCharacteristic ; + samm:exampleValue "PRT-12345" . + +:nameAtManufacturer a samm:Property ; + samm:preferredName "Name at Manufacturer"@en ; + samm:description "Name of the part as assigned by the manufacturer"@en ; + samm:characteristic :PartNameCharacteristic ; + samm:exampleValue "Mirror left" . + +:nameAtCustomer a samm:Property ; + samm:preferredName "Name at Customer"@en ; + samm:description "Name of the part as assigned by the customer"@en ; + samm:characteristic :PartNameCharacteristic ; + samm:exampleValue "side element A" . + +:classification a samm:Property ; + samm:preferredName "Classifcation"@en ; + samm:description "The classification of the part type according to STEP standard definition"@en ; + samm:characteristic :ClassificationCharacteristic ; + samm:exampleValue "software" . + +:KeyCharacteristic a samm:Characteristic ; + samm:preferredName "Key Characteristic"@en ; + samm:description "The key characteristic of a local identifier. A specific subset of keys is predefined, but additionally any other custom key is allowed. Predefined keys (to be used when applicable):\n- \"manufacturerId\" - The Business Partner Number (BPN) of the manufacturer. Value: BPN-Nummer\n- \"partInstanceId\" - The identifier of the manufacturer for the serialized instance of the part, e.g. the serial number\n- \"batchId\" - The identifier of the batch, to which the serialzed part belongs\n- \"van\" - The anonymized vehicle identification number (VIN). Value: anonymized VIN according to OEM anonymization rules. Note: If the key \"van\" is available, \"partInstanceId\" must also be available and hold the identical value."@en ; + samm:dataType xsd:string . + +:ValueCharacteristic a samm:Characteristic ; + samm:preferredName "Value Characteristic"@en ; + samm:description "The value of an identifier."@en ; + samm:dataType xsd:string . + +:ProductionCountryCodeTrait a samm-c:Trait ; + samm:preferredName "Production Country Code Trait"@en ; + samm:description "Trait to ensure standard data format for country code"@en ; + samm-c:baseCharacteristic :CountryCodeCharacteristic ; + samm-c:constraint :CountryCodeRegularExpression . + +:PartIdCharacteristic a samm:Characteristic ; + samm:preferredName "Part ID Characteristic"@en ; + samm:description "The part ID is a multi-character string, ususally assigned by an ERP system"@en ; + samm:dataType xsd:string . + +:PartNameCharacteristic a samm:Characteristic ; + samm:preferredName "Part Name Characteristic"@en ; + samm:description "Part Name in string format from the respective system in the value chain"@en ; + samm:dataType xsd:string . + +:ClassificationCharacteristic a samm-c:Enumeration ; + samm:preferredName "Classification Characteristic"@en ; + samm:description "A part type must be placed into one of the following classes: 'component', 'product', 'software', 'assembly', 'tool', or 'raw material'."@en ; + samm:see ; + samm:dataType xsd:string ; + samm-c:values ( "product" "raw material" "software" "assembly" "tool" "component" ) . + +:CountryCodeCharacteristic a samm:Characteristic ; + samm:preferredName "Country Code Characteristic"@en ; + samm:description "ISO 3166-1 alpha-3 - three-letter country codes "@en ; + samm:see ; + samm:dataType xsd:string . + +:CountryCodeRegularExpression a samm-c:RegularExpressionConstraint ; + samm:preferredName "Country Code Regular Expression"@en ; + samm:description "Regular Expression that ensures a three-letter code "@en ; + samm:value "^[A-Z][A-Z][A-Z]$" . From e1a0a771f957074a95d073cc294d2ec30cd05804 Mon Sep 17 00:00:00 2001 From: Tomasz Jacewski Date: Mon, 29 May 2023 23:06:49 +0200 Subject: [PATCH 4/9] Create metadata.json --- io.catenax.serial_part/metadata.json | 1 + 1 file changed, 1 insertion(+) create mode 100644 io.catenax.serial_part/metadata.json diff --git a/io.catenax.serial_part/metadata.json b/io.catenax.serial_part/metadata.json new file mode 100644 index 00000000..eb94ac1e --- /dev/null +++ b/io.catenax.serial_part/metadata.json @@ -0,0 +1 @@ +{ "status" : "release"} From e6ddc7fa98843230b94a62439a5519c393f0630a Mon Sep 17 00:00:00 2001 From: Tomasz Jacewski Date: Tue, 30 May 2023 15:34:18 +0200 Subject: [PATCH 5/9] fixed folder strucutre for serialPart --- io.catenax.serial_part/{ => 1.0.0}/SerialPart.ttl | 0 io.catenax.serial_part/{ => 1.0.0}/metadata.json | 0 2 files changed, 0 insertions(+), 0 deletions(-) rename io.catenax.serial_part/{ => 1.0.0}/SerialPart.ttl (100%) rename io.catenax.serial_part/{ => 1.0.0}/metadata.json (100%) diff --git a/io.catenax.serial_part/SerialPart.ttl b/io.catenax.serial_part/1.0.0/SerialPart.ttl similarity index 100% rename from io.catenax.serial_part/SerialPart.ttl rename to io.catenax.serial_part/1.0.0/SerialPart.ttl diff --git a/io.catenax.serial_part/metadata.json b/io.catenax.serial_part/1.0.0/metadata.json similarity index 100% rename from io.catenax.serial_part/metadata.json rename to io.catenax.serial_part/1.0.0/metadata.json From 33e383cd0374effdd52bb377916c2adfefffd20e Mon Sep 17 00:00:00 2001 From: Tomasz Jacewski Date: Thu, 1 Jun 2023 11:43:20 +0200 Subject: [PATCH 6/9] added release notes --- io.catenax.serial_part/1.0.0/RELEASE_NOTES.md | 13 +++++++++++++ 1 file changed, 13 insertions(+) create mode 100644 io.catenax.serial_part/1.0.0/RELEASE_NOTES.md diff --git a/io.catenax.serial_part/1.0.0/RELEASE_NOTES.md b/io.catenax.serial_part/1.0.0/RELEASE_NOTES.md new file mode 100644 index 00000000..0c0b4dd8 --- /dev/null +++ b/io.catenax.serial_part/1.0.0/RELEASE_NOTES.md @@ -0,0 +1,13 @@ +# Changelog +All notable changes to this model will be documented in this file. + +## [Unreleased] + +## [1.0.0] +### Added +- renamed model from `io.catenax.serial_part_typization:2.0.0#SerialPartTypization` + +### Changed +- changed several descriptions due to aspect renaming + +### Removed From 5f8f4c1b808d9076325fade1ea074c44afdda2b6 Mon Sep 17 00:00:00 2001 From: Tomasz Jacewski Date: Thu, 1 Jun 2023 12:29:06 +0200 Subject: [PATCH 7/9] fixed release notes file position --- io.catenax.serial_part/{1.0.0 => }/RELEASE_NOTES.md | 0 1 file changed, 0 insertions(+), 0 deletions(-) rename io.catenax.serial_part/{1.0.0 => }/RELEASE_NOTES.md (100%) diff --git a/io.catenax.serial_part/1.0.0/RELEASE_NOTES.md b/io.catenax.serial_part/RELEASE_NOTES.md similarity index 100% rename from io.catenax.serial_part/1.0.0/RELEASE_NOTES.md rename to io.catenax.serial_part/RELEASE_NOTES.md From 51900d748a80ddbdbb871f4982311c38059b4bfd Mon Sep 17 00:00:00 2001 From: Tomasz Jacewski Date: Fri, 2 Jun 2023 09:04:45 +0200 Subject: [PATCH 8/9] changed Link from recommendation document to actual ISO standard. --- io.catenax.serial_part/1.0.0/SerialPart.ttl | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/io.catenax.serial_part/1.0.0/SerialPart.ttl b/io.catenax.serial_part/1.0.0/SerialPart.ttl index 5bb6a8a7..a73a153a 100644 --- a/io.catenax.serial_part/1.0.0/SerialPart.ttl +++ b/io.catenax.serial_part/1.0.0/SerialPart.ttl @@ -190,7 +190,7 @@ :ClassificationCharacteristic a samm-c:Enumeration ; samm:preferredName "Classification Characteristic"@en ; samm:description "A part type must be placed into one of the following classes: 'component', 'product', 'software', 'assembly', 'tool', or 'raw material'."@en ; - samm:see ; + samm:see ; samm:dataType xsd:string ; samm-c:values ( "product" "raw material" "software" "assembly" "tool" "component" ) . From 938f9d44a00f2e1799f2c44b4788766de6d6eb8b Mon Sep 17 00:00:00 2001 From: Tomasz Jacewski Date: Tue, 13 Jun 2023 09:54:38 +0200 Subject: [PATCH 9/9] switched from SAMM 2.0.0 to BAMM 2.0.0 --- io.catenax.serial_part/1.0.0/SerialPart.ttl | 356 ++++++++++---------- 1 file changed, 178 insertions(+), 178 deletions(-) diff --git a/io.catenax.serial_part/1.0.0/SerialPart.ttl b/io.catenax.serial_part/1.0.0/SerialPart.ttl index a73a153a..4144c7ad 100644 --- a/io.catenax.serial_part/1.0.0/SerialPart.ttl +++ b/io.catenax.serial_part/1.0.0/SerialPart.ttl @@ -23,185 +23,185 @@ # SPDX-License-Identifier: CC-BY-4.0 ####################################################################### -@prefix samm: . -@prefix samm-c: . -@prefix samm-e: . -@prefix unit: . +@prefix bamm: . +@prefix bamm-c: . +@prefix bamm-e: . +@prefix unit: . @prefix rdf: . @prefix rdfs: . @prefix xsd: . -@prefix : . - -:SerialPart a samm:Aspect ; - samm:preferredName "Serial Part"@en ; - samm:description "A serialized part is an instantiation of a (design-) part, where the particular instantiation can be uniquely identified by means of a serial number or a similar identifier (e.g. VAN) or a combination of multiple identifiers (e.g. combination of manufacturer, date and number)"@en ; - samm:properties ( :catenaXId :localIdentifiers :manufacturingInformation :partTypeInformation ) ; - samm:operations ( ) ; - samm:events ( ) . - -:catenaXId a samm:Property ; - samm:preferredName "Catena-X ID"@en ; - samm:description "The fully anonymous Catena-X ID of the serialized part, valid for the Catena-X dataspace."@en ; - samm:characteristic :CatenaXIdTrait ; - samm:exampleValue "urn:uuid:580d3adf-1981-44a0-a214-13d6ceed9379" . - -:localIdentifiers a samm:Property ; - samm:preferredName "Local Identifiers"@en ; - samm:description "A local identifier enables identification of a part in a specific dataspace, but is not unique in Catena-X dataspace. Multiple local identifiers may exist."@en ; - samm:characteristic :LocalIdentifierCharacteristic . - -:manufacturingInformation a samm:Property ; - samm:preferredName "Manufacturing Information"@en ; - samm:description "Information from manufacturing process, such as manufacturing date and manufacturing country"@en ; - samm:characteristic :ManufacturingCharacteristic . - -:partTypeInformation a samm:Property ; - samm:preferredName "Part Type Information"@en ; - samm:description "The part type from which the serialized part has been instantiated"@en ; - samm:characteristic :PartTypeInformationCharacteristic . - -:CatenaXIdTrait a samm-c:Trait ; - samm:preferredName "Catena-X ID Trait"@en ; - samm:description "Trait to ensure data format for Catena-X ID"@en ; - samm-c:baseCharacteristic :Uuidv4Characteristic ; - samm-c:constraint :Uuidv4RegularExpression . - -:LocalIdentifierCharacteristic a samm-c:Set ; - samm:preferredName "Local Identifier Characteristic"@en ; - samm:description "A single serialized part may have multiple attributes, that uniquely identify a that part in a specific dataspace (e.g. the manufacturer`s dataspace)"@en ; - samm:dataType :KeyValueList . - -:ManufacturingCharacteristic a samm:Characteristic ; - samm:preferredName "Manufacturing Characteristic"@en ; - samm:description "Characteristic to describe manufacturing related data"@en ; - samm:dataType :ManufacturingEntity . - -:PartTypeInformationCharacteristic a samm:Characteristic ; - samm:preferredName "Part Type Information Characteristic"@en ; - samm:description "The characteristics of the part type"@en ; - samm:dataType :PartTypeInformationEntity . - -:Uuidv4Characteristic a samm:Characteristic ; - samm:preferredName "UUIDv4 Characteristic"@en ; - samm:description "A version 4 UUID is a universally unique identifier that is generated using random 32 hexadecimal characters."@en ; - samm:dataType xsd:string . - -: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), optionally prefixed by \"urn:uuid:\" to make it an IRI."@en ; - samm:see ; - samm:value "(^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}$)" . - -:KeyValueList a samm:Entity ; - samm:preferredName "Key Value List"@en ; - samm:description "A list of key value pairs for local identifiers, which are composed of a key and a corresponding value."@en ; - samm:properties ( :key :value ) . - -:ManufacturingEntity a samm:Entity ; - samm:preferredName "Manufacturing Entity"@en ; - samm:description "Encapsulates the manufacturing relevant attributes"@en ; - samm:properties ( :date [ samm:property :country; samm:optional true ] ) . - -:PartTypeInformationEntity a samm:Entity ; - samm:preferredName "Part Type Information Entity"@en ; - samm:description "Encapsulation for data related to the part type"@en ; - samm:properties ( :manufacturerPartId [ samm:property :customerPartId; samm:optional true ] :nameAtManufacturer [ samm:property :nameAtCustomer; samm:optional true ] :classification ) . - -:key a samm:Property ; - samm:preferredName "Identifier Key"@en ; - samm:description "The key of a local identifier. "@en ; - samm:characteristic :KeyCharacteristic ; - samm:exampleValue "PartInstanceID" . - -:value a samm:Property ; - samm:preferredName "Identifier Value"@en ; - samm:description "The value of an identifier."@en ; - samm:characteristic :ValueCharacteristic ; - samm:exampleValue "SN12345678" . - -:date a samm:Property ; - samm:preferredName "Production Date"@en ; - samm:description "Timestamp of the manufacturing date as the final step in production process (e.g. final quality check, ready-for-shipment event)"@en ; - samm:characteristic samm-c:Timestamp ; - samm:exampleValue "2022-02-04T14:48:54"^^xsd:dateTime . - -:country a samm:Property ; - samm:preferredName "Country code"@en ; - samm:description "Country code where the part was manufactured"@en ; - samm:characteristic :ProductionCountryCodeTrait ; - samm:exampleValue "HUR" . - -:manufacturerPartId a samm:Property ; - samm:preferredName "Manufacturer Part ID"@en ; - samm:description "Part ID as assigned by the manufacturer of the part. The Part ID identifies the part (as designed) in the manufacturer`s dataspace. The Part ID does not reference a specific instance of a part and thus should not be confused with the serial number."@en ; - samm:characteristic :PartIdCharacteristic ; - samm:exampleValue "123-0.740-3434-A" . - -:customerPartId a samm:Property ; - samm:preferredName "Customer Part ID"@en ; - samm:description "Part ID as assigned by the manufacturer of the part. The Part ID identifies the part (as designed) in the customer`s dataspace. The Part ID does not reference a specific instance of a part and thus should not be confused with the serial number."@en ; - samm:characteristic :PartIdCharacteristic ; - samm:exampleValue "PRT-12345" . - -:nameAtManufacturer a samm:Property ; - samm:preferredName "Name at Manufacturer"@en ; - samm:description "Name of the part as assigned by the manufacturer"@en ; - samm:characteristic :PartNameCharacteristic ; - samm:exampleValue "Mirror left" . - -:nameAtCustomer a samm:Property ; - samm:preferredName "Name at Customer"@en ; - samm:description "Name of the part as assigned by the customer"@en ; - samm:characteristic :PartNameCharacteristic ; - samm:exampleValue "side element A" . - -:classification a samm:Property ; - samm:preferredName "Classifcation"@en ; - samm:description "The classification of the part type according to STEP standard definition"@en ; - samm:characteristic :ClassificationCharacteristic ; - samm:exampleValue "software" . - -:KeyCharacteristic a samm:Characteristic ; - samm:preferredName "Key Characteristic"@en ; - samm:description "The key characteristic of a local identifier. A specific subset of keys is predefined, but additionally any other custom key is allowed. Predefined keys (to be used when applicable):\n- \"manufacturerId\" - The Business Partner Number (BPN) of the manufacturer. Value: BPN-Nummer\n- \"partInstanceId\" - The identifier of the manufacturer for the serialized instance of the part, e.g. the serial number\n- \"batchId\" - The identifier of the batch, to which the serialzed part belongs\n- \"van\" - The anonymized vehicle identification number (VIN). Value: anonymized VIN according to OEM anonymization rules. Note: If the key \"van\" is available, \"partInstanceId\" must also be available and hold the identical value."@en ; - samm:dataType xsd:string . - -:ValueCharacteristic a samm:Characteristic ; - samm:preferredName "Value Characteristic"@en ; - samm:description "The value of an identifier."@en ; - samm:dataType xsd:string . - -:ProductionCountryCodeTrait a samm-c:Trait ; - samm:preferredName "Production Country Code Trait"@en ; - samm:description "Trait to ensure standard data format for country code"@en ; - samm-c:baseCharacteristic :CountryCodeCharacteristic ; - samm-c:constraint :CountryCodeRegularExpression . - -:PartIdCharacteristic a samm:Characteristic ; - samm:preferredName "Part ID Characteristic"@en ; - samm:description "The part ID is a multi-character string, ususally assigned by an ERP system"@en ; - samm:dataType xsd:string . - -:PartNameCharacteristic a samm:Characteristic ; - samm:preferredName "Part Name Characteristic"@en ; - samm:description "Part Name in string format from the respective system in the value chain"@en ; - samm:dataType xsd:string . - -:ClassificationCharacteristic a samm-c:Enumeration ; - samm:preferredName "Classification Characteristic"@en ; - samm:description "A part type must be placed into one of the following classes: 'component', 'product', 'software', 'assembly', 'tool', or 'raw material'."@en ; - samm:see ; - samm:dataType xsd:string ; - samm-c:values ( "product" "raw material" "software" "assembly" "tool" "component" ) . - -:CountryCodeCharacteristic a samm:Characteristic ; - samm:preferredName "Country Code Characteristic"@en ; - samm:description "ISO 3166-1 alpha-3 - three-letter country codes "@en ; - samm:see ; - samm:dataType xsd:string . - -:CountryCodeRegularExpression a samm-c:RegularExpressionConstraint ; - samm:preferredName "Country Code Regular Expression"@en ; - samm:description "Regular Expression that ensures a three-letter code "@en ; - samm:value "^[A-Z][A-Z][A-Z]$" . +@prefix : . + +:SerialPart a bamm:Aspect ; + bamm:preferredName "Serial Part"@en ; + bamm:description "A serialized part is an instantiation of a (design-) part, where the particular instantiation can be uniquely identified by means of a serial number or a similar identifier (e.g. VAN) or a combination of multiple identifiers (e.g. combination of manufacturer, date and number)"@en ; + bamm:properties ( :catenaXId :localIdentifiers :manufacturingInformation :partTypeInformation ) ; + bamm:operations ( ) ; + bamm:events ( ) . + +:catenaXId a bamm:Property ; + bamm:preferredName "Catena-X ID"@en ; + bamm:description "The fully anonymous Catena-X ID of the serialized part, valid for the Catena-X dataspace."@en ; + bamm:characteristic :CatenaXIdTrait ; + bamm:exampleValue "urn:uuid:580d3adf-1981-44a0-a214-13d6ceed9379" . + +:localIdentifiers a bamm:Property ; + bamm:preferredName "Local Identifiers"@en ; + bamm:description "A local identifier enables identification of a part in a specific dataspace, but is not unique in Catena-X dataspace. Multiple local identifiers may exist."@en ; + bamm:characteristic :LocalIdentifierCharacteristic . + +:manufacturingInformation a bamm:Property ; + bamm:preferredName "Manufacturing Information"@en ; + bamm:description "Information from manufacturing process, such as manufacturing date and manufacturing country"@en ; + bamm:characteristic :ManufacturingCharacteristic . + +:partTypeInformation a bamm:Property ; + bamm:preferredName "Part Type Information"@en ; + bamm:description "The part type from which the serialized part has been instantiated"@en ; + bamm:characteristic :PartTypeInformationCharacteristic . + +:CatenaXIdTrait a bamm-c:Trait ; + bamm:preferredName "Catena-X ID Trait"@en ; + bamm:description "Trait to ensure data format for Catena-X ID"@en ; + bamm-c:baseCharacteristic :Uuidv4Characteristic ; + bamm-c:constraint :Uuidv4RegularExpression . + +:LocalIdentifierCharacteristic a bamm-c:Set ; + bamm:preferredName "Local Identifier Characteristic"@en ; + bamm:description "A single serialized part may have multiple attributes, that uniquely identify a that part in a specific dataspace (e.g. the manufacturer`s dataspace)"@en ; + bamm:dataType :KeyValueList . + +:ManufacturingCharacteristic a bamm:Characteristic ; + bamm:preferredName "Manufacturing Characteristic"@en ; + bamm:description "Characteristic to describe manufacturing related data"@en ; + bamm:dataType :ManufacturingEntity . + +:PartTypeInformationCharacteristic a bamm:Characteristic ; + bamm:preferredName "Part Type Information Characteristic"@en ; + bamm:description "The characteristics of the part type"@en ; + bamm:dataType :PartTypeInformationEntity . + +:Uuidv4Characteristic a bamm:Characteristic ; + bamm:preferredName "UUIDv4 Characteristic"@en ; + bamm:description "A version 4 UUID is a universally unique identifier that is generated using random 32 hexadecimal characters."@en ; + bamm:dataType xsd:string . + +: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), optionally prefixed by \"urn:uuid:\" to make it an IRI."@en ; + bamm:see ; + bamm:value "(^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}$)" . + +:KeyValueList a bamm:Entity ; + bamm:preferredName "Key Value List"@en ; + bamm:description "A list of key value pairs for local identifiers, which are composed of a key and a corresponding value."@en ; + bamm:properties ( :key :value ) . + +:ManufacturingEntity a bamm:Entity ; + bamm:preferredName "Manufacturing Entity"@en ; + bamm:description "Encapsulates the manufacturing relevant attributes"@en ; + bamm:properties ( :date [ bamm:property :country; bamm:optional true ] ) . + +:PartTypeInformationEntity a bamm:Entity ; + bamm:preferredName "Part Type Information Entity"@en ; + bamm:description "Encapsulation for data related to the part type"@en ; + bamm:properties ( :manufacturerPartId [ bamm:property :customerPartId; bamm:optional true ] :nameAtManufacturer [ bamm:property :nameAtCustomer; bamm:optional true ] :classification ) . + +:key a bamm:Property ; + bamm:preferredName "Identifier Key"@en ; + bamm:description "The key of a local identifier. "@en ; + bamm:characteristic :KeyCharacteristic ; + bamm:exampleValue "PartInstanceID" . + +:value a bamm:Property ; + bamm:preferredName "Identifier Value"@en ; + bamm:description "The value of an identifier."@en ; + bamm:characteristic :ValueCharacteristic ; + bamm:exampleValue "SN12345678" . + +:date a bamm:Property ; + bamm:preferredName "Production Date"@en ; + bamm:description "Timestamp of the manufacturing date as the final step in production process (e.g. final quality check, ready-for-shipment event)"@en ; + bamm:characteristic bamm-c:Timestamp ; + bamm:exampleValue "2022-02-04T14:48:54"^^xsd:dateTime . + +:country a bamm:Property ; + bamm:preferredName "Country code"@en ; + bamm:description "Country code where the part was manufactured"@en ; + bamm:characteristic :ProductionCountryCodeTrait ; + bamm:exampleValue "HUR" . + +:manufacturerPartId a bamm:Property ; + bamm:preferredName "Manufacturer Part ID"@en ; + bamm:description "Part ID as assigned by the manufacturer of the part. The Part ID identifies the part (as designed) in the manufacturer`s dataspace. The Part ID does not reference a specific instance of a part and thus should not be confused with the serial number."@en ; + bamm:characteristic :PartIdCharacteristic ; + bamm:exampleValue "123-0.740-3434-A" . + +:customerPartId a bamm:Property ; + bamm:preferredName "Customer Part ID"@en ; + bamm:description "Part ID as assigned by the manufacturer of the part. The Part ID identifies the part (as designed) in the customer`s dataspace. The Part ID does not reference a specific instance of a part and thus should not be confused with the serial number."@en ; + bamm:characteristic :PartIdCharacteristic ; + bamm:exampleValue "PRT-12345" . + +:nameAtManufacturer a bamm:Property ; + bamm:preferredName "Name at Manufacturer"@en ; + bamm:description "Name of the part as assigned by the manufacturer"@en ; + bamm:characteristic :PartNameCharacteristic ; + bamm:exampleValue "Mirror left" . + +:nameAtCustomer a bamm:Property ; + bamm:preferredName "Name at Customer"@en ; + bamm:description "Name of the part as assigned by the customer"@en ; + bamm:characteristic :PartNameCharacteristic ; + bamm:exampleValue "side element A" . + +:classification a bamm:Property ; + bamm:preferredName "Classifcation"@en ; + bamm:description "The classification of the part type according to STEP standard definition"@en ; + bamm:characteristic :ClassificationCharacteristic ; + bamm:exampleValue "software" . + +:KeyCharacteristic a bamm:Characteristic ; + bamm:preferredName "Key Characteristic"@en ; + bamm:description "The key characteristic of a local identifier. A specific subset of keys is predefined, but additionally any other custom key is allowed. Predefined keys (to be used when applicable):\n- \"manufacturerId\" - The Business Partner Number (BPN) of the manufacturer. Value: BPN-Nummer\n- \"partInstanceId\" - The identifier of the manufacturer for the serialized instance of the part, e.g. the serial number\n- \"batchId\" - The identifier of the batch, to which the serialzed part belongs\n- \"van\" - The anonymized vehicle identification number (VIN). Value: anonymized VIN according to OEM anonymization rules. Note: If the key \"van\" is available, \"partInstanceId\" must also be available and hold the identical value."@en ; + bamm:dataType xsd:string . + +:ValueCharacteristic a bamm:Characteristic ; + bamm:preferredName "Value Characteristic"@en ; + bamm:description "The value of an identifier."@en ; + bamm:dataType xsd:string . + +:ProductionCountryCodeTrait a bamm-c:Trait ; + bamm:preferredName "Production Country Code Trait"@en ; + bamm:description "Trait to ensure standard data format for country code"@en ; + bamm-c:baseCharacteristic :CountryCodeCharacteristic ; + bamm-c:constraint :CountryCodeRegularExpression . + +:PartIdCharacteristic a bamm:Characteristic ; + bamm:preferredName "Part ID Characteristic"@en ; + bamm:description "The part ID is a multi-character string, ususally assigned by an ERP system"@en ; + bamm:dataType xsd:string . + +:PartNameCharacteristic a bamm:Characteristic ; + bamm:preferredName "Part Name Characteristic"@en ; + bamm:description "Part Name in string format from the respective system in the value chain"@en ; + bamm:dataType xsd:string . + +:ClassificationCharacteristic a bamm-c:Enumeration ; + bamm:preferredName "Classification Characteristic"@en ; + bamm:description "A part type must be placed into one of the following classes: 'component', 'product', 'software', 'assembly', 'tool', or 'raw material'."@en ; + bamm:see ; + bamm:dataType xsd:string ; + bamm-c:values ( "product" "raw material" "software" "assembly" "tool" "component" ) . + +:CountryCodeCharacteristic a bamm:Characteristic ; + bamm:preferredName "Country Code Characteristic"@en ; + bamm:description "ISO 3166-1 alpha-3 - three-letter country codes "@en ; + bamm:see ; + bamm:dataType xsd:string . + +:CountryCodeRegularExpression a bamm-c:RegularExpressionConstraint ; + bamm:preferredName "Country Code Regular Expression"@en ; + bamm:description "Regular Expression that ensures a three-letter code "@en ; + bamm:value "^[A-Z][A-Z][A-Z]$" .