Integrated generic resource: Material and other engineering properties | ISO 10303-45:2019(E) © ISO |
The subjects of the material_property_representation_schema are the associations of a product with: a property, descriptions of product composition and of material identification.
This clause defines the information requirements to which implementations shall conform using the EXPRESS language as defined in ISO 10303-11. The following EXPRESS declaration begins the material_property_definition_schema and identifies the necessary external references.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 material_property_definition_schema;
REFERENCE FROM
material_property_representation_schema
--
ISO 10303-45
(material_property_representation);
REFERENCE FROM
measure_schema
--
ISO 10303-41
(measure_with_unit);
REFERENCE FROM
process_property_schema
--
ISO 10303-49
(action_property,
resource_property);
REFERENCE FROM
product_definition_schema
--
ISO 10303-41
(product_definition_relationship);
REFERENCE FROM
product_property_definition_schema
--
ISO 10303-41
(characterized_definition,
property_definition);
REFERENCE FROM
qualified_measure_schema
--
ISO 10303-45
(maths_value_with_unit);
REFERENCE FROM
shape_dimension_schema
--
ISO 10303-47
(dimensional_location,
dimensional_size);
REFERENCE FROM
support_resource_schema
--
ISO 10303-41
(label,
text,
bag_to_set);
(*
NOTE 1 The schemas referenced above are specified in the following parts:
material_property_representation_schema ISO 10303-45 measure_schema ISO 10303-41 process_property_schema ISO 10303-49 product_definition_schema ISO 10303-41 product_property_definition_schema ISO 10303-41 qualified_measure_schema ISO 10303-45 shape_dimension_schema ISO 10303-47 support_resource_schema ISO 10303-41
NOTE 2 See Annex D for a graphical representation of this schema.
The following are the fundamental concepts and assumptions relating to the material_property_representation_schema:
The engineering properties may be determined from measurements on the product as a whole, on a sample taken from the product in some way such as cutting, or an entirely separate test piece prepared by processing in the same way as the product. The application of the results derived from a test piece to the whole product is dependent on the relationship to the sample to the product because, as a result of the manufacturing process, the product may not be either homogeneous or isotropic.
The values of most properties of a product are influenced by the effect that the manufacturing process has had on the product. The manufacturing process may affect the type and amounts of the units that make up the product and their form and arrangement. These units may be atoms, molecules or other aggregates of these into discrete forms such as crystals, fibres or volumes of semi-crystalline or glassy solids. The arrangement of the units is the material structure of the product.
The material structure of a solid product may be either homogeneous or heterogeneous, or a mixture of solids such as in composite structure. A complete specification of the structure includes the relationship of any preferentially aligned elements of the structure to each other and to the product.
Values for an engineering property may also be assigned to a product by reference to a specification, by calculation, or by assumption.
EXAMPLE 1 A manufacturer may make a product to a specification and, instead of reporting actual measurements from a specific batch of the product, he may report the nominal value indicated in the specification.
EXAMPLE 2 A chemist may perform calculations using assumed values of bond strengths to predict the strength of a polymer that has never been synthesised.
EXAMPLE 3 An engineer performing a finite element analysis on part might assign property values to predict potential product performance as a function of the property.
EXPRESS specification:
*)
TYPE
characterized_material_property
=
SELECT
(material_property_representation,
product_material_composition_relationship);
END_TYPE;
(*
EXPRESS specification:
*)
TYPE
characterized_product_composition_value
=
SELECT
(maths_value_with_unit,
measure_with_unit);
END_TYPE;
(*
EXPRESS specification:
*)
TYPE
generic_property_definition_select
=
SELECT
(property_definition,
action_property,
resource_property,
dimensional_location,
dimensional_size);
END_TYPE;
(*
A generic_property_relationship is an association between two members of generic_property_definition_select. The meaning of the relationship for a context is specified by the value of the relation_type attribute.
NOTE 1 Relationships captured using this entity may be parent-to-child relationships. Specialisations of this entity state this fact if it is true for the specialisation.
NOTE 2 This entity, in conjunction with the members of the generic_property_definition_select type is based on the relationship template that is described in ISO 10303-41.
EXPRESS specification:
*)
ENTITY generic_property_relationship;
name : label;
description : text;
relating : generic_property_definition_select;
related : generic_property_definition_select;
relation_type : STRING;
WHERE
WR1: acyclic_generic_property_relationship (SELF, [related], 'MATERIAL_PROPERTY_DEFINITION_SCHEMA.GENERIC_PROPERTY_RELATIONSHIP');
END_ENTITY;
(*
Attribute definitions:
name: the word or group of words by which the generic property relationship is referred to.
description: text that relates the nature of the generic property relationship.
relating: one of the members of generic_property_definition_select which is a part of the relationship.
related: the other member of generic_property_definition_select which is part of the relationship.
NOTE 1 If one element of the relationship is dependent on the other then this attribute shall be the dependent one.
NOTE 2 The roles of the related and the relating is defined in the part of ISO 10303 that uses or specialises this entity.
relation_type: the meaning of the relationship.
Formal propositions:
WR1: A generic_property_relationship shall not participate in its own definition.
A material_designation is the association of a material designation with a product or a part of a product or with an unrealised product.
EXAMPLE 1 '3105' could be the name of a material_designation assigned by an agreement that identifies a class of products containing specified amounts of aluminium, copper, magnesium and manganese.
EXAMPLE 2 'copper' could be the name of a material_designation associated with an unrealised product at the design stage to indicate the intention to use a substance with the range of electrical conductivity expected from copper metal.
EXPRESS specification:
*)
ENTITY material_designation;
name : label;
definitions : SET[1:?] OF characterized_definition;
END_ENTITY;
(*
Attribute definitions:
name: the word or group of words by which the material_designation is referred to.
definitions: the definition of the product or parts of the product for which the material_designation is specified.
EXPRESS specification:
*)
ENTITY material_designation_characterization;
name : label;
description : text;
designation : material_designation;
property : characterized_material_property;
END_ENTITY;
(*
Attribute definitions:
name: the word or group of words by which the material_designation_characterization is referred to.
description: a narrative description of the material_designation_characterization.
designation: the definition of the material designation for which the material_designation_characterization is specified.
property: the definition of the property for which the material_designation_characterization is specified.
EXPRESS specification:
*)
ENTITY material_property
SUBTYPE OF (property_definition);
UNIQUE
UR1: SELF\property_definition.name, SELF\property_definition.definition;
WHERE
WR1: ('PRODUCT_PROPERTY_DEFINITION_SCHEMA.CHARACTERIZED_OBJECT' IN
TYPEOF(SELF\property_definition.definition)) OR
(SIZEOF(bag_to_set(USEDIN(SELF ,
'PRODUCT_PROPERTY_REPRESENTATION_SCHEMA.' +
'PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')) -
QUERY(temp <* bag_to_set(USEDIN(SELF ,
'PRODUCT_PROPERTY_REPRESENTATION_SCHEMA.' +
'PROPERTY_DEFINITION_REPRESENTATION.DEFINITION')) |
('MATERIAL_PROPERTY_REPRESENTATION_SCHEMA.' +
'MATERIAL_PROPERTY_REPRESENTATION' IN
TYPEOF(temp)))) = 0);
END_ENTITY;
(*
Formal propositions:
UR1: The name of each material_property that is related to a single product_definition or shape_aspect (through their definition attribute) shall be unique within the collection of material_property entities which are related through that product_definition or shape_aspect.
WR1: If a material_property is not to be assigned to a characterized_object through its definition attribute , all of the property_definition_representation that reference it shall also be material_property_representations and will therefore, have associated data_environments.
A product_material_composition_relationship is a type of product_definition_relationship. The product_material_composition_relationship associates a material constituent with a product. The product participates in a product_definition_relationship as a relating_product_definition. The constituent participates in a product_definition_relationship as a related_product_definition.
NOTE The spatial location and orientation of the material constituents in the product are specified by their product_definition_shape. By this means the material structure of the product is described.
EXPRESS specification:
*)
ENTITY product_material_composition_relationship
SUBTYPE OF (product_definition_relationship);
class : label;
constituent_amount : SET[1:?] OF characterized_product_composition_value;
composition_basis : label;
determination_method : text;
END_ENTITY;
(*
Attribute definitions:
class: the name or identifier for the kind of relationship between a constituent and a product.
EXAMPLE Possible values of a class include: 'mixture', 'chemically bonded', and 'alloyed'.
constituent_amount: the quantity of the material constituent in a product and the units in which the quantity is expressed.
NOTE Examples of elements of the set could be the minimum value, maximum value, typical value. The description of the values as maximum, minimum or typical may be achieved by using the constructs in the qualified_measure_schema.
composition_basis: the basis on which a product is decomposed into its constituents.
EXAMPLE Expected values for composition basis include: 'volume', 'weight', 'moles', and 'atoms'.
determination_method: a description of the procedure by which the constituent amount is determined.
A property_definition_relationship is an association between two property_definitions. The meaning of the relationship for a context is defined in the specialisations of this resource construct.
NOTE 1 Relationships captured using this entity may be parent-to-child relationships. Specialisations of this entity state this fact if it is true for the specialisation.
NOTE 2 This entity, in conjunction with the property_definition entity is based on the relationship template that is described in ISO 10303-41.
EXPRESS specification:
*)
ENTITY property_definition_relationship;
name : label;
description : text;
relating_property_definition : property_definition;
related_property_definition : property_definition;
END_ENTITY;
(*
Attribute definitions:
name: the word or group of words by which the property definition relationship is referred to.
description: text that relates the nature of the property definition relationship.
relating_property_definition: one of the property_definitions which is a part of the relationship.
related_property_definition: the other property_definition which is part of the relationship.
NOTE 1 If one element of the relationship is dependent on the other then this attribute shall be the dependent one.
NOTE 2 The roles of the related_property_definition and the relating_property_definition is defined in the part of ISO 10303 that uses or specialises this entity.
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 of ISO 10303-41.
EXPRESS specification:
*)
FUNCTION acyclic_generic_property_relationship (relation : generic_property_relationship; relatives : SET[1:?] OF generic_property_definition_select; specific_relation : STRING) : LOGICAL;
LOCAL x : SET OF generic_property_relationship; END_LOCAL; IF relation.relating IN relatives THEN RETURN (FALSE); END_IF; -- IN is based in instance equality x := QUERY (gpr <* bag_to_set (USEDIN (relation.relating, 'MATERIAL_PROPERTY_DEFINITION_SCHEMA.' + 'GENERIC_PROPERTY_RELATIONSHIP.' + 'RELATED')) | specific_relation IN TYPEOF (gpr)); REPEAT I := 1 TO HIINDEX(x); -- pre-checked loop IF NOT acyclic_generic_property_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 generic_property_relationship to be checked.
relatives: (input) the set of instances of members of the select data type generic_property_definition_select 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 generic_property_relationship entity.
The acyclic_property_definition_relationship function determines whether or not the given property definitions have been self-defined by the associations made in the specified property_definition_relationship. This function may be used to evaluate either a property_definition_relationship or any of its subtypes.
NOTE 1 A specified type of the property_definition_relationship entity is either a property_definition_relationship or one of its subtypes. The function returns a value of TRUE is none of the elements of the relatives argument occur in the relation argument which is given in the specific_relation argument. Otherwise it returns a value of FALSE.
NOTE 2 This function is not used in this schema. It is defined here because other parts of ISO 10303 that use the property_definition_relationship entity define rules that use this function.
EXPRESS specification:
*)
FUNCTION acyclic_property_definition_relationship (relation : property_definition_relationship; relatives : SET[1:?] OF property_definition; specific_relation : STRING) : LOGICAL;
LOCAL x : SET OF property_definition_relationship; END_LOCAL; IF relation.relating_property_definition IN relatives THEN RETURN (FALSE); END_IF; -- IN is based in instance equality x := QUERY (pd <* bag_to_set (USEDIN (relation.relating_property_definition, 'MATERIAL_PROPERTY_DEFINITION_SCHEMA.' + 'PROPERTY_DEFINITION_RELATIONSHIP.' + 'RELATED_PROPERTY_DEFINITION')) | specific_relation IN TYPEOF (pd)); REPEAT I := 1 TO HIINDEX(x); -- pre-checked loop IF NOT acyclic_property_definition_relationship (x[i], relatives + relation.relating_property_definition, specific_relation) THEN RETURN(FALSE); END_IF; END_REPEAT; RETURN(TRUE);
END_FUNCTION;
(*
Argument definitions:
relation: (input) the candidate property_definition_relationship that is to be checked.
relatives: (input) the set of property_definitions which the function is searching for in the relating_property_definition parameter of the relation argument.
specific_relation: (input) the fully qualified name of a subtype of the property_definition_relationship entity.
*)
END_SCHEMA; -- material_property_definition_schema
(*
© ISO 2019 — All rights reserved