AP scope | AP module | AP contents | AP index | |
Application module: Decision support | ISO/WD 10303-1486 |
(*
ISO TC184/SC4/WG3 N2103 - ISO/WD 10303-1486 Decision support - EXPRESS ARM Long form
*)
SCHEMA Decision_support_arm_LF;
TYPE activity_item =
SELECT
(Activity,
Activity_method,
Applied_activity_assignment,
Assigned_property,
Contract,
Document,
Document_definition,
Document_version,
Effectivity,
Event,
File,
Independent_property,
Organization,
Person,
Person_in_organization,
Product,
Product_version,
Product_version_relationship,
Product_view_definition,
Project,
View_definition_relationship);
END_TYPE;
TYPE analised_item =
SELECT
(Product_version);
END_TYPE;
TYPE any_number_value =
NUMBER;
END_TYPE;
TYPE any_string_value =
STRING;
END_TYPE;
TYPE approval_item =
SELECT
(Activity,
Activity_method,
Address_assignment,
Analysis_discipline_definition,
Analysis_version,
Applied_activity_assignment,
Applied_information_usage_right,
Assigned_property,
Certification,
Certification_assignment,
Classification_assignment,
Contract,
Contract_assignment,
Date_or_date_time_assignment,
Digital_document_definition,
Document_assignment,
Effectivity_assignment,
Event_assignment,
Identification_assignment,
Information_usage_right,
Justification,
Justification_assignment,
Justification_relationship,
Justification_support_assignment,
Organization_or_person_in_organization_assignment,
Organization_relationship,
Person_in_organization,
Product_category_assignment,
Product_version_relationship,
Product_view_definition,
Project,
Project_assignment,
Requirement_assignment,
Requirement_collection_relationship,
Requirement_source,
Security_classification,
Security_classification_assignment,
Tracing_relationship,
View_definition_relationship);
END_TYPE;
TYPE assigned_document_select =
SELECT
(Document,
Document_definition,
Document_version,
File);
END_TYPE;
TYPE certification_item =
SELECT
(Activity,
Activity_method,
Product,
Product_version);
END_TYPE;
TYPE classification_item =
SELECT
(Activity,
Activity_method,
Activity_relationship,
Activity_status,
Address,
Address_assignment,
Analysis,
Analysis_discipline_definition,
Analysis_version,
Applied_activity_assignment,
Applied_information_usage_right,
Approval,
Approval_assignment,
Approval_relationship,
Approval_status,
Approving_person_organization,
Assigned_property,
Attribute_translation_assignment,
Calendar_date,
Certification,
Certification_assignment,
Class,
Context_dependent_unit,
Contract,
Contract_assignment,
Date_or_date_time_assignment,
Date_time,
Digital_document_definition,
Digital_file,
Document,
Document_assignment,
Document_location_identification,
Document_version,
Effectivity,
Effectivity_assignment,
Effectivity_relationship,
Event,
Event_assignment,
Event_relationship,
External_item_identification,
External_source_identification,
File_location_identification,
Hardcopy,
Identification_assignment,
Independent_property,
Independent_property_relationship,
Information_right,
Information_usage_right,
Information_usage_right_relationship,
Justification,
Justification_assignment,
Justification_relationship,
Justification_support_assignment,
Language,
Language_indication,
Local_time,
Organization,
Organization_or_person_in_organization_assignment,
Organization_relationship,
Partial_document_assignment,
Person,
Person_in_organization,
Physical_document_definition,
Product,
Product_category,
Product_version,
Product_version_relationship,
Product_view_definition,
Project,
Project_assignment,
Project_relationship,
Property_representation,
Representation,
Representation_context,
Representation_item,
Requirement,
Requirement_assignment,
Requirement_collection_relationship,
Requirement_source,
Requirement_version,
Requirement_version_relationship,
Requirement_view_definition,
Security_classification,
Security_classification_assignment,
Supplied_part_relationship,
Time_interval_relationship,
Tracing_relationship,
Uncertainty_with_unit,
Unit,
Value_with_unit,
Verification,
Verification_evidence,
View_definition_context,
View_definition_relationship);
END_TYPE;
TYPE contract_item =
SELECT
(Activity,
Activity_method,
Analysis_version,
Applied_activity_assignment,
Document,
Document_version,
Information_usage_right,
Project,
Requirement,
Requirement_assignment,
Requirement_collection_relationship,
Requirement_source,
Requirement_version,
Requirement_version_relationship,
Requirement_view_definition,
Security_classification,
Tracing_relationship);
END_TYPE;
TYPE date_or_date_time_item =
SELECT
(Activity,
Activity_method,
Activity_relationship,
Address_assignment,
Alias_identification,
Analysis_discipline_definition,
Applied_activity_assignment,
Applied_information_usage_right,
Approval,
Assigned_property,
Certification,
Certification_assignment,
Classification_assignment,
Contract,
Contract_assignment,
Date_or_date_time_assignment,
Digital_document_definition,
Digital_file,
Document,
Document_assignment,
Document_version,
Effectivity,
Effectivity_assignment,
Event_assignment,
Hardcopy,
Identification_assignment,
Independent_property,
Independent_property_relationship,
Information_usage_right,
Justification,
Justification_assignment,
Justification_relationship,
Justification_support_assignment,
Organization_or_person_in_organization_assignment,
Organization_relationship,
Person,
Person_in_organization,
Physical_document_definition,
Product_category_assignment,
Product_version,
Product_version_relationship,
Product_view_definition,
Project,
Project_assignment,
Property_representation,
Representation,
Requirement,
Requirement_assignment,
Requirement_collection_relationship,
Requirement_source,
Requirement_version,
Requirement_version_relationship,
Requirement_view_definition,
Security_classification,
Security_classification_assignment,
Tracing_relationship,
Verification,
Verification_evidence,
View_definition_context);
END_TYPE;
TYPE date_or_date_time_select =
SELECT
(Calendar_date,
Date_time);
END_TYPE;
TYPE date_or_event =
SELECT
(Calendar_date,
Date_time,
Event);
END_TYPE;
TYPE day_in_month_number =
INTEGER
;
WHERE
WR1: {1 <= SELF <= 31};
END_TYPE;
TYPE descriptive_or_numerical =
SELECT
(Descriptive_document_property,
Numerical_document_property);
END_TYPE;
TYPE document_property_item =
property_assignment_select
;
WHERE
wr1: NOT ('DECISION_SUPPORT_ARM.PRODUCT_VIEW_DEFINITION' IN TYPEOF(SELF));
: NOT ('DECISION_SUPPORT_ARM.VIEW_DEFINITION_RELATIONSHIP' IN TYPEOF(SELF));
END_TYPE;
TYPE documented_element_select =
SELECT
(Activity,
Activity_method,
Applied_activity_assignment,
Approval,
Approval_assignment,
Assigned_property,
Certification,
Certification_assignment,
Contract,
Contract_assignment,
Document,
Document_definition,
Document_version,
Effectivity,
Effectivity_assignment,
Identification_assignment,
Independent_property,
Independent_property_relationship,
Information_right,
Information_usage_right,
Organization,
Organization_or_person_in_organization_assignment,
Person,
Product,
Product_version,
Product_version_relationship,
Product_view_definition,
Project,
Property_representation,
Representation,
Representation_item,
Requirement,
Requirement_assignment,
Requirement_source,
Requirement_version,
Security_classification,
Security_classification_assignment,
Verification,
Verification_evidence,
View_definition_relationship);
END_TYPE;
TYPE effectivity_item =
SELECT
(Activity,
Activity_method,
Address_assignment,
Applied_activity_assignment,
Applied_information_usage_right,
Approval_assignment,
Assigned_property,
Attribute_translation_assignment,
Certification_assignment,
Contract_assignment,
Date_or_date_time_assignment,
Document,
Document_assignment,
Document_definition,
Document_location_identification,
Document_version,
Effectivity_assignment,
File,
Identification_assignment,
Justification,
Justification_assignment,
Justification_relationship,
Justification_support_assignment,
Organization_or_person_in_organization_assignment,
Organization_relationship,
Person_in_organization,
Product,
Product_version,
Product_version_relationship,
Product_view_definition,
Project_assignment,
Requirement,
Requirement_assignment,
Requirement_collection_relationship,
Requirement_source,
Requirement_version,
Requirement_version_relationship,
Requirement_view_definition,
Security_classification_assignment,
Verification,
Verification_evidence);
END_TYPE;
TYPE event_item =
SELECT
(Certification,
Project);
END_TYPE;
TYPE external_identification_item =
SELECT
(Document_definition,
File);
END_TYPE;
TYPE hour_in_day =
INTEGER
;
WHERE
WR1: { 0 <= SELF < 24 };
END_TYPE;
TYPE identification_item =
SELECT
(Activity,
Activity_method,
Address,
Analysis,
Analysis_discipline_definition,
Analysis_version,
Applied_activity_assignment,
Approval,
Approval_status,
Assigned_property,
Certification,
Contract,
Digital_document_definition,
Digital_file,
Document,
Document_assignment,
Document_version,
Effectivity,
Event,
Hardcopy,
Independent_property,
Independent_property_relationship,
Information_right,
Information_usage_right,
Justification,
Justification_assignment,
Justification_relationship,
Justification_support_assignment,
Organization,
Organization_or_person_in_organization_assignment,
Person,
Person_in_organization,
Physical_document_definition,
Project,
Requirement,
Requirement_assignment,
Requirement_collection_relationship,
Requirement_source,
Requirement_version,
Requirement_version_relationship,
Requirement_view_definition,
Security_classification,
Security_classification_assignment,
Tracing_relationship,
Verification,
Verification_evidence,
View_definition_relationship);
END_TYPE;
TYPE information_usage_right_item =
SELECT
(Applied_information_usage_right,
Certification,
Certification_assignment,
Digital_document_definition,
Digital_file,
Document,
Document_version,
Hardcopy,
Physical_document_definition,
Requirement,
Requirement_assignment,
Requirement_version,
Requirement_view_definition,
Security_classification,
Security_classification_assignment);
END_TYPE;
TYPE justification_item =
SELECT
(Activity,
Activity_method,
Applied_activity_assignment,
Approval,
Approval_assignment,
Assigned_property,
Classification_assignment,
Document_assignment,
Document_definition,
Effectivity,
Independent_property,
Independent_property_relationship,
Product,
Product_version,
Product_version_relationship,
Product_view_definition,
Verification,
Verification_evidence,
View_definition_relationship);
END_TYPE;
TYPE justification_support_item =
SELECT
(Activity,
Activity_method,
Applied_activity_assignment,
Approval,
Assigned_property,
Certification,
Contract,
Document,
Document_definition,
Document_version,
Effectivity,
Event,
Independent_property,
Independent_property_relationship,
Product,
Product_version,
Product_version_relationship,
Product_view_definition,
Project,
Verification,
Verification_evidence,
View_definition_relationship);
END_TYPE;
TYPE length_measure =
REAL;
END_TYPE;
TYPE maximize_or_minimize =
ENUMERATION
OF
(maximize,
minimize);
END_TYPE;
TYPE measure_value =
SELECT
(any_number_value,
any_string_value,
length_measure,
plane_angle_measure);
END_TYPE;
TYPE minute_in_hour =
INTEGER
;
WHERE
WR1: { 0 <= SELF <= 59 };
END_TYPE;
TYPE month_in_year_number =
INTEGER
;
WHERE
WR1: { 1 <= SELF <= 12 };
END_TYPE;
TYPE offset_orientation =
ENUMERATION
OF
(ahead,
exact,
behind);
END_TYPE;
TYPE organization_or_person_in_organization_item =
SELECT
(Activity,
Activity_method,
Activity_relationship,
Address_assignment,
Alias_identification,
Analysis,
Analysis_discipline_definition,
Analysis_version,
Applied_activity_assignment,
Approval,
Assigned_property,
Certification,
Certification_assignment,
Classification_assignment,
Contract,
Contract_assignment,
Date_or_date_time_assignment,
Digital_document_definition,
Digital_file,
Document,
Document_assignment,
Document_definition,
Document_version,
Effectivity,
Effectivity_assignment,
Event,
Event_assignment,
Hardcopy,
Identification_assignment,
Independent_property,
Independent_property_relationship,
Information_usage_right,
Justification,
Justification_assignment,
Justification_relationship,
Justification_support_assignment,
Organization_or_person_in_organization_assignment,
Person_in_organization,
Physical_document_definition,
Product_category,
Product_category_assignment,
Product_version,
Product_view_definition,
Project,
Project_assignment,
Property_representation,
Representation,
Requirement,
Requirement_assignment,
Requirement_collection_relationship,
Requirement_source,
Requirement_version,
Requirement_version_relationship,
Requirement_view_definition,
Security_classification,
Security_classification_assignment,
Tracing_relationship,
Verification,
Verification_evidence,
View_definition_context);
END_TYPE;
TYPE organization_or_person_in_organization_select =
SELECT
(Organization,
Person_in_organization);
END_TYPE;
TYPE plane_angle_measure =
REAL;
END_TYPE;
TYPE project_item =
SELECT
(Product,
Product_version);
END_TYPE;
TYPE property_assignment_select =
SELECT
(Document_definition,
File,
Product_view_definition,
View_definition_relationship);
END_TYPE;
TYPE represented_definition =
SELECT
(Assigned_property,
Independent_property);
END_TYPE;
TYPE requirement_assignment_item =
SELECT
(Activity_method,
Product,
Product_version,
Product_view_definition,
Verification);
END_TYPE;
TYPE requirement_source_item =
SELECT
(Activity_method,
Product,
Product_version,
Product_view_definition,
Verification);
END_TYPE;
TYPE second_in_minute =
REAL
;
WHERE
WR1: { 0 <= SELF <= 60.0 };
END_TYPE;
TYPE security_classification_item =
SELECT
(Activity,
Activity_method,
Analysis_version,
Applied_activity_assignment,
Digital_document_definition,
Digital_file,
Document,
Document_assignment,
Document_version,
Hardcopy,
Physical_document_definition,
Requirement,
Requirement_assignment,
Requirement_collection_relationship,
Requirement_source,
Requirement_version,
Requirement_version_relationship,
Requirement_view_definition,
Tracing_relationship,
Verification,
Verification_evidence);
END_TYPE;
TYPE string_select =
SELECT
(Activity,
Activity_method,
Activity_relationship,
Applied_activity_assignment,
Approval,
Approval_relationship,
Approval_status,
Assigned_property,
Certification,
Contract,
Date_or_date_time_assignment,
Digital_document_definition,
Document,
Document_assignment,
Document_version,
Event,
External_item_identification,
External_source_identification,
Identification_assignment,
Independent_property,
Independent_property_relationship,
Information_right,
Information_usage_right,
Justification,
Justification_assignment,
Justification_relationship,
Justification_support_assignment,
Organization_relationship,
Person_in_organization,
Physical_document_definition,
Product_category,
Project,
Project_assignment,
Project_relationship,
Representation_item,
Requirement,
Requirement_assignment,
Requirement_collection_relationship,
Requirement_source,
Requirement_version,
Requirement_version_relationship,
Requirement_view_definition,
Tracing_relationship,
Verification,
Verification_evidence);
END_TYPE;
TYPE verification_evidence_item =
SELECT
(Activity_method,
Analysis_version,
Applied_activity_assignment,
Applied_independent_property,
Certification_assignment,
Classification_assignment,
Security_classification_assignment);
END_TYPE;
TYPE year_number =
INTEGER;
END_TYPE;
ENTITY Activity;
id : STRING;
name : STRING;
description :
OPTIONAL
STRING;
chosen_method : Activity_method;
END_ENTITY;
ENTITY Activity_actual
SUBTYPE OF (Activity);
END_ENTITY;
ENTITY Activity_happening
SUBTYPE OF (Activity_relationship);
SELF\Activity_relationship.relating_activity : Activity_actual;
DERIVE
actual : ACTIVITY_ACTUAL := SELF\Activity_relationship.relating_activity;
predicted : ACTIVITY := SELF\Activity_relationship.related_activity;
WHERE
WR1: NOT ('ACTIVITY_AS_REALIZED.ACTIVITY_ACTUAL' IN TYPEOF(predicted));
END_ENTITY;
ENTITY Activity_method;
name : STRING;
description :
OPTIONAL
STRING;
consequence :
OPTIONAL
STRING;
purpose : STRING;
END_ENTITY;
ENTITY Activity_relationship;
name : STRING;
description :
OPTIONAL
STRING;
relating_activity : Activity;
related_activity : Activity;
END_ENTITY;
ENTITY Activity_status;
assigned_activity : Activity;
status : STRING;
END_ENTITY;
ENTITY Address;
name :
OPTIONAL
STRING;
street_number :
OPTIONAL
STRING;
street :
OPTIONAL
STRING;
postal_box :
OPTIONAL
STRING;
town :
OPTIONAL
STRING;
region :
OPTIONAL
STRING;
postal_code :
OPTIONAL
STRING;
country :
OPTIONAL
STRING;
internal_location :
OPTIONAL
STRING;
facsimile_number :
OPTIONAL
STRING;
telephone_number :
OPTIONAL
STRING;
electronic_mail_address :
OPTIONAL
STRING;
telex_number :
OPTIONAL
STRING;
url :
OPTIONAL
STRING;
WHERE
WR1: (EXISTS (street_number) OR EXISTS (street) OR EXISTS (postal_box) OR EXISTS (town) OR EXISTS (region) OR EXISTS (postal_code)
OR EXISTS (country) OR EXISTS (internal_location) OR EXISTS (facsimile_number) OR EXISTS (telephone_number) OR EXISTS (electronic_mail_address)
OR EXISTS (telex_number));
END_ENTITY;
ENTITY Address_assignment;
address_type :
OPTIONAL
STRING;
assigned_address : Address;
located_person_organizations : SET[1:?] OF organization_or_person_in_organization_select;
END_ENTITY;
ENTITY Alias_identification
SUBTYPE OF (Identification_assignment);
DERIVE
SELF\Identification_assignment.role : STRING := 'alias';
WHERE
WR1: SIZEOF (QUERY(item <* SELF\Identification_assignment.items | NOT ('DECISION_SUPPORT_ARM_LF.ALIAS_IDENTIFICATION_ITEM'
IN TYPEOF(item)))) = 0;
END_ENTITY;
ENTITY Amount_of_substance_unit
SUBTYPE OF (Unit);
END_ENTITY;
ENTITY Analysis
SUBTYPE OF (Product);
END_ENTITY;
ENTITY Analysis_assignment;
analysis : Analysis_version;
applied_to : analised_item;
END_ENTITY;
ENTITY Analysis_discipline_definition
SUBTYPE OF (Product_view_definition);
SELF\Product_view_definition.defined_version : Analysis_version;
END_ENTITY;
ENTITY Analysis_version
SUBTYPE OF (Product_version);
SELF\Product_version.of_product : Analysis;
END_ENTITY;
ENTITY Applied_activity_assignment;
assigned_activity : Activity;
items : SET[1:?] OF activity_item;
role : STRING;
END_ENTITY;
ENTITY Applied_independent_property
SUBTYPE OF (Assigned_property);
base_independent_property : Independent_property;
DERIVE
SELF\Assigned_property.name : STRING := base_independent_property.property_type;
END_ENTITY;
ENTITY Applied_information_usage_right;
item : SET[1:?] OF information_usage_right_item;
right_applied : Information_usage_right;
END_ENTITY;
ENTITY Approval;
status : Approval_status;
purpose : STRING;
planned_date :
OPTIONAL
date_or_date_time_select;
actual_date :
OPTIONAL
date_or_date_time_select;
END_ENTITY;
ENTITY Approval_assignment;
assigned_approval : Approval;
items : SET[1:?] OF approval_item;
role :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Approval_relationship;
relation_type : STRING;
description :
OPTIONAL
STRING;
relating_approval : Approval;
related_approval : Approval;
END_ENTITY;
ENTITY Approval_status;
status_name : STRING;
END_ENTITY;
ENTITY Approving_person_organization;
person_organization : organization_or_person_in_organization_select;
approval_date :
OPTIONAL
date_or_date_time_select;
authorized_approval : Approval;
role :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Assigned_document_property
SUBTYPE OF (Assigned_property);
SELF\Assigned_property.described_element : document_property_item;
DERIVE
SELF\Assigned_property.name : STRING := 'document property';
UNIQUE
UR1:
SELF\Assigned_property.described_element;
WHERE
WR1: SIZEOF(['DECISION_SUPPORT_ARM_LF.DOCUMENT_DEFINITION', 'DECISION_SUPPORT_ARM_LF.FILE']*TYPEOF(SELF\Assigned_property.described_element))
= 1;
END_ENTITY;
ENTITY Assigned_property;
id :
OPTIONAL
STRING;
name : STRING;
description :
OPTIONAL
STRING;
described_element : property_assignment_select;
END_ENTITY;
ENTITY Attribute_translation_assignment;
considered_instance : string_select;
considered_attribute : STRING;
translation_text : STRING;
translation_language : Language;
UNIQUE
UR1: considered_instance, considered_attribute, translation_language;
END_ENTITY;
ENTITY Calendar_date;
year_component : year_number;
month_component : month_in_year_number;
day_component : day_in_month_number;
END_ENTITY;
ENTITY Certification;
name : STRING;
description :
OPTIONAL
STRING;
kind : STRING;
END_ENTITY;
ENTITY Certification_assignment;
assigned_certification : Certification;
items : SET[1:?] OF certification_item;
role : STRING;
END_ENTITY;
ENTITY Class
SUPERTYPE OF
(ONEOF (CLASS_BY_EXTENSION,
CLASS_BY_INTENSION));
id : STRING;
name : STRING;
description :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Class_by_extension
SUBTYPE OF (Class);
END_ENTITY;
ENTITY Class_by_intension
SUBTYPE OF (Class);
END_ENTITY;
ENTITY Classification_assignment;
assigned_class : Class;
items : SET[1:?] OF classification_item;
role :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Context_dependent_unit
SUBTYPE OF (Unit);
WHERE
WR1: EXISTS(SELF\Unit.name);
END_ENTITY;
ENTITY Contract;
id : STRING;
purpose : STRING;
kind : STRING;
END_ENTITY;
ENTITY Contract_assignment;
assigned_contract : Contract;
items : SET[1:?] OF contract_item;
END_ENTITY;
ENTITY Conversion_based_unit
SUBTYPE OF (Unit);
conversion_factor : Value_with_unit;
WHERE
WR1: EXISTS(SELF\Unit.name);
END_ENTITY;
ENTITY Date_or_date_time_assignment;
assigned_date : date_or_date_time_select;
role : STRING;
items : SET[1:?] OF date_or_date_time_item;
END_ENTITY;
ENTITY Date_time;
date_component : Calendar_date;
time_component : Local_time;
END_ENTITY;
ENTITY Dated_effectivity
SUBTYPE OF (Effectivity);
start_bound : date_or_event;
end_bound :
OPTIONAL
date_or_event;
END_ENTITY;
ENTITY Derived_unit
SUBTYPE OF (Unit);
elements : SET[1:?] OF Derived_unit_element;
END_ENTITY;
ENTITY Derived_unit_element;
base_unit : Unit;
exponent : REAL;
END_ENTITY;
ENTITY Descriptive_document_property
SUBTYPE OF (String_representation_item);
INVERSE
valued_characteristic : SET[1:1] OF Document_property_representation FOR items;
END_ENTITY;
ENTITY Digital_document_definition
SUBTYPE OF (Document_definition);
files : SET[0:?] OF Digital_file;
END_ENTITY;
ENTITY Digital_file
SUBTYPE OF (File);
END_ENTITY;
ENTITY Document
SUBTYPE OF (Product);
END_ENTITY;
ENTITY Document_assignment;
assigned_document : assigned_document_select;
is_assigned_to : documented_element_select;
role : STRING;
END_ENTITY;
ENTITY Document_definition
SUPERTYPE OF
(ONEOF (DIGITAL_DOCUMENT_DEFINITION,
PHYSICAL_DOCUMENT_DEFINITION))
SUBTYPE OF (Product_view_definition);
SELF\Product_view_definition.defined_version : Document_version;
DERIVE
associated_document_version : DOCUMENT_VERSION := SELF\Product_view_definition.defined_version;
description : STRING := SELF\Product_view_definition.name;
END_ENTITY;
ENTITY Document_location_identification
SUBTYPE OF (External_source_identification);
WHERE
WR1: 'DECISION_SUPPORT_ARM_LF.DOCUMENT_DEFINITION' IN TYPEOF(SELF\External_source_identification.item);
END_ENTITY;
ENTITY Document_property_representation
SUBTYPE OF (Representation);
SELF\Representation.items : SET[1:?] OF descriptive_or_numerical;
WHERE
WR1: SIZEOF(QUERY(pr <* USEDIN(SELF, 'DECISION_SUPPORT_ARM_LF.PROPERTY_DEFINITION_REPRESENTATION.REP') | 'DECISION_SUPPORT_ARM_LF.ASSIGNED_PROPERTY'
IN TYPEOF (pr\Property_representation.property)))> 0;
WR2: SELF\Representation.context_of_items.kind = 'document parameters';
WR3: valid_document_property_representation(SELF);
WR4: SIZEOF(QUERY(it1 <* SELF\Representation.items | SIZEOF(QUERY(it2 <* SELF\Representation.items | it1.name = it2.name))
> 1))= 0;
END_ENTITY;
ENTITY Document_version
SUBTYPE OF (Product_version);
SELF\Product_version.of_product : Document;
END_ENTITY;
ENTITY Duration
SUBTYPE OF (Value_with_unit);
WHERE
WR1: 'DECISION_SUPPORT_ARM_LF.' + 'TIME_UNIT' IN TYPEOF(SELF\Value_with_unit.unit);
END_ENTITY;
ENTITY Effectivity
SUPERTYPE OF
(ONEOF (SERIAL_EFFECTIVITY,
DATED_EFFECTIVITY,
LOT_EFFECTIVITY,
TIME_INTERVAL_EFFECTIVITY));
id : STRING;
name : STRING;
description :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Effectivity_assignment;
assigned_effectivity : Effectivity;
role : STRING;
items : SET[1:?] OF effectivity_item;
END_ENTITY;
ENTITY Effectivity_relationship;
relation_type : STRING;
description :
OPTIONAL
STRING;
relating_effectivity : Effectivity;
related_effectivity : Effectivity;
END_ENTITY;
ENTITY Electric_current_unit
SUBTYPE OF (Unit);
END_ENTITY;
ENTITY Event;
id : STRING;
name : STRING;
description :
OPTIONAL
STRING;
actual_start_date :
OPTIONAL
date_or_date_time_select;
planned_start_date :
OPTIONAL
date_or_date_time_select;
END_ENTITY;
ENTITY Event_assignment;
assigned_event : Event;
items : SET[1:?] OF event_item;
role : STRING;
END_ENTITY;
ENTITY Event_relationship;
relation_type : STRING;
description :
OPTIONAL
STRING;
relating_event : Event;
related_event : Event;
END_ENTITY;
ENTITY External_item_identification
SUBTYPE OF (External_source_identification);
external_id : STRING;
END_ENTITY;
ENTITY External_source_identification;
source_id : STRING;
source_type : STRING;
item : external_identification_item;
description :
OPTIONAL
STRING;
END_ENTITY;
ENTITY File
ABSTRACT SUPERTYPE
OF (ONEOF (DIGITAL_FILE,
HARDCOPY));
id : STRING;
version :
OPTIONAL
STRING;
contained_data_type :
OPTIONAL
STRING;
END_ENTITY;
ENTITY File_location_identification
SUBTYPE OF (External_item_identification);
WHERE
WR1: 'DECISION_SUPPORT_ARM_LF.FILE' IN TYPEOF(SELF\External_source_identification.item);
END_ENTITY;
ENTITY Hardcopy
SUBTYPE OF (File);
END_ENTITY;
ENTITY Identification_assignment;
identifier : STRING;
role : STRING;
description :
OPTIONAL
STRING;
items : SET[1:?] OF identification_item;
END_ENTITY;
ENTITY Independent_property;
id : STRING;
property_type : STRING;
description :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Independent_property_relationship;
relation_type : STRING;
description :
OPTIONAL
STRING;
relating : Independent_property;
related : Independent_property;
END_ENTITY;
ENTITY Information_right;
id : STRING;
name : STRING;
description :
OPTIONAL
STRING;
restriction :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Information_usage_right;
id : STRING;
name : STRING;
comment :
OPTIONAL
STRING;
grants_right : SET[1:?] OF Information_right;
END_ENTITY;
ENTITY Information_usage_right_relationship;
relating : Information_usage_right;
related : Information_usage_right;
relation_type : STRING;
END_ENTITY;
ENTITY Justification;
id : STRING;
name :
OPTIONAL
STRING;
description : STRING;
context_description :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Justification_assignment;
justification : Justification;
description :
OPTIONAL
STRING;
item : justification_item;
role : STRING;
END_ENTITY;
ENTITY Justification_relationship;
name : STRING;
description :
OPTIONAL
STRING;
relating_justification : Justification;
related_justification : Justification;
END_ENTITY;
ENTITY Justification_support_assignment;
justification : Justification;
description :
OPTIONAL
STRING;
support_item : justification_support_item;
role : STRING;
END_ENTITY;
ENTITY Language;
language_code : STRING;
country_code :
OPTIONAL
STRING;
UNIQUE
UR1: language_code;
END_ENTITY;
ENTITY Language_indication;
considered_instance : string_select;
considered_attribute : STRING;
used_language : Language;
END_ENTITY;
ENTITY Length_unit
SUBTYPE OF (Unit);
END_ENTITY;
ENTITY Local_time;
hour_component : hour_in_day;
minute_component :
OPTIONAL
minute_in_hour;
second_component :
OPTIONAL
second_in_minute;
zone : Time_offset;
END_ENTITY;
ENTITY Lot_effectivity
SUBTYPE OF (Effectivity);
lot_id : STRING;
lot_size : Value_with_unit;
END_ENTITY;
ENTITY Luminous_intensity_unit
SUBTYPE OF (Unit);
END_ENTITY;
ENTITY Mass_unit
SUBTYPE OF (Unit);
END_ENTITY;
ENTITY Measure_item
ABSTRACT SUPERTYPE
SUBTYPE OF (Representation_item);
WHERE
WR1: SIZEOF(USEDIN(SELF, 'DECISION_SUPPORT_ARM_LF.REPRESENTATION.ITEMS'))>0;
END_ENTITY;
ENTITY Measure_of_effectiveness
SUBTYPE OF (Requirement_view_definition);
optimization_direction : maximize_or_minimize;
END_ENTITY;
ENTITY Numerical_document_property
SUBTYPE OF (Numerical_item_with_unit);
INVERSE
valued_characteristic : SET[1:1] OF Document_property_representation FOR items;
END_ENTITY;
ENTITY Numerical_item_with_global_unit
SUBTYPE OF (Measure_item);
value_component : measure_value;
WHERE
WR1: SIZEOF(QUERY(pvr <* QUERY (r <* USEDIN(SELF, 'DECISION_SUPPORT_ARM_LF.REPRESENTATION.ITEMS')| 'DECISION_SUPPORT_ARM_LF.PROPERTY_VALUE_REPRESENTATION'
IN TYPEOF(r)) | EXISTS(pvr.context_of_items.units))) > 0;
END_ENTITY;
ENTITY Numerical_item_with_unit
SUBTYPE OF (Measure_item, Value_with_unit);
END_ENTITY;
ENTITY Numerical_representation_context
SUBTYPE OF (Representation_context);
units :
OPTIONAL
SET[1:?] OF Unit;
accuracies :
OPTIONAL
SET[1:?] OF Uncertainty_with_unit;
END_ENTITY;
ENTITY Organization;
id :
OPTIONAL
STRING;
name : STRING;
END_ENTITY;
ENTITY Organization_or_person_in_organization_assignment;
assigned_entity : organization_or_person_in_organization_select;
role : STRING;
items : SET[1:?] OF organization_or_person_in_organization_item;
END_ENTITY;
ENTITY Organization_relationship;
relation_type : STRING;
description :
OPTIONAL
STRING;
relating_organization : Organization;
related_organization : Organization;
END_ENTITY;
ENTITY Partial_document_assignment
SUBTYPE OF (Document_assignment);
document_portion : STRING;
END_ENTITY;
ENTITY Person;
last_name : STRING;
first_name :
OPTIONAL
STRING;
middle_names :
OPTIONAL
LIST[1:?] OF STRING;
prefix_titles :
OPTIONAL
LIST[1:?] OF STRING;
suffix_titles :
OPTIONAL
LIST[1:?] OF STRING;
END_ENTITY;
ENTITY Person_in_organization;
concerned_person : Person;
containing_organization : Organization;
role : STRING;
END_ENTITY;
ENTITY Physical_document_definition
SUBTYPE OF (Document_definition);
components : SET[0:?] OF Hardcopy;
END_ENTITY;
ENTITY Plane_angle_unit
SUBTYPE OF (Unit);
END_ENTITY;
ENTITY Product;
id : STRING;
name :
OPTIONAL
STRING;
description :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Product_category;
id :
OPTIONAL
STRING;
name : STRING;
description :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Product_category_assignment;
category : Product_category;
products : SET[1:?] OF Product;
END_ENTITY;
ENTITY Product_category_hierarchy;
super_category : Product_category;
sub_category : Product_category;
END_ENTITY;
ENTITY Product_version;
id : STRING;
description :
OPTIONAL
STRING;
of_product : Product;
END_ENTITY;
ENTITY Product_version_relationship;
relation_type :
OPTIONAL
STRING;
description :
OPTIONAL
STRING;
relating_version : Product_version;
related_version : Product_version;
WHERE
WR1: relating_version :<>: related_version;
WR2: EXISTS(relation_type) OR (TYPEOF(SELF\Product_version_relationship) <> TYPEOF(SELF));
END_ENTITY;
ENTITY Product_view_definition;
id :
OPTIONAL
STRING;
name :
OPTIONAL
STRING;
additional_characterization :
OPTIONAL
STRING;
initial_context : View_definition_context;
additional_contexts : SET[0:?] OF View_definition_context;
defined_version : Product_version;
WHERE
WR1: NOT (initial_context IN additional_contexts);
WR2: EXISTS(id) OR (TYPEOF(SELF\Product_view_definition) <> TYPEOF(SELF));
END_ENTITY;
ENTITY Project;
id : STRING;
name : STRING;
description :
OPTIONAL
STRING;
responsible_organizations : SET[0:?] OF Organization;
planned_start_date :
OPTIONAL
date_or_event;
planned_end_date :
OPTIONAL
date_or_event;
actual_start_date :
OPTIONAL
date_or_date_time_select;
actual_end_date :
OPTIONAL
date_or_date_time_select;
END_ENTITY;
ENTITY Project_assignment;
assigned_project : Project;
role : STRING;
items : SET[1:?] OF project_item;
END_ENTITY;
ENTITY Project_relationship;
relation_type : STRING;
description :
OPTIONAL
STRING;
relating_project : Project;
related_project : Project;
END_ENTITY;
ENTITY Property_definition_representation
ABSTRACT SUPERTYPE
;
description :
OPTIONAL
STRING;
definition : represented_definition;
rep : Representation;
role :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Property_representation
SUBTYPE OF (Property_definition_representation);
SELF\Property_definition_representation.definition : Assigned_property;
DERIVE
property : ASSIGNED_PROPERTY := SELF\Property_definition_representation.definition;
END_ENTITY;
ENTITY Property_value_representation
SUBTYPE OF (Representation);
SELF\Representation.context_of_items : Numerical_representation_context;
END_ENTITY;
ENTITY Ratio_unit
SUBTYPE OF (Unit);
END_ENTITY;
ENTITY Relative_event
SUBTYPE OF (Event);
base_event : Event;
offset : Duration;
END_ENTITY;
ENTITY Representation;
id :
OPTIONAL
STRING;
name :
OPTIONAL
STRING;
description :
OPTIONAL
STRING;
context_of_items : Representation_context;
items : SET[1:?] OF Representation_item;
WHERE
WR1: EXISTS(name) OR (TYPEOF(SELF\Representation) <> TYPEOF(SELF));
END_ENTITY;
ENTITY Representation_context;
id : STRING;
kind : STRING;
INVERSE
representations_in_context : SET[1:?] OF Representation FOR context_of_items;
END_ENTITY;
ENTITY Representation_item
ABSTRACT SUPERTYPE
;
name :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Representation_relationship;
relation_type :
OPTIONAL
STRING;
description :
OPTIONAL
STRING;
rep_1 : Representation;
rep_2 : Representation;
WHERE
WR1: EXISTS(relation_type) OR (TYPEOF(SELF\Representation_relationship) <> TYPEOF(SELF));
WR2: EXISTS(description) OR (TYPEOF(SELF\Representation_relationship) <> TYPEOF(SELF));
END_ENTITY;
ENTITY Requirement
SUBTYPE OF (Product);
END_ENTITY;
ENTITY Requirement_assignment;
id : STRING;
description :
OPTIONAL
STRING;
assigned_requirement : Requirement_view_definition;
assigned_to : requirement_assignment_item;
END_ENTITY;
ENTITY Requirement_collection_relationship
SUBTYPE OF (View_definition_relationship);
SELF\View_definition_relationship.relating_view : Requirement_view_definition;
SELF\View_definition_relationship.related_view : Requirement_view_definition;
DERIVE
collection : REQUIREMENT_VIEW_DEFINITION := SELF\View_definition_relationship.relating_view;
member : REQUIREMENT_VIEW_DEFINITION := SELF\View_definition_relationship.related_view;
END_ENTITY;
ENTITY Requirement_source;
id : STRING;
description :
OPTIONAL
STRING;
source : requirement_source_item;
sourced_requirement : Requirement_view_definition;
END_ENTITY;
ENTITY Requirement_version
SUBTYPE OF (Product_version);
SELF\Product_version.of_product : Requirement;
END_ENTITY;
ENTITY Requirement_version_relationship
SUBTYPE OF (Product_version_relationship);
SELF\Product_version_relationship.relating_version : Requirement_version;
SELF\Product_version_relationship.related_version : Requirement_version;
DERIVE
predecessor : REQUIREMENT_VERSION := SELF\Product_version_relationship.relating_version;
successor : REQUIREMENT_VERSION := SELF\Product_version_relationship.related_version;
END_ENTITY;
ENTITY Requirement_view_definition
SUBTYPE OF (Product_view_definition);
SELF\Product_view_definition.defined_version : Requirement_version;
END_ENTITY;
ENTITY Security_classification;
classification_level : STRING;
description :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Security_classification_assignment;
classification : Security_classification;
items : SET[1:?] OF security_classification_item;
END_ENTITY;
ENTITY Serial_effectivity
SUBTYPE OF (Effectivity);
start_id : STRING;
end_id :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Solid_angle_unit
SUBTYPE OF (Unit);
END_ENTITY;
ENTITY String_representation_item
SUBTYPE OF (Representation_item);
string_value : STRING;
END_ENTITY;
ENTITY Supplied_part_relationship
SUBTYPE OF (Product_version_relationship);
WHERE
WR1: SELF\Product_version_relationship.relation_type IN ['supplied item', 'supplied document'];
END_ENTITY;
ENTITY Thermodynamic_temperature_unit
SUBTYPE OF (Unit);
END_ENTITY;
ENTITY Time_interval;
id : STRING;
name : STRING;
description :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Time_interval_effectivity
SUBTYPE OF (Effectivity);
effectivity_period : Time_interval;
END_ENTITY;
ENTITY Time_interval_relationship;
relation_type : STRING;
description : STRING;
relating_time_interval : Time_interval;
related_time_interval : Time_interval;
END_ENTITY;
ENTITY Time_interval_with_bounds
SUBTYPE OF (Time_interval);
primary_bound :
OPTIONAL
date_or_event;
secondary_bound :
OPTIONAL
date_or_event;
duration_from_primary_bound :
OPTIONAL
Duration;
WHERE
WR1: NOT (EXISTS (secondary_bound) AND EXISTS (duration_from_primary_bound));
WR2: EXISTS (primary_bound) OR EXISTS (secondary_bound);
END_ENTITY;
ENTITY Time_offset;
hour_offset : INTEGER;
minute_offset :
OPTIONAL
INTEGER;
sense : offset_orientation;
DERIVE
actual_minute_offset : INTEGER := NVL(minute_offset,0);
WHERE
WR1: { 0 <= hour_offset < 24 };
WR2: { 0 <= actual_minute_offset <= 59 };
WR3: NOT (((hour_offset <> 0) OR (actual_minute_offset <>0)) AND (sense = exact));
END_ENTITY;
ENTITY Time_unit
SUBTYPE OF (Unit);
END_ENTITY;
ENTITY Tracing_relationship
SUBTYPE OF (View_definition_relationship);
SELF\View_definition_relationship.relating_view : Requirement_view_definition;
SELF\View_definition_relationship.related_view : Requirement_view_definition;
DERIVE
traces_from : REQUIREMENT_VIEW_DEFINITION := SELF\View_definition_relationship.relating_view;
traces_to : REQUIREMENT_VIEW_DEFINITION := SELF\View_definition_relationship.related_view;
END_ENTITY;
ENTITY Uncertainty_with_unit
SUBTYPE OF (Value_with_unit);
name : STRING;
description :
OPTIONAL
STRING;
END_ENTITY;
ENTITY Unit
SUPERTYPE OF
(ONEOF (AMOUNT_OF_SUBSTANCE_UNIT,
ELECTRIC_CURRENT_UNIT,
LENGTH_UNIT,
LUMINOUS_INTENSITY_UNIT,
MASS_UNIT,
PLANE_ANGLE_UNIT,
RATIO_UNIT,
SOLID_ANGLE_UNIT,
THERMODYNAMIC_TEMPERATURE_UNIT,
TIME_UNIT));
name : STRING;
si_unit : BOOLEAN;
END_ENTITY;
ENTITY Value_with_unit;
unit : Unit;
value_component : measure_value;
END_ENTITY;
ENTITY Verification;
verifies : Requirement_assignment;
INVERSE
verified_by : SET[1:?] OF Verification_evidence FOR for_verification;
END_ENTITY;
ENTITY Verification_evidence;
for_verification : Verification;
items : SET[1:?] OF verification_evidence_item;
END_ENTITY;
ENTITY Verification_relationship;
related : Verification;
relating : Verification;
END_ENTITY;
ENTITY View_definition_context;
application_domain : STRING;
life_cycle_stage : STRING;
description :
OPTIONAL
STRING;
WHERE
WR1: (SIZEOF (USEDIN(SELF, 'DECISION_SUPPORT_ARM_LF.' +'PRODUCT_VIEW_DEFINITION.INITIAL_CONTEXT')) > 0) OR(SIZEOF (USEDIN(SELF,
'DECISION_SUPPORT_ARM_LF.' +'PRODUCT_VIEW_DEFINITION.ADDITIONAL_CONTEXTS')) > 0);
END_ENTITY;
ENTITY View_definition_relationship;
id :
OPTIONAL
STRING;
relation_type :
OPTIONAL
STRING;
description :
OPTIONAL
STRING;
relating_view : Product_view_definition;
related_view : Product_view_definition;
END_ENTITY;
ENTITY View_definition_usage
SUBTYPE OF (View_definition_relationship);
END_ENTITY;
RULE
document_definition_constraint FOR
(Product_view_definition);
WHERE
WR1: SIZEOF (QUERY (dd <* Product_view_definition | (NOT ('DECISION_SUPPORT_ARM_LF.' + 'DOCUMENT_DEFINITION' IN TYPEOF (dd)))
AND ('DECISION_SUPPORT_ARM_LF.' + 'DOCUMENT_VERSION' IN TYPEOF (dd.defined_version)))) =0;
END_RULE;
RULE
document_version_constraint FOR
(Product_version);
WHERE
WR1: SIZEOF (QUERY (pv <* Product_version | (NOT ('DECISION_SUPPORT_ARM_LF.' + 'DOCUMENT_VERSION' IN TYPEOF (pv))) AND ('DECISION_SUPPORT_ARM_LF.'
+ 'DOCUMENT' IN TYPEOF (pv.of_product)))) = 0;
END_RULE;
FUNCTION valid_document_property_representation
(rep : Document_property_representation) : LOGICAL;
CASE rep.name OF 'document content': BEGIN RETURN ( SIZEOF(QUERY(items <* rep\Representation.items | NOT (items.name IN ['detail level', 'geometry type', 'real world scale'])))= 0 ); END; 'document creation': BEGIN IF NOT (SIZEOF(QUERY(items <* rep\Representation.items | NOT (items.name IN ['creating interface', 'creating system', 'operating system'])))= 0 ) THEN RETURN(FALSE); END_IF; IF NOT (SIZEOF(QUERY(items <* rep\Representation.items | NOT (items.name IN ['creating system'])))= 1 ) THEN RETURN(FALSE); ELSE RETURN(TRUE); END_IF; END; 'document format': BEGIN RETURN ( SIZEOF(QUERY(items <* rep\Representation.items | NOT (items.name IN ['character code', 'data format', 'size format', 'size format standard'])))= 0 ); END; 'document size': BEGIN RETURN ( SIZEOF(QUERY(items <* rep\Representation.items | NOT (items.name IN ['file size', 'page count'])))= 0 ); END; OTHERWISE: RETURN(UNKNOWN); END_CASE;
END_FUNCTION;
END_SCHEMA; -- Decision_support_arm_LF
© ISO 2006 — All rights reserved