Integrated generic resource: Systems engineering representation | ISO 10303-61:2019(E) © ISO |
Short names of entities defined in this schema are described in Annex A. Unambiguous identification of this schema is defined in Annex B.
EXPRESS specification:
*)
SCHEMA systems_engineering_representation_schema;
REFERENCE FROM
action_schema
--
ISO 10303-41
(action_method);
REFERENCE FROM
iso13584_expressions_schema
--
ISO 13584-20
(expression);
REFERENCE FROM
management_resources_schema
--
ISO 10303-41
(action_method_assignment);
REFERENCE FROM
product_analysis_schema;
--
ISO 10303-53
REFERENCE FROM
representation_schema
--
ISO 10303-43
(representation,
representation_context,
representation_item);
REFERENCE FROM
state_type_schema;
--
ISO 10303-56
REFERENCE FROM
support_resource_schema
--
ISO 10303-41
(bag_to_set,
identifier,
label,
text);
(*
NOTE 1 The schemas referenced above are specified in the following parts:
action_schema ISO 10303-41 iso13584_expressions_schema ISO 13584-20 management_resources_schema ISO 10303-41 product_analysis_schema ISO 10303-53 representation_schema ISO 10303-43 state_type_schema ISO 10303-56 support_resource_schema ISO 10303-41
NOTE 2 See Annex D for a graphical representation of this schema.
The Systems Engineering discipline requires complex representations. This part of ISO 10303 extends the simple representation mechanisms in other parts of ISO 10303 to enable items that are not direct subtypes of representation to be used as, or as part of, representations.
NOTE The list of entity data types will be extended in application resources that use the constructs of this resource.
EXPRESS specification:
*)
TYPE
analysis_model_idealisation_item
=
EXTENSIBLE
GENERIC_ENTITY
SELECT
(physical_product_domain);
END_TYPE;
(*
EXPRESS specification:
*)
TYPE
expression_element
=
SELECT
(expression);
END_TYPE;
(*
NOTE This empty extensible select requires extension in a further schema to ensure that entities that refer to it have at least one valid instantiation.
EXPRESS specification:
*)
TYPE
representation_proxy_select
=
EXTENSIBLE
GENERIC_ENTITY
SELECT;
END_TYPE;
(*
EXPRESS specification:
*)
TYPE
se_representation_proxy_select
=
SELECT
BASED_ON
representation_proxy_select
WITH
(action_method,
state_type,
state_type_relationship);
END_TYPE;
(*
EXPRESS specification:
*)
TYPE
state_based_behaviour_element
=
SELECT
(state_type,
state_type_relationship);
END_TYPE;
(*
EXPRESS specification:
*)
ENTITY action_method_assignment_relationship;
relating_assignment : action_method_assignment;
related_assignment : action_method_assignment;
END_ENTITY;
(*
Attribute definitions:
relating_assignment: the relating assignment
related_assignment: the related assignment
EXPRESS specification:
*)
ENTITY analysis_model
SUBTYPE OF (representation);
SELF\representation.context_of_items : analysis_representation_context;
END_ENTITY;
(*
Attribute definitions:
context_of_items: the representation context for the analysis model.
EXPRESS specification:
*)
ENTITY analysis_model_relationship;
id : identifier;
name : label;
description : text;
idealised : analysis_model;
idealisation : analysis_model_idealisation_item;
END_ENTITY;
(*
Attribute definitions:
id: the identifier for the relationship
name: the words by which the relationship is known
description: the text that provides further information about the relationship
idealised: the model that is idealised
idealisation: the item that idealises the model
EXPRESS specification:
*)
ENTITY analysis_representation_context
SUBTYPE OF (representation_context);
END_ENTITY;
(*
EXPRESS specification:
*)
ENTITY description_text;
description : text;
END_ENTITY;
(*
Attribute definitions:
description: the text that constitutes the description
EXPRESS specification:
*)
ENTITY description_text_assignment
ABSTRACT SUPERTYPE
;
description : description_text;
END_ENTITY;
(*
Attribute definitions:
description: the description_text that is the description
EXPRESS specification:
*)
ENTITY description_text_assignment_relationship;
id :
OPTIONAL
identifier;
description :
OPTIONAL
text;
relating : description_text_assignment;
related : description_text_assignment;
relation_type : STRING;
WHERE
WR1: acyclic_description_text_assignment_relationship(SELF, [related], 'SYSTEMS_ENGINEERING_REPRESENTATION_SCHEMA.DESCRIPTION_TEXT_ASSIGNMENT_RELATIONSHIP');
END_ENTITY;
(*
Attribute definitions:
id: the identifier or set of identifiers for the description_text_assignment_relationship.
description: the text or the set of texts that provide further information about the description_text_assignment_relationship. The value of this attribute need not be specified.
relating: one object of description_text_assignment that is part of the relationship.
related: the other object of description_text_assignment that is part of the relationship.
relation_type: the meaning of the relationship.
Formal propositions:
WR1: An description_text_assignment_relationship shall not participate in its own definition.
EXPRESS specification:
*)
ENTITY expression_assignment
ABSTRACT SUPERTYPE
;
assigned_expression : expression;
role : expression_role;
END_ENTITY;
(*
Attribute definitions:
assigned_expression: the expression that is assigned
role: the role played by the assigned expression
EXPRESS specification:
*)
ENTITY expression_item_representation_item
SUBTYPE OF (representation_item);
item : expression_element;
END_ENTITY;
(*
Attribute definitions:
item: the item used to represent the expression representation.
EXPRESS specification:
*)
ENTITY expression_representation
SUBTYPE OF (representation);
SELF\representation.context_of_items : expression_representation_context;
SELF\representation.items : SET[1:?] OF expression_item_representation_item;
END_ENTITY;
(*
Attribute definitions:
context_of_items: the representation context for the expression representation
items: the items that constitute the representation
EXPRESS specification:
*)
ENTITY expression_representation_context
SUBTYPE OF (representation_context);
END_ENTITY;
(*
EXPRESS specification:
*)
ENTITY expression_role;
name : label;
description :
OPTIONAL
text;
END_ENTITY;
(*
Attribute definitions:
name: the words by which the role is known.
description: a description of the role.
EXPRESS specification:
*)
ENTITY functional_model
SUBTYPE OF (representation);
SELF\representation.context_of_items : functional_representation_context;
SELF\representation.items : SET[1:?] OF functional_representation_item;
END_ENTITY;
(*
Attribute definitions:
context_of_items: the representation context for the functional model.
items: the items used to represent the functional model.
EXPRESS specification:
*)
ENTITY functional_representation_context
SUBTYPE OF (representation_context);
END_ENTITY;
(*
EXPRESS specification:
*)
ENTITY functional_representation_item
SUBTYPE OF (representation_proxy_item);
SELF\representation_proxy_item.item : action_method;
END_ENTITY;
(*
Attribute definitions:
item: the actual action_method used to represent an aspect of a functional model.
EXPRESS specification:
*)
ENTITY representation_proxy_item
SUBTYPE OF (representation_item);
item : representation_proxy_select;
END_ENTITY;
(*
Attribute definitions:
item: the item used as a representation item.
EXPRESS specification:
*)
ENTITY state_based_behaviour_model
SUBTYPE OF (representation);
SELF\representation.context_of_items : state_based_behaviour_representation_context;
SELF\representation.items : SET[1:?] OF state_based_behaviour_representation_item;
END_ENTITY;
(*
Attribute definitions:
context_of_items: the representation context for the state-based behaviour
items: the representation item for the state-based behaviour
EXPRESS specification:
*)
ENTITY state_based_behaviour_representation_context
SUBTYPE OF (representation_context);
END_ENTITY;
(*
EXPRESS specification:
*)
ENTITY state_based_behaviour_representation_item
SUBTYPE OF (representation_proxy_item);
SELF\representation_proxy_item.item : state_based_behaviour_element;
END_ENTITY;
(*
Attribute definitions:
item: the representation of the state-based behaviour
The function returns TRUE if no cycle has been detected. Otherwise it returns FALSE.
NOTE 1 The algorithm of the function is explained in annex E.2.
EXPRESS specification:
*)
FUNCTION acyclic_description_text_assignment_relationship (relation : description_text_assignment_relationship; relatives : SET[1:?] OF description_text_assignment; specific_relation : STRING) : BOOLEAN;
LOCAL x : SET OF description_text_assignment_relationship; END_LOCAL; IF relation.relating IN relatives THEN RETURN(FALSE); END_IF; x := QUERY(dtar <* bag_to_set(USEDIN(relation.relating, 'SYSTEMS_ENGINEERING_REPRESENTATION_SCHEMA.DESCRIPTION_TEXT_ASSIGNMENT_RELATIONSHIP.RELATED')) | specific_relation IN TYPEOF(dtar)); REPEAT i := 1 TO HIINDEX(x); IF NOT acyclic_description_text_assignment_relationship(x[i], relatives + relation.relating, specific_relation) THEN RETURN(FALSE); END_IF; END_REPEAT; RETURN(TRUE);
END_FUNCTION;
(*
Argument definitions:
relation: (input) the candidate description_text_assignment_relationship to be checked.
relatives: (input) the set of instances of the entity data type description_text_assignment for which the function is searching in the relating parameter of the relation argument.
specific_relation: (input) the fully qualified name of a subtype of the description_text_assignment_relationship entity.
*)
END_SCHEMA; -- systems_engineering_representation_schema
(*
© ISO 2019 — All rights reserved