Source : ISO 10303-55
SCHEMA procedural_model_schema;
REFERENCE FROM
support_resource_schema -- ISO 10303-41
(text);
REFERENCE FROM
representation_schema -- ISO 10303-43
(item_in_context,
representation,
representation_item,
representation_item_relationship,
representation_relationship,
using_representations);
REFERENCE FROM
variational_representation_schema -- ISO 10303-108
(variational_representation);
ENTITY explicit_procedural_representation_item_relationship
SUBTYPE OF (representation_item_relationship);
SELF\representation_item_relationship.relating_representation_item : procedural_representation_sequence;
WHERE
WR1: NOT ('PROCEDURAL_MODEL_SCHEMA.PROCEDURAL_REPRESENTATION_SEQUENCE'
IN TYPEOF(
SELF\representation_item_relationship.related_representation_item));
WR2: SIZEOF(QUERY(q <* using_representations(
SELF\representation_item_relationship.related_representation_item) |
item_in_context(
SELF\representation_item_relationship.relating_representation_item,
q.context_of_items))) > 0;
END_ENTITY;
ENTITY explicit_procedural_representation_relationship
SUBTYPE OF (representation_relationship);
SELF\representation_relationship.rep_1 : procedural_representation;
WHERE
WR1: (NOT ('PROCEDURAL_MODEL_SCHEMA.PROCEDURAL_REPRESENTATION'
IN TYPEOF(SELF\representation_relationship.rep_2))) AND
(NOT ('VARIATIONAL_REPRESENTATION_SCHEMA.VARIATIONAL_REPRESENTATION'
IN TYPEOF(SELF\representation_relationship.rep_2)));
WR2: SELF\representation_relationship.rep_1.context_of_items :=:
SELF\representation_relationship.rep_2.context_of_items;
END_ENTITY;
ENTITY indirectly_selected_elements
SUBTYPE OF (user_selected_elements);
indirectly_picked_items : SET[1:?] OF representation_item;
END_ENTITY;
ENTITY procedural_representation
SUBTYPE OF (representation);
SELF\representation.items : SET[1:?] OF procedural_representation_sequence;
END_ENTITY;
ENTITY procedural_representation_sequence
SUBTYPE OF (representation_item);
elements : LIST[1:?] OF representation_item;
suppressed_items : SET[0:?] OF representation_item;
rationale : text;
WHERE
WR1: SIZEOF(QUERY(q <* suppressed_items | NOT (q IN elements))) = 0;
END_ENTITY;
ENTITY user_selected_elements
SUBTYPE OF (representation_item);
picked_items : SET[1:?] OF representation_item;
END_ENTITY;
END_SCHEMA; -- procedural_model_schema