All Component ObjectTypes in this specification (clauses 7.8 – 7.19) may be used for subtyping when defining more specific Components. If future companion specifications, a manufacturer, or system integrator wants to define a more specific ObjectType for one of the existing Components, the ObjectType of that Component shall be used as supertype.
If future companion specifications, a manufacturer, or system integrator wants to define a new Component which is not yet provided by this specification and which is no subtype of one of the existing Components, the CASComponentType shall be used as SourceNode for the new ObjectType.
If a manufacturer or system integrator wants to add a Component which is not yet defined by this specification and does not want to create a new ObjectType, the CASComponentType may be used as TypeDefinition for that Component. In such a case, the DataType of Design_ComponentClass must be changed to a concrete DataType.
Either way, in most cases a new Enumeration DataType is required to specify which ComponentClasses are possible for the new Component. The DataType shall be provided by the same party that introduces the new ObjectType.
Figure 14 shows all three approaches described above that a manufacturer or system integrator can take. The left panel shows the introduction of the new compressor type TurboCompressorType in a separate Namespace. The middle panel shows the introduction of a completely new Component type in a separate Namespace. The right panel shows the use of the CASComponentType as TypeDefinition for a new Component in a separate namespace. For each approach, the corresponding new enumeration is shown below.
Figure 14 – Adding New Component Types