ISO 10303-21:1994/Cor 1:1996
(Corrigendum)Industrial automation systems and integration — Product data representation and exchange — Part 21: Implementation methods: Clear text encoding of the exchange structure — Technical Corrigendum 1
Industrial automation systems and integration — Product data representation and exchange — Part 21: Implementation methods: Clear text encoding of the exchange structure — Technical Corrigendum 1
Modifies the text of ISO 10303-21:1994. Involves changes, corrections, clarifications and editorial modifications.
Systèmes d'automatisation industrielle et intégration — Représentation et échange de données de produits — Partie 21: Méthodes de mise en application: Encodage en texte clair des fichiers d'échange — Rectificatif technique 1
General Information
Relations
Standards Content (Sample)
INTERNATIONAL STANDARD IS0 10303-21: 1994
TECHNICAL CORRIGENDUM 1
Published 1996-08-I 5
INTERNATlONAL ORGANKAllON FOR STANDARDlZATlON~ hd~b ’HAPc)~H~ OPrAHH3AlU ’IR no CTAHAAPTH3A~HH. ORGANISATION IKlERNATIONALE DE NORMALISATION
Industrial automation systems and integration -
Product
data representation and exchange -
Part 21:
Implementation methods: Clear text encoding of the exchange
structure
TECHNICAL CORRIGENDUM 1
Syst&mes d ’automatisation industrielle et integration -
ReprGsentation et &change de donndes de produits -
Partie 2 7: M&hodes de mise en application: Encodage en texte c/air des fichiers d ’khange
RECTIFICATIF TECHNIQUE 7
Technical Corrigendum 1 to International Standard IS0 10303-21 :I994 was prepared by Technical Committee
ISOnC 184, Industrial automation systems and integration, Subcommittee SC 4, Industrial data and global
manufacturing languages.
The modifications to the text of IS0 10303-2 1: 1994 are of four kinds.
Each modification is identified
as to which kind it represents and is marked with a diamond ( + ).
The four kinds of modifications are:
- CHANGE: A change to the requirements of IS0 10303-21: 1994. Such a modification affects the
conformance of implementations.
- Correction: A modification to the text which corrects an inaccurate specification or completes an
incomplete specification. In general, such a modification should not affect the conformance of
implementations, although implementations based on literal interpretations of erroneous text might
have to be corrected.
- Clarification: A modification to the text to remove ambiguities, incorrect implications, and other
wording which makes the determination of the requirements difficult. Such a modification should
not affect conformance of implementations, unless the implementors were confused by the previous
texts.
- Editorial: A modification to the text to delete redundancies and unused subclauses, or to move a
misplaced specification into the proper clause.
In addition, a compendium of typographical corrections to IS0 10303-21: 1994 is included.
Ref. No. IS0 10303-21:1994/Cor.l:1996(E)
ICS 25.040.40
Descriptors: automation, automation engineering, computer applications, industrial products, data, data representation,
data exchange, coding (data conversion), implementation.
0 IS0 1996
Printed in Switzerland
---------------------- Page: 1 ----------------------
This page intentionally left blank
---------------------- Page: 2 ----------------------
IS0 10303-21: 1994Kor.l: 1996(E)
0 ISO/IEC
Modifications to the text of IS0 10303-21tl994
Page vii
Introduction
+ (Correction) In paragraph 3, sentence 1, replace “This part of IS0 10303 specifies a mechanism that
allows product data representation using the EXPRESS language, . .” with the following:
This part of IS0 10303 specifies a mechanism that allows product data described in the EXPRESS
language, . . .
Page 1
Clause 2
+ (Correction) After IS0 8601, add the following:
ISO/IEC 8824- 1: 1994, Information technology
-- Open Systems Interconnection -- Abstract Syntax
Notation One (ASN.1) -- Part I: Specification of basic notation.
Page 3
Subclause 3.5
+ (Editorial) Delete 3.5 and renumber 3.6 accordingly.
Subclause 3.6.2
+ (Correction) Replace (former) 3.6.2 with the following and renumber per previous instruction:
l
3.5.2 clear text encoding: the encoding of information, using a sequence of codes for &uacters in the
basic alphabet.
Subclause 3.6.5
+ (Editorial) Delete (former) 3.6.5 and renumber accordingly.
1
---------------------- Page: 3 ----------------------
IS0 10303-21: 1994Kor.l: 1996(E)
0 ISO/IEC
Page 4
subclause 5.1
+ (Clarification) In paragraph 1, sentence 3, add the following to the end of the sentence:
to the exchange structure syntax
Page 5
Subclause 5.3
+ (Correction) In paragraph 3, sentence 1 (beginning “Two classes of syntactical conformance . . . “),
replace “depending on the method chosen for the encoding of entity instances whose entity types are
subtypeskupertypes (see 11.2.9.” with the following:
depending on the method chosen for the encoding of complex entity instances (see 11.23.
Subclause 6.1
+ (Editorial) Delete sentence 3, (beginning “Literak ”).
Page 8
Subclause 6.3
+ (Clarification) In table 3, change the production for ENTITY INSTANCE to:
-
SIMPLE ENTITY INSTANCE 'I
ENTITY INSTANCE =
COMFLEX ENTITY INSTANtiE. -
SIMPLE ENTTTY INSTANCE =
ENTTTY INSTANCE NAME w=" [SCOPE] SIMPLE RECORD ";" .
COMPLEX ENTITY INSTANCE =
ENTITY INSTkZE NAME m=w [SCOPE] SUBSUPER RECORD ";" e
Page 6
Subclause 6.6
+ (Clarification) In paragraph 2, sentence 1, after “A comment shall be encoded as a solidus asterisk
( “I* “) followed by any number of characters” insert the following:
from the basic alphabet
2
---------------------- Page: 4 ----------------------
IS0 10303-21:1994/Cor.l:1996(E)
0 ISO/IEC
Page 7
Subclause 6.7
+ (Editorial) Delete 6.7.
Clause 7
+ (Clarification) In paragraph 1, sentence 1, add the following at the end of the sentence:
encoding
Page 8
Subclause 7.1
+ (Correction) At the end of 7.1, add the following:
The specid token dollar sign ( “$ “) is used to represent an object whose value is not provided in the
exchange structure.
The special token asterisk ( “* “) is used to represent an object whose value is not provided in the exchange
structure but can be derived from other values according to rules given in the EXPRESS schema (see
11.2.6).
The special tokens semicolon (” ;“), parentheses ( “( “, “) “), comma ( “, “) and solidus ( “/ “) are used to
punctuate the exchange structure.
Subclause 7.3
+ (Clarification) In the title and sentence 1, replace “simple data types” with the following
simple data type encodings
Page 10
Clause 7.3.3.1
+ (Clarification) Replace paragraph 1 with the following:
In IS0 8859, G(x/y) is the notation for the character in “column” x “row” y, i.e., code value
l x) + y, in the code table. Each part of IS0 8859 includes the basic alphabet (see 6.2) as positions
(16
The various parts of IS0 8859 differ in the symbols of the extended
G(OZ/OO) through G(07/14).
positions G(lO/OO) through G(15114). To include characters from the extended character
character set -
set in a string requires the use of control directives.
3
---------------------- Page: 5 ----------------------
IS0 10303-21:1994/Cor.l:1996(E)
0 ISO/IEC
+ Replace paragraph 2, sentence, 1 with the following:
The PAGE control directive - reverse solidus capital letter S reverse solidus ( “\S\ “) CHARACTER (see
table 4) - is used within a string to allow a character in the basic alphabet to represent the character in
the corresponding position in the extended alphabet. The PAGE control directive shall be interpreted in
the string as the single character G((x+ 8)/y), where G(x/y) is the basic alphabet character following the
“\S\ “. That is, if the basic alphabet character has code value v, it shall be interpreted as the character
with code value v + 128.
+ The remaining text of paragraph 2 forms a new paragraph.
Page 14
Clause 8
+ (Correction) Replace sentence 2 with the following:
A LIST is a (possibly empty) sequence of PARAMETERs, each of which may be:
- a simple type encoding, as described in 7.3, or
- the special token dollar sign ( “$ “), or
- a TYPED PARAMETER, representing an instance of a select type (see 11.1.8), or
-
- a LIST, representing an instance of a (nested) structured type.
A given LIST may contain more than one of the above forms.
Page 15
Subclause 9.2.1
+ (CHANGE) Under “Attribute Descriptions ”, replace entire text of implementation level and the
-
following note with the following:
implementation level: an identification of the specification to which the encoding in this exchange
structure conforms and any conformance options employed in that encoding. The value of this attribute
1” or
shall indicate conformance to this version of this part of IS0 10303 by having either the value “2;
the value “2;2 ”. The value for exchange structures adhering to conformance class 1 shall be “2; 1 ”. The
value for exchange structures adhering to conformance class 2 shall be “2;2 ”.
---------------------- Page: 6 ----------------------
IS0 10303-21: 1994Kor.l: 1996(E)
0 ISO/IEC
NOTES
1 - Conformance classes 1 and 2 are defined in 11.2.5.
where v is the version number of this part of IS0 10303, as
2 - The general form for the value is “v;cc ”,
Future versions of this part of IS0 10303
specified in annex C, and cc is the encoding of conformance class.
may specify additional values for v and cc.
Page 17
Subclause 9.2.3
+ (Clarification) In paragraph 3, sentence 1, replace the phrase “be encoded as specifkd” with the
following:
have the form specified
Page 18
Subclause 9.3
+ (Clarification) Replace list item b) with the following:
b) The attributes of user-defined header section entities shall have EXPRESS data types and shall be
mapped to the header section as specified in clause 11.
Clause 10
+ (Clarification) In paragraph 1, sentence 3, replace the phrase “instances of entities that correspond to
the EXPRESS schema” with the following:
instances of entity data types defined by the EXPRESS schema
Subclause 10.1
+ (Editorial) Replace the title of the subclause with the following:
10.1 Data section entity instances.
+ (Clarification) In paragraph 1, replace sentence 1 with the following:
Each entity instance shall be mapped to an ENTITY-INSTANCE (see table 3) in the data section, as
specified in 11.2.
5
---------------------- Page: 7 ----------------------
0 ISO/IEC
IS0 10303-21: 1994Kor.l: 1996(E)
+ (Correction) In paragraph 1, replace the last sentence with the following:
An entity instance name may be referenced before it is defined by an ENTITY INSTANCE in the
-
exchange structure.
+ (Correction) Delete paragraph 2.
Subclause 10.2
+ (Editorial) Delete 10.2 and renumber accordingly.
Page 19
Subclause 10.3
+ (Correction) In (former) 10.3, sentence 1, replace “and for defining existence relationships among
entities” with the following:
and for defining existence relationships among entity instances
Subclause 10.3.1
+ (Clarification) In (former) 10.3.1, paragraph 1, replace sentences 3 and 4 (beginning “If the SCOPE
structure is used ”) with the following:
In either form of ENTIN INSTANCE, if the SCOPE structure is used, it shall appear immediately after
the equd sign (” = “).
-
Subclause 10.3.3
+ (Correction) Replace the entire text of (former) 10.3.3 including the examples with the following and
renumber:
10.2.3 Behaviour
An EXPRESS schema specifies entity data types and, by having attributes that reference other entity data
types, also establishes relationships among entity data types, and corresponding relationships among the
In addition to these relationships, the exchange structure can convey
instances of those data types.
existence dependencies among entity instances.
An entity instance B is said to be “existencedependent” on an entity instance A, if B can exist only when
A exists. Existence dependence may be independent of the data types of instances A and B, and it may
be independent of any reference between the instances A and B.
6
---------------------- Page: 8 ----------------------
IS0 10303-21:1994/Cor.l:1996(E)
0 ISO/IEC
The entity instance described by the ENTITY INSTANCE in which the SCOPE structure appears is said
to be the “owner” of the scope, and all entitfinstances defined within the SCOPE structure are said to
Every entity instance defined within a SCOPE structure shall be
be “in the scope OF the owner.
existence-dependent on the owner. The SCOPE structure shall contain all the entity instances that are
existence-dependent on the owner instance.
NOTE - Using “population” to mean the collection of entity instances described by an exchange structure, if
instance B is existence-dependent on instance A, and A is (later) deleted from the population, then B should
also be deleted from that population.
EXAMPLES
13 -
Xl = &SCOPE
x2 = POINT (0.0,0.0,0.0);
x3 = POINT (0.0,1.0,0.0);
x4 = POINT (3.0,1.0,0.0);
x5 = LINE (#2,#3);
X6 = LINE (#3,x4);
x7 = LINE (#4,X2);
ENDSCOPE TRIANG(#5,#6,#7);
Entity instance #l of type TRIANG is defined by three LINE instances. The LINE instances (#5,#6,#7) are
all inthe scope of instance #l and it can therefore be inferred that they are existence-dependent on instance #l.
The POINT instances that define the LINES are also in the scope of instance #l and are dependent on it for
their existence. The POINT entity instance names are available to be referenced in the LINE instances, because
they are in the same SCOPE.
14 -
Xl = &SCOPE
= PART
x12 ‘PART 74A ’,S,S,S);
= PART
x13
‘PART 68B ’,S,S,S);
x14 = PART ‘PART =C ’,$,$,$);
l
ENkCOPE /#
3, #14/ ASMBLY ((x12, X13),$,$,$);
Xl5 = APROVL ((#13), 'JOHN SMITH APPROVAL AUTHORITY');
PART entity instances #13 and #14 are exported from the SCOPE structure of ASMBLY entity instance #l.
This makes it possible for entity instance #13 to be referenced in an attribute of APROVL entity instance #15,
even though instance #15 is outside the scope of instance #l. In this case, PART instance #13 is
existence-dependent on ASMBLY instance #l, but is the subject of an “independent” APROVL object.
7
---------------------- Page: 9 ----------------------
0 ISO/IEC
IS0 10303-21: 1994Kor.l: 1996(E)
Page 21
Clause 11
+ (Clarification) Replace paragraphs 1 and 2 with the following:
This clause describes how instances of data types defined in the EXPRESS language are mapped to the
exchange structure.
The EXPRESS language includes TYPE and ENTITY declarations, CONSTANT declarations, constraint
specifications and algorithm descriptions. Only instances of data types, as defined by EXPRESS data
types and TYPE and ENTITY declarations, are mapped to the exchange structure. Other elements of the
language are not mapped to the exchange structure.
Page 22
+ (Correction) In table 5:
entity" with "ENTITY entity instance"
Replace: "ENTITY
Delete: "ENTITY AS SUPERTYPE"
"INVERSE NO INSTANTIATION"
Add:
"NUMBER real w
"UNIQUE rule NO INSTANTIATION"
Subclause 11.1.1.1
+ (Clarification) Replace the phrase “The EXPRESS element of INTEGER” with the following:
Values of the EXPRESS data type INTEGER
Subclause 11.1.1.2
+ (Clarification) Replace the phrase “The EXPRESS element of STRING” with the following:
Values of the EXPRESS data type STRING
Subclause 11.1.1.3
+ (Clarification) In sentence 1, replace the phrase “The EXPRESS element of BOOLEAN” with the
following:
Values of the EXPRESS data type BOOLEAN
---------------------- Page: 10 ----------------------
IS0 10303-21: 1994Kor.l: 1996(E)
0 ISO/IEC
+In sentence 2, replace the phrase “The EXPRESS element of BOOLEAN” with the following:
The EXPRESS data type BOOLEAN
Page 23
Subclause 11.1.1.4
+(Clarification) In sentence 1, replace the phrase “The EXPRESS element of LOGICAL” with the
following:
Values of the EXPRESS data type LOGICAL
+In sentence 2, replace the phrase “The EXPRESS element of LOGICAL” with the following:
The EXPRESS data type LOGICAL
Subclause 11.1.1.5
+(Clarification) Replace the phrase “The EXPRESS element of REAL” with the following:
Values of the EXPRESS data type REAL
+(Correction) In example 16, replace paragraph 2 with the following:
Sample instance in the data section:
#2 = WIDGET(gg, 99999, ‘ABC ’, ‘ABCDEFG ’, .T., .F., 9., 1.2345);
A
A A A A A A A
I I I
A B C D
*Replace paragraph 9 (beginning “G: “) with the following:
G: rl has the value of 9. in this entity instance. The precision specification does not affect the encoding.
Page 24
Subclause 11.1.1.6
+(Clarification) Replace the phrase “The EXPRESS element of BINARY” with the following:
Values of the EXPRESS data type BINARY
---------------------- Page: 11 ----------------------
IS0 10303-21: 1994Kor.l: 1996(E)
0 ISO/IEC
Subclause 11.1.2
+ (Clarification) In paragraph 1, sentence 1, replace the phrase “The EXPRESS element of LIST” with
the following:
Values of the EXPRESS data type LIST
+ (Clarification) In paragraph 1, delete sentence 3.
+ (Correction) In paragraph 1, after the last sentence, add the following:
Within the list, each instance of the element type shall be encoded as required (by clause 11) for that
EXPRESS data type.
+ (Clarification) After paragraph 1, add the following note:
NOTE - If, in a particular entity instance, no value is provided for an OPTIONAL attribute whose data type
is a LIST, the attribute is encoded by a dollar sign ( “$ “), as slxcifkd in 11.2.2, and not as an empty list.
Page 25
Subclause 11.1.3
+ (Clarification) In paragraph 1, sentence 1, replace the phrase “The EXPRESS element of ARRAY”
with the following:
Values of the EXPRESS data type ARRAY
+ (Correction) In paragraph 1, sentence 4, replace the phrase “containing only primitive data elements”
with the following:
containing only instances of the element type
+ (Correction) At the end of the paragraph 1, add the following:
Within the list, each instance of the element type shall be encoded as required (by clause 11) for that
EXPRESS data type. If the array data type has OPTIONAL elements, any element for which no value
is provided shall be encoded by a dollar sign ( “$ “)*
+ (Clarification) After the first paragraph, add the following note:
NOTE - If, in a particular entity instance, no value is provided for an OPTIONAL attribute whose data type
is an ARRAY, the attribute is encoded by a dollar sign ( “$ “), as specified in 11.22, and not as an empty list.
10
---------------------- Page: 12 ----------------------
IS0 10303-21:1994/Cor.l:1996(E)
0 ISO/IEC
+ (Clarification) In example 20, in the paragraph that begins “B: “, replace “attribute2 [4] = MISSING”
with the following:
attribute2 [4 J = not provided
Page 26
Subclause 11.1.4
+ (Clarification) In sentence 1, replace the phrase “The EXPRESS element of SET” with the following:
Values of the EXPRESS data type SET
+ (Correction) At the end of paragraph 1, add the following:
Within the list, each instance of the element type shall be encoded as required (by clause 11) for that
EXPRESS data type. If the SET is empty, the list shall be encoded as a Zeflparenthesis (I’(“) followed
by a right parenthesis (“)“).
+ (Clarification) After paragraph 1, add the following note:
NOTE - If, in a particular entity instance, no value is provided for an OPTIONAL attribute whose data type
is a SET, the attribute is encoded by a dollar sign ( “$ “), as specified in 11.2.2, and not as an empty list.
Subclause 11.1.5
+ (Clarification) In sentence 1, replace the phrase “The EXPRESS element of BAG” with the following:
Values of the EXPRESS data type BAG
+ (Correction) At the end of paragraph 1, add the following:
Within the list, each instance of the element type shall be encoded as required (by clause 11) for that
EXPRESS data type. If the BAG is empty, the list shall be encoded as a Zefiparenthesis (“(‘I) followed
by a right parenthesis (“)“).
+ (Clarification) After paragraph 1, add the following note:
NOTE - If, in a particular entity instance, no value is provided for an OPTIONAL attribute whose data type
is a BAG, the attribute is encoded by a dollar sign ( “$ “), as specified in 11.2.2, and not as an empty list.
11
---------------------- Page: 13 ----------------------
IS0 10303-21: 1994Kor.l: 1996(E)
0 ISO/IEC
Page 27
Subclause 11.1.6
+ (Correction) Replace sentence 1 with the following:
A simple defined type is a type defined by an EXPRESS type declaration in which the underlying type
is neither an ENUMERATION nor a SELECT.
+ In sentence 2, delete the word “EXPRESS ”.
Subclause 11.1.7
+ (Clarification) In sentence 1, replace the phrase “The EXPRESS element of ENUMERATION” with
the following:
Values of an EXPRESS ENUMERATION data type
Page 28
Subclause 11.1.8
+ (CHANGE) Replace the entire text of 11.1.8 including examples, with the following:
11.1.8 Select data types
Values of an EXPRESS select data type shall be mapped to the exchange structure as provided in this
clause. An EXPRESS select data type defines a list of data types, called the “select-list ”, whose values
are valid instances of the select data type. An instance of a select data type shall be a value of at least
one of the data types in the select-list.
- If the value is an instance of an entity data type in the select-list, it shall be mapped to the
exchange structure as an entity instance name (see 7.3.4).
- If the value is an instance of a simple defined type in the select-list, it shall be mapped to the
exchange structure as a TYPED PARAMETER (see table 3) in which the KEYWORD shall identify
the simple defined type, as specified below, and the PARAMETER shall be the encoding of the value
of the simple defined type, as specified in 11.1.6.
- If the value is an instance of an enumeration data type in the select-list, it shall be mapped to the
exchange structure as a TYPED PARAMETER (see table 3) in whic
...
Questions, Comments and Discussion
Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.