semi合集-English.pdf - 第2993页

SEMI E120.1-0705 © SEMI 2004, 2005 7 6.2 Abstract Classes 6.2.1 The classes from the CEM that were de signated “abstract ” are included in th is section. Abstract classes are not directly i mplemented. They exist i n the…

100%1 / 7923
SEMI E120.1-0705 © SEMI 2004, 2005 6
5.8.8 XML Sample
5.8.8.1 The sample XML for the example shown in Figure 1, is presented below. Refer to the XML documentation
referenced in ¶3.3for a complete description of the syntax and semantics of XML.
<?xml version="1.0" encoding="UTF-8"?>
<xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema"
elementFormDefault="qualified" attributeFormDefault="unqualified">
<xs:complexType name="ParentType" abstract="true">
<xs:complexContent>
<xs:extension base="Child1and2Type">
<xs:sequence>
<xs:element name="Child3">
<xs:complexType>
<xs:all>
<xs:element name="Child3a"/>
<xs:element name="Child3b"/>
</xs:all>
</xs:complexType>
</xs:element>
<xs:element name="Child4" type="Child4Type" nillable="false"/>
</xs:sequence>
</xs:extension>
</xs:complexContent>
</xs:complexType>
<xs:complexType name="Child4Type" abstract="true">
<xs:sequence>
<xs:element name="Child4a" type="xs:integer" nillable="false"/>
<xs:element name="Child4b" type="xs:string" nillable="false"/>
</xs:sequence>
</xs:complexType>
<xs:complexType name="Child1and2Type" abstract="true">
<xs:sequence>
<xs:element name="Child2">
<xs:complexType>
<xs:choice maxOccurs="2">
<xs:element name="Child2a"/>
<xs:element name="Child2b"/>
<xs:element name="Child2c"/>
</xs:choice>
</xs:complexType>
</xs:element>
<xs:element name="Child1">
<xs:complexType>
<xs:sequence minOccurs="0">
<xs:element name="Child1a"/>
<xs:element name="Child1b" maxOccurs="unbounded"/>
<xs:element name="Child1c" minOccurs="0"/>
</xs:sequence>
</xs:complexType>
</xs:element>
</xs:sequence>
</xs:complexType>
<xs:element name="Parent" type="ParentType" final="#all"/>
</xs:schema>
Figure 2
XML for Sample
6 CEM Class Mapping to XML
6.1 This section describes how the CEM classes from SEMI E120 were mapped to XML. The descriptions in this
section are provided to support and explain the XML schema document.
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