Source : ISO 10303-45
SCHEMA qualified_measure_schema;
REFERENCE FROM
mathematical_functions_schema -- ISO 10303-50
(maths_value);
REFERENCE FROM
measure_schema -- ISO 10303-41
(measure_with_unit,
unit);
REFERENCE FROM
representation_schema -- ISO 10303-43
(representation_item);
REFERENCE FROM
support_resource_schema -- ISO 10303-41
(identifier,
label,
text,
bag_to_set);
TYPE value_format_type =
identifier;
WHERE
WR1: LENGTH(SELF) <= 80;
END_TYPE;
TYPE value_qualifier =
SELECT
(maths_value_precision_qualifier,
precision_qualifier,
type_qualifier,
uncertainty_qualifier,
value_format_type_qualifier);
END_TYPE;
ENTITY descriptive_representation_item
SUBTYPE OF (representation_item);
description : text;
END_ENTITY;
ENTITY expanded_uncertainty
SUBTYPE OF (standard_uncertainty);
coverage_factor : REAL;
END_ENTITY;
ENTITY maths_value_precision_qualifier;
precision_value : maths_value;
END_ENTITY;
ENTITY maths_value_qualification;
name : label;
description : text;
qualified_maths_value : maths_value_with_unit;
qualifiers : SET[1:?] OF value_qualifier;
WHERE
WR1: SIZEOF(QUERY(temp <* qualifiers | ('QUALIFIED_MEASURE_SCHEMA.PRECISION_QUALIFIER' IN TYPEOF(temp)) OR ('QUALIFIED_MEASURE_SCHEMA.MATHS_VALUE_PRECISION_QUALIFIER'
IN TYPEOF(temp)))) < 2;
WR2: NOT ('REPRESENTATION_SCHEMA.REPRESENTATION_ITEM' IN TYPEOF(SELF\maths_value_qualification.qualified_maths_value));
END_ENTITY;
ENTITY maths_value_representation_item
SUBTYPE OF (representation_item, maths_value_with_unit);
END_ENTITY;
ENTITY maths_value_with_unit;
value_component : maths_value;
unit_component : unit;
END_ENTITY;
ENTITY measure_qualification;
name : label;
description : text;
qualified_measure : measure_with_unit;
qualifiers : SET[1:?] OF value_qualifier;
WHERE
WR1: SIZEOF(QUERY(temp <* qualifiers | ('QUALIFIED_MEASURE_SCHEMA.PRECISION_QUALIFIER' IN TYPEOF(temp)) OR ('QUALIFIED_MEASURE_SCHEMA.MATHS_VALUE_PRECISION_QUALIFIER'
IN TYPEOF(temp)))) < 2;
WR2: NOT ('REPRESENTATION_SCHEMA.REPRESENTATION_ITEM' IN TYPEOF(SELF\measure_qualification.qualified_measure));
END_ENTITY;
ENTITY measure_representation_item
SUBTYPE OF (representation_item, measure_with_unit);
END_ENTITY;
ENTITY precision_qualifier;
precision_value : INTEGER;
END_ENTITY;
ENTITY qualified_representation_item
SUBTYPE OF (representation_item);
qualifiers : SET[1:?] OF value_qualifier;
WHERE
WR1: SIZEOF(QUERY(temp <* qualifiers | ('QUALIFIED_MEASURE_SCHEMA.PRECISION_QUALIFIER' IN TYPEOF(temp)) OR ('QUALIFIED_MEASURE_SCHEMA.MATHS_VALUE_PRECISION_QUALIFIER'
IN TYPEOF(temp)))) < 2;
END_ENTITY;
ENTITY qualitative_uncertainty
SUBTYPE OF (uncertainty_qualifier);
uncertainty_value : text;
END_ENTITY;
ENTITY standard_uncertainty
SUPERTYPE OF
(expanded_uncertainty)
SUBTYPE OF (uncertainty_qualifier);
uncertainty_value : REAL;
END_ENTITY;
ENTITY type_qualifier;
name : label;
END_ENTITY;
ENTITY uncertainty_qualifier
SUPERTYPE OF
(ONEOF (standard_uncertainty,
qualitative_uncertainty));
measure_name : label;
description : text;
END_ENTITY;
ENTITY value_format_type_qualifier;
format_type : value_format_type;
END_ENTITY;
END_SCHEMA; -- qualified_measure_schema