The CPACS-dataset often uses references between nodes. Typically, these references define connections between elements which are located somewhere else in the hierarchical dataset (e.g. a <wing> is connected to a <fuselage>; a specific <engine> is connected to a <pylon>; etc.). These connections are defined by unique identifiers (uID) which are specified as attributes. Thus, there are elements which can be referenced via a uID attribute, e.g. a fuselage:
<fuselage uID="ATTAS_fuselage">
...
</fuselage>as well as elements which refer to the former, e.g. a wing pointing to its geometrical parent:
<wing uID="e382bf5j">
<name>ATTAS main wing</name>
<parentUID isLink="True">ATTAS_fuselage</parentUID>
...
</wing> In previous CPACS versions, referencing elements were identified via the isLink="True" attribute. Since this is superfluous due to the explicit definition of the element properties via the CPACS schema, this attribute no longer needs to be listed. It is nevertheless a valid optional attribute to ensure compatibility with older datasets, but might be removed in future versions.
Since uIDs are only used to link nodes within the XML file, no naming convention is required. The characters only have to conform to the conventions of the xsd:ID type standardized by the W3C. UIDs, however, must be unique! Although a common practice for naming uIDs is their position in the data hierarchy (e.g. uID="mainWingSection3"), uIDs as shown in the above example are absolutely valid as well. It is therefore recommended to use the name element to convey human-readable meanings.