POSC Specifications: Epicentre Version 3.0 | Logical Data Model |
Make Ref_data a subtype of E_and_p_data. Create Ref_aliasable_data as the supertype of all ref entities which are aliasable. Move Ref_code to be a subtype of Ref_aliasable_data. Move all non-code entities from Ref_code to Ref_aliasable_data.
CHANGE ERP_ref_data ALTER ENTITY ref_data ADD SUBTYPE OF (e_and_p_data); ADD description : OPTIONAL ndt_comment (*<DESC>A remark about the reference value.*); END_ENTITY; ALTER ENTITY data_collection; ALTER name AS identifier ALTER TYPE AS ndt_identifier; DROP reference_data (*<CHANGE>Redundant to Data_collection.collection_content.*) (*<REMARK>Note that this does not have an INVERSE.*); END_ENTITY; ADD ENTITY ref_aliasable_data ABSTRACT SUPERTYPE OF ( ONEOF( ref_code, ref_unit_of_measure_conversion, ref_currency_unit, ref_unit_of_measure, ref_si_derived_base_element, ref_element_kind, ref_business_association_structure_rule, ref_property_kind ) ) SUBTYPE OF (ref_data); (*<DESC>The abstract supertype of all REF entities which are aliasable.*) END_ENTITY; ALTER ENTITY ref_code DROP SUBTYPE OF (ref_data); END_ENTITY; ALTER ENTITY ref_unit_of_measure DROP SUBTYPE OF (ref_code); DROP description (*<CHANGE>Moved up to Ref_data.*); END_ENTITY; ALTER ENTITY ref_unit_of_measure_conversion DROP SUBTYPE OF (ref_code); END_ENTITY; ALTER ENTITY ref_currency_unit DROP SUBTYPE OF (ref_code); END_ENTITY; ALTER ENTITY ref_si_derived_base_element DROP SUBTYPE OF (ref_code); END_ENTITY; ALTER ENTITY ref_element_kind DROP SUBTYPE OF (ref_code); DROP description (*<CHANGE>Moved up to Ref_data.*); END_ENTITY; ALTER ENTITY ref_business_association_structure_rule DROP SUBTYPE OF (ref_code); DROP description (*<CHANGE>Moved up to Ref_data.*); END_ENTITY; ALTER ENTITY ref_property_kind DROP SUBTYPE OF (ref_code); END_ENTITY; END_CHANGE;