semi合集-English.pdf - 第2994页

SEMI E120.1-0705 © SEMI 2004, 2005 8 Attribute or Role Name UML Type XML Element or Attribu te (or Reference) XML Name/Type softwareModules composition element Soft wareModules: SoftwareModuleArrayType Figure 4 Equipment…

100%1 / 7923
SEMI E120.1-0705 © SEMI 2004, 2005 7
6.2 Abstract Classes
6.2.1 The classes from the CEM that were designated “abstract” are included in this section. Abstract classes are
not directly implemented. They exist in the model (and in the schema) to provide a basis for the concrete objects.
So, they will not have corresponding instances in an XML instance file based on this schema.
6.2.2 Nameable => NameableType
6.2.2.1 The Nameable class is mapped to the XML NameableType. The XML definition of the class Nameable
uses simple types UuidType and NameType (see ¶6.4.2 for definition).
6.2.2.2 The association of Nameable with the class Extension is modeled here as an array (Extensions) contained
inside of Nameable. See ¶6.2.5 for more about Extension.
Table 3 Translation Table For Nameable
Attribute or Role Name UML Type
XML Element or Attribute
(or Reference)
XML Name/Type
uid string element Uid: UuidType
name string element Name: NameType
description string element Description: xs:string
extensions association element Extensions: ExtensionArrayType
Figure 3
NameableType
6.2.3 EquipmentElement => EquipmentElementType
6.2.3.1 The EquipmentElement class is mapped to the XML EquipmentElementType. EquipmentElement
translates in a straightforward way with all UML attributes mapping to elements. EquipmentElementType extends
NameableType.
Table 4 Translation Table For EquipmentElement
Attribute or Role
Name
UML Type
XML Element or Attribute
(or Reference)
XML Name/Type
elementType string element ElementType: xs:string
supplier string element Supplier: xs:string
make string element Make: xs:string
model string element Model: xs:string
modelRevision string element ModelRevision: xs:string
function string element Function: xs:string
immutableId string element ImmutableId: xs:string
SEMI E120.1-0705 © SEMI 2004, 2005 8
Attribute or Role
Name
UML Type
XML Element or Attribute
(or Reference)
XML Name/Type
softwareModules composition element SoftwareModules: SoftwareModuleArrayType
Figure 4
EquipmentElementType
6.2.4 ExecutionElement => ExecutionElementType
6.2.4.1 ExecutionElement class maps to the XML ExecutionElementType. ExecutionElement’s three attributes
map directly to XML elements. A special type “ProcessTypeEnum” has been created to represent the enumeration
processType. ExecutionElementType extends EquipmentElementType.
Table 5 Translation Table For ExecutionElement
Attribute or Role Name UML Type
XML Element or Attribute
(or Reference)
XML Name/Type
processName string element ProcessName: xs:string
processType enumeration element ProcessType: ProcessTypeEnum
recipeType string element RecipeType: xs:string
ExecutionElementType
Figure 5
ExecutionElement Type
SEMI E120.1-0705 © SEMI 2004, 2005 9
6.2.5 Extension => ExtensionType
6.2.5.1 The Extension class maps to the XML ExtensionType. Extension class has no attributes, but it has a
navigable association to the Nameable class. This association is represented as the element NameableRef which
contains the uid attribute of the associated Nameable.
6.2.5.2 The SEMI E120 specification says that CEM classes are extended by creating subclasses of the Extension
class. In this XML schema, this mechanism is represented by the addition of xs:any to ExtensionType. The XML
rendering of the additions by the UML subclass of Extension are placed directly in the ExtensionType in this way.
Table 6 Translation Table For Extension
Attribute or Role Name UML Type
XML Element or Attribute
(or Reference)
XML Name/Type
target association element NameableRef: UuidType
Figure 6
ExtensionType
6.3 Concrete Classes
6.3.1 This section contains the XML mappings for the classes defined in SEMI E120 as concrete classes. These are
the classes that can be instantiated an XML instance document based on this schema.
6.3.2 The mapping from UML to XML was created with the goal of having the simplest XML instance documents
for most equipment. It was assumed that cases of shared equipment components (Modules, Subsystems, or
IODevices belonging to more than one aggregation) are rare and can be treated as special cases. Where no
components are shared, the simplest solution is to map all aggregated objects to be contained within the object that
represents the aggregate. In XML, this translates to an Element that contains a set of sequences containing the
instances of the components—one sequence for each type of component. This is the way one would normally map a
composite aggregation.
6.3.3 In order to deal with the occasional shared component, a second set of sequences was added for each type of
component that can be shared. These sequences contain references (via the uid attribute) to the shared components
that are defined elsewhere. So, if a Subsystem is shared by two Modules, then the Subsystem instance is defined
once and included inside one of the Module instances. In the other Module instance, this Subsystem appears in the
sequence of references to Subsystems and is identified by the uid of the original.