Application module: Multi linguism | ISO/TS 10303-1105:2019(E) © ISO |
This clause specifies the information requirements for the Multi linguism application module. The information requirements are specified as the Application Reference Model (ARM) of this application module.
NOTE 1 A graphical representation of the information requirements is given in Annex C.
NOTE 2 The mapping specification is specified in 5.1. It shows how the information requirements are met by using common resources and constructs defined or imported in the MIM schema of this application module.
This clause defines the information requirements to which implementations shall conform using the EXPRESS language as defined in ISO 10303-11. The following begins the Multi linguism schema.
EXPRESS specification:
*)
SCHEMA Multi_linguism_arm;
(*
This subclause specifies the ARM type for this application module. The ARM type and definition is specified below.
The string_select type is an extensible list of alternate data types. Additional alternate data types are specified in select data types that extend the string_select type.
NOTE This empty extensible select requires extension in a further module to ensure that entities that refer to it have at least one valid instantiation.
EXPRESS specification:
*)
TYPE
string_select =
EXTENSIBLE
GENERIC_ENTITY
SELECT;
END_TYPE;
(*
This subclause specifies the ARM entities for this module. Each ARM application entity is an atomic element that embodies a unique application concept and contains attributes specifying the data elements of the entity. The ARM entities and definitions are specified below.
EXPRESS specification:
*)
ENTITY Language;
language_code : STRING;
country_code :
OPTIONAL
STRING;
UNIQUE
UR1: language_code;
END_ENTITY;
(*
Attribute definitions:
language_code: the string that specifies the identifier of the Language in the Alpha-3 bibliographic code of ISO 639-2.
EXAMPLE 1 'eng' for English, 'fre' for French, 'rus' for Russian, or 'ger' for German are examples of language_code.
country_code: the string that specifies the identifier of the country according to the alpha-2 code of ISO 3166-1. The value of this attribute need not be specified.
EXAMPLE 2 'GB' for the United Kingdom or 'US' for the United States of America are examples of country_code.
Formal propositions:
UR1: A Language shall only be specified once.
NOTE The Language_indication entity data type identifies the primary language of a text attribute while the Attribute_translation_assignment entity data type enables to convey the translations of that attribute in various languages.
EXPRESS specification:
*)
ENTITY Language_indication;
considered_instance : string_select;
considered_attribute : STRING;
used_language : Language;
END_ENTITY;
(*
Attribute definitions:
considered_instance: the instance for which the Language of the considered_attribute has been identified.
considered_attribute: the name of the attribute the Language of which has been identified.
used_language: the Language used to write the text attribute of the considered_instance.
EXPRESS specification:
*)
ENTITY Attribute_translation_assignment;
considered_instance : string_select;
considered_attribute : STRING;
translation_text : STRING;
translation_language : Language;
UNIQUE
UR1: considered_instance, considered_attribute, translation_language;
END_ENTITY;
(*
Attribute definitions:
considered_instance: the instance for which a translation is specified for the considered_attribute in the indicated language.
considered_attribute: the name of the attribute for which a translation is provided.
translation_text: the text string that specifies the translation in an additional language.
translation_language: the Language in which the translation is provided.
Formal propositions:
UR1: For any text-based attribute of an instance, there shall only be one translation of that attribute in a given language, where the language is represented by translation_language, the attribute is represented by considered_attribute and the instance, by considered_instance.
*)
END_SCHEMA; -- Multi_linguism_arm
(*
© ISO 2019 — All rights reserved