Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

[Model Update]: SerialPart 2.0.0 #500

Merged
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
191 changes: 191 additions & 0 deletions io.catenax.serial_part/2.0.0/SerialPart.ttl
Original file line number Diff line number Diff line change
@@ -0,0 +1,191 @@
#######################################################################
# Copyright(c) 2023 BASF SE
# Copyright(c) 2023 Bayerische Motoren Werke Aktiengesellschaft(BMW AG)
# Copyright(c) 2023 Fraunhofer-Gesellschaft zur Foerderung der angewandten Forschung e.V.(represented by Fraunhofer ISST & Fraunhofer IML)
# Copyright(c) 2023 German Edge Cloud GmbH & Co. KG
# Copyright(c) 2023 Henkel AG & Co. KGaA
# Copyright(c) 2023 Mercedes Benz AG
# Copyright(c) 2023 Robert Bosch Manufacturing Solutions GmbH
# Copyright(c) 2023 SAP SE
# Copyright(c) 2023 Siemens AG
# Copyright(c) 2023 T-Systems International GmbH
# Copyright(c) 2023 ZF Friedrichshafen AG
# Copyright(c) 2023 Contributors to the Eclipse Foundation
#
# See the NOTICE file(s) distributed with this work for additional
# information regarding copyright ownership.
#
# This work is made available under the terms of the
# Creative Commons Attribution 4.0 International(CC-BY-4.0) license,
# which is available at
# https://creativecommons.org/licenses/by/4.0/legalcode.
#
# SPDX-License-Identifier: CC-BY-4.0
#######################################################################

@prefix samm: <urn:samm:org.eclipse.esmf.samm:meta-model:2.0.0#>.
@prefix samm-c: <urn:samm:org.eclipse.esmf.samm:characteristic:2.0.0#>.
@prefix samm-e: <urn:samm:org.eclipse.esmf.samm:entity:2.0.0#>.
@prefix unit: <urn:samm:org.eclipse.esmf.samm:unit:2.0.0#>.
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#>.
@prefix rdfs: <http://www.w3.org/2000/01/rdf-schema#>.
@prefix xsd: <http://www.w3.org/2001/XMLSchema#>.
@prefix : <urn:samm:io.catenax.serial_part:2.0.0#>.
@prefix ext-built: <urn:samm:io.catenax.shared.part_site_information_as_built:1.0.0#>.
@prefix ext-uuid: <urn:samm:io.catenax.shared.uuid:1.0.0#>.

: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:property ext-built:sites; samm:optional true ]);
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 ]).

: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 "Classification"@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, 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.

: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 <https://www.iso.org/standard/84667.html>;
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 <https://www.iso.org/iso-3166-country-codes.html>;
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]$".
1 change: 1 addition & 0 deletions io.catenax.serial_part/2.0.0/metadata.json
Original file line number Diff line number Diff line change
@@ -0,0 +1 @@
{ "status" : "release"}
13 changes: 11 additions & 2 deletions io.catenax.serial_part/RELEASE_NOTES.md
Original file line number Diff line number Diff line change
@@ -1,7 +1,16 @@
# Changelog
All notable changes to this model will be documented in this file.

## [Unreleased]
## [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
- integration of the shared UUID characteristic and RegEx for the catenaXId property

### Changed
- migrated current aspect model from BAMM to SAMM

### Removed
- removed existing characteristic and RegEx of the catenaXId property and replaced it with content of the shared UUID aspect model (see added information)

## [1.0.1]
### Added
Expand All @@ -21,4 +30,4 @@ n/a
- changed several descriptions due to aspect renaming

### Removed
n/a
n/a