Application module: Type of person | ISO/TS 10303-1245:2004(E) © ISO |
This clause specifies the information requirements for the Type of person 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.
The following EXPRESS specification begins the Type_of_person_arm schema and identifies the necessary external references.
EXPRESS specification:
*)
SCHEMA Type_of_person_arm;
(*
The following EXPRESS interface statements specify the elements imported from the ARMs of other application modules.
EXPRESS specification:
*)
USE FROM
Classification_assignment_arm;
--
ISO/TS 10303-1114
USE FROM
Experience_arm;
--
ISO/TS 10303-1243
USE FROM
Property_assignment_arm;
--
ISO/TS 10303-1030
USE FROM
Qualifications_arm;
--
ISO/TS 10303-1244
(*
NOTE 1 The schemas referenced above are specified in the following part of ISO 10303:
Classification_assignment_arm ISO/TS 10303-1114 Experience_arm ISO/TS 10303-1243 Property_assignment_arm ISO/TS 10303-1030 Qualifications_arm ISO/TS 10303-1244
NOTE 2 See Annex C, Figures C.1and C.2 for a graphical representation of this schema.
This subclause specifies the ARM types for this application module. The ARM types and definitions are specified below.
The defined_attributes type is an extensible list of alternate data types that allows for the designation of the data types Experience_type and Qualification_type.
NOTE The list of entity data types may be extended in application modules that use the constructs of this module.
EXPRESS specification:
*)
TYPE
defined_attributes =
EXTENSIBLE
GENERIC_ENTITY
SELECT
(Experience_type,
Qualification_type);
END_TYPE;
(*
The type_of_person_classified_select type is an extension of the classification_item type. It adds the data types Type_of_person, Type_of_person_assignment, Type_of_person_definition, Type_of_person_definition_relationship and Type_of_person_definition_required_attributes_relationship to the list of alternate data types.
NOTE The list of entity data types may be extended in application modules that use the constructs of this module.
EXPRESS specification:
*)
TYPE
type_of_person_classified_select =
EXTENSIBLE
GENERIC_ENTITY
SELECT
BASED_ON
classification_item
WITH
(Type_of_person,
Type_of_person_assignment,
Type_of_person_definition,
Type_of_person_definition_relationship,
Type_of_person_definition_required_attributes_relationship);
END_TYPE;
(*
The type_of_person_item_select type is an extensible list of alternate data types. Additional alternate data types are specified in select data types that extend the type_of_person_item_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
type_of_person_item_select =
EXTENSIBLE
GENERIC_ENTITY
SELECT;
END_TYPE;
(*
The type_of_person_property_assignment_select type is an extension of the property_assignment_select type. It adds the data type Type_of_person_definition to the list of alternate data types.
NOTE The list of entity data types may be extended in application modules that use the constructs of this module.
The definition may include properties that are not qualification or experience related.EXAMPLE 1 height
EXAMPLE 2 age
EXAMPLE 3 gender
EXPRESS specification:
*)
TYPE
type_of_person_property_assignment_select =
EXTENSIBLE
GENERIC_ENTITY
SELECT
BASED_ON
property_assignment_select
WITH
(Type_of_person_definition);
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.
EXAMPLE 1 Class 3 welder
EXAMPLE 2 Truck driver
EXAMPLE 3 Electronics engineer
EXAMPLE 4 Mechanical technician
EXAMPLE 5 Helicopter pilot
EXPRESS specification:
*)
ENTITY Type_of_person;
name : STRING;
description :
OPTIONAL
STRING;
has : SET[0:?] OF Type_of_person_definition;
END_ENTITY;
(*
Attribute definitions:
name: the words by which the Type_of_person is known.
description: the text that provides further information about the Type_of_person. The value of this attribute need not be specified.
has: the same Type_of_person can be described by many different definitions.
EXAMPLE has a degree or has 3 years experience
EXPRESS specification:
*)
ENTITY Type_of_person_assignment;
assigned_type_of_person : Type_of_person;
items : SET[1:?] OF type_of_person_item_select;
role : STRING;
END_ENTITY;
(*
Attribute definitions:
assigned_type_of_person: the Type_of_person that is to be assigned.
items: the set of things to which the Type_of_person is assigned.
role: the job that the Type_of_person undertakes in the assignment.
EXAMPLE A junior mechanical design engineer could be specified to be either someone who has
EXPRESS specification:
*)
ENTITY Type_of_person_definition;
name : STRING;
description :
OPTIONAL
STRING;
END_ENTITY;
(*
Attribute definitions:
name: the words by which the Type_of_person_definition is known.
description: the text that provides further information about the Type_of_person_definition. The value of this attribute need not be specified.
EXAMPLE "alternate" and "superceded by" are examples of Type_of_person_definition_relationships.
NOTE The meaning of the relationship is determined by classification.
EXPRESS specification:
*)
ENTITY Type_of_person_definition_relationship;
name : STRING;
description :
OPTIONAL
STRING;
relating : Type_of_person_definition;
related : Type_of_person_definition;
END_ENTITY;
(*
Attribute definitions:
name: the words by which the Type_of_person_definition_relationship is known.
description: the text that provides further information about Type_of_person_definition_relationship. The value of this attribute need not be specified.
relating: one instance of Type_of_person_definition that is a part of the relationship.
related: the other instance of Type_of_person_definition that is a part of the relationship. If one element of the relationship is dependent upon the other, this attribute shall be the dependent one.
EXAMPLE The type of person "van driver" is required to possess the qualification named "commercial driving license" or the experience level "3 years of driving more than 10,000 miles per year".
EXPRESS specification:
*)
ENTITY Type_of_person_definition_required_attributes_relationship;
assigned_required_attributes : Type_of_person_definition;
required_attributes : SET[0:?] OF defined_attributes;
END_ENTITY;
(*
Attribute definitions:
assigned_required_attributes: the Type_of_person_definition to which the required attributes apply.
required_attributes: the required attributes of a person.
EXAMPLE 1 Must have a degree
EXAMPLE 2 Must have 10 years experience
*)
END_SCHEMA; -- Type_of_person_arm
(*
© ISO 2004 — All rights reserved