diff --git a/io.catenax.serial_part/3.0.0/SerialPart.ttl b/io.catenax.serial_part/3.0.0/SerialPart.ttl new file mode 100644 index 000000000..fec159c99 --- /dev/null +++ b/io.catenax.serial_part/3.0.0/SerialPart.ttl @@ -0,0 +1,206 @@ +####################################################################### +# Copyright(c) 2022, 2023, 2024 BASF SE +# Copyright(c) 2022, 2023, 2024 Bayerische Motoren Werke Aktiengesellschaft(BMW AG) +# Copyright(c) 2022, 2023, 2024 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V.(represented by Fraunhofer ISST & Fraunhofer IML) +# Copyright(c) 2022, 2023, 2024 German Edge Cloud GmbH & Co. KG +# Copyright(c) 2022, 2023, 2024 Henkel AG & Co. KGaA +# Copyright(c) 2022, 2023, 2024 Mercedes Benz AG +# Copyright(c) 2022, 2023, 2024 Robert Bosch Manufacturing Solutions GmbH +# Copyright(c) 2022, 2023, 2024 SAP SE +# Copyright(c) 2022, 2023, 2024 Siemens AG +# Copyright(c) 2022, 2023, 2024 T-Systems International GmbH +# Copyright(c) 2022, 2023, 2024 ZF Friedrichshafen AG +# Copyright(c) 2022, 2023, 2024 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-e: . +@prefix unit: . +@prefix rdf: . +@prefix rdfs: . +@prefix xsd: . +@prefix : . +@prefix ext-built: . +@prefix ext-classification: . +@prefix ext-uuid: . + +: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 ext-uuid:UuidV4Trait; + 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. + +: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. + +: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 ] [ samm:property ext-built:sites; 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 ] [ samm:property ext-classification:partClassification; samm:optional true ]). + +:key a samm:Property; + samm:preferredName "Identifier Key"@en; + samm:description "The key of a local identifier. "@en; + samm:characteristic :KeyTrait; + 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 :DateTimeTrait; + samm:exampleValue "2022-02-04T14:48:54". + +: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". + +:KeyTrait a samm-c:Trait; + samm:preferredName "Key Trait"@en; + samm:description "Trait that ensures the usage of predefined keys."@en; + samm-c:baseCharacteristic :KeyCharacteristic; + samm-c:constraint :KeyRegularExpression. + +:ValueCharacteristic a samm:Characteristic; + samm:preferredName "Value Characteristic"@en; + samm:description "The value of an identifier."@en; + samm:dataType xsd:string. + +:DateTimeTrait a samm-c:Trait; + samm:preferredName "Date Time Trait"@en; + samm:description "Trait to ensure regular expressions with different date and time(zone)formats."@en; + samm-c:baseCharacteristic :DateTimeCharacteristic; + samm-c:constraint :DateTimeRegularExpression. + +: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, usually 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. + +: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. + +:KeyRegularExpression a samm-c:RegularExpressionConstraint; + samm:preferredName "Key Regular Expression"@en; + samm:description "Constraint that ensures that the standard keys and custom key prefixes can be used."@en; + samm:value "^(manufacturerId|partInstanceId|batchId|van|customKey:\\w+)$". + +:DateTimeCharacteristic a samm:Characteristic; + samm:preferredName "Date Time Characteristic"@en; + samm:description "Describes a Property which contains the date and time with an optional timezone."@en; + samm:dataType xsd:string. + +:DateTimeRegularExpression a samm-c:RegularExpressionConstraint; + samm:preferredName "Date Time Regular Expression"@en; + samm:description "Regular Expression to enable UTC and Timezone formats and the possibility to exclude time information."@en; + samm:value "^(?:[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}(?:[.][0-9]+)?Z|[0-9]{4}-[0-9]{2}-[0-9]{2}(?:T[0-9]{2}:[0-9]{2}:[0-9]{2}(?:[.][0-9]+)?(?:Z|[+-][0-9]{2}:[0-9]{2}))?)$". + +: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]$". diff --git a/io.catenax.serial_part/3.0.0/metadata.json b/io.catenax.serial_part/3.0.0/metadata.json new file mode 100644 index 000000000..eb94ac1ea --- /dev/null +++ b/io.catenax.serial_part/3.0.0/metadata.json @@ -0,0 +1 @@ +{ "status" : "release"} diff --git a/io.catenax.serial_part/RELEASE_NOTES.md b/io.catenax.serial_part/RELEASE_NOTES.md index 76f25ae1d..5be653141 100644 --- a/io.catenax.serial_part/RELEASE_NOTES.md +++ b/io.catenax.serial_part/RELEASE_NOTES.md @@ -1,6 +1,16 @@ # Changelog All notable changes to this model will be documented in this file. +## [3.0.0] 2024-02-05 +### Added +- Integration of the new shared PartClassifcation 1.0.0 aspect model as child-property of the PartTypeInformation +- Added possibility to add date information excluding time +- Include additional RegEx values for the local identifier key + +### Changed +- Change (shared) partSiteInformation to be a child-porperty of the manufacturerInformation + + ## [2.0.0] 2023-12-04 ### Added - integration of the sites property and its childtree of the shared PartSiteInformationAsBuilt (1.0.0) aspect model as optional content