admin-shell-io / aas-specs

Repository of the Asset Administration Shell Specification IDTA-01001 - Metamodel
https://admin-shell-io.github.io/aas-specs-antora/index/home/index.html
Creative Commons Attribution 4.0 International
50 stars 26 forks source link

`Identifier` or `Identification` #48

Closed mristin closed 2 years ago

mristin commented 3 years ago

Hi, I noticed an inconsistency between the XML serialization and the class name in the book. Namely, the class is called Identifier in the book: https://www.plattform-i40.de/IP/Redaktion/DE/Downloads/Publikation/Details_of_the_Asset_Administration_Shell_Part1_V3.pdf?__blob=publicationFile&v=5#page=53

while the tag name is identification: https://github.com/admin-shell-io/aas-specs/blob/dd7da377dc55fd8fa88e7c41541fc884afabc0b3/schemas/xml/examples/SimpleDrehzahl.xml#L12

Is this inconsistency intentional?

mristin commented 3 years ago

Please apologize. This is actually an inconsistency at a higher level.

The identification refers to the property of, say, AssetAdministrationShell, where the type Identifier is implicitly serialized into the tag.

This is quite confusing for me. Wouldn't it make more sense to be consistent with JSON serialization and serialize Identifier as a proper individual tag:

<aas:identification>
    <aas:identifier idType="IRI">
        www.admin-shell.io/aas-sample/2/0
    </aas:identifier>
</aas:identification>

?

As far as I can tell, identification is the only special case in the XML serialization where the entity is "in-lined"?

(Edit: minor punctuation for clarity)

BirgitBoss commented 3 years ago

In V3.pRC02 we are thinking about removing idType and to simply use id instead. So this question will not arise any longer.

BirgitBoss commented 2 years ago

my understanding is the following:

Whether the type of an attribute of a class gets an own tag or not in xml depends on whether the type is a dataType or a real class and whether the class has subclasses.

https://bellekens.com/2011/08/10/uml-best-practice-attribute-or-association/

So for Class A attributeName TypeName 0..1 it is

(this is the case for identification) For Class A ClassName 0..1 it is .... and in case of sets with different elements in the set Class A ClassName (swith Subclasses A and B) 0..* ......... I am afraid that the specification is not always correct in assigning the stereotype for data types.
mristin commented 2 years ago

Closing since the issue become obsolete as there are no identifier/identification attributes any more.