Application module: Product occurrence | ISO/TS 10303-1063:2018-11(E) © ISO |
(*
ISO/TC 184/SC 4/WG 12 N9689 - ISO/TS 10303-1063 Product occurrence - EXPRESS ARM
Supersedes
ISO/TC 184/SC 4/WG 12 N7750
*)
SCHEMA Product_occurrence_arm;
USE FROM
Assembly_structure_arm;
-- ISO/TS 10303-1026
USE FROM
Extended_measure_representation_arm;
-- ISO/TS 10303-1106
USE FROM
Part_view_definition_arm;
-- ISO/TS 10303-1023
USE FROM
Product_view_definition_relationship_arm;
-- ISO/TS 10303-1041
USE FROM
Specified_product_arm;
-- ISO/TS 10303-1104
TYPE extended_value_with_unit =
EXTENSIBLE
SELECT
(Value_with_unit,
Value_limit,
Value_range);
END_TYPE;
ENTITY Definition_based_product_occurrence
SUBTYPE OF (Product_occurrence);
derived_from : Part_view_definition;
WHERE
WR1: SELF\Product_view_definition.defined_version = derived_from.defined_version;
END_ENTITY;
ENTITY Product_occurrence
ABSTRACT SUPERTYPE
OF (ONEOF (Definition_based_product_occurrence,
Specification_based_product_occurrence,
Specified_occurrence)
AND ONEOF (Product_occurrence_with_quantity,
Single_instance,
Specified_occurrence))
SUBTYPE OF (Product_view_definition);
SELF\Product_view_definition.defined_version : Part_version;
DERIVE
SELF\Product_view_definition.initial_context : Initial_view_definition_context := View_definition_context('','') || Initial_view_definition_context(?);
INVERSE
occurrence_contexts : SET[0:?] OF Product_occurrence_definition_relationship FOR related_view;
view_definition_contexts : SET[0:?] OF View_definition_relationship FOR related_view;
WHERE
WR1: ('PRODUCT_OCCURRENCE_ARM.SPECIFIED_OCCURRENCE' IN TYPEOF(SELF)) OR (SIZEOF(occurrence_contexts) + SIZEOF(view_definition_contexts)
>= 1);
WR2: NOT EXISTS(SELF\Product_view_definition.additional_characterization);
WR3: SIZEOF(QUERY( oc <* occurrence_contexts |
NOT( NOT('ASSEMBLY_STRUCTURE_ARM.ASSEMBLY_COMPONENT_RELATIONSHIP' IN TYPEOF(oc)) OR
NOT EXISTS(oc\Assembly_component_relationship.quantity))
)) = 0;
END_ENTITY;
ENTITY Product_occurrence_with_quantity
ABSTRACT SUPERTYPE
OF (ONEOF (Quantified_instance,
Selected_instance))
SUBTYPE OF (Product_occurrence);
occurrence_quantity :
OPTIONAL
extended_value_with_unit;
END_ENTITY;
ENTITY Quantified_instance
SUBTYPE OF (Product_occurrence_with_quantity);
SELF\Product_occurrence_with_quantity.occurrence_quantity : Value_with_unit;
END_ENTITY;
ENTITY Selected_instance
SUBTYPE OF (Product_occurrence_with_quantity);
quantity_criterion :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Single_instance
SUBTYPE OF (Product_occurrence);
END_ENTITY;
ENTITY Specification_based_part_version
SUBTYPE OF (Specification_based_product_version, Part_version);
END_ENTITY;
ENTITY Specification_based_product_occurrence
SUBTYPE OF (Product_occurrence);
SELF\Product_view_definition.defined_version : Specification_based_part_version;
END_ENTITY;
ENTITY Specified_occurrence
SUBTYPE OF (Product_occurrence);
definition : Product_occurrence;
upper_usage : Product_occurrence;
WHERE
WR1: SIZEOF(occurrence_contexts) = 0;
END_ENTITY;
END_SCHEMA; -- Product_occurrence_arm
© ISO 2018 — All rights reserved