Regel 1: Namensteile in Attributnamen werden a) mit Unterstrich getrennt b) Ausnahmebehandlung für Abkürzungen, dafür gibt es Mapping-Tabelle
Beispiel: AssetInformation wird zu Asset_information, SpecificAssetId wird zu Specific_asset_ID
Regel 2: Bei der Generierung von Camelcase-Schemanamen für Klassen aus den core-Namen werden a) die Unterstriche entfernt, b) der Namensbestandteil auf Kleinbuchstaben umgestellt c) der erste Buchstabe groß geschrieben
Annahme: es gibt im Metamodel keine Ausnahmen von der strikten CamelCase-Schreibweise (Beispiel: DataSpecIEC61360 würde nicht korrekt behandelt)
Hinweis: Mapping-Tabelle mit Abkürzungen wird nicht zu Rate gezogen bei der Rückkonvertierung
Beispiel: Asset_information wird zu AssetInformation, Specific_asset_ID wird zu SpecificAssetId
Regel 3: Ausnahme zu Regel 1. Im Fall von Typen, die von LangStringSet abgeleitet werden, wird der mit Regel 1 generierte Namen um prefix langstring bzw. Lang_string erweitert.
Ausnahme: Falls der Name mit MultiLanguage anfängt dann wird MulitLanguage ignoriert
Annahme: es gibt im Metamodel der AAS keine Namen, die mit LangString anfangen.
Beispiel: PreferredNameTypeIec61369 wird zu Lang_string_Preferred_name_type_IEC_61360, MultiLanguageNameType wird zu Lang_string_name_type
Regel 4:
Bei der Generierung der Schemata wird im Falle, dass ein Typname mit Lang_string anfängt, die Umsetzung als array von langstring gewählt.