semi合集-English.pdf - 第3379页

SEMI E132.1-0305 © SEMI 2005 6 5.2.2 XML (eXtensible Markup Language) — a markup language used for representing data rich with con text and content in docume nts and in com munications. XML is an extension of SGML, a doc…

100%1 / 7923
SEMI E132.1-0305 © SEMI 2005 5
4.3 W3C Standards
2
Extensible Markup Language (XML) 1.0 (Second Edition) W3C, 6 October 2000
(http://www.w3.org/TR/2000/REC-xml-20001006/).
Namespaces in XML W3C, 14 January 1999 (http://www.w3.org/TR/1999/REC-xml-names-19990114/).
XML Schema Part 0: PrimerW3C, 2 May 2001 (http://www.w3.org/TR/xmlschema-0/).
XML Schema Part 1: Structures — W3C, 2 May 2001 (http://www.w3.org/TR/xmlschema-1/).
XML Schema Part 2: Datatypes — W3C, 2 May 2001 (http://www.w3.org/TR/xmlschema-2/).
XML Path Language (Xpath) — W3C, 16 November 1999 (http://www.w3.org/TR/xpath/).
Web Services Description Language (WSDL) 1.1 — W3C Note, (http://www.w3.org/TR/wsdl)
Simple Object Access Protocol (SOAP) 1.1 — W3C Note, (http://www.w3.org/TR/2000/NOTE-SOAP-20000508/)
4.4 Other Standards
Secure Sockets Layer (SSL) Protocol 3.0 (available from http://wp.netscape.com/eng/ssl3/draft302.txt)
NIST FIPS PUB 180-1 — Secure Hash Algorithm (SHA-1) (http://csrc.nist.gov/publications/fips/fips180-1/fip180-
1.pdf)
Web Services Interoperability (WS-I): Basic Profile Version 1.0a (http://www.ws-i.org/Profiles/Basic/2003-
08/BasicProfile-1.0a.html)
Internet Engineering Task Force (IETF) RFC 2459 — Internet X.509 Public Key Infrastructure Certificate and CRL
Profile (http://www.ietf.org/rfc/rfc2459.txt)
PKCS #12: Personal Information Exchange Syntax Standard, version 1.0 (available from
http://www.rsasecurity.com/rsalabs/pkcs/pkcs-12/)
Universal Unique Identifier (UUID) — ISO/IEC 11578:1996 Information technology – Open Systems
Interconnection – Remote Procedure Call (http://www.iso.ch/cate/d2229.html)
NOTICE: Unless otherwise indicated, all documents cited shall be the latest published versions.
5 Terminology
5.1 Abbreviations and Acronyms
5.1.1 HTTP — Hyper Text Transport Protocol
5.1.2 SHA — Secure Hash Algorithm
5.1.3 SOAP — Simple Object Access Protocol
5.1.4 SSL — Secure Sockets Layer
5.1.5 UML — Unified Modeling Language
5.1.6 W3C — World Wide Web Consortium
5.1.7 WSDL — Web Service Description Language
5.1.8 XML — eXtensible Markup Language
5.2 Definitions
5.2.1 UML (Unified Modeling Language) — a notation for representing object-oriented designs and views created
by Booch, Rumbaugh, and Jacobson in order to merge their three popular notations plus aspects of other existing
notations into a single object-oriented notation intended to be usable by all.
2 World Wide Web Consortium, Massachusetts Institute of Technology (MIT), Computer Science and Artificial Intelligence Laboratory
(CSAIL), 32 Vassar Street Room 32-G515, Cambridge, MA 02139, USA, Telephone: 617.253.2613, Fax: 617.258.5999, website: www.w3.org.
SEMI E132.1-0305 © SEMI 2005 6
5.2.2 XML (eXtensible Markup Language) — a markup language used for representing data rich with context and
content in documents and in communications. XML is an extension of SGML, a document-oriented markup
language. It was created by W3C for use on the Internet.
6 Conventions
6.1 Translating UML to XML Schema
6.1.1 The reader is expected to have a working knowledge of the UML, XML, and Schema specifications (See
¶¶4.2 and 4.3). This document does not provide tutorial information on these subjects.
6.1.2 This document follows the guidelines for XML as outlined in SEMI E121.
6.1.3 Some of the key guidelines followed in this document are summarized here:
Attributes of UML classes are generally represented as XML attributes, to improve efficiency in transferring
metadata descriptions from the equipment. Exceptions to this convention are UML attributes that correspond to
data structures or other constructs that cannot be represented as XML attributes, or may include text values that
may need to include non-parsed character data (CDATA).
Composition associations are mapped to a single XML element (or multiple such elements if the specified
multiplicity is greater than 1).
Aggregations are modeled as contained elements or arrays of references to one or more unique attributes of the
target type.
Inheritance is modeled using complexType extension. In cases where a reference to an abstract base class
occurs in the UML model, a choice compositor for each of the possible derived types is used in order to restrict
instance documents from including arbitrary extension through type substitution.
6.1.4 The translation of a UML class to XML Schema types is documented using a table format illustrated by Table
1. Operations defined for a UML class are translated into WSDL operations.
6.1.5 Translation Table Column Header Description
Attribute or Role Name — If an attribute, the name of the attribute is placed here. If an association (including
aggregation or composition), the role name from the UML diagram is placed here. Compositions are often not
assigned roll names. In that case “none” is placed here.
UML Name/Type — If an attribute, the data type of the UML attribute is place here. If an association, the type
of association is placed here. The possible types are “Composition”, “Aggregation”, or the basic “Association”.
UML defines these three types of association.
XML Element or Attribute — Lists the type of XML construct used to represent the UML attribute or
association.
XML Name/Type — Provides the name and data type of the resulting XML construct. The type may be a built-
in type (for example, xs:string), or a named type defined within the XML Schema.
Table 1 Example Translation Table
Attribute or Role Name UML Name/Type XML Element or Attribute XML Name/Type
friend association element Friend: HumanReferenceArray
employees aggregation element Employees: HumanArray
family composition element Family: HumanArray
name string element Name: xs:string
6.1.6 Translating Operations to XML Schema
6.1.6.1 The translation of an operation defined for UML interface classes to XML Schema types is documented
using a table format illustrated in Table 2. One row is provided for each possible input/output argument for the
operation being described.
SEMI E132.1-0305 © SEMI 2005 7
Table 2 Example Translation Table for Operation Input/Output Arguments
Argument Name Format XML Element or Attribute XML Name/Type
<argument name from
abstract specification>
<argument format from
abstract specification>
<whether the argument is modeled as
an Element or Attribute>
<namespace-qualified name of the
attribute/element>
6.2 Documenting XML Schema and WSDL Files
6.2.1 Associated with this document are XML Schema and WSDL files that are core components of the
specification. Each such document is described using a table format illustrated by Table 3.
Table 3 Example Schema/WSDL Document Description Table
File Name
<.xsd or .wsdl file name>
Target Namespace
<target namespace defined in the schema or WSDL file>
Imported/Referenced Namespaces
<namespaces imported or used by the schema or WSDL file>
Description
<brief description of the purpose/function of the schema or WSDL file>
6.3 Documenting XML Schema with Diagrams
3
6.3.1 This document provides graphical representations of the included XML. Although no standard graphical
notation for XML could be found, various XML tools have their own notation. This document will use the notation
provided by XMLSpy from Altova Corporation. Figure 1 shows a sample XML diagram that will be used to
provide a basis for explanation of the XML graphical notation used in the rest of the document.
6.3.2 In the diagram, rectangular boxes represent XML elements. Ownership or containment is read from right to
left in the diagrams. In the sample diagram, ParentType contains Child1, Child2, Child 3, and Child 4. In turn,
Child2 contains Child2a, Child2b, and Child2c. The additional symbols (8-sided boxes) represent sequences or
choices. See Table 4 for an explanation of these symbols.
Table 4 Altova XMLSPY Schema Diagram Symbols
Denotes a required ordered sequence of the right hand elements with a cardinality of one
for each element (sequence).
Denotes an optional ordered sequence of the right hand elements with a cardinality of
one for each element (sequence).
Denotes a required, but unordered, sequence of the right hand elements with a
cardinality of one for each element (all).
Denotes a required choice of the right hand elements. Exactly one or two of the right
hand elements must be present (choice).
Denotes an element that contains parsed character data.
Denotes a reference to a group or element defined elsewhere.
6.3.3 A graphic using a solid line is a required element; using a dashed line represents an optional element.
Numbers or ranges in the lower right hand corner represent cardinality. The default cardinality is one.
3 All images/graphics were created using Altova’s XMLSPY®. Copyright 2003 Altova GmbH and reprinted with permission of Altova.