ISO 10303-28:2007
(Main)Industrial automation systems and integration — Product data representation and exchange — Part 28: Implementation methods: XML representations of EXPRESS schemas and data, using XML schemas
Industrial automation systems and integration — Product data representation and exchange — Part 28: Implementation methods: XML representations of EXPRESS schemas and data, using XML schemas
ISO 10303-28:2007 specifies the way in which an XML representation described by an XML schema can be used in the exchange of data that is described by an EXPRESS schema.
Systèmes d'automatisation industrielle et intégration — Représentation et échange de données de produits — Partie 28: Méthodes d'implémentation: représentations XML de schémas et de données EXPRESS en utilisant des schémas XML
General Information
Relations
Standards Content (Sample)
INTERNATIONAL ISO
STANDARD 10303-28
First edition
2007-10-01
Industrial automation systems and
integration — Product data
representation and exchange —
Part 28:
Implementation methods: XML
representations of EXPRESS schemas
and data, using XML schemas
Systèmes d'automatisation industrielle et intégration — Représentation
et échange de données de produits —
Partie 28: Méthodes d'implémentation: représentations XML de
schémas et de données EXPRESS en utilisant des schémas XML
Reference number
©
ISO 2007
PDF disclaimer
This PDF file may contain embedded typefaces. In accordance with Adobe's licensing policy, this file may be printed or viewed but
shall not be edited unless the typefaces which are embedded are licensed to and installed on the computer performing the editing. In
downloading this file, parties accept therein the responsibility of not infringing Adobe's licensing policy. The ISO Central Secretariat
accepts no liability in this area.
Adobe is a trademark of Adobe Systems Incorporated.
Details of the software products used to create this PDF file can be found in the General Info relative to the file; the PDF-creation
parameters were optimized for printing. Every care has been taken to ensure that the file is suitable for use by ISO member bodies. In
the unlikely event that a problem relating to it is found, please inform the Central Secretariat at the address given below.
© ISO 2007
All rights reserved. Unless otherwise specified, no part of this publication may be reproduced or utilized in any form or by any means,
electronic or mechanical, including photocopying and microfilm, without permission in writing from either ISO at the address below or
ISO's member body in the country of the requester.
ISO copyright office
Case postale 56 • CH-1211 Geneva 20
Tel. + 41 22 749 01 11
Fax + 41 22 749 09 47
E-mail copyright@iso.org
Web www.iso.org
Published in Switzerland
ii © ISO 2007 – All rights reserved
Contents Page
1 Scope. 1
2 Normative references. 1
3 Terms, definitions, abbreviations, and conventions . 2
3.1 Terms defined in ISO 10303-1. 2
3.2 Terms defined in ISO 10303-11. 2
3.3 Terms defined in the XML Standards. 4
3.4 Other terms and definitions. 5
3.5 Conflicting terminology. 7
3.6 Abbreviations. 7
3.7 Conventions . 7
3.7.1 Text conventions. 8
3.7.2 Namespace conventions. 8
4 Conformance. 8
4.1 Conformance of an XML document . 9
4.1.1 Conformance of an iso-10303-28 document. 9
4.1.2 Conformance of a uos document . 10
4.1.3 Conformance of a configured document . 10
4.2 Conformance of a derived XML schema document . 10
4.3 Conformance of a configuration file. 11
4.4 Conformance of a pre-processor . 11
4.5 Conformance of a post-processor. 12
4.6 Conformance of an XML schema generator. 12
5 Document level elements. 12
5.1 The iso-10303-28 document . 13
5.2 Document and uos header information . 14
5.2.1 The exp:header element. 14
5.2.2 The name element. 15
5.2.3 The time_stamp element. 15
5.2.4 The author element . 15
5.2.5 The organization element. 15
5.2.6 The authorization element . 15
5.2.7 The originating_system element. 15
5.2.8 The preprocessor_version element . 15
5.3 The schema_population element . 15
5.4 The express element . 17
5.4.1 By-reference representation of an EXPRESS schema. 18
5.4.2 By-value representation of an EXPRESS schema. 18
5.5 The configuration element. 18
5.6 The unit of serialization element. 18
5.7 The uos document . 20
5.8 The configured document . 20
5.9 Enterprise data objects . 20
6 Derived XML Schema. 20
6.1 Preconditions. 21
6.2 Unmapped EXPRESS concepts . 21
6.3 Abstract entity data types. 21
©ISO 2007 - All rights reserved iii
7 Default XML Schema Binding. 22
7.1 Naming conventions . 22
7.1.1 Schema. 22
7.1.2 EXPRESS identifiers . 22
7.1.3 Data types . 22
7.2 XML Schema data types corresponding to EXPRESS data types . 22
7.2.1 EXPRESS simple data types. 23
7.2.2 Aggregation data types . 30
7.2.3 Constructed data types. 44
7.2.4 Defined data types . 45
7.2.5 ENTITY data types. 45
7.3 XML Schema definitions and declarations for EXPRESS defined data types . 45
7.3.1 Simple underlying types . 46
7.3.2 Aggregate underlying types. 47
7.3.3 ENUMERATION underlying types . 48
7.3.4 SELECT underlying types. 49
7.3.5 Defined data type underlying type. 53
7.4 Instance elements corresponding to EXPRESS data types . 54
7.4.1 Instance elements for simple data types. 55
7.4.2 Instance elements for anonymous aggregation data types. 59
7.4.3 Instance elements for defined data types . 62
7.4.4 Instance elements for entity data types . 63
7.4.5 Instance element attributes. 63
7.4.6 Referenceable instances. 64
7.5 XML Schema definitions and declarations for EXPRESS entity data types . 64
7.5.1 Type graph associated with the EXPRESS entity data type . 65
7.5.2 Complex entity instances. 66
7.5.3 Base XML data types and elements for EXPRESS entity data types. 66
7.5.4 XML data type definitions for entity data types . 69
7.5.5 Instance elements corresponding to entity data types. 71
7.5.6 XML groups corresponding to entity data types. 72
7.5.7 Single entity value elements corresponding to entity data types . 75
7.5.8 Proxy elements corresponding to entity data types. 77
7.5.9 XML Uniqueness constraints for entity data types. 78
7.6 XML Schema declarations for EXPRESS attributes . 79
7.6.1 Accessor element and attribute naming . 79
7.6.2 EXPRESS attributes mapped to XML schema. 80
7.6.3 Accessor elements . 81
7.7 XML Schema and namespaces for EXPRESS Schema. 86
7.7.1 Namespace prefixes . 86
7.7.2 URI for the target namespace of the derived XML schema . 87
7.7.3 Namespace declarations for the derived XML schema . 88
7.7.4 Import declarations for the derived XML schema. 88
7.8 Context-schema specific unit of serialization . 89
8 Configured XML Schema Binding. 91
8.1 Naming conventions . 91
8.1.1 Schema. 91
8.1.2 EXPRESS identifiers . 91
8.1.3 Data types . 91
8.2 XML Schema data types corresponding to EXPRESS data types . 92
8.2.1 EXPRESS simple data types. 92
8.2.2 Aggregation data types . 97
8.2.3 Constructed data types. 108
8.2.4 Defined data types . 108
iv ©ISO 2007 - All rights reserved
8.2.5 ENTITY data types. 108
8.3 XML Schema definitions and declarations for EXPRESS defined data types . 108
8.3.1 Simple underlying types . 109
8.3.2 Aggregate underlying types. 111
8.3.3 ENUMERATION underlying types . 112
8.3.4 SELECT underlying types. 112
8.3.5 Defined data type underlying type. 115
8.3.6 Defined data types mapped by map configuration directive. 116
8.4 Instance elements corresponding to EXPRESS data types . 116
8.4.1 Instance elements for simple data types. 117
8.4.2 Instance elements for anonymous aggregation data types. 120
8.4.3 Instance elements for defined data types . 124
8.4.4 Instance elements for entity data types . 124
8.4.5 Instance element attributes. 124
8.4.6 XML identity-constraints for instance elements. 125
8.4.7 Referenceable instances. 128
8.5 XML Schema definitions and declarations for EXPRESS entity data types . 129
8.5.1 Type graph associated with the EXPRESS entity data type . 131
8.5.2 Complex entity instances. 131
8.5.3 Base XML data types and elements for EXPRESS entity data types. 132
8.5.4 XML data type definitions for entity data types . 134
8.5.5 Instance elements corresponding to entity data types. 146
8.5.6 XML groups corresponding to entity data types. 147
8.5.7 Single entity value elements corresponding to entity data types . 149
8.5.8 Proxy elements corresponding to entity data types. 150
8.5.9 XML Identity constraints corresponding to entity data types. 151
8.5.10 XML Uniqueness constraints for entity data types. 154
8.5.11 Dynamic subtype elements corresponding to entity data types . 155
8.6 XML Schema declarations for EXPRESS attributes . 156
8.6.1 Accessor element and attribute naming . 157
8.6.2 EXPRESS attributes mapped to XML schema. 157
8.6.3 Accessor attributes. 159
8.6.4 Accessor elements . 163
8.6.5 Type-tagged attributes . 170
8.6.6 No-tag attributes . 173
8.7 XML Schema and namespaces for EXPRESS Schema. 174
8.7.1 Namespace prefixes . 175
8.7.2 URI for the target namespace of the derived XML schema . 175
8.7.3 Namespace declarations for the derived XML schema . 175
8.7.4 Import declarations for the derived XML schema. 175
8.8 Context-schema specific unit of serialization . 176
9 XML document creation. 177
9.1 Preconditions. 177
9.2 General XML document structure . 177
9.2.1 Structure of an iso-10303-28 document. 178
9.2.2 Structure of a uos document . 178
9.2.3 Encoding of EXPRESS schemas . 179
9.2.4 Encoding of configuration files . 179
9.2.5 Encoding of population definitions. 180
9.2.6 Encoding of data sets – the unit of serialization . 180
9.3 Representation of EXPRESS entity instances. 183
9.3.1 By-value representation of entity instances . 184
9.3.2 External representation of EXPRESS entity instances . 187
9.3.3 By-reference representation of EXPRESS entity instances. 189
©ISO 2007 - All rights reserved v
9.3.4 Complex entity representation of EXPRESS entity instances. 190
9.4 Representation of an EXPRESS attribute . 192
9.4.1 Determining by-reference or by-value representation . 192
9.4.2 Representation of EXPRESS attribute value as accessor attribute. 193
9.4.3 Attribute-tag representation of EXPRESS attribute value. 194
9.4.4 Double-tag representation of EXPRESS attribute value . 196
9.4.5 Type tag representation of EXPRESS attribute value . 197
9.4.6 No-tag representation of entity instance as EXPRESS attribute value. 198
9.4.7 No-tag-simple representation of entity instance as EXPRESS attribute value. 198
9.5 Representation of simple values. 198
9.5.1 Representation of BINARY values. 199
9.5.2 Representation of BOOLEAN values. 199
9.5.3 Representation of INTEGER values. 199
9.5.4 Representation of LOGICAL values . 200
9.5.5 Representation of NUMBER values. 201
9.5.6 Representation of REAL values . 201
9.5.7 Representation of STRING values . 202
9.6 Representation of enumeration items. 203
9.7 Representation of values of SELECT types. 204
9.8 Representation of aggregate values. 206
9.8.1 List-of-values representation of aggregate values . 207
9.8.2 Sequence-of-elements representation of aggregate values . 209
9.8.3 Indexed representation of aggregate values. 210
9.8.4 List-of-references representation of aggregate values . 211
9.8.5 Aggregates of aggregate values . 212
9.8.6 Aggregates of values of defined data types . 219
9.8.7 Instance elements for component values . 219
9.9 Representation of values of defined data types. 220
9.10 Representation of values in instance elements. 221
9.10.1 By-value instance elements for non-entity data types . 222
9.10.2 By-reference instance elements for non-entity data types . 223
10 Configuration Language.223
10.1 The configuration element. 225
10.1.1 By-reference representation of a configuration file . 226
10.1.2 By-value representation of a configuration file . 226
10.2 Configuration options . 226
10.2.1 name. 227
10.2.2 exp-type . 227
10.2.3 content. 227
10.2.4 aggregate-content. 228
10.2.5 exp-attribute. 228
10.2.6 entity-attribute. 229
10.2.7 concrete-attribute . 229
10.2.8 tagless . 229
10.2.9 flatten . 230
10.2.10 use-id. 230
10.2.11 keep. 231
10.2.12 keep-all . 231
10.2.13 map . 232
10.2.14 naming-convention . 234
10.2.15 inheritance. 234
10.2.16 notation . 234
10.2.17 tag-source and tag-value . 234
10.2.18 namespace. 235
vi ©ISO 2007 - All rights reserved
10.2.19 ref. 236
10.2.20 use. 236
10.2.21 implementation . 236
10.2.22 facet. 237
10.2.23 generate-keys . 237
10.2.24 embed-schema-items . 238
10.2.25 alias and prefix. 238
10.2.26 select . 238
10.3 Scoping elements . 239
10.3.1 Option element. 240
10.3.2 Type element . 240
10.3.3 Entity element. 241
10.3.4 Attribute element . 246
10.3.5 Inverse element. 248
10.3.6 Aggregate element . 250
10.3.7 Schema element . 251
10.3.8 UosElement element. 255
10.3.9 UosEntity element . 255
10.3.10 RootEntity element . 255
10.4 Configuration attributes . 256
10.5 Applicability of configuration directives . 257
10.5.1 exp-attribute. 257
10.5.2 content and use-id . 259
10.5.3 exp-type . 260
10.5.4 map . 260
10.5.5 tagless . 261
10.5.6 flatten . 261
10.5.7 inheritance. 262
10.5.8 notation . 262
10.5.9 keep. 262
10.5.10 ref. 262
10.5.11 use. 262
10.5.12 implementation . 263
10.5.13 facet. 263
Annex A (normative) Universal Resource Names for bindings of EXPRESS schemas. 264
Annex B (normative) XML Schema for the configuration language. 265
Annex C (normative) Base XML Schema . 272
Annex D (normative) Document Schema . 280
Annex E (normative) Valid populations of EXPRESS entity instances . 291
Annex F (normative) Information object registration . 302
Annex G (informative) Configuration language examples . 303
Bibliography. 307
Index. 308
©ISO 2007 - All rights reserved vii
Figures
Figure 1 - Choice group. 73
Figure 2 - Choice group for inheritance mapping . 148
Tables
Table 1 — Namespace prefixes. 8
Table 2 — Subclause governing aggregation data type correspondence . 30
Table 3 — Subclause governing aggregation data type correspondence . 99
Table 4 — Instance elements for STRING data types mapped to XML data types. 120
Table 5 — XML key names for anonymous EXPRESS data types. 127
Table 6 — Representation of EXPRESS characters invalid in XML
normalizedString. 203
Table 7 — Subclause governing XML representation of aggregate value . 207
Table 8 — Subclause governing XML representation of aggregates of aggregate values . 213
Table 9 — Pattern strings for select . 239
viii ©ISO 2007 - All rights reserved
Foreword
ISO (the International Organization for Standardization) is a worldwide federation of national
standards bodies (ISO member bodies). The work of preparing International Standards is normally
carried out through ISO technical committees. Each member body interested in a subject for which a
technical committee has been established has the right to be represented on that committee.
International organizations, governmental and non-governmental, in liaison with ISO, also take part in
the work. ISO collaborates closely with the International Electrotechnical Commission (IEC) on all
matters of electrotechnical standardization.
International Standards are drafted in accordance with the rules given in the ISO/ IEC Directives,
Part 2.
The main task of technical committees is to prepare International Standards. Draft International
Standards adopted by the technical committees are circulated to the member bodies for voting.
Publication as an International Standard requires approval by at least 75% of the member bodies
casting a vote.
Attention is drawn to the possibility that some of the elements of this document may be the subject of
patent rights. ISO shall not be held responsible for identifying any or all such patent rights.
ISO 10303-28 was prepared by Technical Committee ISO TC184, Industrial automation systems and
integration, Subcommittee SC4 Industrial data.
ISO 10303-28 constitutes a technical revision of ISO/TS 10303-28:2003, which is provisionally
retained in order to support continued use and maintenance of implementations based on it, and to
satisfy the normative references of other parts of ISO 10303.
ISO 10303 is organized as a series of parts, each published separately. The structure of ISO 10303 is
described in ISO 10303-1.
Each part of ISO 10303 is a member of one of the following series: description methods,
implementation methods, conformance testing methodology and framework, integrated generic
resources, integrated application resources, application protocols, abstract test suites, application in-
terpreted constructs, and application modules. This part of ISO 10303 is a member of the
implementation methods series.
A complete list of parts of ISO 10303 is available from the following URL:
http://www.tc184-sc4.org/titles/STEP_Titles.htm
©ISO 2007 - All rights reserved ix
Introduction
ISO 10303 is an International Standard for the computer-interpretable representation of product
information and for the exchange of product data. The objective is to provide a neutral mechanism
capable of describing products throughout their life cycle. This mechanism is suitable not only for
neutral file exchange, but also as a basis for implementing and sharing product databases and as a
basis for archiving.
This part of ISO 10303 is a member of the implementation methods series. This part of ISO 10303
specifies means by which schemas specified using the EXPRESS language (defined in ISO 10303-11)
and data governed by EXPRESS schemas can be represented as an XML document. This enables
product data described in EXPRESS to be exchanged using XML and the many software tools
developed to support XML technologies. It also permits product data sets so described to be readily
incorporated into "electronic commerce" transactions represented in XML.
Readers of this part of ISO 10303 should have knowledge of the EXPRESS language, the XML
Schema language, XML, and XML-related standards in order to understand its technical content.
For the representation of data corresponding to an EXPRESS schema, this part of ISO 10303 formally
specifies the structure of conforming exchange documents using the XML Schema language. Some
elements of those documents represent data sets conforming to EXPRESS schemas, and this part of
ISO 10303 specifies the structure of those elements using XML Schema type definitions and element
declarations that are derived from the EXPRESS schema declarations. This part of ISO 10303 also
specifies the rules for encoding conforming data in XML to match the derived XML schema. In order
to accommodate a number of conflicting requirements for the use of conforming exchange documents,
this part of ISO 10303 also defines certain configuration directives that can be used to specify
alternative structures in the derived XML schema and alternative encoding rules.
Several components of this part of ISO 10303 are available in electronic form. This access is provided
through the specification of Universal Resource Locators (URLs) that identify the location of these
files on the Internet. If there is difficulty accessing these files contact the ISO Central Secretariat, or
sc4sec@tc184-sc4.org.
contact the ISO TC 184/SC4 Secretariat directly at:
This part of ISO 10303 constitutes a technical revision of ISO/TS 10303-28:2003, which is
provisionally retained to allow for the implementation of the Part 28 late binding.
ISO/TS 10303-28:2003 was intended for trial use with emerging XML technologies, and although the
fundamental capabilities remain the same, the underlying XML technologies have progressed, and this
part of ISO 10303 uses technologies and features that were formerly unavailable or differently
provided. This part of ISO 10303 therefore, is not "upwardly compatible" with ISO/TS 10303-28:2003.
Neither a document nor a processor that conformed to ISO/TS 10303-28:2003 will conform to the
specifications of this part of ISO 10303 without substantial modification.
The major technical changes from ISO/TS 10303-28:2003 are:
— This part of ISO 10303 specifies the structure of XML exchange documents using XML Schema,
and specifies the mapping of the EXPRESS data model to an XML Schema data model.
ISO/TS 10303-28:2003 specified the structure using Document Type Definitions (DTDs). It is
expected that most future XML documents will be validated against an XML schema, instead of a
DTD.
— The ISO/TS 10303-28:2003 mapping of EXPRESS schema text into a complex XML structure is
no longer included in this part of ISO 10303; representation of an EXPRESS schema as a body of text
is the only form retained.
— The ISO/TS 10303-28:2003 mapping of EXPRESS-modelled data sets designated the "late-
binding" is not included in this part of ISO 10303.
x ©ISO 2007 - All rights reserved
— The ISO/TS 10303-28:2003 mapping of EXPRESS-modelled data sets designated the "ETEB" is
not included as such. The major features of that binding, as they appear in the XML form of the data,
are included in the "default mapping" in this part of ISO 10303. But this part of ISO 10303 makes use
of an XML Schema feature that was not available in DTDs — context names — to simplify the names
for the "accessor elements".
— The ISO/TS 10303-28:2003 mapping of EXPRESS-modelled data sets designated the "OSEB" is
not included as such. The major features of that binding, as they appear in the XML form of the data,
are included in the "attribute-content" mapping in this part of ISO 10303. But in this part of ISO 10303,
there are several changes to the representation structures for aggregation data types and SELECT data
types that provide for representation options and consistency across them.
— This part of ISO 10303 permits the use of XML Schema "simple list" structures to represent many
values of aggregation data types, a feature that is not standardized in XML 1.0 and could not be
specified in a DTD.
— Many separate options for re-configuring the EXPRESS schema, configuring the XML schema ,
and configuring the XML data are now supported by a configuration language, and support for that
language is a mandatory feature of conforming processors.
Warning:
This part of ISO 10303 provides a specification intended to be implemented in software.
Incompatibilities may result in machine-to-machine communication in the case of software developed
on the basis of translations of this part of ISO 10303 into languages other than the official ISO
languages. It is accordingly strongly recommended that any implementations be developed only on the
basis of the texts in the official ISO languages.
©ISO 2007 - All rights reserved xi
INTERNATIONAL STANDARD ISO 10303-28:2007(E)
Industrial automation systems and integration — Product
data representation and exchange —
Part 28:
Implementation methods: XML representations of
EXPRESS schemas and data, using XML schemas
1 Scope
This part of ISO 10303 specifies use of the Extensible Markup Language (XML) to represent schemas
specified using the EXPRESS data specification language, ISO 10303-11, and data that is governed by
EXPRESS schemas. This part of ISO 10303 formally specifies the XML representation by specifying
an overall XML schema for the exchange document and additional XML schemas that correspond to
the EXPRESS schemas that govern the exchange data sets.
The following are within the scope of this part of ISO 10303:
— specification of the form of XML documents containing EXPRESS schemas and data governed by
EXPRESS schemas (see Clause 5);
— for an arbitrary EXPRESS schema, specification of an XML schema that corresponds to the
EXPRESS schema and formally describes the XML representation of data governed by that sch
...








Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.
Loading comments...