ISO/TR 10303-12:1997
(Main)Industrial automation systems and integration - Product data representation and exchange - Part 12: Description methods: The EXPRESS-I language reference manual
Industrial automation systems and integration - Product data representation and exchange - Part 12: Description methods: The EXPRESS-I language reference manual
Systèmes d'automatisation industrielle et intégration — Représentation et échange de données de produits — Partie 12: Méthodes descriptives: Le manuel de référence du langage EXPRESS-I
General Information
Frequently Asked Questions
ISO/TR 10303-12:1997 is a technical report published by the International Organization for Standardization (ISO). Its full title is "Industrial automation systems and integration - Product data representation and exchange - Part 12: Description methods: The EXPRESS-I language reference manual". This standard covers: Industrial automation systems and integration - Product data representation and exchange - Part 12: Description methods: The EXPRESS-I language reference manual
Industrial automation systems and integration - Product data representation and exchange - Part 12: Description methods: The EXPRESS-I language reference manual
ISO/TR 10303-12:1997 is classified under the following ICS (International Classification for Standards) categories: 25.040.40 - Industrial process measurement and control. The ICS classification helps identify the subject area and facilitates finding related standards.
You can purchase ISO/TR 10303-12:1997 directly from iTeh Standards. The document is available in PDF format and is delivered instantly after payment. Add the standard to your cart and complete the secure checkout process. iTeh Standards is an authorized distributor of ISO standards.
Standards Content (Sample)
ISO/TR
TECHNICAL
10303-I 2
REPORT
First edition
1997-07-I 5
Industrial automation systems and
integration - Product data representation
and exchange -
Part 12:
Description methods: The EXPRESS-l
language reference manual
Syst&mes d’automatisation industrielle et intggration - t?epr&entation et
Bchange de don&es de produits -
Parfie 12: M&hodes descriptives: Le manuel de rkfkrence du langage
EXPRESS-I
Reference number
ISOTTR 10303-12:1997(E)
ISO/TR 1030342:1997(E)
Page
Contents
1 Scope .
.....................................
2 Normative references
..........................................
3 Definitions. 3
............................
. Terms defined in IS0 10303-l
...........................
. Terms defined in IS0 10303-11
...........................
33 . Terms defined in IS0 10303-31
................................... 4
. Other definitions
....................................
3.4.1 attribute
................................ 4
3.4.2 information base
................................... 4
object base
3.4.3
3.4.4 schema .
.....................................
3.4.5 type.
..............................
universe of discourse
3.4.6
..................................
4 Conformance requirements
...................
41 . Formal specifications written in EXPRESS-I
...............................
Conformance levels
4.1.1
..........................
. Implementations of EXPRESS-I
................................... 6
5 Fundamental principles
...................................... 7
6 Language elements
..................................... 7
61 . Character set
6.1.1 Digits .
..................................... 8
6.1.2 Letters
............................ 8
Special characters . .’
6.1.3
................................... 8
6.1.4 Underscore
................................... 8
Whitespace
6.1.5
.................................... 9
6.1.6 Remarks
................................... 10
62 . Reserved words.
.................................... 10
6.2.1 Keywords
..................... 11
Reserved words which are operators
6.2.2
............................... 11
Built-in constants
6.2.3
@ IS0 1997
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 the publisher.
International Organization for Standardization
Case Postale 56 l CH-2111 Genhve 20 l Switzerland
Printed in Switzerland
ii
ISO/TR lo303=12:1997(E)
@IS0
6.2.4 Built-in functions . . . . . . . . . . . . . . . . . . . . . . . ,. . . . . . . .
6.2.5 Built-in procedures . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. Symbols.
64 . Identifiers and references . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
7 Named domains. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
71 . Entity domain . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
72 . Enumeration domain. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. .
73 . Select domain . . .
. . .
74 Type domain . . .
. 16
8 Values and instances . . . .
. 16
.................................
81 . Base values . . . .
. 16
.................................
8.1.1 Binary value
l 16
.................................
8.1.2 Boolean value
Number value .
8.1.3
&lc4 Integer value .
..................................
82.5 Logical value
8.1.6 Real value. . .
.................................. 18
8.1.7 String value .
8.1.8 Enumeration value . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. Aggregation values . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
83 . Simple instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. Type instance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
85 . Select instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. Enumeration instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
87 . Entity instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
Attributes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.7.1
8.7.2 Supertypes and subtypes . . . . . . . . . . . . . . . . . . . . . . . . . . .
88 . Constant instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
89 . Schema data instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
8.10 Model display. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
............................... 30
9 Abstract test case specification
91 . Context .
......................................
92 . Parameters
............................... 31
9.2.1 Formal parameter
............................... 32
9.2.2 Actual parameter
. Testcase .
.................................... 33
94 . Test objective.
.................................. 34
9.4.1 Test purpose
................................. 34
Test reference.
9.4.2
.................................. 34
9.4.3 Test criteria.
9.4.4 Test notes. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
.
95 Test realization . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
10 Interfaces . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .
. . .
@IS0
ISO/TR 1030342:1997(E)
..............................
10.1 Schema instance interface
...................................
Schema reference
10.2
...............................
10.3 Context data references
.....................................
11 Scope and visibility
......................................
11.1 Scope rules
....................................
11.2 Visibility rules
...........................
11.2.1 General rules of visibility
.................. 40
11.2.2 Named data type identifier visibility rules
..................................
11.3 Explicit item rules
.................................
11.3.1 Alias statement
....................................
11.3.2 Attribute
....................................
11.3.3 Constant
11.3.4 Constant instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 42
.....................................
11.3.5 Context
......................................
11.3.6 Entity
.................................
11.3.7 Entity instance
11.3.8 Enumeration item . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 44
.............................
11.3.9 Enumeration instance
Function .
11.3.10
11.3.11 Model. 44
...................................
11.3.12 Parameter.
...................................
Procedure.
11.3.13
................................
11.3.14 Query expression
...............................
Repeat statement
11.3.15
...................................
11.3.16 Rule label.
11.3.17 Schema data instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
11.3.18 Select instance . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
Simple instance. . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . 46
11.3.19
11.3.20 Testcase .
Type .
11.3.21
.................................
11.3.22 Type instance
...................................
11.3.23 Type label
Variable .
11.3.24
.........................
12 Mapping from EXPRESS to EXPRESS-I
........................... 48
Mapping of EXPRESS schema
12.1
.........................
12.1.1 Mapping of use and reference
..................... 50
12.2 Mapping of EXPRESS simple data types
.........................
12.3 Mapping of aggregation data types
.....................
12.4 Mapping of EXPRESS defined data type
..................... 52
12.5 Mapping of EXPRESS enumeration type
.........................
12.6 Mapping of EXPRESS select type
...............................
12.6.1 Simple select case
..............................
12.6.2 Complex select case
..........................
12.7 Mapping of EXPRESS constant
ISO/TR 10303=12:1997(E)
@IS0
............................
12.8 Mapping of EXPRESS entity
......................
12.9 Mapping of EXPRESS entity attributes
............................... 56
Explicit attribute.
12.9.1
........................
12.9.2 Derived and inverse attributes
.......................
12.9.3 Attribute with a simple domain.
....................... 58
Attribute with an entity domain
12.9.4
............ 59
12.9.5 Attribute with a type, select or enumeration domain
........................
12.10 Mapping of supertypes and subtypes
....................... 63
12.10.1 Mapping of redeclared attributes
Annexes
............................
A Syntax description of EXPRESS-I
Al . Tokens .
Keywords .
A.l.l
................................
A.1.2 Character classes
...................................
A2 . Lexical elements
A.2.1 Remarks .
................................
A3 . Interpreted identifiers
....................................
A.4 Grammar rules
................................
A5 Cross reference listing
................ 88
B Protocol implementation conformance statement (PICS)
............................
Bl . EXPRESS-I language parser
..............................
C Information object registration
...............................
D Language specification syntax
...........................
D.1 The syntax of the specification
.............................. 91
D.2 Special character notation
.....................................
E Example test cases
. Test case 1 .
El
......................................
E2 . Test case 2
. Tcstxase3 .
E3
......................................
E4 . Test case 4
.........................................
F Usage notes
..............................
Fl . EXPRESS data examples
..................................
F2 . Abstract test cases
.....................................
Object bases
F3 .
......................................
F.3.1 Input
output .
F.3.2
..................................
F.3.3 Code testing
...........................
F4 . Non-EXPRESS data examples
....................................
G Technical discussions
..................................
. Abstract test cases
Gl
............................ 103
G2 . Relationship with EXPRESS
...................................
G3 . Object references
.....................................
. Aggregations
G4
...................................
G5 . Stringvalues.
V
@IS0
............................ 105
G6 Model testing and validation
.......................
G-7 . Enhancement of test case capabilities
........................... 105
G8 . Compatibility with EXPRESS
...................................... 105
Trial Usage
G9 .
.................................
G.10 Alphabet extensions
.................................
G.ll Supertype mapping
............................ 107
G.12 CD ballot comments - 1995
...............................
G.12.1 Test case support
...........................
G.12.2 Complex entity instances
................................. 108
G.12.3 Type instances
........................................
H Bibliography
Index . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . . .llO
Figures
1 The major elements of the EXPRESS-I language . . . . . . . . . . . . . . . . . . . . . xv
Tables
EXPRESS-I and EXPRESS . . . . . . . . . . . . . . . . . . . .
1 Keywords common to
............................. 10
2 Additional EXPRESS-I keywords
....................... 11
3 The EXPRESS-I use of EXPRESS operators
....................... 11
4 The EXPRESS-I use of EXPRESS constants
........................ 11
5 The EXPRESS-I use of EXPRESS functions
....................... 12
6 The EXPRESS-I use of EXPRESS procedures
..................... 12
7 Symbols common to EXPRESS-I and EXPRESS
8 Additional EXPRESS-I symbols .
..................... 38
9 Scope and identifier defining EXPRESS-I items
......... 39
10 Scope and identifier defining EXPRESS items utilisecl by EXPRESS-I
................................. 41
11 Scope and visibility rules
............... 13
12 Summary ovcrvicw of EXPRI3S t)o ESI’RESS-I mnppilgs
.............................. 49
13 Overview of SCHEMA mapping.
Simple type mapping. .
................................. 51
15 Mappingof AGGREGATES
...............................
16 Overview of ENTITYmapping
..................... 61
17 Overview of SUPERTYPE and SUBTYPE mapping
vi
@IS0 ISO/TR 10303-12:1997(E)
Foreword
IS0 (the International Organization for Standardization) is a worldwide federation of national
standards bodies (IS0 member bodies). The work of preparing International Standards is nor-
mally carried out through IS0 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. IS0 collaborates closely with the International Electrotechnical
Commission (IEC) on all matters of electrotechnical standardization.
The main task of technical committees is to prepare International Standards, but in exceptional
circumstances a technical committee may propose the publication of a Technical Report of one
of the following types:
- type 1, when the required support cannot be obtained for the publication of an Interna-
tional Standard, despite repeated eforts;
- type 2, when the subject is still under technical development or where for any other
reason there is the future but not immediate possibility of an agreement on an International
Standard;
- type 3, when a technical committee has collected data of a different kind from that which
is normally published as an International Standard (“state of the art”, for example).
Technical reports of types 1 and 2 are subject to review within three years of publication, to
decide whether they can be transformed into International Standards. Technical reports of type
3 do not necessarily have to be reviewed until the data they provide are considered to be no
longer valid or useful.
ISO/TR 10303-12, which is a Technical Report of type 2, was prepared by Technical Committee
ISO/TC 184, Industrial automation systems and integration, Subcommittee SC4, Industrial
data.
There is an urgent need for guidance on how EXPRESS can be used to represent data so that it
is ‘human’ interpretable. This need is supported by the importance of involving domain experts
in the development of industrial data standards and in the development of abstract test cases
that can be used to verify conformance to such standards.
This document is being issued in the Technical Report (type 2) series of publications (according
to subclause G.3.2.2 of part 1 of the ISO/IEC Directives as a ‘prospective standard for provisional
application’ in the field of EXPRESS information modeling as there is an urgent need for guidance
on how standards in this field should be used to meet an identified need.
This document is not to be regarded as an ‘International Standard’. It is proposed for provisional
application so that experience of its use in practice may be gathered. Comments on the content
of this document should be sent to the IS0 Central Secretariat.
A review of this Technical Report (type 2) will be carried out not later than three years af-
ter its publication with the options of: extension for another three years; conversion into an
International Standard; or withdrawal.
vii
@IS0
IS0 10303 consists of the following parts under the general title Industrial automation systems
and integration - Product data representation and exchange:
-
Part 1, Overview and fundamental principles;
-
Part 11, Description methods: The EXPRESS language reference manual;
-
Part 12, Description method: The EXPRESS-I language reference manual;
-
Part 21, Implementation methods: Clear text encoding of the exchange structure;
-
Part 22, Implementation method: Standard data access interface specification;
-
Part 23, Implementation method: C++ language binding to the standard data access
interface;
-
Part 24, Implementation method: C language binding to the standard data access inter-
face;
-
Part 26, Implementation method: Interface definition language binding to the standard
data access interface;
-
Part 31, Conformance testing methodology and framework: General concepts;
-
Part 32, Conformance testing methodology and framework: Requirements on testing
laboratories and clients;
-
Part 33, Conformance testing methodology and framework: Structure and use of abstract
test suites;
-
Part 34, Conformance testing methodology and framework: Abstract test methods;
-
Part 35, Conformance testing n~etl~odology ad fm~~~ework: Abstmct test udhcls fur
standard data access interface implementations;
Fundamentals of product description and support;
- Part 41, Integrated generic resources:
Geometric and topological representation;
- Part 42, Integrated generic resources:
- Part 43, Integrated generic resources: Representation structures;
Product structure configuration;
- Part 44, Integrated generic resources:
- Part 45, Integrated generic resource: Materials;
- Part 46, Integrated generic resources: Visual presentation;
- Part 47, Integrated generic resource: Shape variation tolerances;
. . .
Vlll
@IS0
Process structure and properties;
- Part 49, Integrated generic resource:
- Part 101, Integrated application resource: Draughting;
- Part 104, Integrated application resource: Finite element analysis;
- Part 105, Integrated application resource: Kinematics;
- Part 106, Integrated application resource: Building construction core model;
- Part 201, Application protocol: Explicit draughting;
- Part 202, Application protocol: Associative draughting;
- Part 203, Application protocol: Configuration controlled design;
- Part 204, Application protocol: Mechanical design using boundary representation;
- Part 205, Application protocol: Mechanical design using surface representation;
- Part 207, Application protocol: Sheet metal die planning and design;
- Part 208, Application protocol: Life cycle management - Change process;
- Part 209, Application protocol: Composite and metallic structural analysis and related
design;
Electronic assembly, interconnect, and packaging design;
- Part 210, Application protocol:
-
Part 212, Application protocol: Electrotechnical design and installation;
-
Part 213, Application protocol: Numerical control process plans for rnachincd pwts;
-
Core data for automotive mechanical design;
Part 214, Application protocol:
-
Part 215, Application protocol: Ship arrangement;
-
Part 216, Application protocol: Ship moulded forms;
Ship piping;
- Part 217, Application protocol:
- Part 218, Application protocol: Ship structures;
-
Process planning, manufacture, and assembly of layered
Part 220, Application protocol:
electronic products;
-
Part 221, Application protocol: Functional data and their schematic representation for
process plant;
1x
ISO/TR 10303=12:1997(E)
@
- Part 222, Application protocol: Exchange of product data for composite structures;
-
tT1
Part 223, Application protocol: Exchange of design and manufacturing product info]
tion for cast parts;
Mechanical product definition for process plans using
- Part 224, Application protocol:
mechanical feature;
- Part 225, Application protocol: Building elements using explicit shape representation;
- Part 226, Application protocol: Ship mechanical systems;
- Part 227, Application protocol: Plant spatial configuration;
Heating, ventilation, and air condi-
- Part 228, Application protocol: Building services:
t ioning;
- Part 229, Application protocol:. Exchange of design and manufacturing product informa-
tion for forged parts;
- Part 230, Application protocol: Building structural frame: Steelwork;
- Part 231, Application protocol: Process engineering data: Process design and process
specificat ion of major equipment ;
- Part 232, Application Protocol: Technical data package;
- Part 301, Abstract test suite: Explicit draughting;
- Part 302, Abstract test suite: Associative draughting;
- Part 303, Abstract test suite: Configuration co~~t~ollal tlcsign;
-
Part 304, Abstract test suite: Mechanical design using boundary representation;
- Part 305, Abstract test suite: Mechanical design using surface representation;
Part 307, Abstract test suite: Sheet metal die planning and design;
Part 308, Abstract test suite: Life cycle management - Change process;
- Part 309, Abstract test suite: Composite and metallic structural analysis and related
design;
- Part 310, Abstract test suite: Electronic assembly, interconnect, and packaging design;
- Part 312, Abstract test suite: Electrotechnical design and installation;
X
@IS0 ISO/TR 10303-12:1997(E)
-
Part 313, Abstract test suite: Numerical control process plans for machined parts;
-
Part 314, Abstract test suite: Core data for automotive mechanical design;
- Part 315, Abstract test suite: Ship arrangement;
-
Part 316, Abstract test suite: Ship moulded forms;
-
Part 317, Abstract test suite: Ship piping;
- Part 318, Abstract test suite: Ship structures;
-
Part 320, Abstract test suite: Process planning, manufacture, and assembly of layered
electronic products;
-
Part 321, Abstract test suite: Functional data and their schematic representation for
process plant;
-
Part 322, Abstract test suite: Exchange of product data for composite structures;
-
Part 323, Abstract test suite: Exchange of design and manufacturing product information
for cast parts;
Mechanical product definition for process plans using
- Part 324, Abstract test suite:
mechani cal feat ures;
- Part bstract test suite: Building elements using explicit shape representation;
325, A
- Part 326, A bstract test suite: Ship mechanical systems;
- Pa,rt bstract test suite: Pl:l nt spatial configure t,ion;
327, A
bstract test suite: Building services: Heating, ventilation, and air condition-
- Part 328, A
ing;
-
Part 329, Abstract test suite: Exchange of design and manufacturing product information
for forged parts;
-
Part 330, Abstract test suite: Building structural frame: Steelwork;
- Part 331, Abstract test suite: Process engineering data: Process &sign and process
specificat ion of major equipment;
-
Part 332, Abstract test suite: Technical data package;
-
Part 501, Application interpreted construct: Edge-based wireframe;
xi
@IS0
Shell-based wireframe;
- Part 502, Application interpreted construct:
Geometrically bounded 2D wireframe;
Part 503, Application interpreted construct:
Draughting annotation;
- Part 504, Application interpreted construct:
Drawing structure and administration;
- Part 505, Application interpreted construct:
Draught ing elements;
- Part 506, Application interpreted construct:
Geometrically bounded surface;
- Part 507, Application interpreted construct:
Non-manifold surface;
- Part 508, Application interpreted construct:
Manifold surface;
- Part 509, Application interpreted construct:
Geometrically bounded wireframe;
- Part 510, Application interpreted construct:
- Part 511, Application interpreted construct: Topologically bounded surface;
- Part 512, Application interpreted construct: Faceted boundary representation;
- Part 513, Application interpreted construct: Elementary boundary representation;
- Part 514, Application interpreted construct: Advanced boundary representation;
Constructive solid geometry;
- Part 515, Application interpreted construct:
Mechanical design gcome t ric present at ion;
- Part 517, Application interpreted construct:
Mrtclxmical design shadctl wpwsmt a t im.
- Part 518, Application interpreted constrwk
The structure of this International Standard is described in IS0 10303-l. The numbering of the
parts of this International Standard reflects its structure:
- Parts 11 to 12 specify the description methods,
- Parts 21 to 26 specify the implementation methods,
- Parts 31 to 35 specify the conformance testing methodology and framework,
- Parts 41 to 49 specify the integrated generic resources,
- Parts 101 to 106 specify the integrated application resources,
- Parts 201 to 232 specify the application protocols,
- Parts 301 to 332 specify the abstract test suites, and
xii
@IS0 ISO/TR 10303-12:1997(E)
Parts 501 to 518 specify the application interpreted constructs.
Should further parts of IS0 10303 be published, they will follow the same numbering pattern.
Annexes A, B, C and D are an integral part of this part of IS0 10303. Annexes E, F, G and H
are for information only.
. . .
x111
@IS0
ISO/TR 10303=-12:1997(E)
Introduction
IS0 10303 is an International Standard for the computer-interpretable representation and ex-
change of product data. The objective is to provide a neutral mechanism capable of describing
product data throughout the life cycle of a product independent from any particular system.
The nature of this description makes it suitable not only for neutral file exchange, but also as a
basis for implementing and sharing product databases and archiving.
This International Standard is organized as a series of parts, each published separately. The
parts of IS0 10303 fall into one of the following series: description methods, integrated resources,
application interpreted constructs, application protocols, abstract test suites, implementation
methods, and conformance testing. The series are described in IS0 10303-l. This part of
IS0 10303 is a member of the description methods series.
This part of IS0 10303 specifies the elements of the EXPRESS-I language. Each element of the
Simple elements are introduced first,
language is presented in its own context with examples.
then more complex ideas are presented in an incremental manner.
Language Overview
EXPRESS-I is the name of a formal data representation and abstract test case specification
language. It may be used to exemplify the information requirements of other parts of this
International Standard and is a companion to the EXPRESS and EXPRESS-G languages. It is
based on a number of design goals among which are:
-
The size and complexity of IS0 10303 demands that the language be parsable by both
computers and humans. Expressing elements of IS0 10303 in a less formal manner would
eliminate the possibility of employing computer automation in checking for inconsistencies
in presentation or specification.
-
Focus on the display of the realisation of the properties of entities, which represent objects
of interest. The definition of an entity is in terms of its propc&x, dkA ax clmxtuixd
by specification of a domain and the constraints on that domain.
- Avoid, as far as possible, specific implementation views.
-
Provide a means of displaying small populations of EXPRESS schemas.
-
Provide a means of supporting the specification of abstract test suites for information
model processors.
In EXPRESS-I, entity instances are represented in terms of attribute values: the traits or charac-
teristics considered important for use and understanding. These attributes have a representation
which might be a simple data type (such as integer) or another entity type. A geometric point
might be defined in terms of three real numbers. Names are given to the attributes which con-
tribute to the definition of an entity. Thus, for a geometric point, the three real numbers might
be named x, y and z. A relationship is established between the entity being defined and the
attributes that define it and, in a similar manner, between the attribute and its representation.
xiv
ISO/TR 1030342:1997(E)
MODEL
Display
I
instances
I
TEST CASE
E GXPRESS
t Declarations under test
Schema declarations
Objective specification
Type declarations
-Realisation
Entity declarations
Rule declarations
ffpy
Algorithm declarations
Algorithm declarations
Import
data
CONTEXT
Formal parameters
Schema instances
(parameterised) Type instances
(parameterised)
(paramctcriscc !) htity instanw.5
Data
instances
Algorithm declara.tions
Figure 1 - The major elements of the EXPRESS-I language
The EXPRESS-I language provides a means of displaying instantiations of EXPRESS data el-
ements. The language is designed principally for human readability and for ease of mapping
between EXPRESS-I instances and the definitions in an EXPRESS schema. Elsewhere in this In-
ternational Standard, for example IS0 10303-21, there are specifications for computer-efficient
EXPRESS-I is not intended to be a replacement for such
methods for instantiating a schema.
methods.
The language has two major parts.
The major elements of the language are shown in figure 1.
Data may be displayed on an entity by entity
The first part is for the display of data instances.
xv
basis, on a schema basis or as a collection of schema instances which are taken to be a display
of some information model of a universe of discourse. Within the EXPRESS-I language these are
called object instances, schema data instances and, model. In figure 1 the information model is
assumed to have been defined using EXPRESS.
The second part of the language is for the specification of Abstract Test Cases for the purposes
of formally describing tests to be performed against an implementation of an EXPRESS-defined
information model. The language constructs provided for this purpose are the test case and
the context. This portion of the language also utilises the procedural aspects of the EXPRESS
language. Instances of data may be parameterised and stored in a context. Many different test
cases may assign values for the parameterised data in a context and use that data as part of
their test specification.
The data instances resulting from the application of a test case may be displayed via the con-
structs provided in first part of the language.
NOTE - The examples of EXPRESS-I usage in this manual do not conform to any particular
style rules. Indeed, the examples sometimes use poor style to conserve space or to show flexibility.
The examples are not intended to reflect the content of the information models defined in other
parts of this International Standard. They are crafted to show particular features of EXPRESS-I.
Any similarity between the examples and the normative information models or abstract test cases
specified in other parts of IS0 10303 should be ignored.
xvi
TECHNICAL REPORT @IS0
Industrial automation systems and integration -
Product data representation and exchange -
Part 12 :
Description methods: The EXPRESS-I language
relerence manual
1 Scope
This part of IS0 10303 defines a language by which an instance of (part of) a universe of discourse
can be displayed. It also provides a formal description method for supporting the specification of
abstract test cases. The language is called EXPRESS-I. It is a companion language to EXPRESS
which is specified in IS0 10303-11.
EXPRESS-I is an instantiation language for a conceptual schema language as defined in IS0
TR 9007, and the particular conceptual schema language that formed the starting point for
EXPRESS-I was EXPRESS. The EXPRESS-I language provides for the display of the state of
the objects belonging to a universe of discourse and the information units pertaining to those
objects.
The following are within the scope:
- display of instances of schemas;
- display of instances of types and entities;
-
abstract test case data;
-
mapping from EXPRESS schemas and data types to EXPRESS-I instances.
The following are outside the scope of this part of IS0 10303:
-
mapping from other (conceptual schema) languages to EXPRESS-I;
- definition of database formats;
- definition of file formats;
- definition of transfer formats;
- process control;
-
informat ion processing;
-
exception handling.
EXPRESS-I is not a programming language.
@IS0
2 Normative references
The following standards contain provisions which, through reference in this text, constitute
provisions of this part of IS0 10303. At the time of publication, the editions indicated were
valid. All standards are subject to revision, and parties to agreements based on this part of
IS0 10303 are encouraged to investigate the possibility of applying the most recent editions of
the standards indicated below. Members of IEC and IS0 maintain registers of currently valid
International Standards.
ISO/IEC 8824~13995, Information technology - Abstract Syntax Notation One (ASN.1): Spec-
ification of basic notation.
IS0 10303-1:1994, Industrial automation systems and integration -- Product data representu-
tion and exchange - Part 1: Overview and fundamental principles.
IS0 10303-11:1994, Industrial automation systems and integration - Product data representu-
tion and exchange - Part 11: Description m,ethods: The EXPRESS language reference manual.
IS0 10303-31:1994, Industrial uutomution systems and integration - Product data represen-
Conformance testing methodology and framework: General
tation and exchange - Part 31:
concepts.
ISO/IEC 10646-1:1993, Information technology - Universal Multiple-Octet Coded Character
Set (UCS) - Part 1: Architecture and Basic Multilingual Plane.
@IS0
3 Definitions
3.1 Terms defined in IS0 103034
This part of IS0 10303 makes use of the following terms defined in IS0 10303-l:
- data;
information;
information model.
3.2 Terms defined in IS0 1030341
This part of IS0 10303 makes use of the following terms defined in IS0 10303-11:
-
complex entity data type;
-
complex entity inst ante;
-
constant;
-
data type;
- entity;
-
entity instance;
-
instance;
-
population;
-
simple entity instance;
-
subtype/supertype graph;
- token;
-
value.
3.3 Terms defined in IS0 10303-31
This part of IS0 10303 makes use of the following terms defined in IS0 10303-31:
-
abstract test case;
@IS0
ISO/TR lo303=12:1997(E)
-
test purpose;
-
verdict criteria.
3.4 Other definitions
For the purposes of this part of IS0 10303, the following definitions apply:
3.4.1 attribute: A trait, quality, or property that is a characteristic of an entity.
3.4.2 information base: A collection of type instances, consistent with each other and with
an information model, that hold for an instance of a universe of discourse.
NOTE - An information base may or may not be computer processable. For example, it would not
be considered computer processable if it took the form of a handwritten document. On the other
hand, if it was in the form of a data base or computer file then it would be considered computer
processable, and hence also termed an object base.
3.4.3 object base: An information base that is computer processable.
3.4.4 schema: A collection of closely related items forming a part or the whole of an informa-
tion model.
3.4.5 type: A representation of a domain of valid values.
3.4.6 universe of discourse: All those real-world objects that are of potential interest. These
are a subset of all the real-world objects.
@IS0 ISO/TR 10303-12:1997(E)
4 Conformance requirements
4.1 Formal specifications written in EXPRESS-I
A formal specification written in EXPRESS-I shall be consistent with a given conformance level as
specified below. A formal specification is consistent with a given level when all checks identified
for that level and all lower levels are verified for the specification.
4.1.1 Conformance levels
Level 1: Reference checking. This level consists of checking the formal specification to
ensure that it is syntactically and referent ially valid. A formal specification is syntactically
valid if it matches the syntax generated by expanding the primary syntax rule given in
annex A. A formal specification is referentially valid if all references to EXPRESS-I items are
consistent with the scope and visibility rules defined in clause 11.
Level 2: Type checking. This level consists of checking the formal specification to ensure
that type compatibility in expressions and assignments, as defined for level 2 checking in
IS0 10303-11:1994, are valid.
Level 3: Value checking. This level consists of checking the formal specification to ensure
that it complies with level 3 checking defined in IS0 10303-11.
Level 4: Complete checking. This level consists of checking a formal specification to ensure
that it complies with all statements of requirements as specified in this part of IS0 10303.
4.2 Implementations of EXPRESS-I
An implementation of an EXPRESS-I language parser shall be able to parse any formal spccifica-
tion written in EXPRESS-I, consistent with the constraints associated with that implementation
annex B). An EXPRESS-I language parser shall be sa,id to conform to
as specified in the PICS (
a particular level (as defined in 4.1.1) if it can apply all checks required by the level (and any
level below that) to a formal specification written in EXPRESS-I.
The implementor of an EXPRESS-I language parser shall state any constraints which the imple-
mentation imposes on the number and length of identifiers, on the range of processed numbers,
and on the maximum precision of real numbers. Such constraints shall be documented in the
form specified by annex B for the purposes of conformance testing.
5 Fundamental principles
It is assumed that the reader of this document is familiar with the EXPRESS language as specified
in IS0 10303-11.
The use of EXPRESS-I to display instances neither requires nor implies that there is an associated
set of entity, or other, definitions. That is, EXPRESS-I can be used as a language in its own
right. However, there normally will be an accompanying set of definitions, typically described
in a formal manner using a language such as EXPRESS.
The EXPRESS-I language does not describe an implementation environment. In particular,
EXPRESS-I does not specify:
how instance data is accessed or output;
-
how instance data is stored or maintained;
- how references to EXPRESS schemas are resolved;
- how or when constraints are checked or reported.
@IS0 ISO/TR 10303-12:1997(E)
6 Language elements
This clause specifies the basic elements from which sentences in the EXPRESS-I language are
composed: the character set, remarks, symbols, reserved words, and identifiers.
The boxed syntax definitions in the body of this document are excerpts from the EXPRESS-I
language syntax in annex A which defines the complete syntax of the language and provides any
language productions not given here. The method of specifying the syntax is a superset of that
used for EXPRESS as defined in clause 6 of IS0 10303-11:1994.
NOTE 1 - For convenience of the reader, the EXPRESS definition method is repeated in annex D,
together with the extensions for EXPRESS-I.
The basic language elements are composed into a stream of source text, typically broken into
physical lines. A physical line is any number (including zero) of characters ended by a newline
(see 6.1.5.2).
NOTE 2 - EXPRESS-I source is easier to read when statements are broken into lines and whitespace
is used to set off different constructs.
6.1 Character set
EXPRESS-I source shall use only the characters in the following character set: characters allo-
cated to cells 20 to 7E of row 00 of plane 00 of group 00 of ISO/IEC 10646-l; and the special
character \n signifying the newline. This set of characters is called the EXPRESS-I character set.
Members of this set are referred to by the cell of ISO/IEC 10646-l in which these characters are
defined; these cell numbers are specified in hexadecimal. The printable characters from this set
(cells 21-7E of ISO/IEC 10647-l) are combined to form the tokens for the EXPRESS-I language.
The EXPRESS-I tokens are keywords, identifiers, symbols, literals, or values. The EXPRESS-I
character set is further classified below.
The character set thus specified is an abstract character set; it is independent of its representation
in an implementation. In particular, a real irnplcmcntation ma,y use some of tllc control codes
defined in ISO/IEC 6429. Such codes are interpreted by the implementation and may result in
the inclusion of one or more of the abstract characters of the EXPRESS-I character set in the
resulting source.
EXAMPLE 1 - A TAB control code may be interpreted by the implementation as providing one or
more space characters to the abstract characters making up the EXPRESS-I definition.
NOTE - This clause only refers to the characters used to specify EXPRESS-I source, and does not
specify the domain of characters allowed within a string value.
6.1.1 Digits
EXPRESS-I uses the Arabic digits O-9 (cells 30-39 of the EXPRESS-I character set).
Syntax:
120 digit = < as EXPRESS > .
@ISO
6.1.2 Letters
EXPRESS-I uses the upper- and lower-case letters of the English alphabet (cells 41-5A and 61-
7A of the EXPRESS-I character set). The case of letters is significant only within explicit string
values.
lower-, or mixed-case letters.
NOTE - EXPRESS-I may be written using upper-,
Syntax:
124 letter = < as EXPRESS > .
6.1.3 Special characters
The special characters (printable characters which are neither letters nor digits) are used mainly
for punctuation and as operators. Some of the special characters shown are not used as part
of the language. They may be used within remarks and string values, however. These special
characters are in cells 21-2F, 3A-3F, 40, 5B-5E, 60, and 7B-7E o
...








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...