*) TYPE approval_assignment_select = SELECT WITH (change_report, configuration_element, configuration_element_version, critical_issue,critical_issue_impact, document_assignment, element_critical_issue_relationship, engineering_process_activity, instance_definition_select,package_element_assignment, partial_system_view_relationship, project, requirement_allocation_relationship, work_order, work_request); END_TYPE; (* |
*) TYPE assigned_requirement_relationship_select = SELECT WITH (requirement_allocation_relationship, requirement_relationship); END_TYPE; (* |
*) TYPE assigned_requirement_relationship_select = SELECT WITH (requirement_relationship); END_TYPE; (* |
*) TYPE basic_identifier = STRING; END_TYPE; (* |
*) TYPE boolean_value = BOOLEAN; END_TYPE; (* |
*) TYPE buffer_synchronisation_enumeration = ENUMERATION OF (asynchronous,synchronouos); END_TYPE; (* |
*) TYPE cardinality_association_select = SELECT WITH (cardinality_list, cardinality_range, single_cardinality); END_TYPE; (* |
*) TYPE causal_weight_select = SELECT WITH (cb_transition_unbounded_weight, natural_number); END_TYPE; (* |
*) TYPE change_element_select = SELECT WITH (instance_definition_select); END_TYPE; (* |
*) TYPE change_report_element_select = SELECT WITH (instance_definition_select); END_TYPE; (* |
*) TYPE control_characters = ENUMERATION OF (cr,tab); END_TYPE; (* |
*) TYPE control_type_enumeration = ENUMERATION OF (activate,activate_deactivate); END_TYPE; (* |
*) TYPE data_composition_select = SELECT WITH (actual_io_port, formal_io_port, io_composition_port); END_TYPE; (* |
*) TYPE data_direction = ENUMERATION OF (from_system, to_system); END_TYPE; (* |
*) TYPE data_type_definition_select = SELECT WITH (maths_space, user_defined_data_type_definition); END_TYPE; (* |
*) TYPE data_type_value_select = SELECT WITH (boolean_value, complex_value, compound_value, integer_value, logical_value, real_value, text); END_TYPE; (* |
*) TYPE date_assignment_select = SELECT WITH (approval, approval_assignment, assessment, configuration_element, configuration_element_version,configuration_element_version_relationship, context_physical_relationship, critical_issue, critical_issue_impact, document_assignment,documentation_relationship, element_critical_issue_relationship, engineering_process_activity, engineering_process_activity_element_assignment, instance_definition_select, justification, justification_relationship, package_element_assignment, partial_system_view_relationship, project, requirement_allocation_relationship, requirement_system_view_assignment, work_order, work_request); END_TYPE; (* |
*) TYPE default_context_select = SELECT WITH (fsm_generic_state, functional_state_context); END_TYPE; (* |
*) TYPE definition_select = SELECT WITH (fsm_state, functional_state_context, general_function_definition, general_physical_definition, oo_view, system_view); END_TYPE; (* |
*) TYPE effective_element_select = SELECT WITH (instance_definition_select, person_organization_assignment); END_TYPE; (* |
*) TYPE event_or_date_select = SELECT WITH (date_time, project_event_reference); END_TYPE; (* |
*) TYPE external_element_select = SELECT WITH (function_instance, physical_instance); END_TYPE; (* |
*) TYPE fsm_interaction_select = SELECT WITH (initial_state_transition_specification_assignment, specification_state_assignment, state_transition_specification_assignment); END_TYPE; (* |
*) TYPE function_role_enumeration = ENUMERATION OF (external_element,system_function); END_TYPE; (* |
*) TYPE identifier = STRING; END_TYPE; (* |
*) TYPE instance_definition_select = SELECT WITH (clock, clock_assignment_relationship, data_instance, documentation_reference, functionality_instance_reference, general_function_definition, general_functionality_instance, general_physical_definition, oo_model_element_select, physical_instance, physical_instance_reference, realized_systemp, requirement_definition, requirement_instance, system_instance, system_view); END_TYPE; (* |
*) TYPE integer_value = INTEGER; END_TYPE; (* |
*) TYPE issue_source_select = SELECT WITH (instance_definition_select); END_TYPE; (* |
*) TYPE justification_assignment_select = SELECT WITH (engineering_process_activityp, instance_definition_select, partial_system_view_relationship, requirement_allocation_relationship); END_TYPE; (* |
*) TYPE label = STRING; END_TYPE; (* |
*) TYPE link_select = SELECT WITH (cb_input_relationship, cb_output_relationship, clock_assignment_relationship, fsm_initial_state_transition, fsm_state_transition, functional_link, oo_action_staten_transition, oo_component_allocation, oo_constraint_model_element_relationship, oo_dependency, oo_element_import, oo_element_residencen, oo_extension, oo_generalization, oo_generic_association, oo_inclusion, oo_link, oo_message, oo_operation_interface_associationn, oo_signal_behavioural_feature_relationship, physical_instance); END_TYPE; (* |
*) TYPE logical_value = LOGICAL; END_TYPE; (* |
*) TYPE natural_number = INTEGER; END_TYPE; (* |
*) TYPE node_select = SELECT WITH (cb_place_reference, cb_transition_relationship, clock, fsm_state, general_functionality_instance, graphics_view, oo_action, oo_action_staten, oo_actor, oo_association_class, oo_class, oo_component, oo_constraint, oo_interfaces, oo_object, oo_package, oo_send_action, oo_use_case, physical_instance, textual_paragraphn); END_TYPE; (* |
*) TYPE oo_classifier_or_operation_select = SELECT WITH (oo_classifier_select, oo_operation); END_TYPE; (* |
*) TYPE oo_classifier_select = SELECT WITH (oo_actor, oo_class, oo_component, oo_interfaces, oo_signal, oo_use_case); END_TYPE; (* |
*) TYPE oo_extended_classifier_select = SELECT WITH (oo_classifier_select, physical_instance); END_TYPE; (* |
*) TYPE oo_extended_model_element_select = SELECT WITH (fsm_generic_state, generic_state_context, justification, oo_generalizable_element_select, oo_model_element_select); END_TYPE; (* |
*) TYPE oo_feature_select = SELECT WITH (oo_attributen, oo_behavioural_featuree); END_TYPE; (* |
*) TYPE oo_generalizable_element_select = SELECT WITH (oo_collaboration, oo_extended_classifier_select, oo_generic_association, oo_package, oo_stereotype); END_TYPE; (* |
*) TYPE oo_instance_select = SELECT WITH (oo_attributen_instance, oo_extended_classifier_select, oo_object); END_TYPE; (* |
*) TYPE oo_model_element_select = SELECT WITH (oo_action, oo_constraint, oo_extension_point, oo_feature_select, oo_generic_association_end, oo_interaction, oo_link, oo_link_end, oo_message, oo_parametere, oo_relationship_select, oo_stimulus); END_TYPE; (* |
*) TYPE oo_namespace_select = SELECT WITH (oo_collaboration, oo_extended_classifier_select, oo_package); END_TYPE; (* |
*) TYPE oo_relationship_select = SELECT WITH (oo_dependency, oo_extension, oo_generalization, oo_generic_association, oo_inclusion); END_TYPE; (* |
*) TYPE package_element_select = SELECT WITH (configuration_element, configuration_element_version, engineering_process_activityp, instance_definition_select, project); END_TYPE; (* |
*) TYPE period_or_date_select = SELECT WITH (date_time, project_event_reference, value_with_unite); END_TYPE; (* |
*) TYPE person_organization_assignment_select = SELECT WITH (approval, approval_assignment, assessment, change_report, configuration_element, configuration_element_version, critical_issue, critical_issue_impact, document_assignment, element_critical_issue_relationship, engineering_process_activityp, instance_definition_select, justification, justification_relationship, package_element_assignment, partial_system_view_relationship, project, requirement_allocation_relationship, requirement_system_view_assignment, work_ordert); END_TYPE; (* |
*) TYPE person_organization_select = SELECT WITH (organization, person_in_organization); END_TYPE; (* |
*) TYPE physical_element_role_enumeration = ENUMERATION OF (external_element, system_element); END_TYPE; (* |
*) TYPE port_data_relation = ENUMERATION OF (consumer, producer); END_TYPE; (* |
*) TYPE port_position_select = SELECT WITH (io_port, oo_generic_association_end, oo_link_end, physical_port); END_TYPE; (* |
*) TYPE port_type = ENUMERATION OF (control, input, mechanism, output); END_TYPE; (* |
*) TYPE property_assignment_select = SELECT WITH (data_instance, documentation_reference, functionality_instance_reference, general_function_definition, general_physical_definition, oo_model_element_select, package, physical_instance_reference, realized_systemp, requirement_definition, system_view); END_TYPE; (* |
*) TYPE property_value_select = SELECT WITH (boolean_value, text_select, value_list, value_with_unite); END_TYPE; (* |
*) TYPE ranked_element_select = SELECT WITH (critical_issue_impact, effectiveness_measure, instance_definition_select); END_TYPE; (* |
*) TYPE ranking_type = ENUMERATION OF (cost, criticality, priority, project_criticality); END_TYPE; (* |
*) TYPE real_value = REAL; END_TYPE; (* |
*) TYPE requirement_allocation_select = SELECT WITH (data_instance, functional_link_reference, functionality_instance_reference, functionality_reference_relationship, oo_model_element_select, physical_instance_reference); END_TYPE; (* |
*) TYPE single_cardinalityyy_select = SELECT WITH (infinite_cardinality, natural_number); END_TYPE; (* |
*) TYPE specific_element_select = SELECT WITH (cb_place, fsm_generic_state); END_TYPE; (* |
*) TYPE specification_element_select = SELECT WITH (change_report, critical_issue, critical_issue_impact, instance_definition_select); END_TYPE; (* |
*) TYPE system_select = SELECT WITH (s system_instance, system_view); END_TYPE; (* |
*) TYPE text = STRING; END_TYPE; (* |
*) TYPE text_elements = SELECT WITH (control_characters, text); END_TYPE; (* |
*) TYPE text_select = SELECT WITH (text, textual_paragraphn, textual_section, textual_table); END_TYPE; (* |
*) TYPE timing_type = ENUMERATION OF (best_case,nominal_case,worst_case); END_TYPE; (* |
*) TYPE trigger_type_enumeration = ENUMERATION OF (flank,level); END_TYPE; (* |
*) TYPE verification_allocation_select = SELECT WITH (functionality_instance_reference, physical_instance_reference, realized_systemp, requirement_instance, s system_instance); END_TYPE; (* |
*) ENTITY abstract_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; END_ENTITY; (* |
*) ENTITY abstract_data_type_member; child : data_instance; parent : abstract_data_type_definition; END_ENTITY; (* |
*) ENTITY actual_io_port SUBTYPE OF (io_port) ; port_of : general_functionality_instance; DERIVE SELF\io_port. RENAMED role: port_data_relation : determineactualportrole(SELF); INVERSE assigned_buffer : SET[0:1] OF io_buffer FOR assigned_to; UNIQUE UR1: port_of, io_port_number, port_type; END_ENTITY; (* |
*) ENTITY actual_physical_port SUBTYPE OF (physical_port); port_of : physical_instance; END_ENTITY; (* |
*) ENTITY actual_port_position SUBTYPE OF (visual_element) ; assigned_to : graphics_node; position : graphics_point; positioned_port : port_position_select; END_ENTITY; (* |
*) ENTITY address; country : OPTIONAL label; electronic_mail_address : OPTIONAL label; facsimile_number : OPTIONAL label; internal_location : OPTIONAL label; postbox_number : OPTIONAL label; postcode : OPTIONAL label; region : OPTIONAL label; street : OPTIONAL label; street_number : OPTIONAL label; telephone_number : OPTIONAL label; telex_number : OPTIONAL label; town : OPTIONAL label; END_ENTITY; (* |
*) ENTITY aggregate_data_type_definition SUBTYPE OF (user_defined_data_type_definition); aggregate_type : data_type_definition_select; bound : LIST[1:?] OF integer_interval; END_ENTITY; (* |
*) ENTITY approval; level : OPTIONAL label; status : label; END_ENTITY; (* |
*) ENTITY approval_assignment; assigned_approval : approval; assigned_to : approval_assignment_select; description : OPTIONAL text_select; status : label; END_ENTITY; (* |
*) ENTITY approval_person_organization; authorized_approval : approval; person_organization : person_organization_select; role : label; END_ENTITY; (* |
*) ENTITY approval_relationship; description : OPTIONAL text_select; related_approval : approval; relating_approval : approval; relation_type : label; END_ENTITY; (* |
*) ENTITY assessment; assessed_level : label; assessment_type : label; assigned_to : assessment_assignment_select; description : OPTIONAL text_select; END_ENTITY; (* |
*) ENTITY assessment_relationship; description : OPTIONAL text_select; related : assessment; relating : assessment; relationship_type : label; END_ENTITY; (* |
*) ENTITY bi_directional_port_indicator; consuming_port : io_port; producing_port : io_port; END_ENTITY; (* |
*) ENTITY binary_data_type_definition SUBTYPE OF (elementary_maths_space) ; size : finite_integer_interval; END_ENTITY; (* |
*) ENTITY boolean_data_type_definition SUBTYPE OF (elementary_maths_space) ; END_ENTITY; (* |
*) ENTITY cardinality_list; range : LIST[2:?] OF cardinality_range; END_ENTITY; (* |
*) ENTITY cardinality_range; lower_bound : single_cardinality; upper_bound : single_cardinality; END_ENTITY; (* |
*) ENTITY causal_block_bound; initial_transition : cb_transition_relationship; terminal_transition : cb_transition_relationship; END_ENTITY; (* |
*) ENTITY cb_completion_alternative; completes_model : cb_functional_behaviour_model; final_model_element : cb_functional_place; END_ENTITY; (* |
*) ENTITY cb_completion_alternative_mapping; child_completion_criterion : cb_completion_alternative; equivalent_transition : cb_functional_transition; scope : cb_place_function_association; END_ENTITY; (* |
*) ENTITY cb_firing_condition; condition_definition : textual_specification; guarded_transition : cb_transition; END_ENTITY; (* |
*) ENTITY cb_functional_behaviour_model SUBTYPE OF (functional_behaviour_model); model_boundedness : label; model_type : label; INVERSE constituent_places: SET[1:?] OF cb_functional_place FOR behaviour_model; constituent_transitions: SET[2:?] OF cb_functional_transition FOR behaviour_model; END_ENTITY; (* |
*) ENTITY cb_functional_place SUBTYPE OF (cb_place) ; behaviour_model: cb_functional_behaviour_model; INVERSE reference_information: SET[0:1] OF cb_place_reference FOR functional_place_reference; END_ENTITY; (* |
*) ENTITY cb_functional_transition SUBTYPE OF (cb_transition); behaviour_model: cb_functional_behaviour_model; INVERSE transition_relationship: SET[0:1] OF cb_transition_relationship FOR related_transition; END_ENTITY; (* |
*) ENTITY cb_initial_marking; marked_place : cb_place; number_of_tokens : INTEGER; END_ENTITY; (* |
*) ENTITY cb_input_relationship; causal_weight : causal_weight_select; destination_transition : cb_transition; source_place : cb_place; END_ENTITY; (* |
*) ENTITY cb_place ABSTRACT SUPERTYPE OF (ONEOF(cb_functional_place, oo_action_staten); description: OPTIONAL text_select; place_label: OPTIONAL label; INVERSE initial_marking: SET[0:1] OF cb_initial_marking FOR marked_place; END_ENTITY; (* |
*) ENTITY cb_place_function_association; causal_place : cb_functional_place; controls_function : function_instance; INVERSE completion_mapping: SET[0:?] OF cb_completion_alternative_mapping FOR scope; END_ENTITY; (* |
*) ENTITY cb_place_reference; functional_place_reference : cb_functional_place; reference_type : label; END_ENTITY; (* |
*) ENTITY cb_transition ABSTRACT SUPERTYPE OF (ONEOF(cb_functional_transition, oo_action_staten_transition); description: OPTIONAL text_select; transition_label: OPTIONAL label; INVERSE guarded_by: SET[0:1] OF cb_firing_condition FOR guarded_transition; END_ENTITY; (* |
*) ENTITY cb_transition_relationship; related_transition : SET[1:?] OF cb_functional_transition; elationship_type : label; INVERSE end_bound : SET[0:1] OF causal_block_bound FOR terminal_transition; start_bound : SET[0:1] OF causal_block_bound FOR initial_transition; END_ENTITY; (* |
*) ENTITY cb_transition_unbounded_weight; minimal_weight : natural_number; END_ENTITY; (* |
*) ENTITY change_order SUBTYPE OF (work_ordert); change_element : element critical_issue_relationship; originates_from : change_request; END_ENTITY; (* |
*) ENTITY change_order_relationship; change_order_relationship_type : label; related : change_order; relating : change_order; END_ENTITY; (* |
*) ENTITY change_report; associated_version : configuration_element_version; description : OPTIONAL text_select; name : label; originating_change_request : change_request; END_ENTITY; (* |
*) ENTITY change_report_element_assignment; change_report : change_report; change_report_element : change_report_element_select; description : OPTIONAL text_select; END_ENTITY; (* |
*) ENTITY change_request SUBTYPE OF (work_request) ; response_to_issue : SET[1:?] OF critical_issue; END_ENTITY; (* |
*) ENTITY clock; control_signal : data_instance; description : OPTIONAL text_select; frequency : REAL; name : OPTIONAL label; WHERE correct_data_definition: 'SYSTEMS_ENGINEERING_DATA_REPRESENTATION.EVENT_DATA_TYPE_DEFINITION' IN TYPEOF(control_signal.definition); END_ENTITY; (* |
*) ENTITY clock_assignment_relationship; clock : clock; trigger_for : control_io_port; END_ENTITY; (* |
*) ENTITY clock_reference_context_relationship; clock_signal : clock; relevant_functionality_context : functionality_instance_reference; END_ENTITY; (* |
*) ENTITY complex_data_type_definition SUBTYPE OF (elementary_maths_space) ; END_ENTITY; (* |
*) ENTITY complex_value; radius : REAL; theta : REAL; END_ENTITY; (* |
*) ENTITY composite_function_definition SUBTYPE OF (general_function_definition) ; INVERSE behaviour_constraint: SET[0:1] OF functional_behaviour_model_assignment FOR constrained_function; parent_of : SET[1:?] OF functional_decomposition_relationship FOR parent; END_ENTITY; (* |
*) ENTITY compound_value; value_list : LIST[0:?] OF data_type_value_select; END_ENTITY; (* |
*) ENTITY configuration_element; description : OPTIONAL text_select; id : element_identifier; name : label; INVERSE associated_version : SET[1:?] OF configuration_element_version FOR version_of; UNIQUE UR1: id; END_ENTITY; (* |
*) ENTITY configuration_element_relationship; alternate : configuration_element; base : configuration_element; description : OPTIONAL text_select; relationship_type : label; END_ENTITY; (* |
*) ENTITY configuration_element_version; description : OPTIONAL text_select; id : element_identifier; version_of : configuration_element; UNIQUE; UR1: id; END_ENTITY; (* |
*) ENTITY configuration_element_version_relationshipn; description : OPTIONAL text_select; related_version : configuration_element_version; relating_version : configuration_element_version; relationship_type : label; WHERE WR1: related_version :<>: relating_version; END_ENTITY; (* |
*) ENTITY context_function_relationship; associated_context : system_view; context_function : function_instance; description : OPTIONAL text_select; role : function_role_enumeration; INVERSE assigned_functional_configuration : SET[0:1] OF system_functional_configuration FOR system; UNIQUE UR1: associated_context, context_function; END_ENTITY; (* |
*) ENTITY context_physical_relationship; description : OPTIONAL text_select; part_in_physical_context : system_view; объект-приложение physical_instance : physical_instance; role : physical_element_role_enumeration; INVERSE assigned_physical_configuration : SET[0:1] OF system_physical_configuration FOR system; END_ENTITY; (* |
*) ENTITY control_io_port SUBTYPE OF (io_port) ; control_type : control_type_enumeration; offset : REAL; port_of : function_instance; trigger_type : trigger_type_enumeration; DERIVE SELF\io_port. RENAMED role : port_data_relation : consumer; UNIQUE UR1: port_of, io_port_number, port_type; WHERE good_offset: offset >= 0.0; port_data_direction: (SELF\io_port.port_type <> output); WR1: ('SYSTEMS_ENGINEERING_DATA_REPRESENTATION.EVENT_DATA_TYPE_DEFINITION' IN TYPEOF(data.definition)) OR ('SYSTEMS_ENGINEERING_DATA_REPRESENTATION. LOGICAL_DATA_TYPE_DEFINITION' IN TYPEOF(data.definition)); END_ENTITY; (* |
*) ENTITY coordinate_translation_information; measurement_unit : label; name : label; ratio : REAL; scale_factor : REAL; transformation_for : graphics_view; END_ENTITY; (* |
*) ENTITY critical_issue; description : OPTIONAL text_select; id : element_identifier; name : label; status : label; END_ENTITY; (* |
*) ENTITY critical_issue_impact; description : OPTIONAL text_select; id : element_identifier; impact_of_issue : SET[1:?] OF critical_issue; name : label; INVERSE identified_issues : SET[0:?] OF critical_issue_relationship FOR issue_analysis; END_ENTITY; (* |
*) ENTITY data_field SUBTYPE OF (data_instance); role : OPTIONAL label; END_ENTITY; (* |
*) ENTITY data_instance SUPERTYPE OF (data_field); default_value : OPTIONAL data_type_value_select; definition : data_type_definition_select; description : OPTIONAL text_select; id : element_identifier; initial_value : OPTIONAL data_type_value_select; is_constant : BOOLEAN; name : label; unit_component : OPTIONAL unit; UNIQUE UR1: definition, id; END_ENTITY; (* |
*) ENTITY data_transfer; data : data_instance; direction : data_direction; transfer : implied_external_interactionr; END_ENTITY; (* |
*) ENTITY date_and_person_assignment; assigned_date_and_person : date_and_person_organization; assigned_to : person_organization_assignment_select; description : OPTIONAL text_select; role : label; END_ENTITY; (* |
*) ENTITY date_and_person_organization; actual_date : date_time; person_organization : person_organization_select; END_ENTITY; (* |
*) ENTITY date_assignment; assigned_to : date_assignment_select; date : date_time; role : label; END_ENTITY; (* |
*) ENTITY date_time; day_component : INTEGER; hour_component : INTEGER; minute_component : INTEGER; month_component : INTEGER; second_component : INTEGER; year_component : INTEGER; WHERE WR1: {0 <= hour_component <= 23}; WR2: {0 <= minute_component <= 59}; WR3: {0 <= second_component <= 59}; WR4: {1 <= month_component <= 12}; WR5: {1 <= day_component <= 31}; WR6: year_component >= 0; END_ENTITY; (* |
*) ENTITY derived_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; expression : text_select; resultant_data_type : data_type_definition_select; END_ENTITY; (* |
*) ENTITY digital_document SUBTYPE OF (documentation_reference) ; document_format : OPTIONAL label; document_size : OPTIONAL label; location : label; END_ENTITY; (* |
*) ENTITY document_assignment SUPERTYPE OF (partial_document_assignment) ; description : OPTIONAL text_select; documentation : documentation_reference; documented_object : instance_definition_select; END_ENTITY; (* |
*) ENTITY documentation_reference ABSTRACT SUPERTYPE OF (ONEOF(digital_document, non_digital_document); associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; UNIQUE UR1 : id; END_ENTITY; (* |
*) ENTITY documentation_relationship; description : OPTIONAL text_select; related_documentation : documentation_reference; relating_documentation : documentation_reference; relationship_type : OPTIONAL label; WHERE correct_relation: relating_documentation :<>: related_documentation; END_ENTITY; (* |
*) ENTITY effectiveness_measure; optimization_function : textual_specification; END_ENTITY; (* |
*) ENTITY effectiveness_measure_assignment; assigned_requirement : requirement_instance; объект-приложение effectiveness_measure : effectiveness_measure; weight : label; END_ENTITY; (* |
*) ENTITY effectiveness_measure_relationship; description : OPTIONAL text_select; related : effectiveness_measure; relating : effectiveness_measure; END_ENTITY; (* |
*) ENTITY effectivity; concerned_organization : SET[0:?] OF organization; description : OPTIONAL text_select; id : OPTIONAL element_identifier; primary_definition : OPTIONAL event_or_date_select; secondary_definition : OPTIONAL period_or_date_select; version_id : OPTIONAL element_identifier; END_ENTITY; (* |
*) ENTITY effectivity_assignment; assigned_effectivity : effectivity; effective_element : effective_element_select; role : label; END_ENTITY; (* |
*) ENTITY effectivity_relationship; description : OPTIONAL text_select; related : effectivity; relating : effectivity; relation_type : label; END_ENTITY; (* |
*) ENTITY element_critical_issue_relationship; description : OPTIONAL text_select; impact_on_element : change_element_select; issue_analysis : critical_issue_impact; END_ENTITY; (* |
*) ENTITY element_identifier; identifier_context : person_organization_select; identifier_value : identifier; END_ENTITY; (* |
*) ENTITY elementary_maths_space ABSTRACT SUPERTYPE OF (ONEOF (binary_data_type_definition, boolean_data_type_definition, complex_data_type_definition, event_data_type_definition, integer_data_type_definition, logical_data_type_definition, real_data_type_definition, string_data_type_definition) ) SUBTYPE OF (maths_space) ; END_ENTITY; (* |
*) ENTITY engineering_process_activityp; activity_type : label; actual_end_date : OPTIONAL date_time; actual_start_date : OPTIONAL date_time; description : OPTIONAL text_select; id : element_identifier; name : label; planned_end_date : OPTIONAL period_or_date_select; planned_start_date : OPTIONAL event_or_date_select; resolved_request : SET[0:?] OF work_request; status : OPTIONAL text_select; INVERSE authorization : SET[0:1] OF work_ordert FOR is_controlling; END_ENTITY; (* |
*) ENTITY engineering_process_activityp_element_assignment; activity : engineering_process_activityp; description : OPTIONAL text_select; element : specification_element_select; role : label; END_ENTITY; (* |
*) ENTITY engineering_process_activityp_relationship; description : OPTIONAL text_select; related_activity : engineering_process_activityp; relating_activity : engineering_process_activityp; relation_type : label; WHERE WR1: relating_activity :<>: related_activity; END_ENTITY; (* |
*) ENTITY event_data_type_definition; SUBTYPE OF (elementary_maths_space) ; END_ENTITY; (* |
*) ENTITY execution_time; role : timing_type; time : REAL; timing : functionality_instance_reference; unit : label; END_ENTITY; (* |
*) ENTITY finite_integer_interval SUBTYPE OF (integer_interval) ; low_index : INTEGER; size : INTEGER; END_ENTITY; (* |
*) ENTITY finite_real_interval SUBTYPE OF (real_interval) ; high_closure : BOOLEAN; high_index : REAL; low_closure : BOOLEAN; low_index : REAL; END_ENTITY; (* |
*) ENTITY finite_space SUBTYPE OF (maths_space) ; member : SET[0:?] OF data_type_value_select; END_ENTITY; (* |
*) ENTITY formal_data_interaction_port; data : data_instance; port_of : functional_state_context; END_ENTITY; (* |
*) ENTITY formal_io_port SUBTYPE OF (io_port) ; port_of : general_function_definition; DERIVE SELF\io_port. RENAMED role : port_data_relation : determineformalportrole(SELF); UNIQUE UR1: port_of, io_port_number, port_type; END_ENTITY; (* |
*) ENTITY formal_physical_port SUBTYPE OF (physical_port) ; port_of : general_physical_definition; END_ENTITY; (* |
*) ENTITY formal_port_position SUBTYPE OF (visual_element) ; position : graphics_point; positioned_port : port_position_select; END_ENTITY; (* |
*) ENTITY fsm_and_state SUBTYPE OF (fsm_state) ; INVERSE SELF\fsm_state. RENAMED child_states : SET[2:?] OF fsm_state_composition_relationship FOR parent_state; END_ENTITY; (* |
*) ENTITY fsm_command_interaction_relationship; defined_in : fsm_interaction_select; interaction_port : state_function_interaction_port; interaction_type : label; END_ENTITY; (* |
*) ENTITY fsm_data_interaction_binding; actual_port : actual_io_port; formal_port : formal_data_interaction_port; END_ENTITY; (* |
*) ENTITY fsm_data_interaction_relationship; defined_in : fsm_interaction_select; interaction_port : formal_data_interaction_port; interaction_type : label; END_ENTITY; (* |
*) ENTITY fsm_generic_state ABSTRACT SUPERTYPE OF ( ONEOF(fsm_state, fsm_transient_state) ) ; INVERSE destination_transition : SET[0:?] OF fsm_state_transition FOR destination_state; END_ENTITY; (* |
*) ENTITY fsm_initial_state_transition; initial_state : fsm_generic_state; transition_context : default_context_select; END_ENTITY; (* |
*) ENTITY fsm_model SUBTYPE OF (general_functionality_instance) ; behaviour_model : state_machine_functional_behaviour_model; definition : functional_state_context; id : element_identifier; name : label; presentation_id : OPTIONAL label; END_ENTITY; (* |
*) ENTITY fsm_or_state SUBTYPE OF (fsm_state); END_ENTITY; (* |
*) ENTITY fsm_state ABSTRACT SUPERTYPE OF ( ONEOF(fsm_and_state, fsm_or_state) ) SUBTYPE OF (fsm_generic_state) ; description : OPTIONAL text_select; name : label; presentation_id : OPTIONAL label; INVERSE child_states : SET[0:?] OF fsm_state_composition_relationship FOR parent_state; END_ENTITY; (* |
*) ENTITY fsm_state_composition_relationship; child_state : fsm_state; parent_state : fsm_state; END_ENTITY; (* |
*) ENTITY fsm_state_transition; destination_state : fsm_generic_state; source_state : fsm_generic_state; INVERSE transition_label : SET[0:1] OF state_transition_specification_assignment FOR assigned_to; END_ENTITY; (* |
*) ENTITY fsm_transient_state SUBTYPE OF (fsm_generic_state); state_type : label; END_ENTITY; (* |
*) ENTITY fsm_transient_state_composition_relationship; child_state : fsm_transient_state; parent_state : fsm_state; END_ENTITY; (* |
*) ENTITY function_instance SUBTYPE OF (general_functionality_instance) ; definition : general_function_definition; id : element_identifier; name : label; presentation_id : OPTIONAL label; INVERSE control_port : SET[0:?] OF control_io_port FOR port_of; UNIQUE UR1: definition, id; END_ENTITY; (* |
*) ENTITY function_reference; function_link : function_instance; port_of : fsm_model END_ENTITY; (* |
*) ENTITY functional_behaviour_model ABSTRACT SUPERTYPE OF ( ONEOF(cb_functional_behaviour_model, state_machine_functional_behaviour_model) ) ; description : OPTIONAL text_select; INVERSE defines_behaviour_for : SET[0:1] OF functional_behaviour_model_assignment FOR assigned_behaviour_model; END_ENTITY; (* |
*) ENTITY functional_behaviour_model_assignment; assigned_behaviour_model : functional_behaviour_model; constrained_function : composite_function_definition; END_ENTITY; (* |
*) ENTITY functional_decomposition_relationship; child : general_functionality_instance; description : OPTIONAL text_select; parent : composite_function_definition; END_ENTITY; (* |
*) ENTITY functional_link; control_link : BOOLEAN; description : OPTIONAL text_select; destination_port : io_port; name : label; source_port : io_port; DERIVE data_on_link : data_instance : source_port.data; WHERE correct_ports: ((destination_port.role = consumer) AND (source_port.role = producer)); END_ENTITY; (* |
*) ENTITY functional_link_allocation_relationship; allocated_functional_link : functional_link_reference; allocated_to : physical_instance_reference; description : OPTIONAL text_select; END_ENTITY; (* |
*) ENTITY functional_link_group; elements : SET[2:?] OF functional_link; name : label; END_ENTITY; (* |
*) ENTITY functional_link_reference; in_scope_of : functionality_instance_reference; reference_functional_link : functional_link; END_ENTITY; (* |
*) ENTITY functional_reference_configuration; description : OPTIONAL text_select; END_ENTITY; (* |
*) ENTITY functional_representation_relationship; description: OPTIONAL text_select; functional_representation : data_instance; physical_element : physical_instance; END_ENTITY; (* |
*) ENTITY functional_state_context SUBTYPE OF (generic_state_context) ; END_ENTITY; (* |
*) ENTITY functionality_allocation_relationship; allocated_functionality : functionality_instance_reference; allocated_to : physical_instance_reference; description : OPTIONAL text_select; END_ENTITY; (* |
*) ENTITY functionality_instance_reference SUPERTYPE OF (persistent_storage_reference) ; description : OPTIONAL text_select; id : element_identifier; name : label; referenced_functionality_instance : general_functionality_instance; END_ENTITY; (* |
*) ENTITY functionality_reference_composition_relationship; child : functionality_instance_reference; mirror_of : functional_decomposition_relationship; parent : functionality_instance_reference; reference_configuration : functional_reference_configuration; END_ENTITY; (* |
*) ENTITY functionality_reference_relationship; first_reference : functionality_instance_reference; second_reference : functionality_instance_reference; END_ENTITY; (* |
*) ENTITY general_function_definition ABSTRACT SUPERTYPE OF ( ONEOF(composite_function_definition, leaf_function_definition) ) ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : OPTIONAL label; INVERSE formal_port : SET[0:?] OF formal_io_port FOR port_of; UNIQUE UR1: id; END_ENTITY; (* |
*) ENTITY general_functionality_instance ABSTRACT SUPERTYPE OF ( ONEOF(sm_model, function_instance, io_split_join, persistent_storage) ) ; description : OPTIONAL text_select; INVERSE actual_port : SET[0:?] OF actual_io_port FOR port_of; END_ENTITY; (* |
*) ENTITY general_physical_definition ABSTRACT SUPERTYPE OF ( ONEOF(physical_link_definition, physical_node_definition) ) ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : OPTIONAL label; INVERSE formal_port : SET[0:?] OF formal_physical_port FOR port_of; UNIQUE UR1: id; END_ENTITY; (* |
*) ENTITY generic_state_context ABSTRACT SUPERTYPE ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : OPTIONAL label; original_representation : label; state_machine_model : label; END_ENTITY; (* |
*) ENTITY graphics_link SUBTYPE OF (visual_element) ; associated_with : link_select; point : LIST[2:?] OF graphics_point; END_ENTITY; (* |
*) ENTITY graphics_node SUBTYPE OF (visual_element) ; associated_with : node_select; bottom_right : graphics_point; top_left : graphics_point; END_ENTITY; (* |
*) ENTITY graphics_point; x_coordinate : REAL; y_coordinate : REAL; END_ENTITY; (* |
*) ENTITY graphics_view; definition_for : definition_select; INVERSE coordinate_definition : SET[0:?] OF coordinate_translation_information FOR transformation_for; root_view : SET[0:1] OF multi_level_view FOR top_view; view_element : SET[1:?] OF visual_element FOR view; END_ENTITY; (* |
*) ENTITY hibound_integer_interval SUBTYPE OF (integer_interval) ; high_index : INTEGER; END_ENTITY; (* |
*) ENTITY hibound_real_interval SUBTYPE OF (real_interval); high_closure : BOOLEAN; high_index : REAL; END_ENTITY; (* |
*) ENTITY implied_external_interaction; associated_requirement : requirement_instance; implied_external_element : external_element_select; INVERSE associated_data : SET[0:1] OF data_transfer FOR transfer; END_ENTITY; (* |
*) ENTITY infinite_cardinality; END_ENTITY; (* |
*) ENTITY initial_state_transition_specification_assignment; assigned_to : fsm_initial_state_transition; specification : textual_specification; END_ENTITY; (* |
*) ENTITY integer_data_type_definition SUBTYPE OF (elementary_maths_space) ; END_ENTITY; (* |
*) ENTITY integer_interval ABSTRACT SUPERTYPE OF ( ONEOF(finite_integer_interval,hibound_integer_interval, lobound_integer_interval) ) SUBTYPE OF (maths_space) ; END_ENTITY; (* |
*) ENTITY io_buffer; assigned_to : actual io_port; continuously_active : BOOLEAN; synchronisation_semantics : buffer_synchronisation_enumeration; END_ENTITY; (* |
*) ENTITY io_composition_port SUBTYPE OF (io_port) ; is_alias_for : data_instance; port_of : data_composition_select; DERIVE SELF\io_port.role : port_data_relation := port_of.role; UNIQUE UR1: port_of, io_port_number; END_ENTITY; (* |
*) ENTITY io_port ABSTRACT SUPERTYPE OF ( ONEOF(actual_io_port, control_io_port, formal_io_port, io_composition_port) ) ; data : data_instance; io_port_number : INTEGER; port_type : port_type; role : port_data_relation; END_ENTITY; (* |
*) ENTITY io_port_binding; actual_port : actual_io_port; formal_port : formal_io_port; WHERE WR1: (SELF.formal_port.data :<>: SELF.actual_port.data); WR2: formal_port.role <> actual_port.role; WR3: correct_binding(SELF); END_ENTITY; (* |
*) ENTITY io_split_join SUBTYPE OF (general_functionality_instance) ; END_ENTITY; (* |
*) ENTITY issue_source_relationship; description : OPTIONAL text_select; issue : critical_issue; issue_source : issue_source_select; END_ENTITY; (* |
*) ENTITY issue_system_assignment; description : OPTIONAL text_select; identified_system : system_select; issue : critical_issue; END_ENTITY; (* |
*) ENTITY justification; assigned_to : justification_assignment_select; justification_text : text_select; role : label; END_ENTITY; (* |
*) ENTITY justification_relationship; description : OPTIONAL text_select; related : justification; relating : justification; relationship_type : label; END_ENTITY; (* |
*) ENTITY leaf_function_definition SUBTYPE OF (general_function_definition) ; definition : textual_specification; function_type : OPTIONAL label; predefined : BOOLEAN; END_ENTITY; (* |
*) ENTITY lobound_integer_interval SUBTYPE OF (integer_interval) ; low_index : INTEGER; END_ENTITY; (* |
*) ENTITY lobound_real_interval SUBTYPE OF (real_interval) ; low_closure : BOOLEAN; low_index : REAL; END_ENTITY; (* |
*) ENTITY logical_data_type_definition SUBTYPE OF (elementary_maths_space) ; END_ENTITY; (* |
*) ENTITY maths_space ABSTRACT SUPERTYPE OF ( ONEOF(elementary_maths_space, finite_space, integer_interval, real_interval) ) ; description : OPTIONAL text_select; id : element_identifier; name : OPTIONAL label; UNIQUE UR1: id; END_ENTITY; (* |
*) ENTITY model_defined_requirement_definition SUBTYPE OF (requirement_definition) ; assigned_model : system_view; model_relevance : OPTIONAL text_select; END_ENTITY; (* |
*) ENTITY multi_level_view; description : OPTIONAL text_select; reference_name : OPTIONAL label; top_view : graphics_view; END_ENTITY; (* |
*) ENTITY name_binding; actual_port : function_reference; formal_port : state_function_interaction_port; END_ENTITY; (* |
*) ENTITY nominal_value SUBTYPE OF (value_with_unite) ; value_component : NUMBER; INVERSE limitation : SET[0:1] OF plus_minus_bounds FOR limited_value; END_ENTITY; (* |
*) ENTITY non_digital_document SUBTYPE OF (documentation_reference) ; location : label; END_ENTITY; (* |
*) ENTITY oo_action SUPERTYPE OF ( ONEOF(oo_call_action, oo_create_action, oo_send_action) ) ; description : OPTIONAL text_select; is_asynchronous : BOOLEAN; name : label; script : textual_specification; END_ENTITY; (* |
*) ENTITY oo_action_staten SUBTYPE OF (cb_place) ; END_ENTITY; (* |
*) ENTITY oo_action_staten_transition SUBTYPE OF (cb_transition) ; END_ENTITY; (* |
*) ENTITY oo_action_temporal_relationshipn; description : OPTIONAL text_select; predecessor : oo_action; successor : oo_action; END_ENTITY; (* |
*) ENTITY oo_actor; description : OPTIONAL text_select id : element_identifier; name : label; namespace : OPTIONAL oo_namespace_select; END_ENTITY; (* |
*) ENTITY oo_argument; action : oo_action; initial_value : text_select; END_ENTITY; (* |
*) ENTITY oo_association SUBTYPE OF (oo_generic_association) ; WHERE WR1: SELF\oo_generic_association.reading_direction IN SELF\oo_generic_association.connection; END_ENTITY; (* |
*) ENTITY oo_association_class; class : oo_class; class_association : oo_generic_association; description : OPTIONAL text_select; END_ENTITY; (* |
*) ENTITY oo_association_end SUBTYPE OF (oo_generic_association_end) ; SELF\oo_generic_association_end. RENAMED association : oo_association; END_ENTITY; (* |
*) ENTITY oo_association_end_classifier_relationship; association_end : oo_generic_association_end; description : OPTIONAL text_select; specification : oo_extended_classifier_select; END_ENTITY; (* |
*) ENTITY oo_association_end_qualifier_association; association_end : oo_generic_association_end; qualifier : OPTIONAL oo_attributen; END_ENTITY; (* |
*) ENTITY oo_association_end_role SUBTYPE OF (oo_generic_association_end) ; base : OPTIONAL oo_association_end; collaboration_multiplicity : cardinality_association_select; role_type : oo_classifier_rolen; SELF\oo_generic_association_end. RENAMED association: oo_association_role; END_ENTITY; (* |
*) ENTITY oo_association_role SUBTYPE OF (oo_generic_association) ; base : OPTIONAL oo_association; multiplicity : cardinality_association_select; WHERE WR1: SELF\oo_generic_association.reading_direction IN SELF\oo_generic_association.connection; END_ENTITY; (* |
*) ENTITY oo_attributen; definition : oo_extended_classifier_select; description : OPTIONAL text_select; id : element_identifier; name : label; owner : oo_extended_classifier_select; visibility : label; END_ENTITY; (* |
*) ENTITY oo_attributen_instance; attribute_value : label; definition : oo_attributen; owner : oo_extended_classifier_select; END_ENTITY; (* |
*) ENTITY oo_attributen_link_end_associatione; attribute_instance : oo_attributen_instance; description : text_select; link_end : oo_link_end; END_ENTITY; (* |
*) ENTITY oo_behavioural_featuree ABSTRACT SUPERTYPE OF ( ONEOF(oo_method, oo_operation, name : label; owner : oo_classifier_select; visibility : label; END_ENTITY; (* |
*) ENTITY oo_call_action SUBTYPE OF (oo_action) ; operation : oo_operation; END_ENTITY; (* |
*) ENTITY oo_class; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; is_active : BOOLEAN; name : label; namespace : OPTIONAL oo_namespace_select; visibility : label; END_ENTITY; (* |
*) ENTITY oo_classifier_rolen; multiplicity : cardinality_association_select; INVERSE association_end_role : SET[0:?] OF oo_association_end_role FOR role_type; END_ENTITY; (* |
*) ENTITY oo_collaboration; description : OPTIONAL text_select; id : element_identifier; name : label; representing : oo_classifier_or_operation_select; END_ENTITY; (* |
*) ENTITY oo_component; description : OPTIONAL text_select; id : element_identifier; name : label; namespace : OPTIONAL oo_namespace_select; visibility : label; END_ENTITY; (* |
*) ENTITY oo_component_allocation; deployment_location : physical_instance_reference; description : OPTIONAL text_select; resident : oo_component; END_ENTITY; (* |
*) ENTITY oo_constraint; body : textual_specification; END_ENTITY; (* |
*) ENTITY oo_constraint_model_element_relationship; constraint : oo_constraint; model_element : oo_model_element_select; END_ENTITY; (* |
*) ENTITY oo_create_action SUBTYPE OF (oo_action); instantiation : oo_classifier_select; END_ENTITY; (* |
*) ENTITY oo_dependency; client : oo_model_element_select; description : text_select; supplier : oo_model_element_select; END_ENTITY; (* |
*) ENTITY oo_element_import; alias_name : OPTIONAL label; container : oo_package; model_element : oo_model_element_select; name : label; visibility : label; END_ENTITY; (* |
*) ENTITY oo_element_residencen; description : OPTIONAL text_select; implementation_location : oo_component; resident : oo_model_element_select; visibility : label; END_ENTITY; (* |
*) ENTITY oo_extension; base : oo_use_case; condition : text_select; extension : oo_use_case; extension_point : oo_extension_point; END_ENTITY; (* |
*) ENTITY oo_extension_point; location : text_select; use_case : oo_use_case; END_ENTITY; (* |
*) ENTITY oo_generalization; child : oo_generalizable_element_select; discriminator : label; parent : oo_generalizable_element_select; END_ENTITY; (* |
*) ENTITY oo_generic_association ABSTRACT SUPERTYPE OF ( ONEOF(oo_association, oo_association_role) ) ; description : OPTIONAL text_select; id : element_identifier; name : label; reading_direction : oo_generic_association_end; visibility : label; INVERSE connection : SET[2:?] OF oo_generic_association_end FOR association; END_ENTITY; (* |
*) ENTITY oo_generic_association_end ABSTRACT SUPERTYPE OF ( ONEOF(oo_association_end, oo_association_end_role) ) ; aggregation : label; association : oo_generic_association; description : OPTIONAL text_select; id : element_identifier; is_navigable : BOOLEAN; multiplicity : cardinality_association_select; name : label; visibility : label; END_ENTITY; (* |
*) ENTITY oo_inclusion; addition : oo_use_case; base : oo_use_case; END_ENTITY; (* |
*) ENTITY oo_instance_classifier_relationship; classifier : oo_extended_classifier_select; description : text_select; instance : oo_instance_select; END_ENTITY; (* |
*) ENTITY oo_interaction; description : OPTIONAL text_select; id : element_identifier; interaction_context : oo_collaboration; name : label; END_ENTITY; (* |
*) ENTITY oo_interfaces; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; namespace : OPTIONAL oo_namespace_select; END_ENTITY; (* |
*) ENTITY oo_link; definition : oo_generic_association; INVERSE connection : SET[2:?] OF oo_link_end FOR link; END_ENTITY; (* |
*) ENTITY oo_link_end; definition : oo_generic_association_end; instance : oo_instance_select; link : oo_link; WHERE WR1: definition.association :=: link.definition; END_ENTITY; (* |
*) ENTITY oo_message; action : oo_action; communication : OPTIONAL oo_association_role; interaction : oo_interaction; name : label; receiver : oo_classifier_rolen; sender : oo_classifier_rolen; sequence_number : LIST[1:?] OF natural_number; END_ENTITY; (* |
*) ENTITY oo_message_temporal_relationship; predecessor : oo_message; successor : oo_message; END_ENTITY; (* |
*) ENTITY oo_method SUBTYPE OF (oo_behavioural_featuree) ; body : textual_specification; description : OPTIONAL text_select; id : element_identifier; specification : oo_operation; END_ENTITY; (* |
*) ENTITY oo_model_element_stereotype_relationship; model_element : oo_model_element_select; stereotype : oo_stereotype; END_ENTITY; (* |
*) ENTITY oo_model_element_tagged_value_relationship; model_element : oo_model_element_select; tagged_value : oo_tagged_valuee; END_ENTITY; (* |
*) ENTITY oo_object; definition : oo_class; description : OPTIONAL text_select; id : element_identifier; END_ENTITY; (* |
*) ENTITY oo_operation SUBTYPE OF (oo_behavioural_featuree) ; concurrency : label; description : OPTIONAL text_select; id : element_identifier; is_abstract : BOOLEAN; specification : textual_specification; END_ENTITY; (* |
*) ENTITY oo_operation_interface_association; description : OPTIONAL text_select; interface : oo_interfaces; operation : oo_operation; END_ENTITY; (* |
*) ENTITY oo_package SUPERTYPE OF (oo_view) ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; visibility : label; INVERSE element_import : SET[0:?] OF oo_element_import FOR container; END_ENTITY; (* |
*) ENTITY oo_parametere; behavioural_feature : oo_behavioural_feature; default_value : label; kind : label; name : label; parameter_type : oo_classifier_select; visibility : label; END_ENTITY; (* |
*) ENTITY oo_reception SUBTYPE OF (oo_behavioural_featuree) ; signal : oo_signal; specification : text_select; END_ENTITY; (* |
*) ENTITY oo_send_action SUBTYPE OF (oo_action) ; signal : oo_signal; END_ENTITY; (* |
*) ENTITY oo_signal; name : label; namespace : OPTIONAL oo_namespace_select; END_ENTITY; (* |
*) ENTITY oo_signal_behavioural_feature_relationship; behavioural_feature_context : oo_behavioural_featuree; raised_signal : oo_signal; END_ENTITY; (* |
*) ENTITY oo_stereotype; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; visibility : label; END_ENTITY; (* |
*) ENTITY oo_stimulus; dispatch_action : oo_action; receiver : oo_instance_select; sender : oo_instance_select; END_ENTITY; (* |
*) ENTITY oo_stimulus_argument; argument : oo_instance_select; stimulus : oo_stimulus; END_ENTITY; (* |
*) ENTITY oo_tagged_valuee; id : element_identifier; initial_value : text_select; name : label; END_ENTITY; (* |
*) ENTITY oo_use_case; description : OPTIONAL text_select; id : element_identifier; name : label; namespace : OPTIONAL oo_namespace_select; END_ENTITY; (* |
*) ENTITY oo_view SUBTYPE OF (oo_package) ; view_type : label; END_ENTITY; (* |
*) ENTITY oo_view_context_element_relationship; represented_model_element : oo_extended_model_element_select; view : oo_view; END_ENTITY; (* |
*) ENTITY oo_view_relationship; base : oo_view; description : text_select; reference_view : oo_view; relationship_type : label; END_ENTITY; (* |
*) ENTITY oo_view_system_view_relationship; объект-приложение oo_view : oo_view; system_context : system_view; END_ENTITY; (* |
*) ENTITY organization; delivery_address : OPTIONAL address; description : OPTIONAL text_select; id : basic_identifier; name : label; postal_address : OPTIONAL address; visitor_address : OPTIONAL address; END_ENTITY; (* |
*) ENTITY organization_relationship; description : OPTIONAL text_select; name : label; related_organization : organization; relating_organization : organization; WHERE WR1: related_organization :<>: relating_organization; END_ENTITY; (* |
*) ENTITY package SUPERTYPE OF (selection_package ) ; description : OPTIONAL text_select; discriminator : text; id : element_identifier; name : label; INVERSE element : SET[0:?] OF package_element_assignment FOR package; UNIQUE UR1: id; END_ENTITY; (* |
*) ENTITY package_classification_assignment; assigned_package : package; classification_system : package_classification_system; END_ENTITY; (* |
*) ENTITY package_classification_system; description : OPTIONAL text_select; id : element_identifier; name : label; END_ENTITY; (* |
*) ENTITY package_element_assignment; description : OPTIONAL text_select; element : package_element_select; package : package; reference_name : OPTIONAL label; END_ENTITY; (* |
*) ENTITY package_hierarchy_relationship; sub_package : package; super_package : package; END_ENTITY; (* |
*) ENTITY partial_document_assignment SUBTYPE OF (document_assignment) ; document_portion : label; END_ENTITY; (* |
*) ENTITY partial_system_view SUBTYPE OF (system_view) ; is_relevant_for : system_view_context; INVERSE assigned_to_systems : SET[1:?] OF system_view_assignment FOR assigned_view; END_ENTITY; (* |
*) ENTITY partial_system_view_relationship SUPERTYPE OF ( triggered_system_view_relationship ) ; description : OPTIONAL text_select; related : partial_system_view; relating : partial_system_view; relationship_type : label; system_definition_context : system_definition; WHERE correct_relationship: related :<>: relating; END_ENTITY; (* |
*) ENTITY persistent_storage SUBTYPE OF (general_functionality_instance) ; id : element_identifier; name : label; permanent : LOGICAL; presentation_id : OPTIONAL label; read_only : LOGICAL; storage_access : label; store_size : OPTIONAL INTEGER; UNIQUE UR1: id; END_ENTITY; (* |
*) ENTITY persistent_storage_equivalence_relationship; equivalent_storage : SET[2:?] OF persistent_storage_reference; valid_context : functional_reference_configuration; END_ENTITY; (* |
*) ENTITY persistent_storage_reference SUBTYPE OF (functionality_instance_reference) ; SELF\functionality_instance_reference. RENAMED referenced_functionality_instance : persistent_storage; END_ENTITY; (* |
*) ENTITY person; address : OPTIONAL address; first_name : OPTIONAL label; id : basic_identifier; last_name : OPTIONAL label; middle_names : OPTIONAL LIST[1:?] OF label; prefix_titles : OPTIONAL LIST[1:?] OF label; suffix_titles : OPTIONAL LIST[1:?] OF label;UNIQUE UR1: id; END_ENTITY; (* |
*) ENTITY person_in_organization; associated_organization : organization; associated_person : person; description : OPTIONAL text_select; role : label; END_ENTITY; (* |
*) ENTITY person_organization_assignment; assigned_person_organization : person_organization_select; assigned_to : person_organization_assignment_select; description : OPTIONAL text_select; role : label; END_ENTITY; (* |
*) ENTITY physical_binding; actual_port : actual_physical_port; formal_port : formal_physical_port; WHERE WR1: formal_port.port_of :=: actual_port.port_of.definition; END_ENTITY; (* |
*) ENTITY physical_composition_relationshipg; assembly : general_physical_definition; component : physical_instance; description : OPTIONAL text_select; END_ENTITY; (* |
*) ENTITY physical_connection; connected : physical_port; connecting : physical_port; END_ENTITY; (* |
*) ENTITY physical_instance; definition : general_physical_definition; description : OPTIONAL text_select; id : element_identifier; name : label; presentation_id : OPTIONAL label; INVERSE actual_port : SET[0:?] OF actual_physical_port FOR port_of; UNIQUE UR1: definition, id; END_ENTITY; (* |
*) ENTITY physical_instance_reference; description : OPTIONAL text_select; id : element_identifier; name : label; reference_for_instance : physical_instance; END_ENTITY; (* |
*) ENTITY physical_link_definition SUBTYPE OF (general_physical_definition) ; END_ENTITY; (* |
*) ENTITY physical_node_definition SUBTYPE OF (general_physical_definition) ; END_ENTITY; (* |
*) ENTITY physical_port ABSTRACT SUPERTYPE OF ( ONEOF(actual_physical_port, formal_physical_port) ) ; description : OPTIONAL text_select; direction : label; name : label; END_ENTITY; (* |
*) ENTITY physical_reference_configuration; description : OPTIONAL text_select; END_ENTITY; (* |
*) ENTITY physical_reference_relationship; child : physical_instance_reference; mirror_of : physical_composition_relationshipg; parent : physical_instance_reference; valid_configuration : physical_reference_configuration; END_ENTITY; (* |
*) ENTITY plus_minus_bounds; distribution_function : OPTIONAL textual_specification; limited_value : nominal_valuet; lower_bound : NUMBER; significant_digits : OPTIONAL INTEGER; upper_bound : NUMBER; END_ENTITY; (* |
*) ENTITY project; actual_end_date : OPTIONAL date_time; actual_start_date : OPTIONAL date_time; description : OPTIONAL text_select; id : element_identifier; name : label; planned_end_date : OPTIONAL period_or_date_select; planned_start_date : OPTIONAL event_or_date_select; work_program : SET[0:?] OF engineering_process_activity; END_ENTITY; (* |
*) ENTITY project_event_reference; description : OPTIONAL text_select; event_type : label; offset : value_with_unite; END_ENTITY; (* |
*) ENTITY project_relationshipe; description : OPTIONAL text_select; related : project; relating : project; relation_type : label; END_ENTITY; (* |
*) ENTITY property_assignment; assigned_to : property_assignment_select; assignment_rationale : OPTIONAL text_select; measurement_method : label; property : property_value; property_name : label; END_ENTITY; (* |
*) ENTITY property_definition; allowed_unit : SET[0:?] OF unit; description : OPTIONAL text_select; property_type : label; END_ENTITY; (* |
*) ENTITY property_relationship; description : OPTIONAL text_select; related : property_definition; relating : property_definition; relation_type : label; END_ENTITY; (* |
*) ENTITY property_value; definition : property_definition; объект-приложение property_value_name : label; specified_value : property_value_select; END_ENTITY; (* |
*) ENTITY property_value_function; defines_property_value_merit : property_value; function_specification : text_select; END_ENTITY; (* |
*) ENTITY property_value_relationship; related : property_value; relating : property_value; relation_description : OPTIONAL text_select; relation_type : label; END_ENTITY; (* |
*) ENTITY rank_assignment; assigned_rank : ranking_element; assigned_to_element : ranked_element_select; assignment_criteria : OPTIONAL label; assignment_description : OPTIONAL text_select; relevant_elements : rank_group; END_ENTITY; (* |
*) ENTITY rank_group; classification_criteria : ranking_type; name : label; INVERSE compared_element : SET[0:?] OF rank_assignment FOR relevant_elements; END_ENTITY; (* |
*) ENTITY rank_relation; higher_rank : ranking_element; lower_rank : ranking_element; END_ENTITY; (* |
*) ENTITY ranking_element; description : OPTIONAL text_select; name : label; INVERSE higher_ranked_element : SET[0:?] OF rank_relation FOR lower_rank; lower_ranked_element : SET[0:?] OF rank_relation FOR higher_rank; END_ENTITY; (* |
*) ENTITY ranking_system; description : OPTIONAL text_select; highest_rank : ranking_element; name : label; END_ENTITY; (* |
*) ENTITY real_data_type_definition SUBTYPE OF (elementary_maths_space) ; END_ENTITY; (* |
*) ENTITY real_interval ABSTRACT SUPERTYPE OF ( ONEOF(finite_real_interval, hibound_real_interval, lobound_real_interval) ); SUBTYPE OF (maths_space) ; END_ENTITY; (* |
*) ENTITY realized_systemp; description : text_select; id : element_identifier; name : label; realization_of : system_instance; UNIQUE UR1: id, realization_of; END_ENTITY; (* |
*) ENTITY realized_system_composition_relationship; component : realized_systemp; description : text_select; mirror_of : system_composition_relationship; system : realized_systemp; END_ENTITY; (* |
*) ENTITY record_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; END_ENTITY; (* |
*) ENTITY record_data_type_member; child : data_field; parent : record_data_type_definition; END_ENTITY; (* |
*) ENTITY recursive_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; redefines : data_type_definition_select; END_ENTITY; (* |
*) ENTITY requirement_allocation_property_relationship; allocated_requirement : requirement_allocation_relationship; define_property_value : property_value; description : OPTIONAL text_select; END_ENTITY; (* |
*) ENTITY requirement_allocation_relationship SUPERTYPE OF ( specific_requirement_allocation_relationship ) ; description : OPTIONAL text_select; relation_to : requirement_allocation_select; requirement : requirement_instance; role : label; END_ENTITY; (* |
*) ENTITY requirement_class; description : OPTIONAL text_select; id : element_identifier; name : label; UNIQUE UR1: id; END_ENTITY; (* |
*) ENTITY requirement_class_relationships; description : OPTIONAL text_select; related_class : requirement_class; relating_class : requirement_class; relationship_type : label; END_ENTITY; (* |
*) ENTITY requirement_composition_relationship; child_requirement : requirement_occurence; description : OPTIONAL text_select; index : label; parent_definition : requirement_definition; UNIQUE UR1: index, parent_definition; END_ENTITY; (* |
*) ENTITY requirement_definition ABSTRACT SUPERTYPE OF ( ONEOF(model_defined_requirement_definition, structured_requirement_definition, textual_requirement_definition) ) ; associated_version : configuration_element_version; id : element_identifier; name : OPTIONAL label; INVERSE composed_of : SET[0:?] OF requirement_composition_relationship FOR parent_definition; in_requirement_class : SET[0:1] OF requirement_requirement_class_assignment FOR requirement; UNIQUE UR1: id; END_ENTITY; (* |
*) ENTITY requirement_instance; definition : requirement_occurence; id : element_identifier; name : label; INVERSE implied_external : SET[0:?] OF implied_external_interactionr FOR associated_requirement; UNIQUE UR1: definition, id; END_ENTITY; (* |
*) ENTITY requirement_occurence; definition : requirement_definition; id : element_identifier; name : label; INVERSE child_of : SET[0:?] OF requirement_composition_relationship FOR child_requirement; UNIQUE UR1: definition, id; END_ENTITY; (* |
*) ENTITY requirement_relationship; description : OPTIONAL text_select; relationship_type : label; END_ENTITY; (* |
*) ENTITY requirement_relationship_context_assignment; assigned_requirement_relationship : assigned_requirement_relationship_select; description : OPTIONAL text_select; system_context : system_view; END_ENTITY; (* |
*) ENTITY requirement_relationship_input_assignment; assigned_instance : requirement_instance; input_requirement : requirement_relationship; END_ENTITY; (* |
*) ENTITY requirement_relationship_resulting_relationship; motivation : OPTIONAL text_select; requirement_relationship : requirement_relationship; resulting_requirement : requirement_instance; role : label; END_ENTITY; (* |
*) ENTITY requirement_requirement_class_assignment; class : requirement_class; motivation : OPTIONAL text_select; requirement : requirement_definition; END_ENTITY; (* |
*) ENTITY requirement_system_view_assignment SUPERTYPE OF ( root_requirement_system_view_assignment ) ; description : OPTIONAL text_select; requirement : requirement_instance; system_view : system_view; END_ENTITY; (* |
*) ENTITY requirement_traces_to_requirement_relationship; motivation : OPTIONAL text_select; source_requirement : requirement_instance; traced_requirement : requirement_instance; valid_context : system_definition; END_ENTITY; (* |
*) ENTITY root_requirement_system_view_assignment SUBTYPE OF (requirement_system_view_assignment) ; index : label; UNIQUE UR1: index, system_view; END_ENTITY; (* |
*) ENTITY selection_package SUBTYPE OF (package) ; selection_type : label; END_ENTITY; (* |
*) ENTITY single_cardinalityyy; defined_value : single_cardinality_select; END_ENTITY; (* |
*) ENTITY specific_requirement_allocation_relationship SUBTYPE OF (requirement_allocation_relationship) ; specific_element : specific_element_select; WHERE WR1: 'SYSTEMS_ENGINEERING_DATA_REPRESENTATION.FUNCTIONALITY_INSTANCE_REFERENCE' IN TYPEOF(SELF\ requirement_allocation_relationship.relation_to); END_ENTITY; (* |
*) ENTITY specification_state_assignment; assigned_to : fsm_state; specification : textual_specification; END_ENTITY; (* |
*) ENTITY start_order SUBTYPE OF (work_ordert) ; start_order_type : label; END_ENTITY; (* |
*) ENTITY start_request SUBTYPE OF (work_request) ; request_type : label;END_ENTITY; (* |
*) ENTITY state_context_relationship; in_context : generic_state_context; state : fsm_generic_state; END_ENTITY; (* |
*) ENTITY state_function_interaction_port; port_of : functional_state_context; END_ENTITY; (* |
*) ENTITY state_machine_functional_behaviour_model SUBTYPE OF (functional_behaviour_model) ; INVERSE behaviour_constraint : SET[1:?] OF fsm_model FOR behaviour_model; END_ENTITY; (* |
*) ENTITY state_transition_specification_assignment; assigned_to : fsm_state_transition; specification : textual_specification; END_ENTITY; (* |
*) ENTITY string_data_type_definition SUBTYPE OF (elementary_maths_space) ; size : OPTIONAL finite_integer_interval; END_ENTITY; (* |
*) ENTITY structured_requirement_definition SUBTYPE OF (requirement_definition) ; required_characteristic : property_value; END_ENTITY; (* |
*) ENTITY system_composition_relationship; component_system : s system_instance; decomposed_system : system_definition; description : OPTIONAL text_select; relationship_type : label; END_ENTITY; (* |
*) ENTITY system_definition SUBTYPE OF (system_view) ; life_cycle_stage : label; INVERSE assigned_to_system : SET[0:?] OF partial_system_объект-приложение view_relationship FOR system_definition_context; scenarios_for_system : SET[0:?] OF system_view_assignment FOR system_specification; END_ENTITY; (* |
*) ENTITY system_functional_configuration; functional_configuration : functional_reference_configuration; system : context_function_relationship; END_ENTITY; (* |
*) ENTITY s system_instance; definition : system_definition; description : OPTIONAL text_select; id : element_identifier; name : label;UNIQUE UR1: definition, id; END_ENTITY; (* |
*) ENTITY s system_instance_relationship; description : text_select; name : label; INVERSE connected_port : SET[2:?] OF system_instance_relationship_port FOR defined_relationship; END_ENTITY; (* |
*) ENTITY s system_instance_relationship_port; cardinality : cardinality_association_select; defined_relationship : s system_instance_relationship; port_of : s system_instance; END_ENTITY; (* |
*) ENTITY s system_instance_replication_relationship; rationale : OPTIONAL text_select; replaced_application : s system_instance; replacing_application : s system_instance; END_ENTITY; (* |
*) ENTITY system_physical_configuration; physical_configuration : physical_reference_configuration; system : context_physical_relationship; END_ENTITY; (* |
*) ENTITY system_substitution_relationship; base : system_composition_relationship; description : OPTIONAL text_select; substitute : system_composition_relationship; END_ENTITY; (* |
*) ENTITY system_view ABSTRACT SUPERTYPE OF ( ONEOF(partial_system_view, system_definition) ) ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; INVERSE system : SET[0:?] OF context_function_relationship FOR associated_context; UNIQUE UR1: id; WHERE WR1: at_most_one_system_function_assigned(SELF); END_ENTITY; (* |
*) ENTITY system_view_assignment; assigned_view : partial_system_view; assignment_comment : OPTIONAL text_select; system_specification : system_definition; END_ENTITY; (* |
*) ENTITY system_view_context; description : OPTIONAL text_select; fidelity : label; объект-приложение system_viewpoint : label; END_ENTITY; (* |
*) ENTITY textual_paragraph; element_value : LIST[1:?] OF text_elements; name : label; END_ENTITY; (* |
*) ENTITY textual_requirement_definition SUBTYPE OF (requirement_definition) ; description : text_select; END_ENTITY; (* |
*) ENTITY textual_section; element : LIST[1:?] OF textual_paragraphn; name : label; END_ENTITY; (* |
*) ENTITY textual_specification; definition : text_select; definition_language : label; END_ENTITY; (* |
*) ENTITY textual_table; name : label; table_row : LIST[1:?] OF textual_section; END_ENTITY; (* |
*) ENTITY triggered_system_view_relationship SUBTYPE OF (partial_system_view_relationship) ; transition_condition : text; END_ENTITY; (* |
*) ENTITY undefined_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; END_ENTITY; (* |
*) ENTITY union_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; END_ENTITY; (* |
*) ENTITY union_data_type_member; child : data_field; parent : union_data_type_definition; END_ENTITY; (* |
*) ENTITY unit; unit_name : label; END_ENTITY; (* |
*) ENTITY user_defined_data_type_definition ABSTRACT SUPERTYPE OF ( ONEOF(abstract_data_type_definition, aggregate_data_type_definition, derived_data_type_definition, record_data_type_definition, recursive_data_type_definition, undefined_data_type_definition, union_data_type_definition) ) ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; UNIQUE UR1: id; END_ENTITY; (* |
*) ENTITY value_limit SUBTYPE OF (value_with_unite) ; limit : NUMBER; limit_qualifier : label; END_ENTITY; (* |
*) ENTITY value_list; values : LIST[1:?] OF value_with_unite; END_ENTITY; (* |
*) ENTITY value_range SUBTYPE OF (value_with_unite) ; distribution_function : OPTIONAL textual_specification; lower_limit : NUMBER; upper_limit : NUMBER; END_ENTITY; (* |
*) ENTITY value_with_unite ABSTRACT SUPERTYPE OF ( ONEOF(nominal_valuet, value_limit, value_range) ) ; significant_digits : OPTIONAL INTEGER; unit_component : OPTIONAL unit; END_ENTITY; (* |
*) ENTITY verification_report_for_verification_specificationlt; description : text_select; specific_verification_element : verification_specificationlt_allocation; verification_report_entry : verification_result; END_ENTITY; (* |
*) ENTITY verification_result; description : text_select; id : element_identifier; name : label; system_under_verification : verification_specificationlt_system_view_relationship; UNIQUE UR1: id, system_under_verification; END_ENTITY; (* |
*) ENTITY verification_specificationlt; definition : requirement_occurence; description : OPTIONAL text_select; id : element_identifier; name : label; verification_method : label; END_ENTITY; (* |
*) ENTITY verification_specificationlt_allocation; description : OPTIONAL text_select; relevant_for : verification_allocation_select; specification : verification_specificationlt; END_ENTITY; (* |
*) ENTITY verification_specificationlt_system_view_relationship; assigned_verification : verification_specificationlt; description : OPTIONAL text_select; index : label; system_view : system_view; END_ENTITY; (* |
*) ENTITY view_relationship; child : graphics_view; parent : graphics_view; valid_in : multi_level_view; END_ENTITY; (* |
*) ENTITY visual_element ABSTRACT SUPERTYPE OF ( ONEOF(actual_port_position, formal_port_position, graphics_link, graphics_node) ) ; view : graphics_view; END_ENTITY; (* |
*) ENTITY work_ordert ABSTRACT SUPERTYPE OF ( ONEOF(change_order, start_order) ); description : OPTIONAL text_select; id : element_identifier; is_controlling : SET[1:?] OF engineering_process_activityp; status : label; version_id : OPTIONAL element_identifier; END_ENTITY; (* |
*) ENTITY work_request ABSTRACT SUPERTYPE OF (ONEOF(change_request, start_request) ) ; description : text_select; id : element_identifier; notified_person : SET[0:?] OF date_and_person_organization; requestor : date_and_person_organization; scope : SET[0:?] OF specification_element_select; status : label; version_id : OPTIONAL element_identifier; END_ENTITY; (* |
*) END_SCHEMA; (* |
*) FUNCTION at_most_one_system_function_assigned (a_system_view : system_view): LOGICAL; LOCAL no_of_system_functions : INTEGER := 0; END_LOCAL; IF SIZEOF(a_system_view.system) > 0 THEN REPEAT i := 1 TO SIZEOF(a_system_view.system); IF a_system_view.system[i].role = system_function THEN no_of_system_functions := no_of_system_functions + 1; END_IF; END_REPEAT; END_IF; RETURN (no_of_system_functions <= 1); END_FUNCTION; (* |
*) FUNCTION correct_binding (binding : io_port_binding): BOOLEAN; LOCAL function_interface : function_instance; END_LOCAL; IF ('SYSTEM_ENGINERING_AND_DESIGN.FUNCTION_INSTANCE' IN TYPEOF(binding.actual_port.port_of)) THEN RETURN (FALSE); END_IF; function_interface := binding.actual_port.port_of; IF (binding.formal_port.port_of :=: function_interface.definition) THEN RETURN (TRUE); ELSE RETURN (FALSE); END_IF; END_FUNCTION; (* |
*) FUNCTION determineactualportrole (p : actual_io_port): port_data_relation; IF (p.port_type = input) OR (p.port_type = control) OR (p.port_type = mechanism) THEN RETURN (consumer); ELSE RETURN (producer); END_IF; END_FUNCTION; (* |
*) FUNCTION determineformalportrole (p : formal_io_port): port_data_relation; IF (p.port_type = input) OR (p.port_type = control) OR (p.port_type = mechanism) THEN RETURN (producer); ELSE RETURN (consumer); END_IF; END_FUNCTION; (* |
Прикладной компонент | Класс соответствия | |||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | ||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | ||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | ||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | ||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | ||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | ||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | ||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | ||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | ||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | ||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | ||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | ||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | ||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | ||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | ||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | ||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | ||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | ||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | ||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | |||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | |||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | |||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | |||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | |||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | ||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | |||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | |||||||||||||
X | X | X | X | X | X | X | X | |||||||||||||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | |||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | |||||||||||||
X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | X | |||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
| ||||||||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | X | X | X | X | X | |||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | ||||||||||||||||||||||||||||
X | X | X | X | X | X | X | ||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | ||||||||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
X | X | |||||||||||||||||||||||||||||
Наименование реализации системы согласно настоящему стандарту | |
Текущая версия и дата выпуска |
Метод практической реализации | Препроцессор | Постпроцессор |
ИСО 10303-21 | ||
ИСО 10303-22 |
Классы соответствия | Препроцессор | Постпроцессор |
Административная информация (CCA) | ||
Управление работами (CCB) | ||
Управление внесением изменений (CCC) | ||
Ссылки на документацию (CCD) | ||
Классификация элементов системы (CCE) | ||
Задание приоритетности элементов системы (CCF) | ||
Графическое представление информации (CCG) | ||
Представление требований к текстам (CC01) | ||
Представление требований к текстам и соответствующим понятиям (CC02) | ||
Формы представления структурных требований (CC03) | ||
Диаграммы потоков данных (CC04) | ||
Функциональные блок-схемы потоков (CC05) | ||
Диаграммы поведения систем (CC06) | ||
Структурный анализ систем (CC07) | ||
Физическая архитектура систем (CC08) | ||
Объектно-ориентированный анализ систем (CC09) | ||
Объектно-ориентированные статические структуры систем (CC10) | ||
Объектно-ориентированное поведение систем (CC11) | ||
Объектно-ориентированная практическая реализация систем (CC12) | ||
Представление систем (CC13) | ||
Верификация систем (CC14) | ||
Среда функциональной архитектуры и требования к ней (CC15) | ||
Среда физической архитектуры и требования к ней (CC16) | ||
Среда полного инженерного проектирования систем (CC17) | ||
Среда объектно-ориентированного инженерного проектирования систем (CC18) | ||
Среда расширенного инженерного проектирования систем (CC19) |











system_engineering_and_desing_arm |









































ARM | |
HTML version | ARM EXPRESS |
Text version | ARM EXPRESS text |
(* ISO TC184/SC4/WG3 N1355 - ISO/PAS 20542 Reference model for systems engineering - EXPRESS ARM *) SCHEMA system_engineering_and_design_arm; TYPE approval_assignment_select = SELECT WITH (change_report, configuration_element, configuration_element_version, critical_issue, critical_issue_impact, document_assignment, element_critical_issue_relationship, engineering_process_activity, instance_definition_select, package_element_assignment,partial_system_view_relationship, project, requirement_allocation_relationship, work_order, work_request); END_TYPE; TYPE assessment_assignment_select = SELECT WITH (configuration_element_version, engineering_process_activity, instance_definition_select, project, requirement_allocation_relationship); END_TYPE; TYPE assigned_requirement_relationship_select = SELECT WITH (requirement_allocation_relationship, requirement_relationship); END_TYPE; TYPE basic_identifier = STRING; END_TYPE; TYPE boolean_value = BOOLEAN; END_TYPE; TYPE buffer_synchronisation_enumeration = ENUMERATION OF (asynchronous, synchronouos); END_TYPE; TYPE cardinality_association_select = SELECT WITH (cardinality_list, cardinality_range, single_cardinality); END_TYPE; |
TYPE causal_weight_select = SELECT WITH (cb_transition_unbounded_weight, natural_number); END_TYPE; TYPE change_element_select = SELECT WITH (instance_definition_select); END_TYPE; TYPE change_report_element_select = SELECT WITH (instance_definition_select); END_TYPE; TYPE control_characters = ENUMERATION OF (cr,tab); END_TYPE; TYPE control_type_enumeration = ENUMERATION OF (activate, activate_deactivate); END_TYPE; TYPE data_composition_select = SELECT WITH (actual_io_port, formal_io_port, io_composition_port); END_TYPE; TYPE data_direction = ENUMERATION OF (from_system,to_system); END_TYPE; TYPE data_type_definition_select = SELECT WITH (maths_space, user_defined_data_type_definition); END_TYPE; TYPE data_type_value_select = SELECT WITH (boolean_value, complex_value, compound_value, integer_value, logical_value, real_value, text); END_TYPE; |
TYPE date_assignment_select = SELECT WITH (approval, approval_assignment, assessment, configuration_element, configuration_element_version, configuration_element_version_relationship, context_physical_relationship, critical_issue, critical_issue_impact, document_assignment, documentation_relationship, element_critical_issue_relationship, engineering_process_activity, engineering_process_activity_element_assignment,instance_definition_select, justification, justification_relationship, package_element_assignment, partial_system_view_relationship, project,requirement_allocation_relationship, requirement_system_view_assignment, work_order, work_request); END_TYPE; TYPE default_context_select = SELECT WITH (fsm_generic_state, functional_state_context); END_TYPE; TYPE definition_select = SELECT WITH (fsm_state, functional_state_context, general_function_definition, general_physical_definition, oo_view, system_view); END_TYPE; TYPE effective_element_select = SELECT WITH (instance_definition_select, person_organization_assignment); END_TYPE; TYPE event_or_date_select = SELECT WITH (date_time, project_event_reference); END_TYPE; TYPE external_element_select = SELECT WITH (function_instance, physical_instance); END_TYPE; TYPE fsm_interaction_select = SELECT WITH (initial_state_transition_specification_assignment, specification_state_assignment, state_transition_specification_assignment); END_TYPE; TYPE function_role_enumeration = ENUMERATION OF (external_element,system_function); END_TYPE; |
TYPE identifier = STRING; END_TYPE; TYPE instance_definition_select = SELECT WITH (clock, clock_assignment_relationship, data_instance, documentation_reference,functionality_instance_reference, general_function_definition, general_functionality_instance, general_physical_definition, oo_model_element_select,physical_instance, physical_instance_reference, realized_system, requirement_definition, requirement_instance, system_instance, system_view); END_TYPE; TYPE integer_value = INTEGER; END_TYPE; TYPE issue_source_select = SELECT WITH (instance_definition_select); END_TYPE; TYPE justification_assignment_select = SELECT WITH (engineering_process_activity, instance_definition_select, partial_system_view_relationship,requirement_allocation_relationship); END_TYPE; TYPE label = STRING; END_TYPE; TYPE link_select = SELECT WITH (cb_input_relationship, cb_output_relationship, clock_assignment_relationship, fsm_initial_state_transition,fsm_state_transition, functional_link, oo_action_state_transition, oo_component_allocation, oo_constraint_model_element_relationship, oo_dependency,oo_element_import, oo_element_residence, oo_extension, oo_generalization, oo_generic_association, oo_inclusion, oo_link, oo_message,oo_operation_interface_association, oo_signal_behavioural_feature_relationship, physical_instance); END_TYPE; TYPE logical_value = LOGICAL; END_TYPE; TYPE natural_number = INTEGER; END_TYPE; |
TYPE node_select = SELECT WITH (cb_place_reference, cb_transition_relationship, clock, fsm_state, general_functionality_instance, graphics_view, oo_action,oo_action_state, oo_actor, oo_association_class, oo_class, oo_component, oo_constraint, oo_interface, oo_object, oo_package, oo_send_action, oo_use_case,physical_instance, textual_paragraph); END_TYPE; TYPE oo_classifier_or_operation_select = SELECT WITH (oo_classifier_select, oo_operation); END_TYPE; TYPE oo_classifier_select = SELECT WITH (oo_actor, oo_class, oo_component, oo_interface, oo_signal, oo_use_case); END_TYPE; TYPE oo_extended_classifier_select = SELECT WITH (oo_classifier_select, physical_instance); END_TYPE; TYPE oo_extended_model_element_select = SELECT WITH (fsm_generic_state, generic_state_context, justification, oo_generalizable_element_select,oo_model_element_select); END_TYPE; TYPE oo_feature_select = SELECT WITH (oo_attribute, oo_behavioural_feature); END_TYPE; TYPE oo_generalizable_element_select = SELECT WITH (oo_collaboration, oo_extended_classifier_select, oo_generic_association, oo_package, oo_stereotype); END_TYPE; TYPE oo_instance_select = SELECT WITH (oo_attribute_instance, oo_extended_classifier_select, oo_object); END_TYPE; |
TYPE oo_model_element_select = SELECT WITH (oo_action, oo_constraint, oo_extension_point, oo_feature_select, oo_generic_association_end, oo_interaction,oo_link, oo_link_end, oo_message, oo_parameter, oo_relationship_select, oo_stimulus); END_TYPE; TYPE oo_namespace_select = SELECT WITH (oo_collaboration, oo_extended_classifier_select, oo_package); END_TYPE; TYPE oo_relationship_select = SELECT WITH (oo_dependency, oo_extension, oo_generalization, oo_generic_association, oo_inclusion); END_TYPE; TYPE package_element_select = SELECT WITH (configuration_element, configuration_element_version, engineering_process_activity, instance_definition_select,project); END_TYPE; TYPE period_or_date_select = SELECT WITH (date_time, project_event_reference, value_with_unit); END_TYPE; TYPE person_organization_assignment_select = SELECT WITH (approval, approval_assignment, assessment, change_report, configuration_element,configuration_element_version, critical_issue, critical_issue_impact, document_assignment, element_critical_issue_relationship,engineering_process_activity, instance_definition_select, justification, justification_relationship, package_element_assignment,partial_system_view_relationship, project, requirement_allocation_relationship, requirement_system_view_assignment, work_order); END_TYPE; TYPE person_organization_select = SELECT WITH (organization, person_in_organization); END_TYPE; TYPE physical_element_role_enumeration = ENUMERATION OF (external_element,system_element); END_TYPE; |
TYPE port_data_relation = ENUMERATION OF (consumer,producer); END_TYPE; TYPE port_position_select = SELECT WITH (io_port, oo_generic_association_end, oo_link_end, physical_port); END_TYPE; TYPE port_type = ENUMERATION OF (control,input,mechanism,output); END_TYPE; TYPE property_assignment_select = SELECT WITH (data_instance, documentation_reference, functionality_instance_reference, general_function_definition,general_physical_definition, oo_model_element_select, package, physical_instance_reference, realized_system, requirement_definition, system_view); END_TYPE; TYPE property_value_select = SELECT WITH (boolean_value, text_select, value_list, value_with_unit); END_TYPE; TYPE ranked_element_select = SELECT WITH (critical_issue_impact, effectiveness_measure, instance_definition_select); END_TYPE; TYPE ranking_type = ENUMERATION OF (cost,criticality,priority,project_criticality); END_TYPE; TYPE real_value = REAL; END_TYPE; TYPE requirement_allocation_select = SELECT WITH (data_instance, functional_link_reference, functionality_instance_reference,functionality_reference_relationship, oo_model_element_select, physical_instance_reference); END_TYPE; |
TYPE single_cardinality_select = SELECT WITH (infinite_cardinality, natural_number); END_TYPE; TYPE specific_element_select = SELECT WITH (cb_place, fsm_generic_state); END_TYPE; TYPE specification_element_select = SELECT WITH (change_report, critical_issue, critical_issue_impact, instance_definition_select); END_TYPE; TYPE system_select = SELECT WITH (system_instance, system_view); END_TYPE; TYPE text = STRING; END_TYPE; TYPE text_elements = SELECT WITH (control_characters, text); END_TYPE; TYPE text_select = SELECT WITH (text, textual_paragraph, textual_section, textual_table); END_TYPE; TYPE timing_type = ENUMERATION OF (best_case,nominal_case,worst_case); END_TYPE; TYPE trigger_type_enumeration = ENUMERATION OF (flank, level); END_TYPE; TYPE verification_allocation_select = SELECT WITH (functionality_instance_reference, physical_instance_reference, realized_system, requirement_instance, system_instance); END_TYPE; |
ENTITY abstract_data_type_definition SUBTYPE OF (user_defined_data_type_definition); END_ENTITY; ENTITY abstract_data_type_member; child : data_instance; parent : abstract_data_type_definition; END_ENTITY; ENTITY actual_io_port SUBTYPE OF (io_port) ; port_of : general_functionality_instance; DERIVE SELF\io_port. RENAMED role : port_data_relation : determineformalportrole(SELF); INVERSE assigned_buffer : SET[0:1] OF io_buffer FOR assigned_to; UNIQUE UR1: port_of, io_port_number, port_type; END_ENTITY; ENTITY actual_physical_port SUBTYPE OF (physical_port) ; port_of : physical_instance; END_ENTITY; ENTITY actual_port_position SUBTYPE OF (visual_element) ; assigned_to : graphics_node; position : graphics_point; positioned_port : port_position_select; END_ENTITY; |
ENTITY address; country : OPTIONAL label; electronic_mail_address : OPTIONAL label; facsimile_number : OPTIONAL label; internal_location : OPTIONAL label; postbox_number : OPTIONAL label; postcode : OPTIONAL label; region : OPTIONAL label; street : OPTIONAL label; street_number : OPTIONAL label; telephone_number : OPTIONAL label; telex_number : OPTIONAL label; town : OPTIONAL label; END_ENTITY; ENTITY aggregate_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; aggregate_type : data_type_definition_select; bound : LIST[1:?] OF integer_interval; END_ENTITY; ENTITY approval; level : OPTIONAL label; status : label; END_ENTITY; ENTITY approval_assignment; assigned_approval : approval; assigned_to : approval_assignment_select; description : OPTIONAL text_select; status : label; END_ENTITY; |
ENTITY approval_person_organization; authorized_approval : approval; person_organization : person_organization_select; role : label; END_ENTITY; ENTITY approval_relationship; description : OPTIONAL text_select; related_approval : approval; relating_approval : approval; relation_type : label; END_ENTITY; ENTITY assessment; assessed_level : label; assessment_type : label; assigned_to : assessment_assignment_select; description : OPTIONAL text_select; END_ENTITY; ENTITY assessment_relationship; description : OPTIONAL text_select; related : assessment; relating : assessment; relationship_type : label; END_ENTITY; ENTITY bi_directional_port_indicator; consuming_port : io_port; producing_port : io_port; END_ENTITY; ENTITY binary_data_type_definition SUBTYPE OF (elementary_maths_space) ; size : finite_integer_interval; END_ENTITY; |
ENTITY boolean_data_type_definition SUBTYPE OF (elementary_maths_space) ; END_ENTITY; ENTITY cardinality_list; range : LIST[2:?] OF cardinality_range; END_ENTITY; ENTITY cardinality_range; lower_bound : single_cardinality; upper_bound : single_cardinality; END_ENTITY; ENTITY causal_block_bound; initial_transition : cb_transition_relationship; terminal_transition : cb_transition_relationship; END_ENTITY; ENTITY cb_completion_alternative; completes_model : cb_functional_behaviour_model; final_model_element : cb_functional_place; END_ENTITY; ENTITY cb_completion_alternative_mapping; child_completion_criterion : cb_completion_alternative; equivalent_transition : cb_functional_transition; scope : cb_place_function_association; END_ENTITY; ENTITY cb_firing_condition; condition_definition : textual_specification; guarded_transition : cb_transition; END_ENTITY; |
ENTITY cb_functional_behaviour_model SUBTYPE OF (functional_behaviour_model) ; model_boundedness : label; model_type : label; INVERSE constituent_places : SET[1:?] OF cb_functional_place FOR behaviour_model; constituent_transitions : SET[2:?] OF cb_functional_transition FOR behaviour_model; END_ENTITY; ENTITY cb_functional_place SUBTYPE OF (cb_place) ; behaviour_model : cb_functional_behaviour_model; INVERSE reference_information : SET[0:1] OF cb_place_reference FOR functional_place_reference; END_ENTITY; ENTITY cb_functional_transition SUBTYPE OF (cb_transition) ; behaviour_model : cb_functional_behaviour_model; INVERSE transition_relationship : SET[0:1] OF cb_transition_relationship FOR related_transition; END_ENTITY; ENTITY cb_initial_marking; marked_place : cb_place; number_of_tokens : INTEGER; END_ENTITY; ENTITY cb_input_relationship; causal_weight : causal_weight_select; destination_transition : cb_transition; source_place : cb_place; END_ENTITY; |
ENTITY cb_output_relationship; causal_weight : causal_weight_select; destination_place : cb_place; source_transition : cb_transition; END_ENTITY; ENTITY cb_place ABSTRACT SUPERTYPE OF (ONEOF(cb_functional_place, oo_action_state) ) ; description : OPTIONAL text_select; place_label : OPTIONAL label; INVERSE initial_marking : SET[0:1] OF cb_initial_marking FOR marked_place; END_ENTITY; ENTITY cb_place_function_association; causal_place : cb_functional_place; controls_function : function_instance; INVERSE completion_mapping : SET[0:?] OF cb_completion_alternative_mapping FOR scope; END_ENTITY; ENTITY cb_place_reference; functional_place_reference : cb_functional_place; reference_type : label; END_ENTITY; ENTITY cb_transition ABSTRACT SUPERTYPE OF ( ONEOF(cb_functional_transition, oo_action_state_transition) ) ; description : OPTIONAL text_select; transition_label : OPTIONAL label; INVERSE guarded_by : SET[0:1] OF cb_firing_condition FOR guarded_transition; END_ENTITY; |
ENTITY cb_transition_relationship; related_transition : SET[1:?] OF cb_functional_transition; relationship_type : label; INVERSE end_bound : SET[0:1] OF causal_block_bound FOR terminal_transition; start_bound : SET[0:1] OF causal_block_bound FOR initial_transition; END_ENTITY; ENTITY cb_transition_unbounded_weight; minimal_weight : natural_number; END_ENTITY; ENTITY change_order SUBTYPE OF (work_order) ; change_element : element_critical_issue_relationship; originates_from : change_request; END_ENTITY; ENTITY change_order_relationship; change_order_relationship_type : label; related : change_order; relating : change_order; END_ENTITY; ENTITY change_report; associated_version : configuration_element_version; description : OPTIONAL text_select; name : label; originating_change_request : change_request; END_ENTITY; ENTITY change_report_element_assignment; change_report : change_report; change_report_element : change_report_element_select; description : OPTIONAL text_select; END_ENTITY; |
ENTITY change_request SUBTYPE OF (work_request) ; response_to_issue : SET[1:?] OF critical_issue; END_ENTITY; ENTITY clock; control_signal : data_instance; description : OPTIONAL text_select; frequency : REAL; name : OPTIONAL label; WHERE correct_data_definition: 'SYSTEMS_ENGINEERING_DATA_REPRESENTATION.EVENT_DATA_TYPE_DEFINITION' IN TYPEOF(control_signal.definition); END_ENTITY; ENTITY clock_assignment_relationship; clock : clock; trigger_for : control_io_port; END_ENTITY; ENTITY clock_reference_context_relationship; clock_signal : clock; relevant_functionality_context : functionality_instance_reference; END_ENTITY; ENTITY complex_data_type_definition SUBTYPE OF (elementary_maths_space) ; END_ENTITY; ENTITY complex_value; radius : REAL; theta : REAL; END_ENTITY; |
ENTITY composite_function_definition SUBTYPE OF (general_function_definition) ; INVERSE behaviour_constraint : SET[0:1] OF functional_behaviour_model_assignment FOR constrained_function; parent_of : SET[1:?] OF functional_decomposition_relationship FOR parent; END_ENTITY; ENTITY compound_value; value_list : LIST[0:?] OF data_type_value_select; END_ENTITY; ENTITY configuration_element; description : OPTIONAL text_select; id : element_identifier; name : label; INVERSE associated_version : SET[1:?] OF configuration_element_version FOR version_of; UNIQUE UR1 : id; END_ENTITY; ENTITY configuration_element_relationship; alternate : configuration_element; base : configuration_element; description : OPTIONAL text_select; relationship_type : label; END_ENTITY; ENTITY configuration_element_version; description : OPTIONAL text_select; id : element_identifier; version_of : configuration_element; UNIQUE UR1: id; END_ENTITY; |
ENTITY configuration_element_version_relationship; description : OPTIONAL text_select; related_version : configuration_element_version; relating_version : configuration_element_version; relationship_type : label; WHERE WR1: related_version :<>: relating_version; END_ENTITY; ENTITY context_function_relationship; associated_context : system_view; context_function : function_instance; description : OPTIONAL text_select; role : function_role_enumeration; INVERSE assigned_functional_configuration : SET[0:1] OF system_functional_configuration FOR system; UNIQUE UR1: associated_context, context_function; END_ENTITY; ENTITY context_physical_relationship; description : OPTIONAL text_select; part_in_physical_context : system_view; physical_instance : physical_instance; role : physical_element_role_enumeration; INVERSE assigned_physical_configuration : SET[0:1] OF system_physical_configuration FOR system; END_ENTITY; |
ENTITY control_io_port SUBTYPE OF (io_port) ; control_type : control_type_enumeration; offset : REAL; port_of : function_instance; trigger_type : trigger_type_enumeration; DERIVE SELF\io_port. RENAMED role : port_data_relation : consumer; UNIQUE UR1: port_of, io_port_number, port_type; WHERE good_offset: offset >= 0.0; port_data_direction: (SELF\io_port.port_type <> output); WR1: ('SYSTEMS_ENGINEERING_DATA_REPRESENTATION.EVENT_DATA_TYPE_DEFINITION' IN TYPEOF (data.definition)) / ('SYSTEMS_ENGINEERING_DATA_REPRESENTATION.LOGICAL_DATA_TYPE_DEFINITION' IN TYPEOF(data.definition)); END_ENTITY; ENTITY coordinate_translation_information; measurement_unit : label; name : label; ratio : REAL; scale_factor : REAL; transformation_for : graphics_view; END_ENTITY; ENTITY critical_issue; description : OPTIONAL text_select; id : element_identifier; name : label; status : label; END_ENTITY; |
ENTITY critical_issue_impact; description : OPTIONAL text_select; id : element_identifier; impact_of_issue : SET[1:?] OF critical_issue; name : label; INVERSE identified_issues : SET[0:?] OF element_critical_issue_relationship FOR issue_analysis; END_ENTITY; ENTITY data_field SUBTYPE OF (data_instance) ; role : OPTIONAL label; END_ENTITY; ENTITY data_instance SUPERTYPE OF ( data_field ) ; default_value : OPTIONAL data_type_value_select; definition : data_type_definition_select; description : OPTIONAL text_select; id : element_identifier; initial_value : OPTIONAL data_type_value_select; is_constant : BOOLEAN; name : label; unit_component : OPTIONAL unit; UNIQUE UR1: definition, id; END_ENTITY; ENTITY data_transfer; data : data_instance; direction : data_direction; transfer : implied_external_interaction; END_ENTITY; |
ENTITY date_and_person_assignment; assigned_date_and_person : date_and_person_organization; assigned_to : person_organization_assignment_select; description : OPTIONAL text_select; role : label; END_ENTITY; ENTITY date_and_person_organization; actual_date : date_time; person_organization : person_organization_select; END_ENTITY; ENTITY date_assignment; assigned_to : date_assignment_select; date : date_time; role : label; END_ENTITY; ENTITY date_time; day_component : INTEGER; hour_component : INTEGER; minute_component : INTEGER; month_component : INTEGER; second_component : INTEGER; year_component : INTEGER; WHERE WR1: {0 <= hour_component <= 23}; WR2: {0 <= minute_component <= 59}; WR3: {0 <= second_component <= 59}; WR4: {1 <= month_component <= 12}; WR5: {1 <= day_component <= 31}; WR6: year_component >= 0; END_ENTITY; |
ENTITY derived_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; expression : text_select; resultant_data_type : data_type_definition_select; END_ENTITY; ENTITY digital_document SUBTYPE OF (documentation_reference) ; document_format : OPTIONAL label; document_size : OPTIONAL label; location : label; END_ENTITY; ENTITY document_assignment SUPERTYPE OF ( partial_document_assignment ) ; description : OPTIONAL text_select; documentation : documentation_reference; documented_object : instance_definition_select; END_ENTITY; ENTITY documentation_reference ABSTRACT SUPERTYPE OF ( ONEOF(digital_document, non_digital_document) ) ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; UNIQUE UR1: id; END_ENTITY; |
ENTITY documentation_relationship; description : OPTIONAL text_select; related_documentation : documentation_reference; relating_documentation : documentation_reference; relationship_type : OPTIONAL label; WHERE correct_relation: relating_documentation :<>: related_documentation; END_ENTITY; ENTITY effectiveness_measure; optimization_function : textual_specification; END_ENTITY; ENTITY effectiveness_measure_assignment; assigned_requirement : requirement_instance; effectiveness_measure : effectiveness_measure; weight : label; END_ENTITY; ENTITY effectiveness_measure_relationship; description : OPTIONAL text_select; related : effectiveness_measure; relating : effectiveness_measure; END_ENTITY; ENTITY effectivity; concerned_organization : SET[0:?] OF organization; description : OPTIONAL text_select; id : OPTIONAL element_identifier; primary_definition : OPTIONAL event_or_date_select; secondary_definition : OPTIONAL period_or_date_select; version_id : OPTIONAL element_identifier; END_ENTITY; |
ENTITY effectivity_assignment; assigned_effectivity : effectivity; effective_element : effective_element_select; role : label; END_ENTITY; ENTITY effectivity_relationship; description : OPTIONAL text_select; related : effectivity; relating : effectivity; relation_type : label; END_ENTITY; ENTITY element_critical_issue_relationship; description : OPTIONAL text_select; impact_on_element : change_element_select; issue_analysis : critical_issue_impact; END_ENTITY; ENTITY element_identifier; identifier_context : person_organization_select; identifier_value : identifier; END_ENTITY; ENTITY elementary_maths_space ABSTRACT SUPERTYPE OF ( ONEOF(binary_data_type_definition, boolean_data_type_definition, complex_data_type_definition, event_data_type_definition, integer_data_type_definition, logical_data_type_definition, real_data_type_definition, string_data_type_definition) ) SUBTYPE OF (maths_space) ; END_ENTITY; |
ENTITY engineering_process_activity; activity_type : label; actual_end_date : OPTIONAL date_time; actual_start_date : OPTIONAL date_time; description : OPTIONAL text_select; id : element_identifier; name : label; planned_end_date : OPTIONAL period_or_date_select; planned_start_date : OPTIONAL event_or_date_select; resolved_request : SET[0:?] OF work_request; status : OPTIONAL text_select; INVERSE authorization : SET[0:1] OF work_order FOR is_controlling; END_ENTITY; ENTITY engineering_process_activity_element_assignment; activity : engineering_process_activity; description : OPTIONAL text_select; element : specification_element_select; role : label; END_ENTITY; ENTITY engineering_process_activity_relationship; description : OPTIONAL text_select; related_activity : engineering_process_activity; relating_activity : engineering_process_activity; relation_type : label; WHERE WR1: relating_activity :<>: related_activity; END_ENTITY; ENTITY event_data_type_definition SUBTYPE OF (elementary_maths_space) ; END_ENTITY; |
ENTITY execution_time; role : timing_type; time : REAL; timing : functionality_instance_reference; unit : label; END_ENTITY; ENTITY finite_integer_interval SUBTYPE OF (integer_interval) ; low_index : INTEGER; size : INTEGER; END_ENTITY; ENTITY finite_real_interval SUBTYPE OF (real_interval) ; high_closure : BOOLEAN; high_index : REAL; low_closure : BOOLEAN; low_index : REAL; END_ENTITY; ENTITY finite_space SUBTYPE OF (maths_space) ; member : SET[0:?] OF data_type_value_select; END_ENTITY; ENTITY formal_data_interaction_port; data : data_instance; port_of : functional_state_context; END_ENTITY; |
ENTITY formal_io_port SUBTYPE OF (io_port) ; port_of : general_function_definition; DERIVE SELF\io_port. RENAMED role : port_data_relation : determineformalportrole(SELF); UNIQUE UR1: port_of, io_port_number, port_type; END_ENTITY; ENTITY formal_physical_port SUBTYPE OF (physical_port) ; port_of : general_physical_definition; END_ENTITY; ENTITY formal_port_position SUBTYPE OF (visual_element) ; position : graphics_point; positioned_port : port_position_select; END_ENTITY; ENTITY fsm_and_state SUBTYPE OF (fsm_state) ; INVERSE SELF\fsm_state. RENAMED child_states : SET[2:?] OF fsm_state_composition_relationship FOR parent_state; END_ENTITY; ENTITY fsm_command_interaction_relationship; defined_in : fsm_interaction_select; interaction_port : state_function_interaction_port; interaction_type : label; END_ENTITY; ENTITY fsm_data_interaction_binding; actual_port : actual_io_port; formal_port : formal_data_interaction_port; END_ENTITY; |
ENTITY fsm_data_interaction_relationship; defined_in : fsm_interaction_select; interaction_port : formal_data_interaction_port; interaction_type : label; END_ENTITY; ENTITY fsm_generic_state ABSTRACT SUPERTYPE OF ( ONEOF(fsm_state, fsm_transient_state) ) ; INVERSE destination_transition : SET[0:?] OF fsm_state_transition FOR destination_state; END_ENTITY; ENTITY fsm_initial_state_transition; initial_state : fsm_generic_state; transition_context : default_context_select; END_ENTITY; ENTITY fsm_model SUBTYPE OF (general_functionality_instance) ; behaviour_model : state_machine_functional_behaviour_model; definition : functional_state_context; id : element_identifier; name : label; presentation_id : OPTIONAL label; END_ENTITY; ENTITY fsm_or_state SUBTYPE OF (fsm_state) ; END_ENTITY; |
ENTITY fsm_state ABSTRACT SUPERTYPE OF ( ONEOF(fsm_and_state, fsm_or_state) ) SUBTYPE OF (fsm_generic_state) ; description : OPTIONAL text_select; name : label; presentation_id : OPTIONAL label; INVERSE child_states : SET[0:?] OF fsm_state_composition_relationship FOR parent_state; END_ENTITY; ENTITY fsm_state_composition_relationship; child_state : fsm_state; parent_state : fsm_state; END_ENTITY; ENTITY fsm_state_transition; destination_state : fsm_generic_state; source_state : fsm_generic_state; INVERSE transition_label : SET[0:1] OF state_transition_specification_assignment FOR assigned_to; END_ENTITY; ENTITY fsm_transient_state SUBTYPE OF (fsm_generic_state) ; state_type : label; END_ENTITY; ENTITY fsm_transient_state_composition_relationship; child_state : fsm_transient_state; parent_state : fsm_state; END_ENTITY; |
ENTITY function_instance SUBTYPE OF (general_functionality_instance) ; definition : general_function_definition; id : element_identifier; name : label; presentation_id : OPTIONAL label; INVERSE control_port : SET[0:?] OF control_io_port FOR port_of; UNIQUE UR1: definition, id; END_ENTITY; ENTITY function_reference; function_link : function_instance; port_of : fsm_model; END_ENTITY; ENTITY functional_behaviour_model ABSTRACT SUPERTYPE OF ( ONEOF(cb_functional_behaviour_model, state_machine_functional_behaviour_model) ) ; description : OPTIONAL text_select; INVERSE defines_behaviour_for : SET[0:1] OF functional_behaviour_model_assignment FOR assigned_behaviour_model; END_ENTITY; ENTITY functional_behaviour_model_assignment; assigned_behaviour_model : functional_behaviour_model; constrained_function : composite_function_definition; END_ENTITY; ENTITY functional_decomposition_relationship; child : general_functionality_instance; description : OPTIONAL text_select; parent : composite_function_definition; END_ENTITY; |
ENTITY functional_link; control_link : BOOLEAN; description : OPTIONAL text_select; destination_port : io_port; name : label; source_port : io_port; DERIVE data_on_link : data_instance : source_port.data; WHERE correct_ports: ((destination_port.role = consumer) AND (source_port.role = producer)); END_ENTITY; ENTITY functional_link_allocation_relationship; allocated_functional_link : functional_link_reference; allocated_to : physical_instance_reference; description : OPTIONAL text_select; END_ENTITY; ENTITY functional_link_group; elements : SET[2:?] OF functional_link; name : label; END_ENTITY; ENTITY functional_link_reference; in_scope_of : functionality_instance_reference; reference_functional_link : functional_link; END_ENTITY; ENTITY functional_reference_configuration; description : OPTIONAL text_select; END_ENTITY; ENTITY functional_representation_relationship; description : OPTIONAL text_select; functional_representation : data_instance; physical_element : physical_instance; END_ENTITY; |
ENTITY functional_state_context SUBTYPE OF (generic_state_context) ; END_ENTITY; ENTITY functionality_allocation_relationship; allocated_functionality : functionality_instance_reference; allocated_to : physical_instance_reference; description : OPTIONAL text_select; END_ENTITY; ENTITY functionality_instance_reference SUPERTYPE OF ( persistent_storage_reference ) ; description : OPTIONAL text_select; id : element_identifier; name : label; referenced_functionality_instance : general_functionality_instance; END_ENTITY; ENTITY functionality_reference_composition_relationship; child : functionality_instance_reference; mirror_of : functional_decomposition_relationship; parent : functionality_instance_reference; reference_configuration : functional_reference_configuration; END_ENTITY; ENTITY functionality_reference_relationship; first_reference : functionality_instance_reference; second_reference : functionality_instance_reference; END_ENTITY; |
ENTITY general_function_definition ABSTRACT SUPERTYPE OF ( ONEOF(composite_function_definition, leaf_function_definition) ) ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : OPTIONAL label; INVERSE formal_port : SET[0:?] OF formal_io_port FOR port_of; UNIQUE UR1: id; END_ENTITY; ENTITY general_functionality_instance ABSTRACT SUPERTYPE OF ( ONEOF(fsm_model, function_instance, io_split_join, persistent_storage) ) ; description : OPTIONAL text_select; INVERSE actual_port : SET[0:?] OF actual_io_port FOR port_of; END_ENTITY; ENTITY general_physical_definition ABSTRACT SUPERTYPE OF ( ONEOF(physical_link_definition, physical_node_definition) ) ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : OPTIONAL label; INVERSE formal_port : SET[0:?] OF formal_physical_port FOR port_of; UNIQUE UR1: id; END_ENTITY; |
ENTITY generic_state_context ABSTRACT SUPERTYPE; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : OPTIONAL label; original_representation : label; state_machine_model : label; END_ENTITY; ENTITY graphics_link SUBTYPE OF (visual_element) ; associated_with : link_select; point : LIST[2:?] OF graphics_point; END_ENTITY; ENTITY graphics_node SUBTYPE OF (visual_element) ; associated_with : node_select; bottom_right : graphics_point; top_left : graphics_point; END_ENTITY; ENTITY graphics_point; x_coordinate : REAL; y_coordinate : REAL; END_ENTITY; ENTITY graphics_view; definition_for : definition_select; INVERSE coordinate_definition : SET[0:?] OF coordinate_translation_information FOR transformation_for; root_view : SET[0:1] OF multi_level_view FOR top_view; view_element : SET[1:?] OF visual_element FOR view; END_ENTITY; |
ENTITY hibound_integer_interval SUBTYPE OF (integer_interval) ; high_index : INTEGER; END_ENTITY; ENTITY hibound_real_interval SUBTYPE OF (real_interval) ; high_closure : BOOLEAN; high_index : REAL; END_ENTITY; ENTITY implied_external_interaction; associated_requirement : requirement_instance; implied_external_element : external_element_select; INVERSE associated_data : SET[0:1] OF data_transfer FOR transfer; END_ENTITY; ENTITY infinite_cardinality; END_ENTITY; ENTITY initial_state_transition_specification_assignment; assigned_to : fsm_initial_state_transition; specification : textual_specification; END_ENTITY; ENTITY integer_data_type_definition SUBTYPE OF (elementary_maths_space) ; END_ENTITY; ENTITY integer_interval ABSTRACT SUPERTYPE OF ( ONEOF(finite_integer_interval, hibound_integer_interval, lobound_integer_interval) ) SUBTYPE OF (maths_space) ; END_ENTITY; |
ENTITY io_buffer; assigned_to : actual_io_port; continuously_active : BOOLEAN; synchronisation_semantics : buffer_synchronisation_enumeration; END_ENTITY; ENTITY io_composition_port SUBTYPE OF (io_port) ; is_alias_for : data_instance; port_of : data_composition_select; DERIVE SELF\io_port. RENAMED role : port_data_relation : ; UNIQUE UR1: port_of, io_port_number; END_ENTITY; ENTITY io_port ABSTRACT SUPERTYPE OF ( ONEOF(actual_io_port, control_io_port, formal_io_port, io_composition_port) ) ; data : data_instance; io_port_number : INTEGER; port_type : port_type; role : port_data_relation; END_ENTITY; ENTITY io_port_binding; actual_port : actual_io_port; formal_port : formal_io_port; WHERE WR1: (SELF.formal_port.data :<>: SELF.actual_port.data); WR2: formal_port.role <> actual_port.role; WR3: correct_binding(SELF); END_ENTITY; |
ENTITY io_split_join SUBTYPE OF (general_functionality_instance) ; END_ENTITY; ENTITY issue_source_relationship; description : OPTIONAL text_select; issue : critical_issue; issue_source : issue_source_select; END_ENTITY; ENTITY issue_system_assignment; description : OPTIONAL text_select; identified_system : system_select; issue : critical_issue; END_ENTITY; ENTITY justification; assigned_to : justification_assignment_select; justification_text : text_select; role : label; END_ENTITY; ENTITY justification_relationship; description : OPTIONAL text_select; related : justification; relating : justification; relationship_type : label; END_ENTITY; ENTITY leaf_function_definition SUBTYPE OF (general_function_definition) ; definition : textual_specification; function_type : OPTIONAL label; predefined : BOOLEAN; END_ENTITY; |
ENTITY lobound_integer_interval SUBTYPE OF (integer_interval) ; low_index : INTEGER; END_ENTITY; ENTITY lobound_real_interval SUBTYPE OF (real_interval) ; low_closure : BOOLEAN; low_index : REAL; END_ENTITY; ENTITY logical_data_type_definition SUBTYPE OF (elementary_maths_space) ; END_ENTITY; ENTITY maths_space ABSTRACT SUPERTYPE OF ( ONEOF(elementary_maths_space, finite_space, integer_interval, real_interval) ) ; description : OPTIONAL text_select; id : element_identifier; name : OPTIONAL label; UNIQUE UR1: id; END_ENTITY; ENTITY model_defined_requirement_definition SUBTYPE OF (requirement_definition) ; assigned_model : system_view; model_relevance : OPTIONAL text_select; END_ENTITY; ENTITY multi_level_view; description : OPTIONAL text_select; reference_name : OPTIONAL label; top_view : graphics_view; END_ENTITY; |
ENTITY name_binding; actual_port : function_reference; formal_port : state_function_interaction_port; END_ENTITY; ENTITY nominal_value SUBTYPE OF (value_with_unit) ; value_component : NUMBER; INVERSE limitation : SET[0:1] OF plus_minus_bounds FOR limited_value; END_ENTITY; ENTITY non_digital_document SUBTYPE OF (documentation_reference) ; location : label; END_ENTITY; ENTITY oo_action SUPERTYPE OF ( ONEOF(oo_call_action, oo_create_action, oo_send_action) ) ; description : OPTIONAL text_select; is_asynchronous : BOOLEAN; name : label; script : textual_specification; END_ENTITY; ENTITY oo_action_state SUBTYPE OF (cb_place) ; END_ENTITY; ENTITY oo_action_state_transition SUBTYPE OF (cb_transition) ; END_ENTITY; |
ENTITY oo_action_temporal_relationship; description : OPTIONAL text_select; predecessor : oo_action; successor : oo_action; END_ENTITY; ENTITY oo_actor; description : OPTIONAL text_select; id : element_identifier; name : label; namespace : OPTIONAL oo_namespace_select; END_ENTITY; ENTITY oo_argument; action : oo_action; initial_value : text_select; END_ENTITY; ENTITY oo_association SUBTYPE OF (oo_generic_association) ; WHERE WR1: SELF\oo_generic_association.reading_direction IN SELF\oo_generic_association.connection; END_ENTITY; ENTITY oo_association_class; class : oo_class; class_association : oo_generic_association; description : OPTIONAL text_select; END_ENTITY; ENTITY oo_association_end SUBTYPE OF (oo_generic_association_end) ; SELF\oo_generic_association_end. RENAMED association : oo_association; END_ENTITY; |
ENTITY oo_association_end_classifier_relationship; association_end : oo_generic_association_end; description : OPTIONAL text_select; specification : oo_extended_classifier_select; END_ENTITY; ENTITY oo_association_end_qualifier_association; association_end : oo_generic_association_end; qualifier : OPTIONAL oo_attribute; END_ENTITY; ENTITY oo_association_end_role SUBTYPE OF (oo_generic_association_end) ; base : OPTIONAL oo_association_end; collaboration_multiplicity : cardinality_association_select; role_type : oo_classifier_role; SELF\oo_generic_association_end. RENAMED association : oo_association_role; END_ENTITY; ENTITY oo_association_role SUBTYPE OF (oo_generic_association) ; base : OPTIONAL oo_association; multiplicity : cardinality_association_select; WHERE WR1: SELF\oo_generic_association.reading_direction IN SELF\oo_generic_association.connection; END_ENTITY; ENTITY oo_attribute; definition : oo_extended_classifier_select; description : OPTIONAL text_select; id : element_identifier; name : label; owner : oo_extended_classifier_select; visibility : label; END_ENTITY; |
ENTITY oo_attribute_instance; attribute_value : label; definition : oo_attribute; owner : oo_extended_classifier_select; END_ENTITY; ENTITY oo_attribute_link_end_association; attribute_instance : oo_attribute_instance; description : text_select; link_end : oo_link_end; END_ENTITY; ENTITY oo_behavioural_feature ABSTRACT SUPERTYPE OF ( ONEOF(oo_method, oo_operation, oo_reception) ) ; name : label; owner : oo_classifier_select; visibility : label; END_ENTITY; ENTITY oo_call_action SUBTYPE OF (oo_action) ; operation : oo_operation; END_ENTITY; ENTITY oo_class; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; is_active : BOOLEAN; name : label; namespace : OPTIONAL oo_namespace_select; visibility : label; END_ENTITY; |
ENTITY oo_classifier_role; multiplicity : cardinality_association_select; INVERSE association_end_role : SET[0:?] OF oo_association_end_role FOR role_type; END_ENTITY; ENTITY oo_collaboration; description : OPTIONAL text_select; id : element_identifier; name : label; representing : oo_classifier_or_operation_select; END_ENTITY; ENTITY oo_component; description : OPTIONAL text_select; id : element_identifier; name : label; namespace : OPTIONAL oo_namespace_select; visibility : label; END_ENTITY; ENTITY oo_component_allocation; deployment_location : physical_instance_reference; description : OPTIONAL text_select; resident : oo_component; END_ENTITY; ENTITY oo_constraint; body : textual_specification; END_ENTITY; ENTITY oo_constraint_model_element_relationship; constraint : oo_constraint; model_element : oo_model_element_select; END_ENTITY; |
ENTITY oo_create_action SUBTYPE OF (oo_action) ; instantiation : oo_classifier_select; END_ENTITY; ENTITY oo_dependency; client : oo_model_element_select; description : text_select; supplier : oo_model_element_select; END_ENTITY; ENTITY oo_element_import; alias_name : OPTIONAL label; container : oo_package; model_element : oo_model_element_select; name : label; visibility : label; END_ENTITY; ENTITY oo_element_residence; description : OPTIONAL text_select; implementation_location : oo_component; resident : oo_model_element_select; visibility : label; END_ENTITY; ENTITY oo_extension; base : oo_use_case; condition : text_select; extension : oo_use_case; extension_point : oo_extension_point; END_ENTITY; ENTITY oo_extension_point; location : text_select; use_case : oo_use_case; END_ENTITY; |
ENTITY oo_generalization; child : oo_generalizable_element_select; discriminator : label; parent : oo_generalizable_element_select; END_ENTITY; ENTITY oo_generic_association ABSTRACT SUPERTYPE OF ( ONEOF(oo_association, oo_association_role) ) ; description : OPTIONAL text_select; id : element_identifier; name : label; reading_direction : oo_generic_association_end; visibility : label; INVERSE connection : SET[2:?] OF oo_generic_association_end FOR association; END_ENTITY; ENTITY oo_generic_association_end ABSTRACT SUPERTYPE OF ( ONEOF(oo_association_end, oo_association_end_role) ) ; aggregation : label; association : oo_generic_association; description : OPTIONAL text_select; id : element_identifier; is_navigable : BOOLEAN; multiplicity : cardinality_association_select; name : label; visibility : label; END_ENTITY; ENTITY oo_inclusion; addition : oo_use_case; base : oo_use_case; END_ENTITY; |
ENTITY oo_instance_classifier_relationship; classifier : oo_extended_classifier_select; description : text_select; instance : oo_instance_select; END_ENTITY; ENTITY oo_interaction; description : OPTIONAL text_select; id : element_identifier; interaction_context : oo_collaboration; name : label; END_ENTITY; ENTITY oo_interface; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; namespace : OPTIONAL oo_namespace_select; END_ENTITY; ENTITY oo_link; definition : oo_generic_association; INVERSE connection : SET[2:?] OF oo_link_end FOR link; END_ENTITY; ENTITY oo_link_end; definition : oo_generic_association_end; instance : oo_instance_select; link : oo_link; WHERE WR1: definition.association :=: link.definition; END_ENTITY; |
ENTITY oo_message; action : oo_action; communication : OPTIONAL oo_association_role; interaction : oo_interaction; name : label; receiver : oo_classifier_role; sender : oo_classifier_role; sequence_number : LIST[1:?] OF natural_number; END_ENTITY; ENTITY oo_message_temporal_relationship; predecessor : oo_message; successor : oo_message; END_ENTITY; ENTITY oo_method SUBTYPE OF (oo_behavioural_feature) ; body : textual_specification; description : OPTIONAL text_select; id : element_identifier; specification : oo_operation; END_ENTITY; ENTITY oo_model_element_stereotype_relationship; model_element : oo_model_element_select; stereotype : oo_stereotype; END_ENTITY; ENTITY oo_model_element_tagged_value_relationship; model_element : oo_model_element_select; tagged_value : oo_tagged_value; END_ENTITY; |
ENTITY oo_object; definition : oo_class; description : OPTIONAL text_select; id : element_identifier; END_ENTITY; ENTITY oo_operation SUBTYPE OF (oo_behavioural_feature) ; concurrency : label; description : OPTIONAL text_select; id : element_identifier; is_abstract : BOOLEAN; specification : textual_specification; END_ENTITY; ENTITY oo_operation_interface_association; description : OPTIONAL text_select; interface : oo_interface; operation : oo_operation; END_ENTITY; ENTITY oo_package SUPERTYPE OF ( oo_view ) ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; visibility : label; INVERSE element_import : SET[0:?] OF oo_element_import FOR container; END_ENTITY; |
ENTITY oo_parameter; behavioural_feature : oo_behavioural_feature; default_value : label; kind : label; name : label; parameter_type : oo_classifier_select; visibility : label; END_ENTITY; ENTITY oo_reception SUBTYPE OF (oo_behavioural_feature) ; signal : oo_signal; specification : text_select; END_ENTITY; ENTITY oo_send_action SUBTYPE OF (oo_action) ; signal : oo_signal; END_ENTITY; ENTITY oo_signal; name : label; namespace : OPTIONAL oo_namespace_select; END_ENTITY; ENTITY oo_signal_behavioural_feature_relationship; behavioural_feature_context : oo_behavioural_feature; raised_signal : oo_signal; END_ENTITY; ENTITY oo_stereotype; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; visibility : label; END_ENTITY; |
ENTITY oo_stimulus; dispatch_action : oo_action; receiver : oo_instance_select; sender : oo_instance_select; END_ENTITY; ENTITY oo_stimulus_argument; argument : oo_instance_select; stimulus : oo_stimulus; END_ENTITY; ENTITY oo_tagged_value; id : element_identifier; initial_value : text_select; name : label; END_ENTITY; ENTITY oo_use_case; description : OPTIONAL text_select; id : element_identifier; name : label; namespace : OPTIONAL oo_namespace_select; END_ENTITY; ENTITY oo_view SUBTYPE OF (oo_package) ; view_type : label; END_ENTITY; ENTITY oo_view_context_element_relationship; represented_model_element : oo_extended_model_element_select; view : oo_view; END_ENTITY; |
ENTITY oo_view_relationship; base : oo_view; description : text_select; reference_view : oo_view; relationship_type : label; END_ENTITY; ENTITY oo_view_system_view_relationship; oo_view : oo_view; system_context : system_view; END_ENTITY; ENTITY organization; delivery_address : OPTIONAL address; description : OPTIONAL text_select; id : basic_identifier; name : label; postal_address : OPTIONAL address; visitor_address : OPTIONAL address; END_ENTITY; ENTITY organization_relationship; description : OPTIONAL text_select; name : label; related_organization : organization; relating_organization : organization; WHERE WR1: related_organization :<>: relating_organization; END_ENTITY; |
ENTITY package SUPERTYPE OF ( selection_package ) ; description : OPTIONAL text_select; discriminator : text; id : element_identifier; name : label; INVERSE element : SET[0:?] OF package_element_assignment FOR package; UNIQUE UR1: id; END_ENTITY; ENTITY package_classification_assignment; assigned_package : package; classification_system : package_classification_system; END_ENTITY; ENTITY package_classification_system; description : OPTIONAL text_select; id : element_identifier; name : label; END_ENTITY; ENTITY package_element_assignment; description : OPTIONAL text_select; element : package_element_select; package : package; reference_name : OPTIONAL label; END_ENTITY; ENTITY package_hierarchy_relationship; sub_package : package; super_package : package; END_ENTITY; |
ENTITY partial_document_assignment SUBTYPE OF (document_assignment) ; document_portion : label; END_ENTITY; ENTITY partial_system_view SUBTYPE OF (system_view) ; is_relevant_for : system_view_context; INVERSE assigned_to_systems : SET[1:?] OF system_view_assignment FOR assigned_view; END_ENTITY; ENTITY partial_system_view_relationship SUPERTYPE OF ( triggered_system_view_relationship ) ; description : OPTIONAL text_select; related : partial_system_view; relating : partial_system_view; relationship_type : label; system_definition_context : system_definition; WHERE correct_relationship: related :<>: relating; END_ENTITY; ENTITY persistent_storage SUBTYPE OF (general_functionality_instance) ; id : element_identifier; name : label; permanent : LOGICAL; presentation_id : OPTIONAL label; read_only : LOGICAL; storage_access : label; store_size : OPTIONAL INTEGER; UNIQUE UR1: id; END_ENTITY; |
ENTITY persistent_storage_equivalence_relationship; equivalent_storage : SET[2:?] OF persistent_storage_reference; valid_context : functional_reference_configuration; END_ENTITY; ENTITY persistent_storage_reference SUBTYPE OF (functionality_instance_reference) ; SELF\functionality_instance_reference. RENAMED referenced_functionality_instance : persistent_storage; END_ENTITY; ENTITY person; address : OPTIONAL address; first_name : OPTIONAL label; id : basic_identifier; last_name : OPTIONAL label; middle_names : OPTIONAL LIST[1:?] OF label; prefix_titles : OPTIONAL LIST[1:?] OF label; suffix_titles : OPTIONAL LIST[1:?] OF label; UNIQUE UR1: id; END_ENTITY; ENTITY person_in_organization; associated_organization : organization; associated_person : person; description : OPTIONAL text_select; role : label; END_ENTITY; ENTITY person_organization_assignment; assigned_person_organization : person_organization_select; assigned_to : person_organization_assignment_select; description : OPTIONAL text_select; role : label; END_ENTITY; |
ENTITY physical_binding; actual_port : actual_physical_port; formal_port : formal_physical_port; WHERE WR1: formal_port.port_of :=: actual_port.port_of.definition; END_ENTITY; ENTITY physical_composition_relationship; assembly : general_physical_definition; component : physical_instance; description : OPTIONAL text_select; END_ENTITY; ENTITY physical_connection; connected : physical_port; connecting : physical_port; END_ENTITY; ENTITY physical_instance; definition : general_physical_definition; description : OPTIONAL text_select; id : element_identifier; name : label; presentation_id : OPTIONAL label; INVERSE actual_port : SET[0:?] OF actual_physical_port FOR port_of; UNIQUE UR1: definition, id; END_ENTITY; ENTITY physical_instance_reference; description : OPTIONAL text_select; id : element_identifier; name : label; reference_for_instance : physical_instance; END_ENTITY; |
ENTITY physical_link_definition SUBTYPE OF (general_physical_definition) ; END_ENTITY; ENTITY physical_node_definition SUBTYPE OF (general_physical_definition) ; END_ENTITY; ENTITY physical_port ABSTRACT SUPERTYPE OF ( ONEOF(actual_physical_port, formal_physical_port) ) ; description : OPTIONAL text_select; direction : label; name : label; END_ENTITY; ENTITY physical_reference_configuration; description : OPTIONAL text_select; END_ENTITY; ENTITY physical_reference_relationship; child : physical_instance_reference; mirror_of : physical_composition_relationship; parent : physical_instance_reference; valid_configuration : physical_reference_configuration; END_ENTITY; ENTITY plus_minus_bounds; distribution_function : OPTIONAL textual_specification; limited_value : nominal_value; lower_bound : NUMBER; significant_digits : OPTIONAL INTEGER; upper_bound : NUMBER; END_ENTITY; |
ENTITY project; actual_end_date : OPTIONAL date_time; actual_start_date : OPTIONAL date_time; description : OPTIONAL text_select; id : element_identifier; name : label; planned_end_date : OPTIONAL period_or_date_select; planned_start_date : OPTIONAL event_or_date_select; work_program : SET[0:?] OF engineering_process_activity; END_ENTITY; ENTITY project_event_reference; description : OPTIONAL text_select; event_type : label; offset : value_with_unit; END_ENTITY; ENTITY project_relationship; description : OPTIONAL text_select; related : project; relating : project; relation_type : label; END_ENTITY; ENTITY property_assignment; assigned_to : property_assignment_select; assignment_rationale : OPTIONAL text_select; measurement_method : label; property : property_value; property_name : label; END_ENTITY; |
ENTITY property_definition; allowed_unit : SET[0:?] OF unit; description : OPTIONAL text_select; property_type : label; END_ENTITY; ENTITY property_relationship; description : OPTIONAL text_select; related : property_definition; relating : property_definition; relation_type : label; END_ENTITY; ENTITY property_value; definition : property_definition; property_value_name : label; specified_value : property_value_select; END_ENTITY; ENTITY property_value_function; defines_property_value_merit : property_value; function_specification : text_select; END_ENTITY; ENTITY property_value_relationship; related : property_value; relating : property_value; relation_description : OPTIONAL text_select; relation_type : label; END_ENTITY; |
ENTITY rank_assignment; assigned_rank : ranking_element; assigned_to_element : ranked_element_select; assignment_criteria : OPTIONAL label; assignment_description : OPTIONAL text_select; relevant_elements : rank_group; END_ENTITY; ENTITY rank_group; classification_criteria : ranking_type; name : label; INVERSE compared_element : SET[0:?] OF rank_assignment FOR relevant_elements; END_ENTITY; ENTITY rank_relation; higher_rank : ranking_element; lower_rank : ranking_element; END_ENTITY; ENTITY ranking_element; description : OPTIONAL text_select; name : label; INVERSE higher_ranked_element : SET[0:?] OF rank_relation FOR lower_rank; lower_ranked_element : SET[0:?] OF rank_relation FOR higher_rank; END_ENTITY; ENTITY ranking_system; description : OPTIONAL text_select; highest_rank : ranking_element; name : label; END_ENTITY; ENTITY real_data_type_definition SUBTYPE OF (elementary_maths_space) ; END_ENTITY; |
ENTITY real_interval ABSTRACT SUPERTYPE OF ( ONEOF(finite_real_interval, hibound_real_interval, lobound_real_interval) ) SUBTYPE OF (maths_space) ; END_ENTITY; ENTITY realized_system; description : text_select; id : element_identifier; name : label; realization_of : system_instance; UNIQUE UR1: id, realisation_of; END_ENTITY; ENTITY realized_system_composition_relationship; component : realized_system; description : text_select; mirror_of : system_composition_relationship; system : realized_system; END_ENTITY; ENTITY record_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; END_ENTITY; ENTITY record_data_type_member; child : data_field; parent : record_data_type_definition; END_ENTITY; ENTITY recursive_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; redefines : data_type_definition_select; END_ENTITY; |
ENTITY requirement_allocation_property_relationship; allocated_requirement : requirement_allocation_relationship; define_property_value : property_value; description : OPTIONAL text_select; END_ENTITY; ENTITY requirement_allocation_relationship SUPERTYPE OF ( specific_requirement_allocation_relationship ) ; description : OPTIONAL text_select; relation_to : requirement_allocation_select; requirement : requirement_instance; role : label; END_ENTITY; ENTITY requirement_class; description : OPTIONAL text_select; id : element_identifier; name : label; UNIQUE UR1: id; END_ENTITY; ENTITY requirement_class_relationship; description : OPTIONAL text_select; related_class : requirement_class; relating_class : requirement_class; relationship_type : label; END_ENTITY; ENTITY requirement_composition_relationship; child_requirement : requirement_occurence; description : OPTIONAL text_select; index : label; parent_definition : requirement_definition; UNIQUE UR1: index, parent_definition; END_ENTITY; |
ENTITY requirement_definition ABSTRACT SUPERTYPE OF ( ONEOF(model_defined_requirement_definition, structured_requirement_definition, textual_requirement_definition) ) ; associated_version : configuration_element_version; id : element_identifier; name : OPTIONAL label; INVERSE composed_of : SET[0:?] OF requirement_composition_relationship FOR parent_definition; in_requirement_class : SET[0:1] OF requirement_requirement_class_assignment FOR requirement; UNIQUE UR1: id; END_ENTITY; ENTITY requirement_instance; definition : requirement_occurence; id : element_identifier; name : label; INVERSE implied_external : SET[0:?] OF implied_external_interaction FOR associated_requirement; UNIQUE UR1: definition, id; END_ENTITY; ENTITY requirement_occurence; definition : requirement_definition; id : element_identifier; name : label; INVERSE child_of : SET[0:?] OF requirement_composition_relationship FOR child_requirement; UNIQUE UR1: definition, id; END_ENTITY; |
ENTITY requirement_relationship; description : OPTIONAL text_select; relationship_type : label; END_ENTITY; ENTITY requirement_relationship_context_assignment; assigned_requirement_relationship : assigned_requirement_relationship_select; description : OPTIONAL text_select; system_context : system_view; END_ENTITY; ENTITY requirement_relationship_input_assignment; assigned_instance : requirement_instance; input_requirement : requirement_relationship; END_ENTITY; ENTITY requirement_relationship_resulting_relationship; motivation : OPTIONAL text_select; requirement_relationship : requirement_relationship; resulting_requirement : requirement_instance; role : label; END_ENTITY; ENTITY requirement_requirement_class_assignment; class : requirement_class; motivation : OPTIONAL text_select; requirement : requirement_definition; END_ENTITY; ENTITY requirement_system_view_assignment SUPERTYPE OF ( root_requirement_system_view_assignment ) ; description : OPTIONAL text_select; requirement : requirement_instance; system_view : system_view; END_ENTITY; |
ENTITY requirement_traces_to_requirement_relationship; motivation : OPTIONAL text_select; source_requirement : requirement_instance; traced_requirement : requirement_instance; valid_context : system_definition; END_ENTITY; ENTITY root_requirement_system_view_assignment SUBTYPE OF (requirement_system_view_assignment) ; index : label; UNIQUE UR1: index, system_view; END_ENTITY; ENTITY selection_package SUBTYPE OF (package) ; selection_type : label; END_ENTITY; ENTITY single_cardinality; defined_value : single_cardinality_select; END_ENTITY; ENTITY specific_requirement_allocation_relationship SUBTYPE OF (requirement_allocation_relationship) ; specific_element : specific_element_select; WHERE WR1: 'SYSTEMS_ENGINEERING_DATA_REPRESENTATION.FUNCTIONALITY_INSTANCE_REFERENCE' IN TYPEOF(SELF\requirement_allocation_relationship.relation_to); END_ENTITY; ENTITY specification_state_assignment; assigned_to : fsm_state; specification : textual_specification; END_ENTITY; |
ENTITY start_order SUBTYPE OF (work_order) ; start_order_type : label; END_ENTITY; ENTITY start_request SUBTYPE OF (work_request) ; request_type : label; END_ENTITY; ENTITY state_context_relationship; in_context : generic_state_context; state : fsm_generic_state; END_ENTITY; ENTITY state_function_interaction_port; port_of : functional_state_context; END_ENTITY; ENTITY state_machine_functional_behaviour_model SUBTYPE OF (functional_behaviour_model) ; INVERSE behaviour_constraint : SET[1:?] OF fsm_model FOR behaviour_model; END_ENTITY; ENTITY state_transition_specification_assignment; assigned_to : fsm_state_transition; specification : textual_specification; END_ENTITY; ENTITY string_data_type_definition SUBTYPE OF (elementary_maths_space) ; size : OPTIONAL finite_integer_interval; END_ENTITY; |
ENTITY structured_requirement_definition SUBTYPE OF (requirement_definition) ; required_characteristic : property_value; END_ENTITY; ENTITY system_composition_relationship; component_system : system_instance; decomposed_system : system_definition; description : OPTIONAL text_select; relationship_type : label; END_ENTITY; ENTITY system_definition SUBTYPE OF (system_view) ; life_cycle_stage : label; INVERSE assigned_to_system : SET[0:?] OF partial_system_view_relationship FOR system_definition_context; scenarios_for_system : SET[0:?] OF system_view_assignment FOR system_specification; END_ENTITY; ENTITY system_functional_configuration; functional_configuration : functional_reference_configuration; system : context_function_relationship; END_ENTITY; ENTITY system_instance; definition : system_definition; description : OPTIONAL text_select; id : element_identifier; name : label; UNIQUE UR1: definition, id; END_ENTITY; |
ENTITY system_instance_relationship; description : text_select; name : label; INVERSE connected_port : SET[2:?] OF system_instance_relationship_port FOR defined_relationship; END_ENTITY; ENTITY system_instance_relationship_port; cardinality : cardinality_association_select; defined_relationship : system_instance_relationship; port_of : system_instance; END_ENTITY; ENTITY system_instance_replication_relationship; rationale : OPTIONAL text_select; replaced_application : system_instance; replacing_application : system_instance; END_ENTITY; ENTITY system_physical_configuration; physical_configuration : physical_reference_configuration; system : context_physical_relationship; END_ENTITY; ENTITY system_substitution_relationship; base : system_composition_relationship; description : OPTIONAL text_select; substitute : system_composition_relationship; END_ENTITY; |
ENTITY system_view ABSTRACT SUPERTYPE OF ( ONEOF(partial_system_view, system_definition) ) ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; INVERSE system : SET[0:?] OF context_function_relationship FOR associated_context; UNIQUE UR1: id; WHERE WR1: at_most_one_system_function_assigned(SELF); END_ENTITY; ENTITY system_view_assignment; assigned_view : partial_system_view; assignment_comment : OPTIONAL text_select; system_specification : system_definition; END_ENTITY; ENTITY system_view_context; description : OPTIONAL text_select; fidelity : label; system_viewpoint : label; END_ENTITY; ENTITY textual_paragraph; element_value : LIST[1:?] OF text_elements; name : label; END_ENTITY; ENTITY textual_requirement_definition SUBTYPE OF (requirement_definition) ; description : text_select; END_ENTITY; |
ENTITY textual_section; element : LIST[1:?] OF textual_paragraph; name : label; END_ENTITY; ENTITY textual_specification; definition : text_select; definition_language : label; END_ENTITY; ENTITY textual_table; name : label; table_row : LIST[1:?] OF textual_section; END_ENTITY; ENTITY triggered_system_view_relationship SUBTYPE OF (partial_system_view_relationship) ; transition_condition : text; END_ENTITY; ENTITY undefined_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; END_ENTITY; ENTITY union_data_type_definition SUBTYPE OF (user_defined_data_type_definition) ; END_ENTITY; ENTITY union_data_type_member; child : data_field; parent : union_data_type_definition; END_ENTITY; ENTITY unit; unit_name : label; END_ENTITY; |
ENTITY user_defined_data_type_definition ABSTRACT SUPERTYPE OF ( ONEOF(abstract_data_type_definition, aggregate_data_type_definition, derived_data_type_definition, record_data_type_definition, recursive_data_type_definition, undefined_data_type_definition, union_data_type_definition) ) ; associated_version : configuration_element_version; description : OPTIONAL text_select; id : element_identifier; name : label; UNIQUE UR1: id; END_ENTITY; ENTITY value_limit SUBTYPE OF (value_with_unit) ; limit : NUMBER; limit_qualifier : label; END_ENTITY; ENTITY value_list; values : LIST[1:?] OF value_with_unit; END_ENTITY; ENTITY value_range SUBTYPE OF (value_with_unit) ; distribution_function : OPTIONAL textual_specification; lower_limit : NUMBER; upper_limit : NUMBER; END_ENTITY; ENTITY value_with_unit ABSTRACT SUPERTYPE OF ( ONEOF(nominal_value, value_limit, value_range) ) ; significant_digits : OPTIONAL INTEGER; unit_component : OPTIONAL unit; END_ENTITY; |
ENTITY verification_report_for_verification_specification; description : text_select; specific_verification_element : verification_specification_allocation; verification_report_entry : verification_result; END_ENTITY; ENTITY verification_result; description : text_select; id : element_identifier; name : label; system_under_verification : verification_specification_system_view_relationship; UNIQUE UR1: id, system_under_verification; END_ENTITY; ENTITY verification_specification; definition : requirement_occurence; description : OPTIONAL text_select; id : element_identifier; name : label; verification_method : label; END_ENTITY; ENTITY verification_specification_allocation; description : OPTIONAL text_select; relevant_for : verification_allocation_select; specification : verification_specification; END_ENTITY; ENTITY verification_specification_system_view_relationship; assigned_verification : verification_specification; description : OPTIONAL text_select; index : label; system_view : system_view; END_ENTITY; |
ENTITY view_relationship; child : graphics_view; parent : graphics_view; valid_in : multi_level_view; END_ENTITY; ENTITY visual_element ABSTRACT SUPERTYPE OF ( ONEOF(actual_port_position, formal_port_position, graphics_link, graphics_node) ) ; view : graphics_view; END_ENTITY; ENTITY work_order ABSTRACT SUPERTYPE OF ( ONEOF(change_order, start_order) ) ; description : OPTIONAL text_select; id : element_identifier; is_controlling : SET[1:?] OF engineering_process_activity; status : label; version_id : OPTIONAL element_identifier; END_ENTITY; ENTITY work_request ABSTRACT SUPERTYPE OF ( ONEOF(change_request, start_request) ) ; description : text_select; id : element_identifier; notified_person : SET[0:?] OF date_and_person_organization; requestor : date_and_person_organization; scope : SET[0:?] OF specification_element_select; status : label; version_id : OPTIONAL element_identifier; END_ENTITY; END_SCHEMA; |
(* ISO TC184/SC4/WG3 N1355 - ISO/PAS 20542 system engineering and design - EXPRESS ARM *) SCHEMA system_engineering_and_design_arm; TYPE approval_assignment_select = SELECT (change_report, configuration_element, configuration_element_version, critical_issue, critical_issue_impact, document_assignment, element_critical_issue_relationship, engineering_process_activity, instance_definition_select, package_element_assignment, partial_system_view_relationship, project, requirement_allocation_relationship, work_order, work_request); END_TYPE; TYPE assessment_assignment_select = SELECT (configuration_element_version, engineering_process_activity, instance_definition_select, project, requirement_allocation_relationship); END_TYPE; TYPE assigned_requirement_relationship_select = SELECT (requirement_allocation_relationship, requirement_relationship); END_TYPE; |
TYPE basic_identifier = STRING; END_TYPE; TYPE boolean_value = BOOLEAN; END_TYPE; TYPE buffer_synchronisation_enumeration = ENUMERATION OF (asynchronous, synchronouos); END_TYPE; TYPE cardinality_association_select = SELECT (cardinality_list, cardinality_range, single_cardinality); END_TYPE; TYPE causal_weight_select = SELECT (cb_transition_unbounded_weight, natural_number); END_TYPE; TYPE change_element_select = SELECT (instance_definition_select); END_TYPE; TYPE change_report_element_select = SELECT (instance_definition_select); END_TYPE; TYPE control_characters = ENUMERATION OF (cr, tab); END_TYPE; |
TYPE control_type_enumeration = ENUMERATION OF (activate, activate_deactivate); END_TYPE; TYPE data_composition_select = SELECT (actual_io_port, formal_io_port, io_composition_port); END_TYPE; TYPE data_direction = ENUMERATION OF (from_system, to_system); END_TYPE; TYPE data_type_definition_select = SELECT (maths_space, user_defined_data_type_definition); END_TYPE; TYPE data_type_value_select = SELECT (boolean_value, complex_value, compound_value, integer_value, logical_value, real_value, text); END_TYPE; |
TYPE date_assignment_select = SELECT (approval, approval_assignment, assessment, configuration_element, configuration_element_version, configuration_element_version_relationship, context_physical_relationship, critical_issue, critical_issue_impact, document_assignment, documentation_relationship, element_critical_issue_relationship, engineering_process_activity, engineering_process_activity_element_assignment, instance_definition_select, justification, justification_relationship, package_element_assignment, partial_system_view_relationship, project, requirement_allocation_relationship, requirement_system_view_assignment, work_order, work_request); END_TYPE; TYPE default_context_select = SELECT (fsm_generic_state, functional_state_context); END_TYPE; |
TYPE definition_select = SELECT (fsm_state, functional_state_context, general_function_definition, general_physical_definition, oo_view, system_view); END_TYPE; TYPE effective_element_select = SELECT (instance_definition_select, person_organization_assignment); END_TYPE; TYPE event_or_date_select = SELECT (date_time, project_event_reference); END_TYPE; TYPE external_element_select = SELECT (function_instance, physical_instance); END_TYPE; TYPE fsm_interaction_select = SELECT (initial_state_transition_specification_assignment, specification_state_assignment, state_transition_specification_assignment); END_TYPE; TYPE function_role_enumeration = ENUMERATION OF (external_element, system_function); END_TYPE; |
TYPE identifier = STRING; END_TYPE; TYPE instance_definition_select = SELECT (clock, clock_assignment_relationship, data_instance, documentation_reference, functionality_instance_reference, general_function_definition, general_functionality_instance, general_physical_definition, oo_model_element_select, physical_instance, physical_instance_reference, realized_system, requirement_definition, requirement_instance, system_instance, system_view); END_TYPE; TYPE integer_value = INTEGER; END_TYPE; TYPE issue_source_select = SELECT (instance_definition_select); END_TYPE; TYPE justification_assignment_select = SELECT (engineering_process_activity, instance_definition_select, partial_system_view_relationship, requirement_allocation_relationship); END_TYPE; |
TYPE label = STRING; END_TYPE; TYPE link_select = SELECT (cb_input_relationship, cb_output_relationship, clock_assignment_relationship, fsm_initial_state_transition, fsm_state_transition, functional_link, oo_action_state_transition, oo_component_allocation, oo_constraint_model_element_relationship, oo_dependency, oo_element_import, oo_element_residence, oo_extension, oo_generalization, oo_generic_association, oo_inclusion, oo_link, oo_message, oo_operation_interface_association, oo_signal_behavioural_feature_relationship, physical_instance); END_TYPE; TYPE logical_value = LOGICAL; END_TYPE; TYPE natural_number = INTEGER; WHERE WR1: SELF > 0; END_TYPE; |
TYPE node_select = SELECT (cb_place_reference, cb_transition_relationship, clock, fsm_state, general_functionality_instance, graphics_view, oo_action, oo_action_state, oo_actor, oo_association_class, oo_class, oo_component, oo_constraint, oo_interface, oo_object, oo_package, oo_send_action, oo_use_case, physical_instance, textual_paragraph); END_TYPE; TYPE oo_classifier_or_operation_select = SELECT (oo_classifier_select, oo_operation); END_TYPE; TYPE oo_classifier_select = SELECT (oo_actor, oo_class, oo_component, oo_interface, oo_signal, oo_use_case); END_TYPE; |
TYPE oo_extended_classifier_select = SELECT (oo_classifier_select, physical_instance); END_TYPE; TYPE oo_extended_model_element_select = SELECT (fsm_generic_state, generic_state_context, justification, oo_generalizable_element_select, oo_model_element_select); END_TYPE; TYPE oo_feature_select = SELECT (oo_attribute, oo_behavioural_feature); END_TYPE; TYPE oo_generalizable_element_select = SELECT (oo_collaboration, oo_extended_classifier_select, oo_generic_association, oo_package, oo_stereotype); END_TYPE; TYPE oo_instance_select = SELECT (oo_attribute_instance, oo_extended_classifier_select, oo_object); END_TYPE; |
TYPE oo_model_element_select = SELECT (oo_action, oo_constraint, oo_extension_point, oo_feature_select, oo_generic_association_end, oo_interaction, oo_link, oo_link_end, oo_message, oo_parameter, oo_relationship_select, oo_stimulus); END_TYPE; TYPE oo_namespace_select = SELECT (oo_collaboration, oo_extended_classifier_select, oo_package); END_TYPE; TYPE oo_relationship_select = SELECT (oo_dependency, oo_extension, oo_generalization, oo_generic_association, oo_inclusion); END_TYPE; TYPE package_element_select = SELECT (configuration_element, configuration_element_version, engineering_process_activity, instance_definition_select, project); END_TYPE; |
TYPE period_or_date_select = SELECT (date_time, project_event_reference, value_with_unit); END_TYPE; TYPE person_organization_assignment_select = SELECT (approval, approval_assignment, assessment, change_report, configuration_element, configuration_element_version, critical_issue, critical_issue_impact, document_assignment, element_critical_issue_relationship, engineering_process_activity, instance_definition_select, justification, justification_relationship, package_element_assignment, partial_system_view_relationship, project, requirement_allocation_relationship, requirement_system_view_assignment, work_order); END_TYPE; TYPE person_organization_select = SELECT (organization, person_in_organization); END_TYPE; |
TYPE physical_element_role_enumeration = ENUMERATION OF (external_element, system_element); END_TYPE; TYPE port_data_relation = ENUMERATION OF (consumer, producer); END_TYPE; TYPE port_position_select = SELECT (io_port, oo_generic_association_end, oo_link_end, physical_port); END_TYPE; TYPE port_type = ENUMERATION OF (control, input, mechanism, output); END_TYPE; TYPE property_assignment_select = SELECT (data_instance, documentation_reference, functionality_instance_reference, general_function_definition, general_physical_definition, oo_model_element_select, package, physical_instance_reference, realized_system, requirement_definition, system_view); END_TYPE; |
TYPE property_value_select = SELECT (boolean_value, text_select, value_list, value_with_unit); END_TYPE; TYPE ranked_element_select = SELECT (critical_issue_impact, effectiveness_measure, instance_definition_select); END_TYPE; TYPE ranking_type = ENUMERATION OF (cost, criticality, priority, project_criticality); END_TYPE; TYPE real_value = REAL; END_TYPE; TYPE requirement_allocation_select = SELECT (data_instance, functional_link_reference, functionality_instance_reference, functionality_reference_relationship, oo_model_element_select, physical_instance_reference); END_TYPE; TYPE single_cardinality_select = SELECT (infinite_cardinality, natural_number); END_TYPE; |
TYPE specific_element_select = SELECT (cb_place, fsm_generic_state); END_TYPE; TYPE specification_element_select = SELECT (change_report, critical_issue, critical_issue_impact, instance_definition_select); END_TYPE; TYPE system_select = SELECT (system_instance, system_view); END_TYPE; TYPE text = STRING; END_TYPE; TYPE text_elements = SELECT (control_characters, text); END_TYPE; TYPE text_select = SELECT (text, textual_paragraph, textual_section, textual_table); END_TYPE; |
TYPE timing_type = ENUMERATION OF (best_case, nominal_case, worst_case); END_TYPE; TYPE trigger_type_enumeration = ENUMERATION OF (flank, level); END_TYPE; TYPE verification_allocation_select = SELECT (functionality_instance_reference, physical_instance_reference, realized_system, requirement_instance, system_instance); END_TYPE; (* An Abstract_data_type_definition is type of User_defined_data_type_definition that may have the value of any, all or none of its members. *) ENTITY abstract_data_type_definition SUBTYPE OF (user_defined_data_type_definition); END_ENTITY; (* An Abstract_data_type_member is a relationship between an Abstract_data_type_definition and a Data_instance it contains. The members of an Abstract_data_type_definition are independent of each other. *) ENTITY abstract_data_type_member; (* The child specifies the Data_instance object in the relationship. *) child : data_instance; (* The parent specifies the Abstract_data_type_definition object in the relationship. *) parent : abstract_data_type_definition; END_ENTITY; |
(* An Actual_io_port is a type of Io_port and an element of the interface of a General_functionality_instance object. An Actual_io_port defines an input or an output parameter to the General_functionality_instance object it is referring to via the port_of attribute. <note>Flow ports are classified according to three criteria in the data model:<ol><li>Whether the port is formal (attached to a General_function_definition type object) or actual (attached to a General_functionality_instance type object).</li><li>Whether the port is an input or output port.</li><li>Whether the port is a flow or control port (a flow port carries data whereas control port carries triggering information such as start, stop, suspend, resume). This kind of port is further defined in control_io_port</li><p>From this classification, the role a port plays with regard to the Flow objects connected to the port can be derived. A port can "consume" io data (the data on the flow is delivered to the port) or it can "produce" io data (the data on the flow is delivered from the port).</p><p>For instance, a Formal_io_port whose direction attribute is "input" produces data, while an Actual_io_port whose direction attribute is "input" consumes data. In the data model this information is captured in the derived attribute role.</p><p>This attribute is used to ensure that Io objects are connected correctly (an io object must have one producer and one consumer), and that Io_port_binding objects applied only to ports where the actual_port in the binding is a producer of information and the formal_port in the binding is a consumer or vice versa.</p></note> *) ENTITY actual_io_port SUBTYPE OF (io_port); (* The port_of specifies the General_functionality_instance object of which the port_of is part. *) port_of : general_functionality_instance; DERIVE (* The role specifies one of 'producer', or 'consumer'. *) SELF\io_port.role : port_data_relation := determineactualportrole(SELF); INVERSE (* The assigned_to specifies the Actual_io_port object to which the Io_buffer is assigned. *) assigned_buffer : SET [0 : 1] OF io_buffer FOR assigned_to; UNIQUE UR1: port_of, SELF\io_port.io_port_number, SELF\io_port.port_type; END_ENTITY; |
(* An Actual_physical_port is a type of Physical_port that represents an element in the interface of a Physical_instance object. The direction of the io objects using the interface is not specified by the Actual_physical_port. *) ENTITY actual_physical_port SUBTYPE OF (physical_port); (* The port_of specifies the Physical_instance for which the port_of provides part of the interface. *) port_of : physical_instance; END_ENTITY; (* An Actual_port_position is a type of Visual_element and the representation of the graphical position of an Actual_io_port or an Actual_physical_port object. The position is represented by a Graphics_point object. Because the actual port may have many different positions (the object the port is a port_of can be a physically extended object, such as a rectangle, rather than a single point) the Actual_port_position shall point to a position that is on the border of the Graphics_node of the object the port is associated with. <note>This rule is not formalized in EXPRESS.</note> *) ENTITY actual_port_position SUBTYPE OF (visual_element); (* The assigned_to specifies the graphics_node that provides visual presentation information for the Actual_port_position. *) assigned_to : graphics_node; (* The position specifies the visual placement of the port. *) position : graphics_point; (* The positioned_port specifies the port for which the visual placement information is valid. *) positioned_port : port_position_select; END_ENTITY; |
(* An Address is an address of either a Person or an Organization. All attributes of an Address are optional. However an Address object must have at least one non empty attribute. <note>This entity is taken directly from the PDM Schema. Should probably be abstracted away from ARM level.</note> *) ENTITY address; (* The country specifies the country of the Address. *) country : OPTIONAL label; (* The electronic_mail_address specifies an electronic address associated with this Address. *) electronic_mail_address : OPTIONAL label; (* The facsimile_number specifies a fax associated with this Address. *) facsimile_number : OPTIONAL label; (* The internal_location specifies a specific location within the Address. <example number="1">An internal_location may be a room number or a floor of a building.</example> *) internal_location : OPTIONAL label; (* The postbox_number specifies a postbox associated with the Address. *) postbox_number : OPTIONAL label; (* The postcode specifies a postcode associated with the Address. *) postcode : OPTIONAL label; (* The region specifies a region associated with the Address. *) region : OPTIONAL label; (* The street specifies a street associated with the Address. *) street : OPTIONAL label; (* The street_number specifies a street number associated with the Address.. *) street_number : OPTIONAL label; (* The telephone_number specifies a telephone number associated with the Address. *) telephone_number : OPTIONAL label; (* The telex_number specifies a telex number associated with the Address. *) telex_number : OPTIONAL label; (* The town specifies a town associated with the Address. *) town : OPTIONAL label; END_ENTITY; |
(* An Aggregate_data_type_definition is is a type of User_defined_data_type_definition that comprises a list (or lists) of values. *) ENTITY aggregate_data_type_definition SUBTYPE OF (user_defined_data_type_definition); (* The aggregate_type attribute specifies the values that each element in the list can take. *) aggregate_type : data_type_definition_select; (* The bound specifies the ordered set of elements of the Aggregate_data_type_definition. It is assumed, for the purposes of assigning compound values, that the aggregate is stored in row order. *) bound : LIST [1 : ?] OF integer_interval; END_ENTITY; (* An Approval is a judgement concerning the quality of those product data that are subject to approval. An Approval represents a formal statement made by technical personnel or management personnel regarding whether or not certain requirements are perceived to be met by the reviewing body. <note number="1">This needs to be reviewed for applicability of text</note> <note number="2">This entity is from the PDM schema.</note> *) ENTITY approval; (* The level indicates the kind of activity that may be performed and granted by the Approval. Where applicable, the following values shall be used: <ul><li>disposition: The approved object is approved for series production;</li><li>equipment order: The approved object has reached a status in which changes are subject to a defined change process and tools and other equipment required for production may be ordered;</li><li>planning: The approved object is technically complete and has reached a status sufficiently stable so that other designs may be based on it.</li></ul> *) level : OPTIONAL label; (* The status specifies the judgement made about the product data that is the subject of this Approval. *) status : label; END_ENTITY; |
(* An Approval_assignment is the assignment of an Approval to an element of a system specification. *) ENTITY approval_assignment; (* The assigned_approval specifies the Approval that is assigned. *) assigned_approval : approval; (* The assigned_to specifies the system engineering specification element for which the Approval_assignment is valid. *) assigned_to : approval_assignment_select; (* The description specifies additional information about the Approval_assignment. *) description : OPTIONAL text_select; (* The status specifies the judgement made about the system engineering specification element that is the subject of this Approval_assignment. *) status : label; END_ENTITY; (* An Approval_person_organization is the relation between an approval and the juridical person involved in the approval. The semantics of the relation is further defined by the role attribute. *) ENTITY approval_person_organization; (* The authorized_approval specifies the approval for the Approval_person_organization. *) authorized_approval : approval; (* The person_organization specifies the juridical authority involved in the Approval_person_organization. *) person_organization : person_organization_select; (* The role specifies the semantics of the Approval_person_organization.<p>Where applicable one of the following values shall be used:</p><ul><li>project responsible: The person approving is doing so in the role of being responsible for the project to which the system specification element belongs;</li><li>verification responsible: The person approving is doing so in the role of being responsible for verification of the specification element.</li></ul> *) role : label; END_ENTITY; |
(* An Approval_relationship is a relationship between two Approval objects. <note>Attribute for defining the semantics of the relation shall be added.</note> *) ENTITY approval_relationship; (* The description specifies additional information about the Approval_relationship. *) description : OPTIONAL text_select; (* The related_approval specifies the second Approval in the relationship. *) related_approval : approval; (* The relating_approval specifies the first Approval in the relationship. *) relating_approval : approval; (* The relation_type specifies the nature of the Approval_relationship. *) relation_type : label; END_ENTITY; (* An Assessment is an evaluation of the status of an element of a systems engineering specification during its development. The semantics of the estimation is given by the assessment_type attribute. *) ENTITY assessment; (* The assessed_level specifies the assessed value. *) assessed_level : label; (* The assessment_type specifies the type and purpose of estimation performed. Where applicable the following values shall be used:<ul><li>maturity: The Assessment is an estimation of the maturity of the element;</li><li>completeness: The Assessment is an estimation of the level of completeness of the assigned element;</li><li>risk: The Assessment is an estimation of the project risk associated with the assigned element;</li> <li>stability: The Assessment is an estimation of the stability of the assigned element.</ul> *) assessment_type : label; (* The assigned_to specifies the system engineering specification element for which the Assessment is valid. *) assigned_to : assessment_assignment_select; (* The description specifies additional information about the Assessment. *) description : OPTIONAL text_select; END_ENTITY; |
(* An Assessment_relationship is a relationship between two Assessment objects. The semantics of the relationship are defined by the relationship_type attribute. *) ENTITY assessment_relationship; (* The description specifies additional information about the Assessment_relationship. *) description : OPTIONAL text_select; (* The related specifies the second of the two Assessment objects involved in the relationship. *) related : assessment; (* The relating specifies the first of the two Assessment objects involved in the relationship. *) relating : assessment; (* The relationship_type specifies the semantics of the Assessment_relationship. Where applicable one of the following values shall be used: <ul> <li>replacement: The relating Assessment is replacing the related Assessment;</li><li>conflict: The relating Assessment identified as being in conflict with the related Assessment;</li> <li>complement: The relating Assessment identified as complementary to the related Assessment.</li></ul> *) relationship_type : label; END_ENTITY; (* A Bi_directional_port_indicator is a mechanism for relating two Io_port objects that consume and produce the same data_instance object. <note number="1">The Bi_directional_port_indicator is the mechanism for representing bi-directional ports using pairs of Io_port objects. The consuming_port and the producing_port shall identify the same Data_instance via the data attribute. Moreover, the Io_port defined by the producing_port attribute shall produce Data_instance objects, and the Io_port defined by the consuming_port attribute shall produce Data_instance objects.</note> <note number="2">The port_of attribute of both Io_port objects in the Bi_directional_port_indicator must connect to the same functional object, that is either a General_functionality_instance or a General_function_definition.</note> *) ENTITY bi_directional_port_indicator; (* The consuming_port specifies the Io_port in the Bi_directional_port_indicator that identifies the port that consumes the data. *) consuming_port : io_port; (* The producing_port specifies the Io_port in the Bi_directional_port_indicator that identifies the port that produces the data. *) producing_port : io_port; END_ENTITY; |
(* A Binary_data_type_definition is a type of Elementary_maths_space that contains the values from 0 to 2n -1, where n is the size (or number of bits) of the data type. <note>It is often the case with data bus signals that many pieces of information are packed into a single word.</note><example number="2">An eight bit word is subdivided to carry four pieces of information about a pump.<ul><li>bits 1-3 identify the pump (system contains 8 pumps numbered 0 - 7)</li><li>bits 4-6 carry the status of the pump (pump can be in one of 8 states numbered 0 - 7).</li><li>bit 7 indicates the direction the pump is pumping in (0 - forewards, 1 - backwards),</li><li>bit 8 indicates whether the pump is switched on or off (0 - off, 1 - on). </li></ul></example>A group of bits is not an aggregate. The bits form a single value and they have a position within a word. Typically the producer and receiver of the data use bit masks to manipulate parts of the word data. *) ENTITY binary_data_type_definition SUBTYPE OF (elementary_maths_space); (* The size specifies a finite interval that defines the maximum length of a Binary_data_type_definition. *) size : finite_integer_interval; END_ENTITY; (* A Boolean_data_type_definition is a type of Elementary_maths_space whose value range is TRUE or FALSE. *) ENTITY boolean_data_type_definition SUBTYPE OF (elementary_maths_space); END_ENTITY; (* A Cardinality_list is a definition of a valid cardinality range. *) ENTITY cardinality_list; (* The range specifies a strictly increasing non overlapping list of Cardinality_range objects that specifies valid intervals for the Cardinality_list. *) range : LIST [2 : ?] OF cardinality_range; END_ENTITY; |
(* A Cardinality_range is a pair of values defining the valid lower and upper bounds of an interval. The value of the lower_bound shall be less than or equal to the higher_bound value. The value domain of the attributes is that of the natural numbers. *) ENTITY cardinality_range; (* The lower_bound specifies the lower bound in the interval. *) lower_bound : single_cardinality; (* The upper_bound specifies the upper bound in the interval. *) upper_bound : single_cardinality; END_ENTITY; (* A Causal_block_bound is the relationship between two Cb_transition_relationship objects indicating the scope of a branch in a Cb_functional_behaviour_model.<note>This entity is an extension to the Petri-nets formalism and is required for correct representation of parallel and conditional branches in a causal chain model.</note> *) ENTITY causal_block_bound; (* The initial_transition specifies the initial Cb_transition_relationship of the block. *) initial_transition : cb_transition_relationship; (* The terminal_transition specifies final Cb_transition_relationship of the block. *) terminal_transition : cb_transition_relationship; END_ENTITY; (* A cb_completion_alternative is the representation of the final Cb_functional_place for an execution thread in a Cb_functional_behaviour_model. The final Cb_functional_place in the behaviour model is identified by the final model element attribute. In cases where there are two or more final Cb_functional_place objects (where each is the final Cb_functional_place object of an execution thread) there shall be one cb_completion_alternative instantiated for each thread.<note>The cb_completion_alternative has been introduced to allow mappping of multiple exit conditions from a decomposed function to the appropriate exit conditions in the composition.</note> *) ENTITY cb_completion_alternative; (* The completes_model specifies the Cb_functional_behaviour_model for which the completes_model specifies the exit statement. *) completes_model : cb_functional_behaviour_model; (* The final_model_element specifies the Cb_functional_place which is the last in an execution thread for a Cb_functional_behaviour_model. *) final_model_element : cb_functional_place; END_ENTITY; |
(* A Cb_completion_alternative_mapping is the mechanism for associating a Cb_completion_alternative of a decomposed function with the equivalent Cb_functional_place at a higher level of completion. <note>A Cb_completion_alternative_mapping specifies the mapping between a Cb_completion_alternative of a Cb_functional_behaviour_model and a Cb_functional_transition. The semantics are that the selection of a completion alternative in a composed function shall be interpreted as the selection of the Cb_functional_transition at one level higher in the composition.</note> *) ENTITY cb_completion_alternative_mapping; (* The child_completion_criterion specifies the Cb_completion_alternative in the Cb_completion_alternative_mapping. *) child_completion_criterion : cb_completion_alternative; (* The equivalent_transition is the Cb_functional_transition to which the child_completion_criterion is mapped to by the Cb_completion_alternative_mapping. *) equivalent_transition : cb_functional_transition; (* The scope specifies the Cb_place_function_association of the Cb_completion_alternative_mapping. *) scope : cb_place_function_association; END_ENTITY; (* A Cb_firing_condition is a specification of a condition that must be fulfilled to allow firing a transition in a Cb_functional_behaviour_model. <note>A cb_firing_condition is associated with the Cb_output_relationship preceding the Cb_transition object that shall be fired when the condition is fulfilled.</note> *) ENTITY cb_firing_condition; (* The condition_definition specifies the condition that shall be fulfilled for firing a transition. *) condition_definition : textual_specification; (* The guarded_transition specifies the Cb_output_relationship to which the Cb_transition applies. *) guarded_transition : cb_transition; END_ENTITY; |
(* A Cb_functional_behaviour_model is a type of Functional_behaviour_model and a behaviour model that defines partial function ordering, such as function sequence, concurrency or branching among functions.<note number="1">When assigned to a Composite_function_definition, functional behaviour is defined by the functional interaction model of the Composite_function_definition and the cb_functional_behaviour_model in combination.</note> <note number="2">The building blocks of a cb_functional_behaviour_model equal that of a Petri-nets. It is built from Cb_place, Cb_transition, Cb_input_relationship and Cb_output_relationship.</note> *) ENTITY cb_functional_behaviour_model SUBTYPE OF (functional_behaviour_model); (* The model_boundedness specifies the maximum number of tokens allowed per Cb_place in the Cb_functional_behaviour_model. <note number="3">For causal formalisms popular among systems engineers - FFDB and Behaviour diagrams - model boundedness is 1, except if the replication concept is used in a model, in this case the model_boundedness is the maximum number of threads in the replicated structure.</note> *) model_boundedness : label; (* The model_type specifies the type of behaviour model that is realized by the Cb_functional_behaviour_model and the Composite_function_definition in combination. *) model_type : label; INVERSE (* The behaviour_model specifies the Cb_functional_behaviour_model of which the Cb_functional_place is a part. *) constituent_places : SET [1 : ?] OF cb_functional_place FOR behaviour_model; (* The behaviour_model specifies the Cb_functional_behaviour_model of which the Cb_functional_transition is a part. *) constituent_transitions : SET [2 : ?] OF cb_functional_transition FOR behaviour_model; END_ENTITY; |
(* A Cb_functional_place is a type of Cb_place specialized to capture static states of a functional_behaviour_model. <note><p>A causal behaviour specification is built by connecting Cb_functional_place and Cb_functional_transition objects using Cb_input_relationship and Cb_output_relationship objects. If more than one Cb_output_relationship objects are connected to a Cb_functional_transition this means that this is the first element in a parallel branch in the behaviour specification.</p><p>If more than one Cb_input_relationship object is connected to a Cb_functional_transition, this means that this is the termination of a parallel branch. Alternative threads can be specified by assigning several Cb_output_relationship objects to a single cb_functional_place. Similarly, termination of alternate threads is specified by connecting several Cb_input_relationship objects to a Cb_functional_place object.</p></note> *) ENTITY cb_functional_place SUBTYPE OF (cb_place); (* The behaviour_model specifies the Cb_functional_behaviour_model of which the Cb_functional_place is a part. *) behaviour_model : cb_functional_behaviour_model; INVERSE (* The functional_place_reference specifies the Cb_functional_place for which the Cb_place_reference is defined. *) reference_information : SET [0 : 1] OF cb_place_reference FOR functional_place_reference; END_ENTITY; |
(* A Cb_functional_transition a type of Cb_transition specialized to define a transient node in a Cb_functional_behaviour_model. <note><p>A causal behaviour specification is built by connecting Cb_functional_place and Cb_functional_transition objects using Cb_input_relationship and Cb_output_relationship objects. If more than one Cb_output_relationship objects are connected to a Cb_functional_transition, this means that this is the first element in a parallel branch in the behaviour specification.</p><p>If more than one Cb_input_relationship object is connected to a Cb_functional_transition, this means that this is the termination of a parallel branch. Alternative threads can be specified by assigning several Cb_output_relationship objects to a single Cb_functional_place. Similarly, termination of alternate threads is specified by connecting several Cb_input_relationship objects to a Cb_place.</p></note> *) ENTITY cb_functional_transition SUBTYPE OF (cb_transition); (* The behaviour_model specifies the Cb_functional_behaviour_model of which the Cb_functional_transition is a part. *) behaviour_model : cb_functional_behaviour_model; INVERSE (* The related_transition specifies the set of Cb_transition objects that is involved in the Cb_functional_transition. *) transition_relationship : SET [0 : 1] OF cb_transition_relationship FOR related_transition; END_ENTITY; (* A Cb_initial_marking is an indication that a Cb_place in a Cb_functional_behaviour_model is part of the initial condition of the behaviour model. *) ENTITY cb_initial_marking; (* The marked_place specifies the Cb_place that is part of the initial condition of the Cb_functional_behaviour_model. *) marked_place : cb_place; (* The number_of_tokens specifies the number of tokens initially assigned to the marked_place. *) number_of_tokens : INTEGER; END_ENTITY; |
(* A Cb_input_relationship is the unidirectional relationship from a Cb_place to a Cb_transition indicating a causality constraint between the Cb_place and the Cb_transition. <note number="1">The causal_weight attribute specifies the number of tokens required to fire the transition.</note> <note number="2">In established Petri-nets terminology, the Cb_input_relationship corresponds to an input arc.</note> *) ENTITY cb_input_relationship; (* The causal_weight specifies the number of tokens in the Cb_place that are required to fire the transition. Causal_weight is a natural number. *) causal_weight : causal_weight_select; (* The destination_transition specifies the Cb_transition in the relationship. *) destination_transition : cb_transition; (* The source_place specifies the Cb_place in the relationship. *) source_place : cb_place; END_ENTITY; (* An Cb_output_relationship is the unidirectional relationship from a Cb_transition to a Cb_place indicating a causality constraint between the Cb_transition and the Cb_place. <note number="1">In established Petri-nets terminology the cb_output_relationship corresponds to an output arc. If the transition is fired the causal_weight attribute defines how many tokens will be generated in the destination place.</note> *) ENTITY cb_output_relationship; (* The causal_weight specifies the number of tokens that is generated in the destination_place. <note number="2"> For all non-Petri-nets applications the causal_weight attribute shall be set to 1. The same holds for safe Petri-nets. </note> *) causal_weight : causal_weight_select; (* The destination_place specifies the Cb_place that is entered as a consequence of firing the Cb_transition defined by the source_transition. *) destination_place : cb_place; (* The source_transition specifies the Cb_transition from which the source_transition originates. *) source_transition : cb_transition; END_ENTITY; |
(* A Cb_place is the definition of a static state in a causal functional behaviour model.<note>In Petri-nets terminology a cb_place is a place.</note> *) ENTITY cb_place ABSTRACT SUPERTYPE OF (ONEOF(cb_functional_place, oo_action_state)); (* The description specifies additional information about the Cb_place. *) description : OPTIONAL text_select; (* The place_label specifies the word, or words, which are used to refer to the Cb_place. *) place_label : OPTIONAL label; INVERSE (* The marked_place specifies the Cb_place that is part of the initial condition of the Cb_functional_behaviour_model. *) initial_marking : SET [0 : 1] OF cb_initial_marking FOR marked_place; END_ENTITY; (* A Cb_place_function_association is the association of a Function_instance with a Cb_place such that the function activation is controlled by the Cb_place. <note>There need not be a one to one correspondence between Cb_place and Function_instance objects. A Cb_place object with no Function_instance object assigned indicate a placeholder for thread synchronisation.</note> *) ENTITY cb_place_function_association; (* The causal_place specifies the Cb_place in the relationship. *) causal_place : cb_functional_place; (* The controls_function specifies the Function_instance in the relationship. *) controls_function : function_instance; INVERSE (* The scope specifies the Cb_place_function_association of the Cb_completion_alternative_mapping. *) completion_mapping : SET [0 : ?] OF cb_completion_alternative_mapping FOR scope; END_ENTITY; |
(* A Cb_place_reference is the mechanism for associating additional information with a Cb_place. The semantics are further defined by the reference_type attribute. <note number="1">The Cb_place_reference is the mechanism for indicating that a particular Cb_place shall be annotated with a specific syntax symbol. It is primarily inserted to support FFBD and Behaviour diagram concepts.</note> *) ENTITY cb_place_reference; (* The functional_place_reference specifies the Cb_functional_place for which the Cb_place_reference is defined. *) functional_place_reference : cb_functional_place; (* The reference_type specifies the sematics of the reference_type. Where applicable one of the following values shall be used:<note number="2">The preferred values listed are included to allow for a correct representation of FFBD and Behaviour diagrams. The mani purpose is to indicate the exits of loops or the terminiation of an execution thread.</note><ul><li>thread_terminiation: The Cb_place indicated by the functional_place_reference attribute is the final element in an execution thread;</li><li>loop_exit: The Cb_place indicated by the functional_place_reference attribute is the final element in a loop.</li></ul> *) reference_type : label; END_ENTITY; (* A Cb_transition is a transient node in a causal behaviour model.<note>In Petri-net terminology, a Cb_transition is a transition.</note> *) ENTITY cb_transition ABSTRACT SUPERTYPE OF (ONEOF(cb_functional_transition, oo_action_state_transition)); (* The description specifies additional textual information for the Cb_transition. *) description : OPTIONAL text_select; (* The transition_label specifies the word, or words, that are used to refer to the Cb_transition. *) transition_label : OPTIONAL label; INVERSE (* The guarded_transition specifies the Cb_output_relationship to which the Cb_transition applies. *) guarded_by : SET [0 : 1] OF cb_firing_condition FOR guarded_transition; END_ENTITY; |
(* A Cb_transition_relationship is the relationship between two Cb_transition objects. <note number="1">The intention with this entity is to group selective branches in a causal chain. The semantics can also be captured by extending the entity Causal_block_bound slightly.</note> <note number="2">This entity shall probably be removed from the model.</note> *) ENTITY cb_transition_relationship; (* The related_transition specifies the set of Cb_transition objects that is involved in the Cb_functional_transition. *) related_transition : SET [1 : ?] OF cb_functional_transition; (* The relationship_type specifies the nature of the relationship. Where applicable the relationship_type shall be one of the following:<ul> <li>or: The Cb_transition_relationship represents a set of Cb_functional_transition (see ISO/WD PAS 20542 clause 4.2.25) objects that indicate the start or an end of a selective structure.</li> </ul> <note number="3">This corresponds to an IF .. THEN .. ELSE statement in programming languages</note> <ul> <li>and: The Cb_transition_relationship represents a set of Cb_functional_transition objects that indicate the start or an end of a concurrent structure;</li> <li>loop: The Cb_transition_relationship represents a set of Cb_functional_transition objects that indicate the start or an end of a fixed loop structure.</li> </ul> <note number="4">For the loop keyword it is assumed that the number of iterations in the loop is hardcoded.</note> <ul><li>iteration: The Cb_transition_relationship represents a set of Cb_functional_transition objects that indicate the start or an end of a iterative structure where the exit condition is evaluated dynamically;</li><li>replication: The Cb_transition_relationship represents a set of Cb_functional_transition objects that indicate the start or an end of a replicated structure.</li></ul><note number="5">Replication is the representation of a multiple functional execution threads using a single functional structure.</note> *) relationship_type : label; INVERSE (* The terminal_transition specifies final Cb_transition_relationship of the block. *) end_bound : SET [0 : 1] OF causal_block_bound FOR terminal_transition; (* The initial_transition specifies the initial Cb_transition_relationship of the block. *) start_bound : SET [0 : 1] OF causal_block_bound FOR initial_transition; END_ENTITY; |
(* A Cb_transition_unbounded_weight is the mechanism to indicate that the boundedness of a Cb_input_relationship or Cb_output_relationship is defined at run-time. The boundedness defined by Cb_transition_unbounded_weight is a natural number larger or equal to the value defined by the minimal_weight attribute. <note>The boundedness defines the number of tokens generated by a Cb_input_relationship or the number of tokens consumed by a Cb_output_relationship.</note> *) ENTITY cb_transition_unbounded_weight; (* The minimal_weight specifies the least number of tokens produced or consumed. *) minimal_weight : natural_number; END_ENTITY; (* A Change_order is a type of Work_order that authorizes the implementation of one or more changes. <note>A Change_order is normally preceeded by a Change_request object.</note> *) ENTITY change_order SUBTYPE OF (work_order); (* The change_element specifies the elements that are subject to change as a result of the Change_order. *) change_element : element_critical_issue_relationship; (* The originates_from specifies the change_request that provided the motivation for the Change_order. *) originates_from : change_request; END_ENTITY; (* A Change_order_relationship is a relationship between two Change_order objects. The semantics of the relationship are defined by the Change_order_relationship_type attribute. *) ENTITY change_order_relationship; (* The change_order_relationship_type specifies the semantics of the change_order_relationship_type. Where applicable one of the following values shall be used:<ul> <li>temporal_order: the relating Change_order shall be completed before the implementation of the related Change_order;</li> <li>alternative: the relating Change_order is an alternative to related Change_order. Only one of the two identified Change_order objects shall be effectuated.</li> </ul> *) change_order_relationship_type : label; (* The related specifies the second change_order in the relationship. *) related : change_order; (* The related specifies the first change_order in the relationship. *) relating : change_order; END_ENTITY; |
(* A Change_report is a collection of elements reporting on changes performed as a result of a change_request. <note>The report of what has been changed can either described in text in the description attribute or by assigning other specification elements to the Change_report by the use of Change_report_element_assignment objects.</note> *) ENTITY change_report; (* The associated_version specifies the Configuration_element_version for the Change_report. *) associated_version : configuration_element_version; (* The description specifies additional information on the Change_report. *) description : OPTIONAL text_select; (* The name specifies the word, or words, that are used to refer to the Change_report. *) name : label; (* The originating_change_request specifies the Change_order that led to the creation of the Change_report. *) originating_change_request : change_request; END_ENTITY; (* A Change_report_element_assignment is the mechanism for assigning descriptions of changes implemented to a Change_report. *) ENTITY change_report_element_assignment; (* The change_report specifies the Change_report involved in the Change_report_element_assignment. *) change_report : change_report; (* The change_report_element specifies an element that is part of a Change_report. *) change_report_element : change_report_element_select; (* The description specifies additional textual information on the Change_report_element_assignment. *) description : OPTIONAL text_select; END_ENTITY; (* A Change_request is a type of Work_request that solicits the implementation of a change. <note>The elements affected by the Change_request are identified by the attribute scope inherited from the Work_order.</note> *) ENTITY change_request SUBTYPE OF (work_request); (* The response_to_issue specifies the critical_issue that led to the creation of the Change_request. *) response_to_issue : SET [1 : ?] OF critical_issue; END_ENTITY; |
(* A Clock is a device that emits a control signal at regular intervals. <note number="1">A clock can define the synchronous behaviour of one or more Function_instance objects.</note> <note number="2">The subclass of systems engineering tools supporting synchronous behaviour use different methods to represent the clock that provides the synchronous activations. Some represent the clock explicitly as a kind of function, some represent it as a property of the function that is controlled by the clock. The approach taken in PAS 20542 supports both variants in the sense that the Clock can be presented as a function-like block or be a viewed as a property of the function it controls.</note> *) ENTITY clock; (* The control_signal specifies the Data_instance (whose definition shall be of type Event_data_type_definition) that the Clock produces at periodic intervals (given by the frequency attribute). *) control_signal : data_instance; (* The description specifies additional information about the Clock. *) description : OPTIONAL text_select; (* The frequency specifies the number of pulses emitted during a given time period. *) frequency : REAL; (* The name specifies the word, or words, that are used to refer to the Clock. *) name : OPTIONAL label; WHERE correct_data_definition: 'SYSTEMS_ENGINEERING_DATA_REPRESENTATION.EVENT_DATA_TYPE_DEFINITION' IN TYPEOF(control_signal.definition); END_ENTITY; (* A Clock_assignment_relationship is a relationship between a Clock and a Control_io_port such that the periodic signal from the Clock is conveyed to the Control_io_port. <note>The Clock_assignment_relationship allows the use of a single Clock to control several function objects (via the corresponding Control_io_port objects).</note> *) ENTITY clock_assignment_relationship; (* The clock specifies the Clock object in the relationship. *) clock : clock; (* The trigger_for specifies the Control_io_port object in the relationship. *) trigger_for : control_io_port; END_ENTITY; |
(* A clock_reference_context_relationship is the mechanism for relating a clock to the functionality_instance_reference that defines the context of the clock. Through the usage of clock_reference_context_relationship it is possible to define that a clock object is valid for specific functional_reference_configuration objects only. *) ENTITY clock_reference_context_relationship; (* The clock_signal specifies the Clock in the relationship. *) clock_signal : clock; (* The relevant_functionality_context specifies the Functionality_instance_reference that the Clock is associated with through the Clock_assignment_relationship. *) relevant_functionality_context : functionality_instance_reference; END_ENTITY; (* A Complex_data_type_definition is a type of Elementary_maths_space that includes all complex values. *) ENTITY complex_data_type_definition SUBTYPE OF (elementary_maths_space); END_ENTITY; (* A Complex_value is a means of specifying a complex value. <note>The model uses polar co-ordinates to identify the complex point, rather than cartesian co-ordinates.</note> *) ENTITY complex_value; (* The radius specifies the distance from the origin (0,0) to the complex point. *) radius : REAL; (* The theta specifies the angular component of a Complex_value. *) theta : REAL; END_ENTITY; |
(* A Composite_function_definition is a type of General_function_definition and represents a function definition that is decomposed further. It is composed of at least one General_functionality_instance object. *) ENTITY composite_function_definition SUBTYPE OF (general_function_definition); INVERSE (* The constrained_function specifies the Composite_function_definition object whose behaviour is constrained by the assigned Functional_behaviour_model. *) behaviour_constraint : SET [0 : 1] OF functional_behaviour_model_assignment FOR constrained_function; (* The parent specifies the Composite_function_definition of which the child is a part of the decomposition. *) parent_of : SET [1 : ?] OF functional_decomposition_relationship FOR parent; END_ENTITY; (* A Compound_value is a value that consists of a list of other values. The list may contain values of different types and other lists. If there are fewer entries in the target aggregate than there are in the list then the extra values are not used. If there are more entries in the target aggregate than there are in the list then the list is applied repeatedly until the aggregate is full. *) ENTITY compound_value; (* The value_list specifies the list of values contained within the Compound_value. *) value_list : LIST [0 : ?] OF data_type_value_select; END_ENTITY; |
(* A Configuration_element is either a single object or a Unit in a group of objects. It collects the information that is common to all versions of the object. <note>Effectively a configuration_element is the logical container for all versions of the same thing. For example three revisions of the same functional model could be collected together by a configuration_element with a name and description of the functional model.</note> *) ENTITY configuration_element; (* The description specifies additional textual information on the Configuration_element. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Configuration_element. *) id : element_identifier; (* The name specifies the word, or words, which are used to refer to the Configuration_element. *) name : label; INVERSE (* The version_of specifies the Configuration_element object for which the Configuration_element represents a version. *) associated_version : SET [1 : ?] OF configuration_element_version FOR version_of; UNIQUE UR1: id; END_ENTITY; |
(* A Configuration_element_relationship is the mechanism for relating two Configuration_element objects. The nature of the relationship is defined by the relationship_type attribute. *) ENTITY configuration_element_relationship; (* The alternate specifies the second configuration_element in the alternate. *) alternate : configuration_element; (* The base specifies the first configuration_element in the base. *) base : configuration_element; (* The description specifies additional information on the description. *) description : OPTIONAL text_select; (* The relationship_type specifies the semantics of the Configuration_element_relationship. Where applicable one of the following values shall be used: <ul> <li>alternative: the base and alternate Configuration_element objects are interchangeable;</li> <li>variant: the alternate is a variant of the base Configuration_element.<li> </ul> <note>A variant implies that the base and alternative Configuration_element objects share substantial amount of information.</note> *) relationship_type : label; END_ENTITY; |
(* A Configuration_element_version is a snapshot of any design item for which a change history is maintained. <note number="1">A change history is kept from an initial item release and is recorded by configuration_element_version. Therefore, the picture is composed of a Configuration_element and a set of Configuration_element_version objects that record the evolution of the given Configuration_element. In this PAS, design elements can come from the requirement UoF, function UoF, behaviour UoF, documentation and data type.<p>This then leads to a situation where a design is made up of Configuration_element instances referring to a particular version of the Configuration_element represented. Therefore, a design can be made up of a set of Configuration_element standing in different version. Then a new version of the whole design can be made of a single change in the design.</p></note><example number="3">For instance, design version 1 may comprise version 1 of function 1, version 3 of function 2, and version1 of function 3. Then the next design release (version 2) may comprise version 2 of function 1, version 3 of function 2, and version 1 of function 3. This example illustrates that there may be 2 levels of version management. One party might wish to manage the whole design version. Another party might wish to manage versions of single items.</example><note number="2">The standard assumes that consistency is maintained by either the sending tool, the receiving tool or a third party tool more focussed on the configuration management items.</note> <note number="3">The set of configuration_element_version objects of a Configuration_element represents the history of a Configuration_element within a particular life-cycle stage or possibly over the whole life-cycle.</note> *) ENTITY configuration_element_version; (* The description specifies additional textual information on the Configuration_element_version. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Configuration_element_version. *) id : element_identifier; (* The version_of specifies the Configuration_element object for which the Configuration_element represents a version. *) version_of : configuration_element; UNIQUE UR1: id; END_ENTITY; |
(* A Configuration_element_version_relationship is the relationship between two Configuration_element_version objects establishing the version graph for the objects. *) ENTITY configuration_element_version_relationship; (* The description specifies the nature of the change between the related_version and the relating_version. *) description : OPTIONAL text_select; (* The related_version specifies the resulting Configuration_element_version object related by the Configuration_element_version_relationship. *) related_version : configuration_element_version; (* The related_version specifies the initial Configuration_element_version related by the Configuration_element_version_relationship. *) relating_version : configuration_element_version; (* The relationship_type specifies the semantics of the configuration_element_version_relationship. Where applicable, one of the following values shall be used:<il><li>revision;</li> <li>workspace_revision;</li><li>alternative.</li></ul> *) relationship_type : label; WHERE WR1: related_version :<>: relating_version; END_ENTITY; |
(* A Context_function_relationship is the relationship between a Function_instance object and a System_view object such that the Function_instance object is part of the functional description of the System_view. <note number="1">The Function_instance may describe functional aspects of the System_view or functional aspects of the environment to the System_view. In the first case the role attribute shall be set to "system_function", in the second case the role attribute shall be set to "external_element".</note> *) ENTITY context_function_relationship; (* The associated_context specifies the System_view that is valid for the relationship. *) associated_context : system_view; (* The Context_function specifies the Function_instance object that is valid for the relationship. *) context_function : function_instance; (* The description specifies additional textual information on the relationship. *) description : OPTIONAL text_select; (* The role specifies what the Function_instance describes in the context of a particular System_view. <note number="2">There is a constraint that there shall only be exactly one function_instance assigned to a System_view as a "system_function".</note> *) role : function_role_enumeration; INVERSE (* The system specifies the context_function_relationship to which the functional_reference_configuration is assigned. *) assigned_functional_configuration : SET [0 : 1] OF system_functional_configuration FOR system; UNIQUE UR1: associated_context, context_function; END_ENTITY; |
(* A Context_physical_relationship is the relationship between a Physical_instance object and a System_view object such that the Physical_instance object is part of the top-level physical architecture description of the System_view. <note>The Physical_instance may describe physical aspects of the System_view or physical aspects of the environment to the System_view. In the first case the role attribute shall be set to "system_element", in the second case the role attribute shall be set to "external_element".</note> *) ENTITY context_physical_relationship; (* The description specifies additional textual information on the relationship. *) description : OPTIONAL text_select; (* The part_in_physical_context specifies the System_view object for which the relationship is relevant. *) part_in_physical_context : system_view; (* The physical_instance specifies the Physical_instance for which the relationship is valid. *) physical_instance : physical_instance; (* The role specifies the nature of the Physical_instance in the System_view. *) role : physical_element_role_enumeration; INVERSE (* The system specifies the Context_physical_relationship to which the Physical_reference_configuration is assigned. *) assigned_physical_configuration : SET [0 : 1] OF system_physical_configuration FOR system; END_ENTITY; |
(* A Control_io_port is a type of Io_port and an element in the behavioural interface to a Function_instance object. A Control_io_port is always an input port and consumes data from Functional_link objects. <note number="1">The semantics is such that the Control_io_port is enabled or disabled by the value of the data associated with the Control_io_port. If the Control_io_port is enabled, it may activate the Function_instance.</note> <note number="2">If the data_instance defined by the data attribute is of type event_data_type_definition then the Control_io_port is enabled by the arrival of an event in the data_instance.</note> <note number="3">If the data_instance defined by the data attribute is of type logical_data_type_definition then the Control_io_port is enabled when the value of the data_instance is TRUE. Otherwise the control_io_port is disabled.</note> <note number="4">If more than one control_io_port is attached to a Function_instance object, then all must be enabled to activate the Function_instance object.</note> *) ENTITY control_io_port SUBTYPE OF (io_port); (* The control_type specifies the role of the Control_io_port. *) control_type : control_type_enumeration; (* The offset specifies the time delay from reception of the control signal until the Control_io_port is enabled. *) offset : REAL; (* The port_of specifies the Function_instance object to which the Control_io_port is attached. *) port_of : function_instance; (* The trigger_type specifies how the Control_io_port is enabled. <note number="5">The exact semantics for triggering are determined by the data type associated with the control port.</note> *) trigger_type : trigger_type_enumeration; DERIVE SELF\io_port.role : port_data_relation := consumer; UNIQUE UR1: port_of, SELF\io_port.io_port_number, SELF\io_port.port_type; WHERE good_offset: offset >= 0.0; port_data_direction: (SELF\io_port.port_type <> output); WR1: ('SYSTEMS_ENGINEERING_DATA_REPRESENTATION.EVENT_DATA_TYPE_DEFINITION' IN TYPEOF(data.definition)) OR ('SYSTEMS_ENGINEERING_DATA_REPRESENTATION.LOGICAL_DATA_TYPE_DEFINITION' IN TYPEOF(data.definition)); END_ENTITY; |
(* A Coordinate_translation_information is the mechanism for mapping co-ordinate information from a normalized co-ordinate system to the actual presentation co-ordinate system used in a tool. The Coordinate_translation_information is assigned as modifier to provide actual presentation information for Graphics_view objects.<p>The size of a view and the position of individual items in the view is calculated according to the following formula:</p> <ul> <li>y-position:=normalized_x-position*scale_factor;</li> <li>x-position:= normalized_x-position*aspect_ration*scale_factor;</li> </ul> <note>PAS 20542 uses a normalized co-ordinate system where all position information is given in the range {0..1} for the x and y co-ordinates. The co-ordinate {0,0} specifies the top-left of a view and the co-ordinate {1,1} specifies the bottom-right of a view.</note> *) ENTITY coordinate_translation_information; (* The measurement_unit specifies the unit of measure that shall be used to decode the size of a view defined by a Coordinate_translation_information. *) measurement_unit : label; (* The name specifies the word or words that are used to refer to a Coordinate_translation_information. *) name : label; (* The ratio specifies the relation between the x and y axes in a co-ordinate system defined by a Coordinate_translation_information. Values larger than 1 indicates that the extension of a view is greater along the x-axis than along the y-axis. *) ratio : REAL; (* The scale_factor specifies the multiplier that defines the size of a view. *) scale_factor : REAL; (* The transformation_for specifies graphics_view for which the Coordinate_translation_information provides information. *) transformation_for : graphics_view; END_ENTITY; |
(* A critical_issue is an identification of a percieved or real problem concerning an element of a system specification.<note>The issue identified by a Critical_issue need not acknowledged by all stakeholders in a system development process. It is mere an indentification of a potential problem or issue.</note> *) ENTITY critical_issue; (* The description specifies additional information on the closed: No further actions will be taken to address the Critical_issue. *) description : OPTIONAL text_select; (* The id specifies the identifier of the id. *) id : element_identifier; (* The name specifies the word or words that are used to refer to a Critical_issue. *) name : label; (* The status specifies the condition of a Critical_issue. Where applicable one of the following values shall be used: <ul> <li>open: The validity of the Critical_issue has not yet been evaluated;</li><li>acknowledged: The validity of the Critical_issue has been confirmed;</li><li>closed: No further actions will be taken to address the Critical_issue.</li> *) status : label; END_ENTITY; (* A Critical_isue_impact is the mechanism for relating the elements identified to be influenced by a Critical_issue to the issue itself. <note>Any number of elements can be assigned to a critical_issue_impact. The critical_issue_impact is a representation of all elements assigned collectively.</note> *) ENTITY critical_issue_impact; (* The description specifies additional information on the Critical_issue_impact. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Critical_issue_impact. *) id : element_identifier; (* The impact_of_issue specifies the set of Critical_issue objects that the Critical_issue_impact is valid for. *) impact_of_issue : SET [1 : ?] OF critical_issue; (* The name specifies the word or words that are used to refer to the Critical_issue_impact. *) name : label; INVERSE (* The issue_analysis specifies the Critical_issue_impact for which the element_critical_issue_relationship is valid. *) identified_issues : SET [0 : ?] OF element_critical_issue_relationship FOR issue_analysis; END_ENTITY; |
(* A Data_field is a type of Data_instance that and the usage of a data type within a Record_data_type_definition or a Union_data_type_definition. *) ENTITY data_field SUBTYPE OF (data_instance); (* The role specifies additional information on the Data_field. *) role : OPTIONAL label; END_ENTITY; |
(* A Data_instance is an instantiation of a User_defined_data_type_definition or Maths_space. <note number="1">In the terminology used in computer science, a Data_instance corresponds to a variable. In the systems engineering domain, the Data_instance is interpreted in a wider sense.</note> *) ENTITY data_instance SUPERTYPE OF (data_field); (* The default_value specifies the value to be assigned to the Data_instance when an invalid value is provided, for instance, when the value is out of the bounded range, or of the wrong type.<note number="2">The event that valid values are absent for a default_value may be due to the fact that the element supplying the value is out of order.</note> <note number="3">The value of the default_value shall be within the valid value range if one is defined.</note> *) default_value : OPTIONAL data_type_value_select; (* The definition specifies the user_defined_data_type_definition or maths_space that provides the type definition for the definition. *) definition : data_type_definition_select; (* The description specifies additional textual information on the Data_instance. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Data_instance. *) id : element_identifier; (* The initial_value specifies the value to be assigned to the Data_instance when it is created. <note number="4">The value of the initial_value shall be the valid value range of the initial_value, if one is defined.</note> *) initial_value : OPTIONAL data_type_value_select; (* The is_constant specifies whether the Data_instance is a constant or not. If the value is TRUE, the is_constant may not be updated. In this case the value of the is_constant is specified by the initial_value attribute. If no initial value is provided then the value of the is_constant is undefined. *) is_constant : BOOLEAN; (* The name specifies the word, or words, that are used to refer to the Data_instance. *) name : label; (* The unit_component specifies the units of measurement that shall be associated with the Data_instance. <example number="4">For a particular Data_instance, the unit_component may be Volts.</example> *) unit_component : OPTIONAL unit; UNIQUE UR1: definition, id; END_ENTITY; |
(* A Data_transfer is the definition of the nature of interaction identified by an Implied_external_interaction object. <note>The scope of a Data_transfer need not be restricted to data, it may be used to indicate interaction of physical elements as well.</note> *) ENTITY data_transfer; (* The data is the Data_instance that is part of the interaction between the functional representation of an external entity and the functional representation of a system. *) data : data_instance; (* The direction specifies the direction of the interaction. *) direction : data_direction; (* The transfer specifies the Implied_external_interaction object for which the Data_transfer is valid. *) transfer : implied_external_interaction; END_ENTITY; (* A Date_and_person_assignment is an object that associates a Date_and_person_organization with an object. <note number="1">This assignment provides additional information for the associated object. The provision of such data through this assignment has an organizational character whereas some objects mandate the same kind of data in order to be semantically complete. This assignment shall not be used to associate the corresponding organizational data with an object whose attributes are referencing the organizational data directly.</note> <note number="2">Taken from AP214.</note> *) ENTITY date_and_person_assignment; (* The assigned_date_and_person specifies the Date_and_person_organization. *) assigned_date_and_person : date_and_person_organization; (* The assigned_to specifies the object to which the Date_and_person_assignment is applied. *) assigned_to : person_organization_assignment_select; (* The description specifies additional textual information on the Date_and_person_assignment. *) description : OPTIONAL text_select; (* The role specifies the relationship between the date or time and the Person or Organization in the role. Where applicable, the following values shall be used:<ul><li>creation: The assignment specifies that the referenced object has been created by the given person or organisation at the given date and time;</li><li>update: The assignment specifies that the referenced object has been altered by the given person.</li></ul> *) role : label; END_ENTITY; |
(* A Date_and_person_organization is a Person_in_organization or an Organization associated with a Date_time. *) ENTITY date_and_person_organization; (* The actual_date specifies the Date_time component of the Date_and_person_organization. *) actual_date : date_time; (* The Person_organization specifies the Person_in_organization or an Organization component of the Date_and_person_organization. *) person_organization : person_organization_select; END_ENTITY; (* A date_assignment is the assignment of Date_time and time information. *) ENTITY date_assignment; (* The assigned_to specifies the object the Date_time information is assigned to. *) assigned_to : date_assignment_select; (* The date specifies the date component in the assignment. *) date : date_time; (* The role specifies the semantics of the Date_time assigned for the item. Where applicable the following values shall be used:<ul><li>created: The assignment specifies that the referenced object was created at the given Date;</li><li>modified: The assignment specifies that the referenced object was altered at the given Date.</li></ul><note>The current value set can be extended to suit further needs. However, in such cases both the sending and the receiving tools shall agree upon the valid value set.</note> *) role : label; END_ENTITY; |
(* A Date_time is the specification of a date and time of day. *) ENTITY date_time; (* The day_component specifies the day number of a month. The value of the day_component must not exceed the number of days in the current month. *) day_component : INTEGER; (* The hour_component specifies the time in a day in hours.<p>The value of the hour_component shall be in the range 0-23.</p> *) hour_component : INTEGER; (* The minute_component specifies the time within an hour in minutes.<p>The value of the minute_component shall be in the range 0-59.</p> *) minute_component : INTEGER; (* The month_component specifies the Date_time within a year in months.<p>The value of the month_component shall be in the range 1-12.</p> *) month_component : INTEGER; (* The second_component specifies the time within a minute in seconds.<p>The value of the second_component shall be in the range 0-59.</p> *) second_component : INTEGER; (* The year_component specifies the year part of a Date_time.<p>The year_component shall be given with all valid digits.</p><example number="5">The year 1999 shall be represented as the integer "1999".</example> *) year_component : INTEGER; WHERE WR1: {0 <= hour_component <= 23}; WR2: {0 <= minute_component <= 59}; WR3: {0 <= second_component <= 59}; WR4: {1 <= month_component <= 12}; WR5: {1 <= day_component <= 31}; WR6: year_component >= 0; END_ENTITY; |
(* A Derived_data_type_definition is type of User_defined_data_type_definition whose value is calculated from Data_instance and or Data_field values. *) ENTITY derived_data_type_definition SUBTYPE OF (user_defined_data_type_definition); (* The expression specifies the algorithm for deriving the value of an instance of a Derived_data_type_definition. <note>The syntax for specifying the algorithm for deriving the value of a expression is not defined.</note><example number="6">To avoid redundancy in a database design and to keep the data up-to-date, the age field is calculated from the global value today and the field date of birth. age = today - date_of_birth.</example> *) expression : text_select; (* The resultant_data_type specifies the expected type of the result of the expression based on the types of the values involved in the expression. *) resultant_data_type : data_type_definition_select; END_ENTITY; (* A Digital_document is a type of Documentation_reference and a reference to a document in some digital format. *) ENTITY digital_document SUBTYPE OF (documentation_reference); (* The document_format specifies the format (for example: MSWord, PDF, HTML) of the digital document. *) document_format : OPTIONAL label; (* The document_size specifies the size of a digital document. *) document_size : OPTIONAL label; (* The location specifies the location (for example: file structure, URL) from where the digital document can be obtained. *) location : label; END_ENTITY; |
(* A Document_assignment is the assignment of a Documentation_reference to an element of systems engineering. *) ENTITY document_assignment SUPERTYPE OF (partial_document_assignment); (* The description specifies additional information about the Document_assignment. *) description : OPTIONAL text_select; (* The documentation specifies the Documentation_reference. *) documentation : documentation_reference; (* The documented_object specifies an object that is documented by the Document_assignment. *) documented_object : instance_definition_select; END_ENTITY; (* A Documentation_reference is a reference to any relevant information. A Documentation_reference is an abstract entity that shall never be instantiated. *) ENTITY documentation_reference ABSTRACT SUPERTYPE OF (ONEOF(digital_document, non_digital_document)); (* The associated_version specifies the Configuration_element_version for the Documentation_reference. *) associated_version : configuration_element_version; (* The description specifies additional information about the Documentation_reference. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Documentation_reference. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to the Documentation_reference. *) name : label; UNIQUE UR1: id; END_ENTITY; |
(* A Documentation_relationship is the relationship between two Documentation_reference objects. The semantics of the relationship is defined by the description attribute. *) ENTITY documentation_relationship; (* The description specifies additional information about the Documentation_relationship. *) description : OPTIONAL text_select; (* The related_documentation specifies the second Documentation_reference in the relationship. *) related_documentation : documentation_reference; (* The relating_documentation specifies the first Documentation_reference in the relationship. *) relating_documentation : documentation_reference; (* The relationship_type specifies the word, or words, that are used to refer to the Documentation_relationship. *) relationship_type : OPTIONAL label; WHERE correct_relation: relating_documentation :<>: related_documentation; END_ENTITY; (* A Effectiveness_measure is an optimization criteria for any number of Requirement_instance objects. *) ENTITY effectiveness_measure; (* The optimization_function specifies the inter-requirement optimization function defined for the Effectiveness_measure. *) optimization_function : textual_specification; END_ENTITY; |
(* An Effectiveness_measure_assignment is the mechanism for including a Requirement_instance in an inter-requirement optimization criterion represented by an Effectiveness_measure. All Requirement_instance objects assigned shall be associated with the same System_view. *) ENTITY effectiveness_measure_assignment; (* The assigned_requirement specifies the Requirement_instance involved in the optimization function by the Effectiveness_measure_assignment. *) assigned_requirement : requirement_instance; (* The effectiveness_measure specifies the Effectiveness_measure that the Requirement_instance is assigned to via the Effectiveness_measure_assignment. *) effectiveness_measure : effectiveness_measure; (* The weight specifies the relative importance of the assigned_requirement Requirement_instance compared to the other Requirement_instance objects assigned to the same Effectiveness_measure. *) weight : label; END_ENTITY; (* An Effectiveness_measure_relationship is the mechanism for indicating a relationship between two Effectiveness_measure objects. The nature of the relationship is further defined by the description attribute. <note>The Effectiveness_measure_relationship may be used to indicate the relationship between two optimization criteria.</note> *) ENTITY effectiveness_measure_relationship; (* The description specifies additional information about the Effectiveness_measure_relationship. *) description : OPTIONAL text_select; (* The relating specifies the second element in the relationship. *) related : effectiveness_measure; (* The relating specifies the first element in the relationship. *) relating : effectiveness_measure; END_ENTITY; |
(* An Effectivity is the identification of the valid use of an aspect of product data tracked by Date_time or event. <note number="1">The effectivity may define open ended or closed intervals for the validity of the produced data tracked.</note> <note number="2">The Effectivity shall be specified either by a primary_definition attribute or by another Effectivity (related using an Effectivity_relationship) that has an instantiated primary_definition.</note> *) ENTITY effectivity; (* The concerned_organization specifies the Organization in which the Effectivity is valid.<example number="7">The Effectivity of the same item may be different in the various sites of a system supplier.</example> *) concerned_organization : SET [0 : ?] OF organization; (* The description specifies additional textual information on the Effectivity. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Effectivity. *) id : OPTIONAL element_identifier; (* The primary_definition specifies the Date_time or event when the identified object becomes effective or ceases to be valid. <note number="3">The meaning of this attribute is further detailed by the attribute role of Effectivity_assignment.</note> *) primary_definition : OPTIONAL event_or_date_select; (* The secondary definition is used to define a period of time the start of which is specified as primary definition. This attribute shall be used only if the attribute role of the Effectivity_assignment indicates that the secondary_definition is defined as a period of time. *) secondary_definition : OPTIONAL period_or_date_select; (* The version id specifies the identification of a particular version of the Effectivity. *) version_id : OPTIONAL element_identifier; END_ENTITY; |
(* An Effectivity_assignment associates an Effectivity with the object whose Effectivity is controlled by the associated Effectivity. *) ENTITY effectivity_assignment; (* The assigned_effectivity specifies the assigned Effectivity. *) assigned_effectivity : effectivity; (* The effective_element specifies the object that has an Effectivity assigned to it. *) effective_element : effective_element_select; (* The role specifies relationship between the Effectivity and the object that has an effectivity assigned to it. <p>If one of the values "actual_start", "actual_stop", "planned_start", or "planned_stop" is specified, no secondary definition shall be given in the assigned Effectivity. </p> <p>Where applicable, the following values shall be used:</p> <ul> <li>actual_period: The actual period during which the Effectivity lasted;</li> <li>actual_start: The actual Date_time in the past when the Effectivity became effective; </li> <li>actual_stop: The actual Date_time in the past when the Effectivity ceased to be effective;</li> <li>planned_period: The period associated with the Effectivity defines a planned period of time during which the associated object is or was supposed to be effective;</li> <li>planned_start: The Date_time or event associated with the Effectivity defines the Date_time or event when the Effectivity is or was supposed to start;</li> <li>planned_stop: The Date_time or event associated with the Effectivity defines the Date_time or event when the Effectivity is or was supposed to stop;</li><li>required_period: The associated object must be kept effective for this period;</li><li>required_start: The Date_time or event associated with the Effectivity is a due start Date. Conformance to this bound is expected;</li><li>required_stop: The Date_time or event associated with the Effectivity is a due stop date. Conformance to this bound is expected.</li></ul> *) role : label; END_ENTITY; |
(* An Effectivity_relationship is a relationship between two Effectivity objects. *) ENTITY effectivity_relationship; (* The description specifies additional information about the Effectivity_relationship. *) description : OPTIONAL text_select; (* The related specifies the second Effectivity object in the relationship. *) related : effectivity; (* The relating specifies the first Effectivity object in the relationship. *) relating : effectivity; (* The relation type specifies the meaning of the relationship. Where applicable, the following values shall be used:<ul><li>constraint: The time period between the start and end definition of the related Effectivity shall be within the time period of the relating Effectivity;</li> <li>inheritance: The related Effectivity shall not have a "primary definition" and "secondary definition" specified but inherits the effectivity dates from the relating Effectivity.</li></ul> *) relation_type : label; END_ENTITY; (* An Element_critical_issue_relationship is the mechanism for indicating that an element (defined by the impact_on_element attribute) is influenced in some respect by impact of a Critical_issue captured by a Critical_issue_impact. The impact is not definite as several Critical_issue_impact objects may be created as a result of a Critical_issue. The nature of the impact is defined by the description attribute. *) ENTITY element_critical_issue_relationship; (* The description specifies the nature of impact for the element identified by the impact_on_element attribute of the element_critical_issue_relationship. *) description : OPTIONAL text_select; (* The impact_on_element specifies the element influenced by the Critical_issue. *) impact_on_element : change_element_select; (* The issue_analysis specifies the Critical_issue_impact for which the element_critical_issue_relationship is valid. *) issue_analysis : critical_issue_impact; END_ENTITY; |
(* An Element_identifier is an identifier used to represent a unique label for elements of the same type. *) ENTITY element_identifier; (* The identifier_context specifies the organizational scope in which the identifier_value attribute is assumed to be unique for an Element_identifier. *) identifier_context : person_organization_select; (* The identifier_value specifies an alphanumeric string identifying the element, that the Element_identifier is assigned to, uniquely within its scope. *) identifier_value : identifier; END_ENTITY; (* An Elementary_maths_space is a set of values that have an existing precise mathematical meaning. *) ENTITY elementary_maths_space ABSTRACT SUPERTYPE OF (ONEOF(binary_data_type_definition, boolean_data_type_definition, complex_data_type_definition, event_data_type_definition, integer_data_type_definition, logical_data_type_definition, real_data_type_definition, string_data_type_definition)) SUBTYPE OF (maths_space); END_ENTITY; |
(* An Engineering_process_activity is a part of the process of developing a system. An Engineering_process_activity may be planned, in progress, or already carried out. <note>In the scope of PAS 20542, an Engineering_process_activity is a discrete or composite element of the systems engineering process.</note><example number="8">The requirements analysis phase of the systems engineering process would be considered to be an Engineering_process_activity. Performing safety analysis on a certain subsystem would also be considered to be an Engineering_process_activity.</example> *) ENTITY engineering_process_activity; (* The activity_type specifies the purpose of the Engineering_process_activity. Where applicable the following values shall be used:<ul><li>analysis: The Engineering_process_activity represents an analysis acitivity;</li> <li>design: The Engineering_process_activity is representing a design acitivity;</li> <li>review: The Engineering_process_activity is representing a human review acitivity;</li> <li>design_change: The Engineering_process_activity is representing a change acitivity;</li> <li>trade_off_analysis: The Engineering_process_activity is representing selection acitivity.</li></ul> *) activity_type : label; (* The actual_end_date specifies the date when the Engineering_process_activity actually finished. *) actual_end_date : OPTIONAL date_time; (* The actual_start_date specifies the date when the Engineering_process_activity actually started. *) actual_start_date : OPTIONAL date_time; (* The description specifies additional information about the Engineering_process_activity. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Engineering_process_activity. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to the Engineering_process_activity. *) name : label; (* The planned_end_date specifies the Date_time when the Engineering_process_activity is or was supposed to be completed. *) planned_end_date : OPTIONAL period_or_date_select; (* The planned_start_date specifies the Date_time when the Engineering_process_activity is or was supposed to start. *) planned_start_date : OPTIONAL event_or_date_select; (* The resolved_request specifies the set of Work_request objects that is resolved by the Engineering_process_activity. *) resolved_request : SET [0 : ?] OF work_request; (* The status specifies the level of completion of the Engineering_process_activity. *) status : OPTIONAL text_select; INVERSE (* The is_controlling specifies the Engineering_process_activity objects that are controlled by this particular Work_order. *) authorization : SET [0 : 1] OF work_order FOR is_controlling; END_ENTITY; |
(* An Engineering_process_activity_element_assignment is the relationship between systems engineering data and the Engineering_process_activity in which the data are "created in" or "modified in" or "referenced in". *) ENTITY engineering_process_activity_element_assignment; (* The activity specifies the Engineering_process_activity to which the Engineering_process_activity_element_assignment belongs. *) activity : engineering_process_activity; (* The description specifies additional information about the Engineering_process_activity_element_assignment. *) description : OPTIONAL text_select; (* The element specifies the piece of systems engineering data referenced by the Engineering_process_activity. *) element : specification_element_select; (* The role specifies the function that is performed by the Engineering_process_activity_element_assignment in the context of the concerned Engineering_process_activity. Where applicable the following values shall be used:<ul><li>control: The referenced element had influence on completing the Engineering_process_activity;</li><li>created: The referenced element was created in the Engineering_process_activity;</li><li>modified: The referenced element was modified in the Engineering_process_activity.</li></ul> *) role : label; END_ENTITY; |
(* An Engineering_process_activity_relationship is a relationship between two Engineering_process_activity objects. *) ENTITY engineering_process_activity_relationship; (* The description specifies additional information about the Engineering_process_activity_relationship. *) description : OPTIONAL text_select; (* The related_activity specifies the second of the two Engineering_process_activity objects related by an Engineering_process_activity_relationship. *) related_activity : engineering_process_activity; (* The relating_activity specifies the first of the Engineering_process_activity objects related by an Engineering_process_activity_relationship. *) relating_activity : engineering_process_activity; (* The relation_type specifies a textual description of the nature of the relationship between the two Engineering_process_activity objects involved in the relationship. Where applicable one of the following values shall be used:<ul><li>alternative: Either the relating_activity or the related_activity shall be performed;</li><li>hierarchy: The relationship between the relating_activity and the related_activity is such that the relating_activity is divided into the related_activity;</li><li>sequence: The relating_activity and the related_activity shall be performed in sequence where the relating_activity precedes the related_activity;</li><li>simultaneous: The relating_activity and the related_activity may be performed simultaneously. </li></ul> *) relation_type : label; WHERE WR1: relating_activity :<>: related_activity; END_ENTITY; (* An Event_data_type_definition is a type of Elementary_maths_space that includes all event values. *) ENTITY event_data_type_definition SUBTYPE OF (elementary_maths_space); END_ENTITY; |
(* An Execution_time is an estimation of the time it takes for a function to produce the outputs either when it has been activated or as soon as the whole input data set is available. <note number="1">The execution time shall not be confused with the time for a physical component to perform the function which would be related to the physical architecture definition in the physical UoF.</note> <example number="9"> The exact semantics of this entity is defined by the role attribute. The execution time given here records, for instance, the time that is necessary within a process industry to perform a specific action. For instance in a process industry it may be necessary to have a piece of work in a given acid bath for a given period to achieve specific properties.</example> <note number="2">An execution_time can be associated with all types of General_function_definition objects.</note> <note number="3">The execution_time specifies the time it takes for a function to be executed, not counting interference from other functions in the system. </note> *) ENTITY execution_time; (* The role specifies how the time attribute should be interpreted. <example number="10">The function calculate_time_to_destination may have a best_case Execution_time of 0 seconds, a worst_case Execution_time of 0.020 seconds, and no value expressed for nominal_case Execution_time.</example> *) role : timing_type; (* The time specifies the execution time. *) time : REAL; (* The timing specifies the General_function_definition to which the Execution_time applies. *) timing : functionality_instance_reference; (* The unit specifies the Execution_time unit for the time attribute. *) unit : label; END_ENTITY; |
(* A Finite_integer_interval is type of Integer_interval that has lower and upper bounds that constrain the sub-set of integers it contains. *) ENTITY finite_integer_interval SUBTYPE OF (integer_interval); (* The low_index specifies the lowest value that a Data_instance of this type can take. *) low_index : INTEGER; (* The size specifies the value domain of the Finite_integer_interval as number of consequtive integer values, counting from the low_index attribute, a Data_instance of this type can take. <note>The upper bound of the value domain of a Finite_integer_interval is given by the expression low_index + size - 1.</note> *) size : INTEGER; END_ENTITY; (* A Finite_real_interval is a type of Real_interval that has lower and upper bounds that constrain the sub-set of real values it contains. *) ENTITY finite_real_interval SUBTYPE OF (real_interval); (* The high_closure specifies whether or not the high_index is included in the maths space. If the value is TRUE, then the value is included in the space, otherwise the value is excluded. *) high_closure : BOOLEAN; (* The high_index specifies the highest value that a Data_instance of this type can take. *) high_index : REAL; (* The low_closure specifies whether or not the low_index is included in the maths space. If the value is TRUE, then the value is included in the space, otherwise the value is excluded. *) low_closure : BOOLEAN; (* The low_index specifies the lowest value that a Data_instance of this type can take. *) low_index : REAL; END_ENTITY; |
(* A finite_space is a type of Maths_space containing an explicit set of values. <note>Elementary_maths_space objects that are finite (such as Binary_data_type_definition and Logical_data_type_definition objects) should be used in preference to finite_space objects.</note> *) ENTITY finite_space SUBTYPE OF (maths_space); (* The member specifies the set of elements the build up the Finite_space. *) member : SET [0 : ?] OF data_type_value_select; END_ENTITY; (* A Formal_data_interaction_port is an element in the interface between to a Functional_state_context object. *) ENTITY formal_data_interaction_port; (* The data specifies the Data_instance object in the interface. *) data : data_instance; (* The port_of specifies the Functional_state_context object for which the Formal_data_interaction_port provides part of the interface. *) port_of : functional_state_context; END_ENTITY; |
(* A Formal_io_port is a type of Io_port and the definition of an element of the interface to a General_function_definition. <note number="1 ">If a General_function_definition has an interface one or more formal_io_port objects will specify the interface.</note> <note number="2">Flow ports are classified according to three criteria in the data model:</note> <ol> <li>Whether the port is formal (attached to a General_function_definition) or actual (attached to a Function_instance, Fsm_model, Persistent_storage or Io_split_join),</li> <li>Whether the port is an input or output port,</li> <li>Whether the port is a flow or control port (a flow port carries data whereas control port carries triggering information such as start, stop, suspend, resume).</li> </ol> From this classification the role the port plays with regard to the Functional_link objects connected to the port can be derived. A port can "consume" flows (the data on the flow is delivered to the port) or it can produce flows (the data on the flow is delivered from the port). For instance, a formal_io_port object whose direction attribute is "output" produces data, while an Actual_io_port whose direction attribute is "input" consumes data. <p>In the data model we capture this information in the derived role attribute. This attribute is used to ensure that Functional_link objects are connected correctly (a Functional_link object must have one producer and one consumer), and that Io_port_binding objects are applied only to ports where the actual_port in the binding is a producer of information and the formal_port in the binding is a consumer or vice versa.</p> <note number="3">When a Function_instance of the General_function_definition is created an Actual_io_port object corresponding to each formal_io_port is created if (and only if) there is a flow connected to the actual port (and the actual port is related to the corresponding formal_io_port object via a Io_port_binding object).</note> *) ENTITY formal_io_port SUBTYPE OF (io_port); (* The port_of specifies the General_function_definition for which this is a port. This attribute is reinforced by the inverse relationship which indicates that a port_of can only point at a definition but a definition can be referred to by several ports. *) port_of : general_function_definition; DERIVE SELF\io_port.role : port_data_relation := determineformalportrole(SELF); UNIQUE UR1: port_of, SELF\io_port.io_port_number, SELF\io_port.port_type; END_ENTITY; |
(* A Formal_physical_port is a type of Physical_port and represents either an input and an output or an input or an output of a General_physical_definition. *) ENTITY formal_physical_port SUBTYPE OF (physical_port); (* The port_of specifies the General_physical_defintion object for which the Formal_physical_port provides part of the interface. *) port_of : general_physical_definition; END_ENTITY; (* A Formal_port_position is a type of Visual_element and the representation of the graphical position of a Formal port, a Formal_io_port, or a Formal_physical_port object. *) ENTITY formal_port_position SUBTYPE OF (visual_element); (* The position specifies the position of the port. *) position : graphics_point; (* The positioned_port specifies the formal port that is positioned by the Formal_port_position. *) positioned_port : port_position_select; END_ENTITY; (* An Fsm_and_state is a type of Fsm_state and the representation of a decomposed state in a finite state machine where all child Fsm_state objects are active concurrently. An And_state is composed of a minimum of two child Fsm_states. *) ENTITY fsm_and_state SUBTYPE OF (fsm_state); INVERSE SELF\fsm_state.child_states : SET [2 : ?] OF fsm_state_composition_relationship FOR parent_state; END_ENTITY; |
(* An Fsm_command_interaction_relationship is the mechanism for indicating that a command is issued to a the reference to a function (in the form of a state_function_interaction_port) by a textual_specification. The fsm_command_interaction_relationship is only used within the scope of a finite state machine. The nature of the command is specified in the interaction_type attribute. <note number="1">The Fsm_comment_interaction_relationship indicates that a command (function: start, stop, suspend, resume) is issued by a Fsm_transition or Fsm_state. The notation complements the textual definition of actions in states or in transitions.</note> *) ENTITY fsm_command_interaction_relationship; (* The defined_in specifies the textual_specification where the command is issued. *) defined_in : fsm_interaction_select; (* The interaction_port specifies the state_function_interaction_port through which the command relayed by the Fsm_command_interaction_relationship is sent. *) interaction_port : state_function_interaction_port; (* The interaction_type specfies the semantics of the Fsm_command_interaction_relationship. Where applicable one of the following values shall be used:<ul><li>start: The referenced function is started by the command;</li> <li>stop: The referenced function is stopped by the command;</li> <li>resume: The referenced function is resumed from a suspended state by the command;</li> <li>suspend: The referenced function is temporarily suspended by the command.</li></ul><note number="2">All commands predefined are idempotent, i.e., issuing a "start" command to a started function does not have any effect.</note> *) interaction_type : label; END_ENTITY; (* An Fsm_data_interaction_binding is a parameter matching relationship between an element in the actual interface of an Actual_io_port and an element of the formal_interface of a Formal_data_interaction_port. *) ENTITY fsm_data_interaction_binding; (* The actual_port specifies the Actual_io_port in the relationship. *) actual_port : actual_io_port; (* The formal_port specifies the Formal_data_interaction_port in the relationship. *) formal_port : formal_data_interaction_port; END_ENTITY; |
(* An Fsm_data_interaction_relationship is the mechanism for indicating the a data_instance is referenced within a textual_specification. The nature of the reference is defined by the interaction_type attribute. <note>The Fsm_data_interation_relationship that the associated data item of an Io_port fsm_interaction_port object is updated or read as a part of a action performed in a state or transition.</note> *) ENTITY fsm_data_interaction_relationship; (* The defined_in specifies the Textual_specification where the command is issued. *) defined_in : fsm_interaction_select; (* The interaction_port specifies the Formal_data_interaction_port in the relationship. *) interaction_port : formal_data_interaction_port; (* The interaction_type specfies the semantics of the Fsm_data_interaction_relationship. Where applicable one of the following values shall be used:<ul><li>read: The value of the Data_instance on the Formal_data_interaction_port is referenced in the Textual_specification identified by the defined_in attribute;</li><li>write: The value of the Data_instance on the Formal_data_interaction_port is written in the Textual_specification identified by the defined_in attribute. </li></ul> *) interaction_type : label; END_ENTITY; (* A Fsm_generic_state is the abstract super class of either a Fsm_state, or a Fsm_transient_state. *) ENTITY fsm_generic_state ABSTRACT SUPERTYPE OF (ONEOF(fsm_state, fsm_transient_state)); INVERSE (* The destination_state specifies the Fsm_state activated if the Fsm_state_transition is fired. *) destination_transition : SET [0 : ?] OF fsm_state_transition FOR destination_state; END_ENTITY; |
(* An Fsm_initial_state_transition is the initial transition to the initial state of an Fsm_or_state in a finite state model. *) ENTITY fsm_initial_state_transition; (* The initial_state specifies the initial state. *) initial_state : fsm_generic_state; (* The transition_context specifies the environment for which the initial_state_context is valid. *) transition_context : default_context_select; END_ENTITY; (* An Fsm_model is a type of General_functionality_instance and represents the entry point to a finite state machine. <note number="1">Fsm_model objects may be referred to within the function breakdown structure and represent the activation and de-activation logic of functions in the functional breakdown structure.</note><note number="2">This entity is included in the model to allow a FSM to be included in a General_function_definition and provides the link between the functional view and state view of a system.</note> *) ENTITY fsm_model SUBTYPE OF (general_functionality_instance); (* The behaviour_model specifies the State_machine_functional_behaviour_model object for which the Fsm_model provides the behaviour specification. *) behaviour_model : state_machine_functional_behaviour_model; (* The definition specifies the Functional_state_context that contains the finite state machine model. *) definition : functional_state_context; (* The id specifies the identifier of the Fsm_model. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to the Fsm_model. *) name : label; (* The presentation_id specifies the identity information for a Fsm_model that shall be presented to the user. *) presentation_id : OPTIONAL label; END_ENTITY; |
(* An Fsm_or_state is a type of Fsm_state of a finite state machine which, if decomposed, constrains the semantics of the child Fsm_state objects such that only one of the child states may be active when the parent state is active. <note number="1">subclass definition probably the best way to document this properly!</note> <note number="2">The fsm_or_state corresponds to the or state of statecharts and the normal state of a finite state machine.</note> *) ENTITY fsm_or_state SUBTYPE OF (fsm_state); END_ENTITY; (* A fsm_state is a type of Fsm_generic_state and a representation of a static state in a finite state machine. <note> Within the scope of AP 233 a fsm_state is always an element of a finite state machine. The concept "state" in EACM is in AP 233 terminology a Partial_system_view. </note> *) ENTITY fsm_state ABSTRACT SUPERTYPE OF (ONEOF(fsm_and_state, fsm_or_state)) SUBTYPE OF (fsm_generic_state); (* The description specifies additional information on the description. *) description : OPTIONAL text_select; (* The name specifies the word or set of words to which the name is referred to. *) name : label; (* The presentation_id specifies the identity information for a presentation_id that shall be presented to the user. *) presentation_id : OPTIONAL label; INVERSE (* The parent_state specifies the parent Fsm_state in the relationship. *) child_states : SET [0 : ?] OF fsm_state_composition_relationship FOR parent_state; END_ENTITY; |
(* An Fsm_state_composition_relationship is a relationship between two Fsm_state objects defining a parent child relationship between the two objects. <note number="1">The parent Fsm_state is identified by the parent_state attribute and the child Fsm_state is identified by the child_state attribute.</note> <note number="2">The State Fsm_state_composition_relationship entity is included in the model to support statechart extensions to the traditional finite state machine formalism.</note> *) ENTITY fsm_state_composition_relationship; (* The child_state specifies the child Fsm_state in the relationship. *) child_state : fsm_state; (* The parent_state specifies the parent Fsm_state in the relationship. *) parent_state : fsm_state; END_ENTITY; (* An Fsm_state_transition is a representation of a possible execution path between two Fsm_generic_state objects. <note>A fsm_state_transition is applicable for use in finite state machines only.</note> *) ENTITY fsm_state_transition; (* The destination_state specifies the Fsm_state activated if the Fsm_state_transition is fired. *) destination_state : fsm_generic_state; (* The source_state specifies the Fsm_state originally active in the relationship. *) source_state : fsm_generic_state; INVERSE (* The assigned_to specifies the Fsm_state_transition to which the textual specification is assigned. *) transition_label : SET [0 : 1] OF state_transition_specification_assignment FOR assigned_to; END_ENTITY; |
(* An Fsm_transient_state is a type of Fsm_generic_state with the discriminator the state is not, under any conditions, a static state of a finite state machine. <note>In statechart terminology a fsm_transient_state is a pseudo-state. Under no circumstances shall the fsm_transient_state be a static state of a system. If transitions out of a fsm_transient_state exist then these shall either be non guarded or the union of the guarding conditions shall be one, i.e., at least one guard will always evaluate to TRUE.</note> *) ENTITY fsm_transient_state SUBTYPE OF (fsm_generic_state); (* The state_type specifies the type of a Fsm_transient_state. Where applicable the state_type shall be one of the following values: <ul> <li>History</li> <li>Deep-history</li> <li>Condition</li> <li>Select</li> *) state_type : label; END_ENTITY; (* An Fsm_transient_state_composition_relationship is a relationship between fsm_state and a fsm_transient_state indicating that the Fsm_transient_state is a sub-state of the Fsm_state. <note>An Fsm_transient_state_composition_relationship may be instantiated only of there is at least one Fsm_state_composition_relationship instantiated for the Fsm_state. An Fsm_state may not only be composed of Fsm_transient_state objects.</note> *) ENTITY fsm_transient_state_composition_relationship; (* The child_state represents the Fsm_transient_state in the Fsm_transient_state_composition_relationship. *) child_state : fsm_transient_state; (* The parent_state represents the Fsm_state in the Fsm_transient_state_composition_relationship. *) parent_state : fsm_state; END_ENTITY; |
(* A Function_instance is a type of General_functionality_instance and a representation of an entity that performs an activity within a system. <note>The functional domain describes what a system does.</note> *) ENTITY function_instance SUBTYPE OF (general_functionality_instance); (* The definition specifies the General_function_definition that provides the definition for the Function_instance. *) definition : general_function_definition; (* The id specifies the identifier of the Function_instance. *) id : element_identifier; (* The name specifies the word, or words, which are used to refer to the Function_instance. *) name : label; (* The presentation_id specifies the identity information for a Function_instance that shall be presented to the user. *) presentation_id : OPTIONAL label; INVERSE (* The port_of specifies the Function_instance object to which the Control_io_port is attached. *) control_port : SET [0 : ?] OF control_io_port FOR port_of; UNIQUE UR1: definition, id; END_ENTITY; (* A Function_reference is the relationship between a Function_instance object and a Fsm_model object. <note number="1">The function_reference is the means for referencing elements in the name space of a Composite_function_definition to the name space of a finite state machine.</note> <note number="2">To complete the referencing mechanism the following entities shall be used: State_function_interaction_port and Name_binding.</note> *) ENTITY function_reference; (* The function_link specifies the Function_instance that is imported into the finite state machine. *) function_link : function_instance; (* The port_of specifies the Fsm_model into which the Function_instance object is imported. *) port_of : fsm_model; END_ENTITY; |
(* A Functional_behaviour_model is the definition of functional behaviour model. A Functional_behaviour_model is an abstract super type that shall never be instantiated. *) ENTITY functional_behaviour_model ABSTRACT SUPERTYPE OF (ONEOF(cb_functional_behaviour_model, state_machine_functional_behaviour_model)); (* The description specifies additional textual information on the Functional_behaviour_model. *) description : OPTIONAL text_select; INVERSE (* The assigned_behaviour_model specifies the Functional_behaviour_model assigned. *) defines_behaviour_for : SET [0 : 1] OF functional_behaviour_model_assignment FOR assigned_behaviour_model; END_ENTITY; (* A Functional_behaviour_model_assignment is an assignment relationship between a Functional_behaviour_model and a Composite_function_definition object whose behaviour is defined by the Functional_behaviour_model. *) ENTITY functional_behaviour_model_assignment; (* The assigned_behaviour_model specifies the Functional_behaviour_model assigned. *) assigned_behaviour_model : functional_behaviour_model; (* The constrained_function specifies the Composite_function_definition object whose behaviour is constrained by the assigned Functional_behaviour_model. *) constrained_function : composite_function_definition; END_ENTITY; (* A Functional_decomposition_relationship is the hierarchical relationship between a Composite_function_definition and a General_functionality_instance. <note number="1">The Composite_function_definition is the parent in the relationship and the General_functionality_instance object is the child in the relationship.</note> *) ENTITY functional_decomposition_relationship; (* The child specifies the General_functionality_instance that is part of the composition of the parent. *) |
child : general_functionality_instance; (* The description specifies the role that the child plays in the Composite_function_definition specified by the parent attribute. <note number="2">As a child object may be part of many Composite_function_definition objects, the description attribute allows for a description of the role of the child in a particular Composite_function_definition.</note> *) description : OPTIONAL text_select; (* The parent specifies the Composite_function_definition of which the child is a part of the decomposition. *) parent : composite_function_definition; END_ENTITY; (* A Functional_link is the relationship between two Io_port objects such that there is a data interaction path between the two ports. <note number="1">The direction of the data path is from the source_port to the destination_port.</note> <note number="2">The data carried by the functional_link is determined by the data attribute of the source_port and destination_port attribute. The same Data_instance object shall be at the source and destination port.</note> *) ENTITY functional_link; (* The control_link specifies whether or not the Functional_link carries control information. *) control_link : BOOLEAN; (* The description specifies additional information on the Functional_link. *) description : OPTIONAL text_select; (* The destination_port specifies the Io_port that is the data receiver. *) destination_port : io_port; (* The name specifies the word, or words, that are used to refer to the Functional_link. *) name : label; (* The source_port specifies the Io_port that is the data transmitter. *) source_port : io_port; DERIVE data_on_link : data_instance := source_port.data; WHERE correct_ports: ((destination_port.role = consumer) AND (source_port.role = producer)); END_ENTITY; |
(* A Functional_link_allocation_relationship is the mechanism for indicating that a Functional_link_reference shall be routed onto a particular Physical_instance_reference. <note>A prerequisite for the allocation is that the allocated functional_link is allocated to a Physical_instance_reference that is part of the same System_view object.</note> *) ENTITY functional_link_allocation_relationship; (* The allocated_functional_link specifies the Functional_link_reference in the Functional_link_allocation_relationship. *) allocated_functional_link : functional_link_reference; (* The allocated_to specifies the Physical_instance_reference in the relationship. *) allocated_to : physical_instance_reference; (* The description specifies additional textual information about the Functional_link_allocation_relationship. *) description : OPTIONAL text_select; END_ENTITY; (* A Functional_link_group is a container for grouping related Functional_link objects. <note>A functional_link_group allows a designer to refer to a group of Functional_link objects as if they constituted a single flow. One reason for using a Functional_link_group in a model is that it allows for the assignment of the same graphical properties to the group objects that are members of the Functional_link_group.</note> *) ENTITY functional_link_group; (* The elements is the set of Functional_link objects that make up the Functional_link_group. *) elements : SET [2 : ?] OF functional_link; (* The name specifies the word, or words, that are yused to refer to the Functional_link_group. *) name : label; END_ENTITY; |
(* A Functional_link_reference is the unambiguous reference to Functional_link objects in the context of a General_functionality_instance that is further decomposed. *) ENTITY functional_link_reference; (* The in_scope_of specifies the Functionality_instance_reference which defines the context of the functional_link identified by the Functional_link_reference. *) in_scope_of : functionality_instance_reference; (* The reference_functional_link specifies the Functional_link for which the Functional_link_reference is the unambiguous reference. *) reference_functional_link : functional_link; END_ENTITY; (* A Functional_reference_configuration is a collector for all Functionality_reference_composition_relationship objects that apply for a particular functional view on a system. <note number="1">A Functional_reference_configuration may be assigned to any number of systems through the use of multiple System_functional_configuration objects.</note> <note number="2">The Functional_reference_configuration provides the means for defining multiple non-functional views of single system functional architecture model.</note> *) ENTITY functional_reference_configuration; (* The description specifies additional information about the Functional_reference_configuration. *) description : OPTIONAL text_select; END_ENTITY; (* A Functional_representation_relationship is the mechanism for indicating that a data_instance, used within the functional view of a specification, is acting as an alias for a Physical_instance from a physical view of the specification. <note>The Functional_representation_relationship is motivated by the need to allow for functional models to reference other elements than data types, while maintaining a rigourous structure in the model. <p>The alternative would be to allow Io_port objects to directly carry objects of other types than of Data_instance. While straightforward, this approach would lead to severe interpretation problems for tools incapable of representing items other than Data_instance objects.</p></note> *) ENTITY functional_representation_relationship; |
(* The description specifies additional information about the Functional_representation_relationship. *) description : OPTIONAL text_select; (* The functional_representation specifies the data_instance defined as an alias for the physical_instance object defined by the physical_element attribute of the Functional_representation_relationship. *) functional_representation : data_instance; (* The physical_element specifies the physical_instance involved in the Functional_representation_relationship. *) physical_element : physical_instance; END_ENTITY; (* A Functional_state_context is a type of Generic_state_context and the enclosure of a finite state machine. <note number="1">There is a specific Functional_state_context object as the usage of FSMs are different in structured analysis and OO systems engineering. </note> <note number="2">The Functional_state_context may contain any number of states and transitions, but no transition may cross the boundaries of the Functional_state_context.</note> *) ENTITY functional_state_context SUBTYPE OF (generic_state_context); END_ENTITY; (* A Functionality_allocation_relationship is the mechanism for mapping a Functionality_instance_reference to a particular Physical_instance_reference that shall realize the functionality. *) ENTITY functionality_allocation_relationship; (* The allocated_functionality specifies the Functionality_instance_reference that is being allocated. *) allocated_functionality : functionality_instance_reference; (* The allocated_to specifies Physical_instance_reference to which the Functionality_allocation_relationship is allocated. *) allocated_to : physical_instance_reference; |
(* The description specifies additional textual information on the Functionality_allocation_relationship. *) description : OPTIONAL text_select; END_ENTITY; (* A Functionality_instance_reference is the non-ambiguous reference to a General_functionality_instance element in a Composite_function_definition structure. <note>A Functionality_instance_reference is introduced to allow for allocation and reference of system specific non-functional characteristics to a system functional description.</note> *) ENTITY functionality_instance_reference SUPERTYPE OF (persistent_storage_reference); (* The description specifies additional textual information on the Functionality_instance_reference. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Functionality_instance_reference. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to a Functionality_instance_reference. *) name : label; (* The referenced_functionality_instance specifies the General_functionality_instance that the Functionality_instance_reference is a reference for. *) referenced_functionality_instance : general_functionality_instance; END_ENTITY; (* A Functionality_reference_composition_relationship is the mechanism for indicating the hierarchical relationship between two Functionality_instance_reference objects. *) ENTITY functionality_reference_composition_relationship; (* The child specifies the component functionality in the Functionality_reference_composition_relationship. *) child : functionality_instance_reference; |
(* The mirror_of specifies the Functional_decomposition_relationship for which the Functionality_reference_composition_relationship provides the unambiguous reference. *) mirror_of : functional_decomposition_relationship; (* The parent specifies the decomposed functionality in the Functionality_reference_composition_relationship. *) parent : functionality_instance_reference; (* The reference_configuration specifies the Functional_reference_configuration for which the parent and child Functionality_instance_reference objects are valid. *) reference_configuration : functional_reference_configuration; END_ENTITY; (* A Functionality_reference_relationship is the mechanism for capturing binary relationships between two Functionality_instance_reference objects. The purpose is to allow for capturing information. <example number="11"> Requirements on temporal relationships between two Functionality_instance_reference objects.</example> *) ENTITY functionality_reference_relationship; (* The first_reference specifies the first Functionality_instance_reference object in the relationship. *) first_reference : functionality_instance_reference; (* The second_reference specifies the second Functionality_instance_reference object in the relationship. *) second_reference : functionality_instance_reference; END_ENTITY; (* A General_function_definition provides a structured definition of a function (or a process) at some level of abstraction in a system. Each General_function_definition is either a Composite_function_definition or a Leaf_function_definition. *) ENTITY general_function_definition ABSTRACT SUPERTYPE OF (ONEOF(composite_function_definition, leaf_function_definition)); |
(* The associated_version specifies the Configuration_element_version for the associated_version. *) associated_version : configuration_element_version; (* The description specifies additional textual specification on the General_function_definition. *) description : OPTIONAL text_select; (* The id specifies the identifier of the id. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to the General_function_definition. *) name : OPTIONAL label; INVERSE (* The port_of specifies the General_function_definition for which this is a port. This attribute is reinforced by the inverse relationship which indicates that a port_of can only point at a definition but a definition can be referred to by several ports. *) formal_port : SET [0 : ?] OF formal_io_port FOR port_of; UNIQUE UR1: id; END_ENTITY; (* Each General_functionality_instance is either a Fsm_model, a Function_instance, an Io_split_join or a Persistent_storage. *) ENTITY general_functionality_instance ABSTRACT SUPERTYPE OF (ONEOF(fsm_model, function_instance, io_split_join, persistent_storage)); (* The description specifies additional information about the description. *) description : OPTIONAL text_select; INVERSE |
(* The port_of specifies the General_functionality_instance object of which the port_of is part. *) actual_port : SET [0 : ?] OF actual_io_port FOR port_of; END_ENTITY; (* Each General_physical_definition is either a Physical_link_definition or a Physical_node_definition. <note number="1">A General_physical_definition is a specification of a thing which, when realized, becomes a physical item that a) can be touched b) has weight c) has a non-zero physical size.</note> <note number="2">PAS 20542 provides only an abstract view on the physical components a system is built from. The rationale for this decision is that each system physical component may have different characteristics best represented by the multitude of application protocols available in STEP represented in detail.</note><p>The limited functionality provided is intended to allow systems engineers to map functions and flows onto components and flows onto links, to relate requirements to the components they apply to and to allow for capturing other properties of the physical component.</p> *) ENTITY general_physical_definition ABSTRACT SUPERTYPE OF (ONEOF(physical_link_definition, physical_node_definition)); (* The associated_version specifies the Configuration_element_version for the General_physical_definition *) associated_version : configuration_element_version; (* The description specifies additional information about the General_physical_definition. *) description : OPTIONAL text_select; (* The id specifies the identifier of the General_physical_definition. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to the General_physical_definition. *) name : OPTIONAL label; INVERSE (* The port_of specifies the General_physical_defintion object for which the Formal_physical_port provides part of the interface. *) formal_port : SET [0 : ?] OF formal_physical_port FOR port_of; UNIQUE UR1: id; END_ENTITY; |
(* A Generic_state_context is the enclosure of a finite state machine or statechart. Each Generic_state_context is a Functional_state_context. *) ENTITY generic_state_context ABSTRACT SUPERTYPE; (* The associated_version specifies the the Configuration_element_version for the Generic_state_context. *) associated_version : configuration_element_version; (* The description specifies additional information on the Generic_state_context. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Generic_state_context. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to the Generic_state_context. *) name : OPTIONAL label; (* The original_representation specifies how the state machine enclosed by the Generic_state_context was presented. Where applicable, one of the following shall be used to represent the original_representation:<ul><li>table: The state machine was presented in a table structure in the originating tool; </li><li>graph: The state machine was presented using a graphical notation in the originating tool.</li></ul> *) original_representation : label; (* The state_machine_model specifies the type of state machine enclosed by the Generic_state_context. Where applicable, one of the following values shall be used:<ul><li>moore: The enclosed state machine is flat. No states are decompositioned. The output alphabet from the state machine is generated by Fsm_generic_state objects;</li> <li>mealy: The enclosed state machine is flat. No states are decompositioned. The output alphabet from the state machine is generated by Fsm_state_transition and Fsm_initial_state_transition objects;</li> <li>hierarchical: The states in the enclosed state machine may be composed of other states. The output alphabet may be generated by both Fsm_generic_state, Fsm_state_transition and Fsm_initial_state_transition objects.</li></ul> *) state_machine_model : label; END_ENTITY; |
(* A Graphics_link is a type of Visual_element and a representation of a open graphical figure spanning a list of Graphics_point objects. <note> The graphical information is not directly associated with the objects that are represented by the Graphics_link object as the objects may have totally different representations if they appear in more than one context. </note> *) ENTITY graphics_link SUBTYPE OF (visual_element); (* The associated_with specifies the Configuration_element for which the Graphics_link provides the visual layout. *) associated_with : link_select; (* The point specifies the list of co-ordinates of the Graphics_link. *) point : LIST [2 : ?] OF graphics_point; END_ENTITY; (* A graphics_node is a type of Visual_element and a representation of a closed rectangle used for presenting the position of an object. *) ENTITY graphics_node SUBTYPE OF (visual_element); (* The associated_with specifies the object for which the associated_with provides visual placement information. *) associated_with : node_select; (* The bottom_right specifies the Graphics_point object that provides positioning information for the bottom right corner of the node. *) bottom_right : graphics_point; (* The top_left specifies the Graphics_point object that provides positioning information for the upper left corner of the node. *) top_left : graphics_point; END_ENTITY; |
(* A Graphics_point is a point in the coordinate plane. <note number="1">The coordinate plane is valid in the range {0<= x, y <= 1}. No information on the aspect ratio is given.</note> <note number="2">This model is chosen since the dimensions of elements in a graphical view does not have any meaning in the domain. If the aspect ratio is set up in such a way the image is perceived to be distorted it is up to the viewer to adjust the aspect ratio.</note> *) ENTITY graphics_point; (* The x_coordinate specifies the horizontal position in the coordinate plane. A value of 0 is the leftmost position and a value of 1 is the rightmost position. *) x_coordinate : REAL; (* The y_coordinate specifies the vertical position in the coordinate plane. A value of 0 is the topmost position and a value of 1 indicates to position furthest down. *) y_coordinate : REAL; END_ENTITY; (* A Graphics_view is the collection of all items carrying graphical information that apply to the contents of a General_function_definition, a General_physical_definition, a Functional_state_context, or a Fsm_state. *) ENTITY graphics_view; (* The definition_for specifies the object for which the Graphics_view is valid. *) definition_for : definition_select; INVERSE (* The transformation_for specifies graphics_view for which the Coordinate_translation_information provides information. *) coordinate_definition : SET [0 : ?] OF coordinate_translation_information FOR transformation_for; (* The top_view specifies the Graphics_view object for which the Multi_level_view is the top_view. *) root_view : SET [0 : 1] OF multi_level_view FOR top_view; (* The view specifies the Graphics_view for which the Visual_element is defined. *) view_element : SET [1 : ?] OF visual_element FOR view; END_ENTITY; |
(* A Hibound_integer_interval is an Integer_interval that has an upper bound that constrains the sub-set of integer values it contains. *) ENTITY hibound_integer_interval SUBTYPE OF (integer_interval); (* The high_index specifies the highest value that a Data_instance of this type can take. *) high_index : INTEGER; END_ENTITY; (* A Hibound_real_interval is a type of Real_interval that has an upper bound that constrains the sub-set of real values it contains. *) ENTITY hibound_real_interval SUBTYPE OF (real_interval); (* The high_closure specifies whether or not the high_index is included in the maths space. TRUE = included, FALSE = excluded. *) high_closure : BOOLEAN; (* The high_index specifies the highest value that a Data_instance of this type can take. *) high_index : REAL; END_ENTITY; (* An Implied_external_interaction is the relationship between a Requirement_instance object and a Function_instance or a Physical_instance object such that the existence of the functional or physical element is implied in the requirement. *) ENTITY implied_external_interaction; (* The associated_requirement specifies the Requirement_instance in the relationship. *) associated_requirement : requirement_instance; (* The implied_external_element specifies the Configuration_element implied by the requirement. *) implied_external_element : external_element_select; INVERSE (* The transfer specifies the Implied_external_interaction object for which the Data_transfer is valid. *) associated_data : SET [0 : 1] OF data_transfer FOR transfer; END_ENTITY; |
(* An Infinite_cardinality is the representation of a positive infinite real number. *) ENTITY infinite_cardinality; END_ENTITY; (* An Initial_state_transition_specification_assignment is the mechanism for relating a Textual_specification defining the actions carried out when the Fsm_initial_state_transition is activated. *) ENTITY initial_state_transition_specification_assignment; (* The assigned_to specifies the Fsm_initial_state_transition the specification is associated with. *) assigned_to : fsm_initial_state_transition; (* The specification specifies the Textual_specification assigned by the Initial_state_transition_specification_assignment. *) specification : textual_specification; END_ENTITY; (* An Integer_data_type_definition is a type of Elementary_maths_space that includes all integer values. *) ENTITY integer_data_type_definition SUBTYPE OF (elementary_maths_space); END_ENTITY; (* An Integer_interval is a type of Elementary_maths_space that is a bounded sub-set of all integer values. *) ENTITY integer_interval ABSTRACT SUPERTYPE OF (ONEOF(finite_integer_interval, hibound_integer_interval, lobound_integer_interval)) SUBTYPE OF (maths_space); END_ENTITY; |
(* An Io_buffer is a modifier to the temporal behaviour of an Actual_io_port. <note>If an Io_buffer is assigned to an Actual_io_port producing data then data produced is discretized and can only be read once. If an Io_buffer is assigned to an Actual_io_port consuming data, the data received in discretized and stored until read from the port. The behaviour of the buffer is further specified by the continuously_active attribute. For consuming ports the Io_buffer may control the Io_buffer to be active continuously or only in the intervals the function the Io_port is assigned to is active. The continuously_active attribute does not modify the semantics of Actual_io_port objects producing data.</note> *) ENTITY io_buffer; (* The assigned_to specifies the Actual_io_port object to which the Io_buffer is assigned. *) assigned_to : actual_io_port; (* The continuously_active specifies whether the Io_buffer is active continuously or not. *) continuously_active : BOOLEAN; (* The synchronization_semantics specifies the syncronization conditions enforced by the Io_buffer. The synchronization_semantics is one of the following:<ul><li>synchronous: The function sending information via the Actual_io_port to which the Io_buffer is connected shall remain active until the information have been consumed by the receiver;</li> <li>asynchronous: The function sending infromation via the Actual_io_port to which the Io_buffer is connected may terminate without constraints on whether the information is received or not.</li></ul> *) synchronisation_semantics : buffer_synchronisation_enumeration; END_ENTITY; |
(* An Io_composition_port is a type of Io_port and a decomposition of a TBD. <note number="1">The semantics of the entity Functional_link is to convey a Data_instance from the producing Io_port to the consuming Io_port. The Data_instance shall be the same on both ports. For this reason there is a requirement to include support for decomposing an Io_port such that Functional_link objects may read or write sub sets of the data on an Io_port. The Io_composition_port is the means for taking a Data_instance of type composite_data_type on an Io_port and create an intermediate port whose data is a sub-set of the port it is connected to and is either the source or target of a Functional_link.</note> <note number="2">Due to the data abstraction facility included in the ARM, composition can only be made one level at a time. To specify that a Functional_link produces or consumes a Data_instance that is part of a data type structure at level n, then an Io_composition_port is needed to accurately define this.</note> <note number="3">The Io_composition_port corresponds to the dot-notation used in most imperative programming languages.<p>For example: a:=a_data_type.a_data_field.</p></note> *) ENTITY io_composition_port SUBTYPE OF (io_port); (* The is_alias_for specifies the Data_instance object of the port_of attribute that is assigned to the Io_composition_port. The Data_instance shall be at one level down in the data abstraction hierarchy of the data type of the Io_port object that is specified by the port_of attribute. <note number="4">This corresponds to the dot notation of programming languages. Assume a composite data type: <p>type a_type = record</p> <p>a_field : another_type;</p><p>another_field : another_type;</p><p>end type;</p></note> <note number="5">The is_alias_for identifies the field of a composite data type that is assigned to the data variable (Data_instance) of the is_alias_for.</note> <note number="6">The data attribute is inherited from the entity Io_port.</note> *) is_alias_for : data_instance; (* The port_of specifies the Io_port of which the Io_composition_port is a part. *) port_of : data_composition_select; DERIVE SELF\io_port.role : port_data_relation := port_of.role; UNIQUE UR1: port_of, SELF\io_port.io_port_number; END_ENTITY; |
(* An Io_port is a part of the interface of a functional object. <note number="1">An io_port is an abstract entity and shall not be instantiated.</note> *) ENTITY io_port ABSTRACT SUPERTYPE OF (ONEOF(actual_io_port, control_io_port, formal_io_port, io_composition_port)); (* The data specifies the Data_instance that defines the format of the element in the interface. *) data : data_instance; (* The io_port_number in combination with the port_type attribute and the port_of attribute shall be unique within the set of ports attached to an element. The io_port_number is the identifier of the Io_port. *) io_port_number : INTEGER; (* The port_type specifies the nature of the Io_port. The port_type is one of the following: <ul><li>input: The port is handling information originating from elements outside the context of the functionality the Io_port is an element of the interface;</li> <li>output: The port is handling information originating from elements inside the context of the functionality the Io_port is an element of the interface;</li> <li>control: The port is a specialisation of an input such that the information provided by this part of the interface is a prerequisite for the activation of the element the Io_port is part of the interface of.</li></ul><note number="2">The control is provided to allow for representation of IDEF0 control inputs. Semantically there is no difference between a control and an input port_type.</note> <ul><li>mechanism: The port is a specialisation of an input such that the resources provided by this part of the interface is a prerequisite for the activation of the element the Io_port is part of the interface of.</li></ul><note number="3">The mechanism is provided to allow for representation of IDEF0 control inputs. Semantically there is no difference between a mechanism and an input port_type.</note> *) port_type : port_type; (* The role specifies the interaction of the Io_port. The role may either produce information or consume information. The role is one of the following: *) role : port_data_relation; END_ENTITY; |
(* An Io_port_binding is the mapping from one Actual_io_port object to a Formal_io_port object. <note number="1">In programming languages, this corresponds to the mapping between formal and actual parameters in a function call.</note> <note number="2">An Io_port_binding is valid only if the Actual_io_port is connected to a Function_instance as its definition attribute has the General_function_definition object that the Formal_io_port is a port_of.</note> *) ENTITY io_port_binding; (* The actual_port specifies the Actual_io_port object in the mapping. *) actual_port : actual_io_port; (* The formal_port specifies the Formal_io_port object in the mapping. *) formal_port : formal_io_port; WHERE WR1: (SELF.formal_port.data :<>: SELF.actual_port.data); WR2: formal_port.role <> actual_port.role; WR3: correct_binding(SELF); END_ENTITY; (* An Io_split_join is a type of General_functionality_instance and a means for splitting up the components of a Functional_link object carrying composite data into several Functional_link objects carrying basic data or merging a Functional_link carrying basic data to a Functional_link carrying composite data. <note>The future of this entity is not clear. It may be removed from the model and the functionality may be replaced by an ordinary function.</note> *) ENTITY io_split_join SUBTYPE OF (general_functionality_instance); END_ENTITY; (* The Issue_source_relationship is the mechanism for relating the elements that played a part in raising an issue to a critical_issue. *) ENTITY issue_source_relationship; (* The description specifies additional information on the Issue_source_relationship. *) description : OPTIONAL text_select; |
(* The issue specifies the Critical_issue that the issue_source is assigned to. *) issue : critical_issue; (* The issue_source specifies the element that raised the issue. *) issue_source : issue_source_select; END_ENTITY; (* An Issue_system_assignment is the mechanism for relating a Critical_issue to the System_view or System_instance that the issue is relevant for. *) ENTITY issue_system_assignment; (* The description specifies additional information on the Issue_system_assignment. *) description : OPTIONAL text_select; (* The identified_system specifies the System_view or System_instance in the relationship. *) identified_system : system_select; (* The issue specifies the Critical_issue in the relationship. *) issue : critical_issue; END_ENTITY; (* A Justification is a textual description of the reasons for the existence of, or design rationale for, part of a system specification. *) ENTITY justification; (* The assigned_to specifies the object to which the Justification applies. *) assigned_to : justification_assignment_select; (* The justification_text specifies the textual comment on the object referenced by the assigned_to attribute. *) justification_text : text_select; (* The role is the word, or words, that are used to describe the nature of the Justification. <example number="12">Roles for a Justification might be "comment", "rationale", or "justification".</example> *) role : label; END_ENTITY; |
(* A Justification_relationship represents some relationships between two Justification objects. <note>The exact semantics of the relationship depend on the value of the relationship_type attribute.</note> <example number="13">The relationship between two Justification objects can arise from a situation where the choice of one alternative for a given part of the design may impact on further choices making potential alternatives invalid.</example> *) ENTITY justification_relationship; (* The description specifies additional textual information about the Justification_relationship. *) description : OPTIONAL text_select; (* The related specifies the second Justification in the relationship. *) related : justification; (* The relating specifies the first Justification in the relationship. *) relating : justification; (* The relationship_type specifies the semantics of the relationship. *) relationship_type : label; END_ENTITY; (* A Leaf_function_definition is a type of General_function_definition that is not decomposed any further. <note number="1">A function hierarchy is always terminated by a Leaf_function_definition. In a later release of the system under design, a Leaf_function might become a composite_function_definition. This case is handled by the use of Configuration_element_version items identifying two different releases of the same object.</note> *) ENTITY leaf_function_definition SUBTYPE OF (general_function_definition); (* The definition specifies the text that describes what (the service, transformation, state change, etc.) is performed by the function. The definition specifies the Textual_specification object that defines the specification and specification language for the Leaf_function_definition. <note number="2">The standard does not feature any means to ensure consistency and correctness of the content of the definition.</note> *) definition : textual_specification; |
(* The function_type specifies the word, or words, used to refer to the type of Leaf_function_definition. The function_type shall be interpreted in the generic sense as it specifies a class of functions. <note number="2">Possible values for function_type might be "mathematical", "transformational", or "trigonometric".</note> <note number="3">The PAS 20542 group shall provide a definition of preferred values for this attribute.</note> *) function_type : OPTIONAL label; (* The predefined specifies whether the predefined object has a formally defined semantics in the exporting tool. <note number="4">This attribute is a simple method of allowing for tools having large libraries of predefined functions to exchange information without having to map too much information onto user defined functions.</note> *) predefined : BOOLEAN; END_ENTITY; (* A Lobound_integer_interval is a type of Integer_interval that has a lower bound that constrains the sub-set of integer values it contains. *) ENTITY lobound_integer_interval SUBTYPE OF (integer_interval); (* The low_index specifies the lowest value that a Data_instance of this type can take. *) low_index : INTEGER; END_ENTITY; (* A Lobound_real_interval is a type of Real_interval that has a lower bound that constrains the sub-set of real values it contains. *) ENTITY lobound_real_interval SUBTYPE OF (real_interval); (* The low_closure specifies whether or not the low_index is included in the maths space. TRUE = included, FALSE = excluded. *) low_closure : BOOLEAN; (* The low_index specifies the lowest value that a Data_instance of this type can take. *) low_index : REAL; END_ENTITY; |
(* A Logical_data_type_definition is a type of Elementary_maths_space whose value range is: TRUE, FALSE or UNKNOWN. <note>Logical_data_type_definition is not modelled as a Finite_space as the concept of a Logical_data_type_definition has a more precise meaning than a Finite_space would allow.</note> *) ENTITY logical_data_type_definition SUBTYPE OF (elementary_maths_space); END_ENTITY; (* A Maths_space is a set of mathematical values that a Data_instance of that space can take. <note>For the purposes of data typing, strings are assumed to be mathematical values.</note> *) ENTITY maths_space ABSTRACT SUPERTYPE OF (ONEOF(elementary_maths_space, finite_space, integer_interval, real_interval)); (* The description specifies additional textual information on the Maths_space. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Maths_space. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to a Maths_space. *) name : OPTIONAL label; UNIQUE UR1: id; END_ENTITY; (* A Model_defined_requirement_definition is a type of Requirement_definition where the required capability is stated using some kind of a model expressed in PAS 20542 format. <note>The model may be in any format supported by PAS 20542.</note> *) ENTITY model_defined_requirement_definition SUBTYPE OF (requirement_definition); (* The assigned_model specifies the model that defines the requirement. *) assigned_model : system_view; (* The model_relevance specifies in text how the requirement expressed by the model shall be interpreted or which part of the assigned_model expresses the requirement. *) model_relevance : OPTIONAL text_select; END_ENTITY; |
(* A Multi_level_view is a set of Graphics_view objects that provide presentation information for multiple levels of decomposition within a single view. <note number="1">The Multi_level_view shall not be instantiated if no hierarchy of Graphics_view objects exist for a particular Graphics_view object.</note> <note number="2">The Multi_level_view is provided for representing multiple levels of decomposition of a design diagram.</note> *) ENTITY multi_level_view; (* The description specifies additional textual information on the Multi_level_view. *) description : OPTIONAL text_select; (* The reference_name specifies the word, or words, that are used ot refer to the Multi_level_view. *) reference_name : OPTIONAL label; (* The top_view specifies the Graphics_view object for which the Multi_level_view is the top_view. *) top_view : graphics_view; END_ENTITY; (* A Name_binding is the mapping relationship between a Function_reference object in the name space (part of the hierarchical breakdown) of a Composite_function_definition object and a State_function_interaction_port object. <note>The Name_binding maps the reference to a Function_instance object, used within a Functional_state_context object, to the actual Function_instance object. To accomplish this two port entities are introduced:<ol><li>Function_reference: provides the reference to a Function_instance object.</li><li>State_function_interaction_port: defines the local reference within a Functional_state_context.</li></ol></note> *) ENTITY name_binding; (* The actual_port specifies the Function_reference in the relationship. *) actual_port : function_reference; (* The formal_port specifies the State_function_interaction_port in the relationship. *) formal_port : state_function_interaction_port; END_ENTITY; |
(* A Nominal_value is a type of Value_with_unit and a quantity expressed with a numerical value and a unit. *) ENTITY nominal_value SUBTYPE OF (value_with_unit); (* The value_component specifies the quantity of the Nominal value. <note number="2">The definition is from AP-214 ARM.</note> *) value_component : NUMBER; INVERSE (* The limited_value specifies the Nominal_value further defined by the Plus_minus_bound. *) limitation : SET [0 : 1] OF plus_minus_bounds FOR limited_value; END_ENTITY; (* A Non_digital_document is a type of Document_reference that provides a reference to a document that is in non-digital form. *) ENTITY non_digital_document SUBTYPE OF (documentation_reference); (* The location specifies the physical location where the Non_digital_document can be obtained. *) location : label; END_ENTITY; (* An Oo_action is an executable statement that forms an abstraction of a computational procedure. *) ENTITY oo_action SUPERTYPE OF (ONEOF(oo_call_action, oo_create_action, oo_send_action)); (* The description specifies additional information about the Oo_action. *) description : OPTIONAL text_select; (* The is_asynchronous specifies whether the Oo_action is executed synchronously or asynchronously. *) is_asynchronous : BOOLEAN; |
(* The name specifies the word, or words, that are used to refer to the Oo_action. *) name : label; (* The script defines the Textual_specification that defines the specification and the specification language for the Oo_action. *) script : textual_specification; END_ENTITY; (* An Oo_action_state is a type of Cb_place that represents the execution of an atomic action, typically the invocation of an Oo_operation activation. *) ENTITY oo_action_state SUBTYPE OF (cb_place); END_ENTITY; (* An Oo_action_state_transition is a type of Cb_transition that specifies a temporal relationship between two Oo_action_state objects. *) ENTITY oo_action_state_transition SUBTYPE OF (cb_transition); END_ENTITY; (* An Oo_action_temporal_relationship is a relationship between two Oo_action objects that specifies their temporal order. *) ENTITY oo_action_temporal_relationship; (* The description specifies additional information about the Oo_action_temporal_relationship. *) description : OPTIONAL text_select; (* The predecessor specifies the preceding Oo_action. *) predecessor : oo_action; (* The successor specifies the subsequent Oo_action. *) successor : oo_action; END_ENTITY; |
(* An Oo_actor is a coherent set of roles that users of Oo_use_case objects play when interacting with them. *) ENTITY oo_actor; (* The description specifies additional information about the Oo_actor. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_actor. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to the Oo_actor. *) name : label; (* The namespace specifies the element to which the Oo_actor belongs. The names of elements belonging to the same namespace element must be unique within this set. *) namespace : OPTIONAL oo_namespace_select; END_ENTITY; (* An Oo_argument is a specific initial_value corresponding to an Oo_parameter object. *) ENTITY oo_argument; (* The action specifies the Oo_action object to which the action belongs. *) action : oo_action; (* The initial_value specifies the actual value of initial_value. *) initial_value : text_select; END_ENTITY; (* An Oo_association is a type of Oo_generic_association that provides a semantic relationship between elements of the system. *) ENTITY oo_association SUBTYPE OF (oo_generic_association); WHERE WR1: SELF\oo_generic_association.reading_direction IN SELF\oo_generic_association.connection; END_ENTITY; |
(* An Oo_association_class is an object that has both Oo_class_association and Oo_class properties. It represents a set of Oo_object objects that are coincidently instantiated with the association instance. *) ENTITY oo_association_class; (* The class specifies the related Oo_class object. *) class : oo_class; (* The class_association specifies the related Oo_association object. *) class_association : oo_generic_association; (* The description specifies additional information about the Oo_association_class. *) description : OPTIONAL text_select; END_ENTITY; (* An Oo_association_end is a type of Oo_generic_association_end that specifies an end point of an Oo_association. *) ENTITY oo_association_end SUBTYPE OF (oo_generic_association_end); SELF\oo_generic_association_end.association : oo_association; END_ENTITY; (* An Oo_association_end_classifier_relationship is a relationship between an Oo_association_end and a classifier specifying the Oo_association_end_classifier_relationship. *) ENTITY oo_association_end_classifier_relationship; (* The association_end specifies the qualified Oo_association_end object. *) association_end : oo_generic_association_end; (* The description specifies additional information about the Oo_association_end_classifier_relationship *) description : OPTIONAL text_select; (* The specification defines the specifying classifier. *) specification : oo_extended_classifier_select; END_ENTITY; |
(* An Oo_association_end_qualifier_association is a relationship between an Oo_association_end object and an Oo_attribute object. *) ENTITY oo_association_end_qualifier_association; (* The association_end specifies the qualified Oo_association_end object. *) association_end : oo_generic_association_end; (* The qualifier specifies the qualifying Oo_attribute object. *) qualifier : OPTIONAL oo_attribute; END_ENTITY; (* An Oo_association_end_role is a type of Oo_generic_association_end that specifies an end point of an Oo_association_role. *) ENTITY oo_association_end_role SUBTYPE OF (oo_generic_association_end); (* The base specifies the Oo_association_end that the Oo_association_end_role is based on. *) base : OPTIONAL oo_association_end; (* The collaboration_multiplicity specifies the number of target instances that may be associated with a single source instance across the given Oo_association_role specified by an Oo_association_end_role. *) collaboration_multiplicity : cardinality_association_select; (* The role_type specifies the semantics of the Oo_association_end_role. *) role_type : oo_classifier_role; SELF\oo_generic_association_end.association : oo_association_role; END_ENTITY; (* An Oo_association_role is a type of Oo_generic_association that specifies a specific behavior of an Oo_association in a particular context. *) ENTITY oo_association_role SUBTYPE OF (oo_generic_association); (* The base specifies the Oo_association that the Oo_association_role is based on. *) base : OPTIONAL oo_association; |
(* The multiplicity specifies the number of target instances that may be associated with a single source instance across the given Oo_association specified by base. *) multiplicity : cardinality_association_select; WHERE WR1: SELF\oo_generic_association.reading_direction IN SELF\oo_generic_association.connection; END_ENTITY; (* An Oo_attribute is a named part of a classifier that specifies the range of values that instances of the classifier may hold. *) ENTITY oo_attribute; (* The definition specifies the type definition of the Oo_attribute. *) definition : oo_extended_classifier_select; (* The description specifies additional information about the Oo_attribute. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_attribute. *) id : element_identifier; (* The name specifies the word, or words, that are used ot refer to the Oo_attribute. *) name : label; (* The owner specifies the classifier to which the Oo_attribute belongs. *) owner : oo_extended_classifier_select; (* The visibility specifies how the Oo_attribute may be seen outside its enclosing namespace. Where applicable the following values should be used:<ul><li>private: Specifies that the Oo_attribute is only visible to elements within the same namespace;</li> <li>protected: Specifies that the Oo_attribute is only visible to elements of the same namespace and namespaces that are inherited from this;</li> <li>public: Specifies that the Oo_attribute can be accessed from other elements including those outside the namespace of the Oo_attribute</li></ul> *) visibility : label; END_ENTITY; |
(*An Oo_attribute_instance is an instance of a Oo_attribute. *) ENTITY oo_attribute_instance; (* The attribute_value specifies the actual value of an Oo_attribute_instance. *) attribute_value : label; (* The definition specifies the Oo_attribute that provides the definition for the Oo_attribute_instance. *) definition : oo_attribute; (* The owner specifies the classifier to which the Oo_attribute_instance belongs. *) owner : oo_extended_classifier_select; END_ENTITY; (* An Oo_attribute_link_end_association allocates Oo_attribute_instance objects to Oo_link_end objects. *) ENTITY oo_attribute_link_end_association; (* The attribute_instance specifies the Oo_attribute_instance object that is attached the the Oo_link_end object specified by link_end. *) attribute_instance : oo_attribute_instance; (* The description specifies additional information about the Oo_attribute_link_end_association. *) description : text_select; (* The link_end specifies the Oo_link_end object to which the attribute_instance is attached. *) link_end : oo_link_end; END_ENTITY; (* An Oo_behavioral_feature ia a dynamic feature of a classifier. *) ENTITY oo_behavioural_feature ABSTRACT SUPERTYPE OF (ONEOF(oo_method, oo_operation, oo_reception)); (* The name specifies the word, or words, that are used to refer to the Oo_behavioral_feature. *) name : label; |
(* The owner specifies the classifier to which the Oo_behavioral_feature belongs. *) owner : oo_classifier_select; (* The visibility specifies how the Oo_behavioural_feature may be seen outside its enclosing namespace. Where applicable the following values should be used:<ul><li>private: Specifies that the Oo_behavioural_feature is only visible to elements within the same namespace;</li> <li>protected: Specifies that the Oo_behavioural_feature is only visible to elements of the same namespace and namespaces that are inherited from this;</li><li>public: Specifies that the Oo_behavioural_feature can be accessed from other elements including those outside the namespace of the Oo_behavioural_feature.</li></ul> *) visibility : label; END_ENTITY; (* An Oo_call_action is a type of Oo_action that specifies the call of an operation specified as Oo_operation object. *) ENTITY oo_call_action SUBTYPE OF (oo_action); (* The operation specifies the Oo_operation that is being called. *) operation : oo_operation; END_ENTITY; (* An Oo_class is a basic object-oriented notion representing a set of Oo_object elements sharing the same collection of common features such as Oo_attribute, Oo_operation, Oo_method and relationships in the form of Oo_association, Oo_generalization, Oo_dependency, Oo_extension or Oo_inclusion. *) ENTITY oo_class; (* The associated_version specifies the Configuration_element_version for the Oo_class. *) associated_version : configuration_element_version; (* The description specifies additional information about the Oo_class. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_class. *) |
id : element_identifier; (* The is_active specifies whether an instance of an Oo_class in the form of an Oo_object owns a thread of control. If the value is TRUE, the Oo_object instance of the is_active has its own thread of control and may run concurrently with other active instances of Oo_class. If the value is FALSE, the Oo_operation calls are executed under control of the calling active Oo_object. *) is_active : BOOLEAN; (* The name specifies the word, or words, that are used to refer to the Oo_class. *) name : label; (* The namespace specifies the element to which the Oo_class belongs. The names of elements belonging to the same namespace element must be unique within this set. *) namespace : OPTIONAL oo_namespace_select; (* The visibility specifies how the Oo_class may be seen outside its enclosing namespace. Where applicable the following values should be used:<ul><li>private: Specifies that the Oo_class is only visible to elements within the same namespace;</li> <li>public: Specifies that the Oo_class can be accessed from other elements including those outside the namespace of the Oo_class;</li> <li>protected: Specifies that the Oo_class is only visible to elements of the same namespace and namespaces that are inherited from this.</li></ul> *) visibility : label; END_ENTITY; (* An Oo_classifier_role is a specific behaviour of a classifier in a particular context. *) ENTITY oo_classifier_role; (* The multiplicity specifies the number of Oo_classifier_role objects that may be associated with a single sender of a referencing Oo_message. *) multiplicity : cardinality_association_select; INVERSE (* The role_type specifies the semantics of the Oo_association_end_role. *) association_end_role : SET [0 : ?] OF oo_association_end_role FOR role_type; END_ENTITY; |
(* An Oo_collaboration specifies the way in which different elements are to be used in accomplishing a particular task. *) ENTITY oo_collaboration; (* The description specifies additional information about the Oo_collaboration. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_collaboration. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to the Oo_collaboration. *) name : label; (* The representing specifes the element whose behaviour is described by the Oo_collaboration. *) representing : oo_classifier_or_operation_select; END_ENTITY; (* An Oo_component is a distributable piece of implementation of a system. *) ENTITY oo_component; (* The description specifies additional information about the Oo_component. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_component. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to the Oo_component. *) name : label; (* The namespace specifies the element to which the Oo_component belongs. The names of elements belonging to the same namespace element must be unique within this set. *) namespace : OPTIONAL oo_namespace_select; (* The visibility specifies how the Oo_component may be seen outside its enclosing namespace. Where applicable the following values should be used:<ul><li>private: Specifies that the Oo_component is only visible to elements within the same namespace;</li> <li>protected: Specifies that the Oo_component is only visible to elements of the same namespace and namespaces that are inherited from this;</li> <li>public: Specifies that the Oo_component can be accessed from other elements including those outside the namespace of the Oo_component.</li></ul> *) |
visibility : label; END_ENTITY; (* An Oo_component_allocation is the mechanism for allocating a Oo_component object to a Physical_instance_reference object. *) ENTITY oo_component_allocation; (* The deployment_location specifies the Physical_instance_reference object on which the Oo_component object specified by resident resides. *) deployment_location : physical_instance_reference; (* The description specifies additional information about the Oo_component_allocation. *) description : OPTIONAL text_select; (* The resident specifies the deployed Oo_component object. *) resident : oo_component; END_ENTITY; (* An Oo_constraint specifies a semantic condition or restriction. *) ENTITY oo_constraint; (* The body specifies the Textual_specification object that defines the specification and the specification language for the Oo_constraint. *) body : textual_specification; END_ENTITY; (* An Oo_constraint_model_element_relationship is the allocation of an Oo_constraint to an element. *) ENTITY oo_constraint_model_element_relationship; (* The constraint specifies the constraining Oo_constraint. *) constraint : oo_constraint; (* The model_element specifies the constrained element. *) model_element : oo_model_element_select; END_ENTITY; |
(* An Oo_create_action is a type of Oo_action that specifies the creation of a classifier. *) ENTITY oo_create_action SUBTYPE OF (oo_action); (* The instantiation specifies that the classifier has been created by the Oo_create_action. *) instantiation : oo_classifier_select; END_ENTITY; (* An Oo_dependency is a relationship between two elements, in which a change to the supplier element will effect the client element. *) ENTITY oo_dependency; (* The client specifies the dependent element of the Oo_dependency. *) client : oo_model_element_select; (* The description specifies additional information about the Oo_dependency. *) description : text_select; (* The supplier specifies the independent element of the Oo_dependency. *) supplier : oo_model_element_select; END_ENTITY; (* An Oo_element_import is the use of a model_element in an Oo_package. *) ENTITY oo_element_import; (* The alias_name specifies an alternative name for the imported model_element that can be used to reference the model_element. *) alias_name : OPTIONAL label; (* The container specifies the Oo_package that imports the model_element through the container. *) container : oo_package; (* The model_element specifies the element that is imported. *) model_element : oo_model_element_select; (* The name specifies the word, or words, that are used to refer to the Oo_element_import. *) name : label; |
(* The visibility specifies how the Oo_element_import may be seen outside its enclosing namespace. Where applicable the following values should be used:<ul><li>private: Specifies that the Oo_element_import is only visible to elements within the same namespace;</li> <li>protected: Specifies that the Oo_element_import is only visible to elements of the same namespace and namespaces that are inherited from this;</li> <li>public: Specifies that the Oo_element_import can be accessed from other elements including those outside the namespace of the Oo_element_import.</li></ul> *) visibility : label; END_ENTITY; (* An Oo_element_residence identifies the Oo_component object in which an implementation element resides. *) ENTITY oo_element_residence; (* The description specifies additional information about the Oo_element_residence. *) description : OPTIONAL text_select; (* The implementation_location specifies the Oo_component on which the element resides. *) implementation_location : oo_component; (* The resident specifies the element residing on the Oo_component specified by implementation_location. *) resident : oo_model_element_select; (* The visibility specifies how the Oo_element_residence may be seen outside its enclosing namespace. Where applicable the following values should be used:<ul><li>private: Specifies that the Oo_element_residence is only visible to elements within the same namespace;</li> <li>protected: Specifies that the Oo_element_residence is only visible to elements of the same namespace and namespaces that are inherited from this;</li> <li>public: Specifies that the Oo_element_residence can be accessed from other elements including those outside the namespace of the Oo_element_residence.</li></ul> *) visibility : label; END_ENTITY; |
(* An Oo_extension relates an extension Oo_use_case to a base Oo_use_case. *) ENTITY oo_extension; (* The base specifies the original Oo_use_case object in the Oo_extension. *) base : oo_use_case; (* The condition defines the Textual_specification object that defines a condition that has to be fulfilled in order for the extension to take place. *) condition : text_select; (* The extension specifies the extending Oo_use_case object in the Oo_extension. *) extension : oo_use_case; (* The extension_point specifies the Oo_extension_point that defines where information shall be added. *) extension_point : oo_extension_point; END_ENTITY; (* An Oo_extension_point is the position at which an Oo_use_case object may be extended through an Oo_extension object. *) ENTITY oo_extension_point; (* The location specifies the Textual_specification object that defines the location of the Oo_extension_point in textual form. *) location : text_select; (* The use_case specifies the Oo_use_case object for which the Oo_extension_point is an extension point. *) use_case : oo_use_case; END_ENTITY; (* An Oo_generalization is a taxonomic relationship between a more general element and a more specific element. *) ENTITY oo_generalization; (* The child specifies the more specific element. The child is fully consistent with the parent and may contain additional information. *) child : oo_generalizable_element_select; |
(* The discriminator is the name of a partition of all child elements that have the same parent element. *) discriminator : label; (* The parent specifies the more general element. *) parent : oo_generalizable_element_select; END_ENTITY; (* An Oo_generic_association is either an Oo_association or an Oo_association_role and specifies a semantic relationship between elements of an object oriented system specification. *) ENTITY oo_generic_association ABSTRACT SUPERTYPE OF (ONEOF(oo_association, oo_association_role)); (* The description specifies additional information about the Oo_generic_association. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_generic_association. *) id : element_identifier; (* The name specifies the word, or words, that are used to refer to the Oo_generic_association. *) name : label; (* The reading_direction specifies the Oo_generic_association_end object to which the name of the Oo_generic_association is directed. <example number="14">A reading_direction between an Oo_class named Adult and another Oo_class named Child is named Parent. The reading direction specifies the Child as the directed object; for example, the association reads "Adult is Parent of Child".</example> *) reading_direction : oo_generic_association_end; (* The visibility specifies how the Oo_generic_association may be seen outside its enclosing namespace. Where applicable the following values should be used:<ul><li>private: Specifies that the Oo_generic_association is only visible to elements within the same namespace;</li> <li>protected: Specifies that the Oo_generic_association is only visible to elements of the same namespace and namespaces that are inherited from this;</li> <li>protected: Specifies that the Oo_generic_association is only visible to elements of the same namespace and namespaces that are inherited from this.</li></ul> *) |
visibility : label; INVERSE (* The association specifies the Oo_association object of which the Oo_generic_association_end is an end. *) connection : SET [2 : ?] OF oo_generic_association_end FOR association; END_ENTITY; (* An Oo_generic_association_end is an end point of an Oo_association. *) ENTITY oo_generic_association_end ABSTRACT SUPERTYPE OF (ONEOF(oo_association_end, oo_association_end_role)); (* The aggregation specifies the whole-part relationship of the associated elements. *) aggregation : label; (* The association specifies the Oo_association object of which the Oo_generic_association_end is an end. *) association : oo_generic_association; (* The description specifies additional information about the Oo_generic_association_end. *) description : OPTIONAL text_select; (* The id specifies an identifier for the Oo_generic_association_end. *) id : element_identifier; (* The is_navigable specifies whether traversal from a source instance to its associated target is possible. *) is_navigable : BOOLEAN; (* The multiplicity specifies the number of target instances that may be associated with a single source instance across the Oo_generic_association specified by the association attribute. *) multiplicity : cardinality_association_select; (* The name specifies the word, or words, that are used to refer to the Oo_generic_association_end. *) name : label; |
(* The visibility specifies how the Oo_generic_association_end may be seen outside its enclosing namespace. Where applicable the following values should be used:<ul><li>private: Specifies that the Oo_generic_association_end is only visible to elements within the same namespace;</li> <li>protected: Specifies that the Oo_generic_association_end is only visible to elements of the same namespace and namespaces that are inherited from this;</li> <li>public: Specifies that the Oo_generic_association_end can be accessed from other elements including those outside the namespace of the Oo_generic_association_end.</li></ul> *) visibility : label; END_ENTITY; (* An Oo_inclusion indicates that an instance of an Oo_use_case object will also contain the behaviour as specified by another Oo_use_case. *) ENTITY oo_inclusion; (* The addition specifies the included Oo_use_case object. *) addition : oo_use_case; (* The base specifies the including Oo_use_case object. *) base : oo_use_case; END_ENTITY; (* An Oo_instance_classifier_relationship is a relationship between an instance and the classifier of which the Oo_instance_classifier_relationship is an instance. *) ENTITY oo_instance_classifier_relationship; (* The classifier specifies the object that provides the definition for the Oo_instance_classifier_relationship. *) classifier : oo_extended_classifier_select; (* The description specifies additional information about the Oo_instance_classifier_relationship. *) description : text_select; (* The instance specifies the Oo_instance_classifier_relationship that is to be related to its specific action. *) |
instance : oo_instance_select; END_ENTITY; (* An Oo_interaction specifies how messages are sent between instances to perform a specific task. *) ENTITY oo_interaction; (* The description specifies additional information about the Oo_interaction. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_interaction. *) id : element_identifier; (* The interaction_context specifies the Oo_collaboration object that defines the context for the Oo_interaction. *) interaction_context : oo_collaboration; (* The name specifies the word, or words, that are used to refer to the Oo_interaction. *) name : label; END_ENTITY; (* An Oo_interface is a collection of Oo_operation objects that may be used for defining a service offered by an instance. *) ENTITY oo_interface; (* The associated_version specifies the Configuration_element_version for the Oo_interface. *) associated_version : configuration_element_version; (* The description specifies additional information about the Oo_interface. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_interface. *) id : element_identifier; (* The name specifies the word, or set of words, that is used to refer to the Oo_interface. *) name : label; (* The namespace specifies the element to which the namespace belongs. The names of elements belonging to the same namespace element must be unique within this set. *) namespace : OPTIONAL oo_namespace_select; END_ENTITY; |
(* An Oo_link is a connection between instances. It is an instance of an Oo_association object. *) ENTITY oo_link; (* The definition specifies the Oo_association object that provides the definition for the Oo_generic_association. *) definition : oo_generic_association; INVERSE (* A link allocates Oo_attribute_instance objects to Oo_link_end objects. *) connection : SET [2 : ?] OF oo_link_end FOR link; END_ENTITY; (* An Oo_link_end is an end point of an Oo_link object. It is an instance of an Oo_association_end object. *) ENTITY oo_link_end; (* The definition specifies the Oo_association_end object that provides the definition for the Oo_link_end. *) definition : oo_generic_association_end; (* The instance specifies the instance to which the Oo_link_end is attached. *) instance : oo_instance_select; (* A link allocates Oo_attribute_instance objects to Oo_link_end objects. *) link : oo_link; WHERE WR1: definition.association :=: link.definition; END_ENTITY; (* An Oo_message is a communication between instances that conveys information with the expectation that activity will ensue. *) ENTITY oo_message; (* The action specifies the Oo_action object that will, when executed, dispatch an instance of the Oo_message. *) |
action : oo_action; (* The communication specifies the Oo_association_role object that defines the roles that the sender and receiver objects must conform to. *) communication : OPTIONAL oo_association_role; (* The interaction specifies the Oo_interaction object which the interaction is a part of. *) interaction : oo_interaction; (* The name specifies the word, or set of words, that is used to refer to the Oo_message. *) name : label; (* The receiver specifies the receving Oo_classifier_role object. *) receiver : oo_classifier_role; (* The sender specifies the sending Oo_classifier_role object. *) sender : oo_classifier_role; (* The sequence_number specifies the order of the Oo_message in a sequence of Oo_message objects in the overall interaction. *) sequence_number : LIST [1 : ?] OF natural_number; END_ENTITY; (* An Oo_message_temporal_relationship is a relationship between two Oo_message objects that specifies their temporal order. *) ENTITY oo_message_temporal_relationship; (* The predecessor specifies the preceding Oo_message object. *) predecessor : oo_message; (* The successor specifies the subsequent Oo_message object. *) successor : oo_message; END_ENTITY; (* An Oo_method is an implementation of an Oo_operation. *) ENTITY oo_method SUBTYPE OF (oo_behavioural_feature); |
(* The body specifies the Textual_specification object that defines the specification and the specification language for the Oo_method. *) body : textual_specification; (* The description specifies additional information about the Oo_method. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_method. *) id : element_identifier; (* The specification specifies the Oo_operation of which the Oo_method is an implementation *) specification : oo_operation; END_ENTITY; (* An Oo_model_element_stereotype_relationship is a relationship between an Oo_stereotype object and another object. *) ENTITY oo_model_element_stereotype_relationship; (* The model_element specifies the related element. *) model_element : oo_model_element_select; (* The stereotype specifies the Oo_stereotype that is related. *) stereotype : oo_stereotype; END_ENTITY; (* An Oo_model_element_tagged_value_relationship is a relationship between an Oo_tagged_value object and another object employing the Oo_tagged_value object. *) ENTITY oo_model_element_tagged_value_relationship; (* The model_element specifies the relating element. *) model_element : oo_model_element_select; (* The tagged_value specifies the related Oo_tagged_value object. *) tagged_value : oo_tagged_value; END_ENTITY; |
(* An Oo_object is an instance of an Oo_class. *) ENTITY oo_object; (* The definition specifies the Oo_class of which the Oo_object is an instance. *) definition : oo_class; (* The description specifies additional information about the Oo_object. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_object. *) id : element_identifier; END_ENTITY; (* An Oo_operation is a service that can be requested to effect behaviour. *) ENTITY oo_operation SUBTYPE OF (oo_behavioural_feature); (* The concurreny specifies how a call of the Oo_operation is to be executed. *) concurrency : label; (* The description specifies additional information about the Oo_operation. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_operation. *) id : element_identifier; (* The is_abstract specifies whether an Oo_operation may be instantiated or not. If the value is TRUE, the Oo_operation is abstract and may not be directly instantiated, only derivatives of the is_abstract may be instantiated. If the value is FALSE the is_abstract is not abstract and may be instantiated. *) is_abstract : BOOLEAN; (* The specification specifies the Textual_specification object that defines the specification and the specification language for the Oo_operation. *) specification : textual_specification; END_ENTITY; |
(* An Oo_operation_interface_association is a relationship between an Oo_operation object and an Oo_interface object. *) ENTITY oo_operation_interface_association; (* The description specifies additional information about the Oo_operation_interface_association. *) description : OPTIONAL text_select; (* The interface specifies the Oo_interface object of which the operation is part. *) interface : oo_interface; (* The operation specifies the Oo_operation that is part of the Oo_interface specified by the interface. *) operation : oo_operation; END_ENTITY; (* An Oo_package is a general purpose mechanism for grouping objects. *) ENTITY oo_package SUPERTYPE OF (oo_view); (* The associated_version specifies the Configuration_element_version for the Oo_package. *) associated_version : configuration_element_version; (* The description specifies additional information about the Oo_package. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_package. *) id : element_identifier; (* The name specifies the word, or set of words, that is used to refer to the Oo_package. *) name : label; (* The visibility specifies how the Oo_package may be seen outside its enclosing namespace. Where applicable the following values should be used:private: Specifies that the Oo_package is only visible to elements within the same namespace;</li> <li>protected: Specifies that the Oo_package is only visible to elements of the same namespace and namespaces that are inherited from this;</li> <li>public: Specifies that the Oo_package can be accessed from other elements including those outside the namespace of the Oo_package.</li></ul> *) visibility : label; |
INVERSE (* The container specifies the Oo_package that imports the model_element through the container. *) element_import : SET [0 : ?] OF oo_element_import FOR container; END_ENTITY; (* An Oo_parameter is a variable that can be changed, passed or returned. *) ENTITY oo_parameter; (* The behavioural_feature specifies the Oo_behavioural_feature to which the behavioural_feature belongs. *) behavioural_feature : oo_behavioural_feature; (* The default_value specifies the value that is given to the default_value when it is created or if its value is out of the allowed value range. *) default_value : label; (* The kind specifies the direction of the kind. Where applicable the following values should be used: *) kind : label; (* The name specifies the word, or set of words, by which the name is referred. *) name : label; (* The parameter_type specifies the type definition of the parameter_type. *) parameter_type : oo_classifier_select; (* The visibility specifies how the visibility may be seen outside its enclosing namespace. Where applicable the following values should be used: *) visibility : label; END_ENTITY; |
(* An oo_reception declares that a classifier specified by owner is prepared to react to the receipt of an Oo_signal. A classifier is one of the following: Physical_instance, Oo_class, Oo_actor, Oo_use_case, Oo_signal, Oo_component, or Oo_interface. *) ENTITY oo_reception SUBTYPE OF (oo_behavioural_feature); (* The signal specifies the Oo_signal that the owner is prepared to react to. *) signal : oo_signal; (* The specification defines the specifies for the specification. *) specification : text_select; END_ENTITY; (* An oo_send_action specifies an asynchronous signalling action. *) ENTITY oo_send_action SUBTYPE OF (oo_action); (* The signal specifies the Oo_signal that is being raised. *) signal : oo_signal; END_ENTITY; (* An oo_signal specifies an asynchronous communication between instances. *) ENTITY oo_signal; (* The name specifies the word, or set of words, by which the name is referred. *) name : label; |
(* The namespace specifies the element to which the namespace belongs. The names of elements belonging to the same namespace element must be unique within this set. *) namespace : OPTIONAL oo_namespace_select; END_ENTITY; (* An oo_signal_behavioral_feature_relationship specifies the relationship between an Oo_signal and Oo_behavioral_feature object as its behavioural_feature_context. *) ENTITY oo_signal_behavioural_feature_relationship; (* The behavioural_feature_context specifies the Oo_behavioral_feature object that defines context for the Oo_signal specified by raised_signal. *) behavioural_feature_context : oo_behavioural_feature; (* The raised_signal specifies the raised Oo_signal. *) raised_signal : oo_signal; END_ENTITY; (* An oo_stereotype specifies a new type of element that extends the semantics of the meta-model. *) ENTITY oo_stereotype; (* The associated_version specifies the Configuration_element_version for the associated_version. *) associated_version : configuration_element_version; (* The description specifies additional information about the description. *) description : OPTIONAL text_select; (* The id specifies the identifier of the id. *) |
id : element_identifier; (* The name specifies the word, or set of words, by which the name is referred. *) name : label; (* The visibility specifies how the visibility may be seen outside its enclosing namespace. Where applicable the following values should be used: *) visibility : label; END_ENTITY; (* An oo_stimulus reifies a communication between two instances. *) ENTITY oo_stimulus; (* The dispatch_action specifies the action performed by the dispatch_action. *) dispatch_action : oo_action; (* The receiver specifies the receiving instance of the receiver. *) receiver : oo_instance_select; (* The sender specifies the sending instance of the sender. *) sender : oo_instance_select; END_ENTITY; (* The oo_stimulus_argument is a relationship between an Oo_stimulus object and an instance serving as argument for the stimulus. *) ENTITY oo_stimulus_argument; (* The argument specifies the instance that serves as argument for the Oo_stimulus object specifies by stimulus. |
*) argument : oo_instance_select; (* The stimulus specifies the Oo_stimulus object of which the stimulus is an argument. *) stimulus : oo_stimulus; END_ENTITY; (* An oo_tagged_value defines a property as a name-initial_value pair. *) ENTITY oo_tagged_value; (* The id specifies the identifier of the id. *) id : element_identifier; (* The initial_value specifies the actual value of the initial_value. *) initial_value : text_select; (* The name specifies the word, or set of words, by which the name is referred. The name is reffered to as the tag. *) name : label; END_ENTITY; (* An oo_use_case specifies a sequence of actions that a system or other entity can perform, interacting with Oo_actor objects of the system. *) ENTITY oo_use_case; (* The description specifies additional information about the Oo_use_case. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Oo_use_case. *) id : element_identifier; (* The name specifies the word, or set of words, that are used to refer to the Oo_use_case. *) name : label; |
(* The namespace specifies the element to which the Oo_use_case belongs. The names of elements belonging to the same namespace element must be unique within this set. *) namespace : OPTIONAL oo_namespace_select; END_ENTITY; (* An Oo_view is a graphical representation of a collection of model_elements. *) ENTITY oo_view SUBTYPE OF (oo_package); (* The view_type specifies the type of the Oo_view. Where applicable the following values should be used:<ul><li>activity: The Oo_view represents a state machine where all or most of the states are Oo_action_state objects and all or most of the transitions are Oo_action_state_transition objects;</li> <li>collaboration: The Oo_view represents interactions and links between a collection of objects;</li> <li>component: The Oo_view represents the organizations and dependencies among Oo_component objects;</li> <li>deployment: The Oo_view represents the run-time configuration of Physical_instance objects and the Oo_component objects executing on them;</li> <li>sequence: The Oo_view represents an interaction of a collection of objects in a time sequence;</li> <li>statechart: The Oo_view represents a state machine;</li> <li>static structure: The Oo_view represents a collection of declarative (static) objects;</li> <li>use case: The Oo_view shows the relationships among Oo_actor objects and Oo_use_case objects within a system.</li></ul> *) view_type : label; END_ENTITY; (* An Oo_view_context_element_relationship specifies the allocation of an object to a Oo_view. *) ENTITY oo_view_context_element_relationship; (* The represented_model_element specifies the object to be mapped. *) represented_model_element : oo_extended_model_element_select; (* The view specifies the Oo_view that the model_element is allocated to. *) |
view : oo_view; END_ENTITY; (* An Oo_view_relationship is a relationship between two Oo_view objects. *) ENTITY oo_view_relationship; (* The base specifies the relating Oo_view object. *) base : oo_view; (* The description specifies additional information about the Oo_view_relationship. *) description : text_select; (* The reference_view specifies the related Oo_view object. *) reference_view : oo_view; (* The relationship_type specifies the type of the Oo_view_relationship. <example number="15">An Oo_view of the view_type sequence can be a specialization of another Oo_view of the view_type use case. For this example the type would be given the value specialization.</example> *) relationship_type : label; END_ENTITY; (* An oo_view_system_view_relationship is a relationship between an Oo_view and a System_view. *) ENTITY oo_view_system_view_relationship; (* The oo_view specifies the Oo_view object for that the system_context is being defined. *) oo_view : oo_view; (* The system_context specifies the System_view object that defines a context for the oo_view. *) system_context : system_view; END_ENTITY; |
(* An organization is a group of people involved in a particular business process. <note number="1">This is the AP 214 definition.</note> *) ENTITY organization; (* The delivery_address specifies the address where goods are delivered. *) delivery_address : OPTIONAL address; (* The description specifies additional information about the Organization. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Organization. <note number="2">The assignment of this attribute is usually controlled by a registration authority. The registration authority may be a public organization that assigns identifiers to corporations, or it may be the parent corporation that assigns component identifiers to its components.</note><example number="16">The id may be the code assigned to the id for a stock market listing, or it may be a department number.</example> *) id : basic_identifier; (* The name specifies the word, or set of words, that is used to refer to the Organization. *) name : label; (* The postal_address specifies the address where letter mail is delivered. *) postal_address : OPTIONAL address; (* The visitor_address specifies the address where the Organization receives visitors. *) visitor_address : OPTIONAL address; END_ENTITY; (* An Organization_relationship is used to represent an arbitrary relationship between two Organization objects. <note number="1">It also allows for the description of the respective role of an Organization in a Project (Prime contractor, partners, sub-contractors).</note> <example number="17">The relationship between two Organization objects may be "system contractor" or "partner".</example> *) ENTITY organization_relationship; (* The description specifies a textual string that captures additional information on the nature of the relationship between the two Organization objects. *) description : OPTIONAL text_select; |
(* The name specifies a name that is associated with the relationship between the two Organization objects. *) name : label; (* The related_organization specifies the second of the two Organization objects involved in the relationship. <note number="2">The exact semantics of this attribute depend of the value of the description attribute.</note> *) related_organization : organization; (* The relating_organization specifies the first of the two Organization objects involved in the relationship. <note number="3">The exact semantics of this attribute depend of the value of the description attribute.</note> *) relating_organization : organization; WHERE WR1: related_organization :<>: relating_organization; END_ENTITY; (* A Package is a set of data used to group objects that are related in some way. <note number="1">The classification criteria is user defined.</note> <note number="2">Package can be used to group information on any level of design abstraction, from a small set of Requirement_instance objects that somehow are related to the set of design information that is the outcome of a design Engineering_process_activity.</note> *) ENTITY package SUPERTYPE OF (selection_package); (* The description specifies additional information about the Package. *) description : OPTIONAL text_select; (* The discriminator specifies the common classification criteria that apply to all elements of the Package. <note number="3">The criteria defined by the discriminator is not formally rigourous. The standard does not prevent classifications that are in conflict with the discriminator.</note> *) discriminator : text; (* The id specifies the identifier of the Package. *) id : element_identifier; |
(* The name specifies the word, or set of words, that is used to refer to the Package. *) name : label; INVERSE (* The package specifies the Package to which the element is assigned *) element : SET [0 : ?] OF package_element_assignment FOR package; UNIQUE UR1: id; END_ENTITY; (* A Package_classification_assignment is the mechanism for assigning a Package to a Package_classification_system such that the Package is a member at the top-level of the classification system. *) ENTITY package_classification_assignment; (* The assigned_package specifies the Package in the relationship. *) assigned_package : package; (* The classification_system specifies the Package_classification_system in the relationship. *) classification_system : package_classification_system; END_ENTITY; (* A Package_classification_system is a representation of a classification system consisting of multiple Package objects.<note>The purpose of the Package_classification_system is to support reuse in large design databases. The classification mechanism allows for creation of multiple classification criteria. Classification may be taken down to any depth by nesting Package objects.</note> *) ENTITY package_classification_system; (* The description specifies additional textual information about the Package_classification_system. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Package_classification_system. *) id : element_identifier; |
(* The name specifies the word, or set of words, that is used to refer to the Package_classification_system. *) name : label; END_ENTITY; (* A package_element_assignment is the assignment of an element to a particular Package. <note> The exact list of what can be assigned to a Package shall be evaluated. </note> *) ENTITY package_element_assignment; (* The description specifies additional information about the description. *) description : OPTIONAL text_select; (* The element specifies the instance_definition_select, a Configuration_element_version, a Configuration_element, an Engineering_process_activity or a Project that is assigned to a Package. *) element : package_element_select; (* The package specifies the Package to which the element is assigned *) package : package; (* The reference_name specifies the word or set of words by which the element defined by the element attribute is referred to in the context of the package defined by the package attribute. *) reference_name : OPTIONAL label; END_ENTITY; (* A Package_hierarchy_relationship is the definition of a parent child relationship between two Package objects.<note number="1">The purpose of this entity is to allow for classification structures ranging from generic to specific - such as the classification of vehicles into more specific classes.</note> <note number="2">Classification in this context does not necessarily imply inheritance of characteristics as inheritance is defined by object oriented software engineering methods and languages.</note> *) |
ENTITY package_hierarchy_relationship; (* The sub_package specifies the child Package in the relationship. *) sub_package : package; (* The super_package specifies the parent Package in the relationship. *) super package : package; END_ENTITY; (* A Partial_document_assignment is a type of Document_assignment with the discriminator that only a part of the assigned is of interest to the element the document is assigned to. *) ENTITY partial_document_assignment SUBTYPE OF (document_assignment); (* The document_portion specifies the subset of the assigned document that is of interest for the Partial_document_assignment. *) document_portion : label; END_ENTITY; (* A partial_system_view is a type of System_view and a domain, mode or scenario oriented view of a system. <note number="1"> The model makes no assumption on the complexity of a view. It may be anything from utterly simple to very complex. The partial_system_view is intended to collect requirements in the requirements elicitation phase, to capture domain, state or scenario specific information of a system. A partial_system_definition on its own does not represent a specification for a particular system. </note><note number="2"> To include the elements in a partial_system_view into a system specification it shall be associated with a System_definition object by the use of a System_view_assignment object. For partial_system_view objects it is possible to capture information on information such as life-cycle viewpoint assumed for the particular system, fidelity via the attribute is_relevant_for. |
</note> *) ENTITY partial_system_view SUBTYPE OF (system_view); (* The is_relevant_for specifies the System_view_context object that specifies lifecycle, fidelity and view point for a is_relevant_for. *) is_relevant_for : system_view_context; INVERSE (* The assigned_view specifies the assigned Partial_system_view. *) assigned_to_systems : SET [1 : ?] OF system_view_assignment FOR assigned_view; END_ENTITY; (* A Partial_system_view_relationship is a relationship between two Partial_system_view objects. The semantics of the relationship is specified by the relationship_type attribute. *) ENTITY partial_system_view_relationship SUPERTYPE OF (triggered_system_view_relationship); (* The description specifies additional textual information about the Partial_system_view. *) description : OPTIONAL text_select; (* The related specifies the second Partial_system_view object in the relationship. *) related : partial_system_view; (* The relating specifies the first Partial_system_view object in the relationship. *) relating : partial_system_view; (* The relationship_type specifies the semantics of the relationship_type. <example number="18">For a launcher a viable partition is to describe the system in two views: "on ground" and "lauched". <p>A Partial_system_view_relationship may be established between the Partial_system_view object with the relationship_type set to "precedence", indicating that the ground_view always preceeds the lauched view when the system is operational. </p></example>Where applicable one of the following values shall be used: <ul><li>overlap: The related and relating Partial_system_view objects contain specifications that are redundant. (The specifications are assumed to at the same level of granularity).</li> <li>detail: The related object is providing a more detailed view on the system compared with the relating objects;</li> <li>precedence: The related Partial_system_view object describe a view of the system which preceedes the relating view of the system.</li></ul> *) |
relationship_type : label; (* The system_definition_context specifies the System_definition object for which the Partial_system_view is valid. *) system_definition_context : system_definition; WHERE correct_relationship: related :<>: relating; END_ENTITY; (* A persistent_storage is a type of General_functionality_instance which allows for persistent storage of discrete Data_instance objects. <note number="1">Persistent storage should not be confused with continuous storage - such as a water tank. The latter is a function in its own right and shall be represented by a General_function_definition object defining the functional characteristics of the tank.</note> <note number="2">Data_instance objects are used to represent what is stored no matter what the persistent_storage is designed to store. The interface to persistent_storage is defined by Actual_io_port objects. What is actually stored in the persistent_storage is defined by the data associated with the port.</note> *) ENTITY persistent_storage SUBTYPE OF (general_functionality_instance); (* The id specifies the identifier of the Persistent_storage. *) id : element_identifier; (* The name specifies the word, or set of words, that are used to refer to the Persistent_storage. *) name : label; (* The permanent specifies whether the storage is permanent or volatile. <note number="3">Volatility in this context is application dependent. The purpose of this attribute is to define whether the information stored is available after some kind of "restart" or "reset" of the system.</note> *) permanent : LOGICAL; (* The presentation_id specifies the identity information for a Persistent_storage that shall be presented to the user. *) |
presentation_id : OPTIONAL label; (* The read_only specifies whether it is possible to write to the Store or not. <note number="4">How a read only store gets values is not specified in the standard but left to the design tools using this feature. It is possible that a store could have different values for read_only in different operating modes (i.e., operational data may be loaded during ground warm up but is read only during flight).</note> *) read_only : LOGICAL; (* The storage_access specifies how the elements in the Persistent_storage are accessed. Where applicable one of the following values shall be used:<ul><li>queue: First in - first out semantics applies;</li> <li>stack: Last in - first out semantics applies; </li> <li>random_access: The access semantics is not constrained;</li> <li>other: The access semantics is not specified.</li> </ul> *) storage_access : label; (* The store_size specifies the upper bound of elements that can be held in the Persistent_storage. *) store_size : OPTIONAL INTEGER; UNIQUE UR1: id; END_ENTITY; (* A Persistent_storage_equivalence_relationship is the relationship between two Persistent_storage objects to indicate that the two objects are representations of the same storage object. <note>The purpose of the persistent_storage_equivalence_relationship is to indicate that two storage objects are referencing the same storage facility. This is because we can see a hierarchy of functions, but the storage mechanism is generally flat.</note> *) ENTITY persistent_storage_equivalence_relationship; (* The equivalent_storage specifies the set of persistent_storage_reference objects which shall be treated as references to the same storage in the scope of a functional_reference_configuration. *) equivalent_storage : SET [2 : ?] OF persistent_storage_reference; (* The valid_context specifies the System_view for which the equivalence relationship is valid. *) valid_context : functional_reference_configuration; END_ENTITY; |
(* A Persistent_storage_reference is a type of Functionality_instance_reference that provides the mechanism for unambiguous reference to a persistent_storage object. *) ENTITY persistent_storage_reference SUBTYPE OF (functionality_instance_reference); SELF\functionality_instance_reference.referenced_functionality_instance : persistent_storage; END_ENTITY; (* A Person is an individual human being who has some relationship to product data. *) ENTITY person; (* The Address specifies the location where the Person can be reached. *) address : OPTIONAL address; (* The first_name specifies the first name of the first_name. *) first_name : OPTIONAL label; (* An id specifies the identifier of a Person. *) id : basic_identifier; (* The last_name specifies the surname of the last_name. *) last_name : OPTIONAL label; (* The middle_names specifies any middle names of the middle_names. *) middle_names : OPTIONAL LIST [1 : ?] OF label; (* The prefix_titles specifies any prefix titles of the prefix_titles. *) prefix_titles : OPTIONAL LIST [1 : ?] OF label; (* The suffix_titles specifies the suffix titles of the suffix_titles. *) suffix_titles : OPTIONAL LIST [1 : ?] OF label; UNIQUE |
UR1: id; END_ENTITY; (* A Person_in_organization is the specification of a Person in the context of an Organization. *) ENTITY person_in_organization; (* The associated_organization specifies the Organization. *) associated_organization : organization; (* The associated_person specifies the Person. *) associated_person : person; (* The description specifies additional information about the Person_in_organization. *) description : OPTIONAL text_select; (* The role specifies the relationship between the Person and the Organization. *) role : label; END_ENTITY; (* A Person_organization_assignment is an object that associates an Organization or a Person_in_organization with product data. <note>This assignment provides additional information for the associated object. The provision of such data through this assignment has an organizational character whereas some objects require the same kind of mandatory data in order to be semantically complete. This assignment shall not be used to associate the corresponding organizational data with an object whose attributes are referencing the organizational data directly.</note> *) ENTITY person_organization_assignment; (* The assigned_person_organization specifies the concerned Person_in_organization or Organization. *) assigned_person_organization : person_organization_select; (* The assigned_to specifies the element to which the Person_organization_assignment applies. *) assigned_to : person_organization_assignment_select; (* The description specifies additional information about the Person_organization_assignment. *) description : OPTIONAL text_select; |
(* The role specifies the responsibility of the assigned Person_in_organization or Organization with respect to the object that it is applied to. Where applicable, the following values shall be used:<ul> <li>creator: The referenced object has been created by the assigned Person or Organization;</li> <li>custodian: The assigned Person or Organization is responsible for the existence and integrity of the referenced object;</li> <li>customer: The assigned Person or Organization acts as a purchaser or consumer of the referenced object;</li> <li>designer: The assigned Person or Organization is the one that delivers the data describing the referenced object (such as a system specification);</li> <li>editor: The assigned Person or Organization is responsible for making any changes to any attribute of the referenced object;</li> <li>id_owner: The assigned Person or Organization is the one responsible for the designation of an identifier;</li> <li>location: The assigned Organization is the place where the referenced object can be found or where it takes place;</li> <li>manufacturer: The assigned Person or Organization is the one that produces the actual (physical) object;</li> <li>owner: The assigned Person or Organization owns the referenced object, and has final say over its disposition and any changes to it;</li> <li>supplier: The assigned Person or Organization is the one that delivers the actual (physical) object;</li> <li>wholesaler: The assigned Person or Organization is in the sales chain between the manufacturer and the supplier.</li> </ul> *) role : label; END_ENTITY; (* A Physical_binding is the mapping between a Formal_physical_port and an Actual_physical_port such that the ports are connected to each other. *) ENTITY physical_binding; (* The actual_port specifies the Actual_physical_port in the mapping. *) actual_port : actual_physical_port; (* The formal_port specifies the Formal_physical_port in the mapping. *) formal_port : formal_physical_port; WHERE WR1: formal_port.port_of :=: actual_port.port_of.definition; END_ENTITY; |
(* A Physical_composition_relationship is a mechanism that relates a Physical_instance in the role of a component to an assembly represented by a General_physical_definition object. <note>A Physical_composition_relationship is used to describe the breakdown structure of a component. The General_physical_definition object can thus be composed of a set of sub-components. Therefore, the relationship points on one hand at the definition and on the other hand at the instances that belong to the component breakdown.</note> *) ENTITY physical_composition_relationship; (* The assembly specifies the General_physical_definition in the relationship. *) assembly : general_physical_definition; (* The component specifies the Physical_instance in the relationship. *) component : physical_instance; (* The description specifies additional information about the relationship. *) description : OPTIONAL text_select; END_ENTITY; (* A Physical_connection is the mechanism for associating two Physical_port objects to each other. <note number="1">The Physical_connection specifies an ideal connection between two ports. It is assumed there is no energy loss in the connection. In case a non-ideal connection is desired then connection in itself shall be represented by a General_physical_definition or Physical_instance object.</note> <note number="2">In a functional specification the closest corresponding entity to Physical_connection is a Functional_link.</note> <note number="3">The Physical_connection is bi-directional.</note> *) ENTITY physical_connection; (* The connected specifies the second Physical_port in the relationship. *) connected : physical_port; (* The connecting specifies the first Physical_port in the relationship. *) connecting : physical_port; END_ENTITY; |
(* A Physical_instance is the occurrence of a General_physical_definition within a system specification. *) ENTITY physical_instance; (* The definition specifies the General_physical_definition that provides the specification of the Physical_instance. *) definition : general_physical_definition; (* The description specifies additional information about the Physical_instance. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Physical_instance. *) id : element_identifier; (* The name specifies the word, or set of words, that is used to refer to the Physical_instance. *) name : label; (* The presentation_id specifies the identity information for a Physical_instance that shall be presented to the user. *) presentation_id : OPTIONAL label; INVERSE (* The port_of specifies the Physical_instance for which the port_of provides part of the interface. *) actual_port : SET [0 : ?] OF actual_physical_port FOR port_of; UNIQUE UR1: definition, id; END_ENTITY; (* A Physical_instance_reference is the non-ambiguous reference to a Physical_instance element in a Physical_node_definition structure. <note>A Physical_instance_reference is introduced to allow for allocation and reference of system specific non-functional characteristics to a system physical description.</note> *) ENTITY physical_instance_reference; (* The description specifies additional textual information about the Physical_instance_reference. *) |
description : OPTIONAL text_select; (* The id specifies the identifier of the Physical_instance_reference. *) id : element_identifier; (* The name specifies the word, or set of words, that is used to refer to the Physical_instance_reference. *) name : label; (* The reference_for_instance specifies the Physical_instance that the Physical_instance_reference is a reference for. *) reference_for_instance : physical_instance; END_ENTITY; (* A Physical_link_definition is a type of General_physical_definition with the discriminator that the main purpose is transfer of information or material. *) ENTITY physical_link_definition SUBTYPE OF (general_physical_definition); END_ENTITY; (* A Physical_node_definition is a type of General_physical_definition with the discriminator that it is used for processing (transforming) material and or information from one format to another. <note>The component defined by a Physical_node_definition is essentially technology free. Within the scope of this PAS, no assumption is made in regard to the nature of the physical thing.</note> <example number="19">For instance, in order to perform a certain amount of operation in a given time slot, a human being can be used (reliable enough, accurate enough) whereas for some other kind of processing a powerful computer is required. The part designer will use either of the technologies to satisfy the requirement.</example> <example number="20">In order to perform heat protection several technology alternatives can be used based on several kinds of material. The Physical_node_definition object will describe the performances that have to be met (temperature range, time period it shall last, cost, etc.), whereas the real manufacturing of the component will use a specific material to meet those performances.</example> *) ENTITY physical_node_definition |
SUBTYPE OF (general_physical_definition); END_ENTITY; (* A Physical_port is a representation of an element in the interface to a Physical_instance or a General_physical_definition. *) ENTITY physical_port ABSTRACT SUPERTYPE OF (ONEOF(actual_physical_port, formal_physical_port)); (* The description specifies additional information about the Physical_port. *) description : OPTIONAL text_select; (* The direction specifies the direction of data (material, energy, etc.) transfer supported by the Physical_port. The direction is one of the following:<ul> <li>input: The Physical_port is the input of a transfer;</li> <li>output: The Physical_port is the output of a transfer;</li> <li>bi-directional: The Physical_port may be both input or output of a transfer.</li> </ul> *) direction : label; (* The name specifies the word, or set of words, that are used to refer to the Physical_port. *) name : label; END_ENTITY; (* A Physical_reference_configuration is a collector for all Physical_reference_relationship objects that apply for a particular physical view on a system. <note number="1">A Physical_reference_configuration may be assigned to any number of systems through the use of multiple System_physical_configuration objects.</note> <note number="2">The Physical_reference_configuration provides the means for defining multiple non-functional views on top ofa single system physical architecture model.</note> *) ENTITY physical_reference_configuration; (* The description specifies additional information about the Physical_reference_configuration. *) description : OPTIONAL text_select; END_ENTITY; |
(* A Physical_reference_relationship is the mechanism for indicating a hierarchical relationship between two Physical_instance_reference objects. *) ENTITY physical_reference_relationship; (* The child specifies the component Physical element in the Physical_reference_relationship. *) child : physical_instance_reference; (* The mirror_of specifies the Physical_composition_relationship for which the Physical_reference_relationship provides the unambiguous reference. *) mirror_of : physical_composition_relationship; (* The parent specifies the decomposed Physical_instance_reference in the Physical_reference_relationship. *) parent : physical_instance_reference; (* The valid_configuration specifies the Physical_reference_configuration for which the parent and child Physical_instance_reference are valid. *) valid_configuration : physical_reference_configuration; END_ENTITY; (* A Plus_minus_bounds is the specification of the allowable deviation from a numerical value applied to a Nominal_value. *) ENTITY plus_minus_bounds; (* The distribution_function specifies a mathematical function describing the projected distribution of measurement values. *) distribution_function : OPTIONAL textual_specification; (* The limited_value specifies the Nominal_value further defined by the Plus_minus_bound. *) limited_value : nominal_value; (* The lower_bound specifies the value of the tolerance that shall be subtracted from the exact value to establish the minimum allowed value. *) lower_bound : NUMBER; (* The significant_digits specifies the number of decimal digits indicating the accuracy of the lower bound and upper bound values. *) significant_digits : OPTIONAL INTEGER; |
(* The upper_bound specifies the value of the tolerance that shall be added to the exact value to establish the maximum allowed value. *) upper_bound : NUMBER; END_ENTITY; (* A Project is an identified programme of work. <note>A Project may be further characterized by planned or actual dates, allowed budget, or resources.</note> <example number="21">For the development of a new system, a project is set up that is responsible for the development decisions as well as for the accounting of the costs.</example> *) ENTITY project; (* The actual_end_date specifies the date when the Project was actually finished. *) actual_end_date : OPTIONAL date_time; (* The actual_start_date specifies the date when the Project was actually started. *) actual_start_date : OPTIONAL date_time; (* The description specifies additional information about the Project. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Project. *) id : element_identifier; (* The name specifies the word, or group of words, that is used to refer to the Project. *) name : label; (* The planned_end_date specifies either the date when the Project is or was supposed to be finished or the duration of the Project. *) planned_end_date : OPTIONAL period_or_date_select; (* The planned_start_date specifies the date when the Project is or was supposed to be started. *) planned_start_date : OPTIONAL event_or_date_select; (* The work_program specifies the Engineering_process_activity objects that are carried out within the Project. *) work_program : SET [0 : ?] OF engineering_process_activity; END_ENTITY; |
(* A Project_event_reference is the definition of a point in time established relative to an event. *) ENTITY project_event_reference; (* The description specifies additional information about the Project_event_reference. *) description : OPTIONAL text_select; (* The event type specifies the kind of event that serves as reference. <example number="22">The two events "start of system analysis" and "end of detailed design" are examples of an event_type.</example> *) event_type : label; (* The offset specifies the amount of time before or after the defined event that shall be used to calculate the actual point in time. *) offset : value_with_unit; END_ENTITY; (* A project_relationship is a relationship between two Project objects. *) ENTITY project_relationship; (* The description specifies additional information about the description. *) description : OPTIONAL text_select; (* The related specifies the second of the two Project objects related by a related. <note number="1"> The semantics of this attribute are defined by the attribute relation_type. </note> *) related : project; (* The relating specifies the first of the two Project objects related by a relating. <note number="2"> The semantics of this attribute are defined by the attribute relation_type. </note> *) |
relating : project; (* The relation_type specifies the meaning of the relationship. Where applicable, the following values shall be used: *) relation_type : label; END_ENTITY; (* A Property_assignment is a mechanism of associating a Property_value with an element. *) ENTITY property_assignment; (* The assigned_to specifies the element with which the property is associated. <note>The list of entities shall be scrutinized by the PAS 20542 group. </note> *) assigned_to : property_assignment_select; (* The assignment_rationale specifies the motivation for assigning a Property_value. *) assignment_rationale : OPTIONAL text_select; (* The measurement_method specifies the method used to obtain the Property_assignment. Where applicable one of the following values shall be used:<ul> <li>measurement;</li> <li>estimation.</li> </ul> *) measurement_method : label; (* The property specifies the property assigned. *) property : property_value; (* The property_name specifies the word, or set of words, that is used to refer to the Property_value in the context of the element to which the Property_value is assigned. *) property_name : label; END_ENTITY; (* A Property_definition is the definition of a special quality. <note>A Property may reflect physics or arbitrary user defined measurements.</note> *) ENTITY property_definition; (* The allowed_unit specifies the unit or set of units that are accepted.<example number="23">A company may accept a mass specified in kilograms or tonnes, but not in grams or pounds.</example> *) |
allowed_unit : SET [0 : ?] OF unit; (* The description specifies additional information about the Property_definition. *) description : OPTIONAL text_select; (* The property_type specifies the nature of the property. <example number="24">Possible values for property_type include "electrical" and "time".</example> *) property_type : label; END_ENTITY; (* A Property_relationship is a relationship between two Property objects. <example number="25">Property_relationship may be used to indicate that the value of one Property_definition can be derived from the value of another Property_definition.</example> *) ENTITY property_relationship; (* The description specifies additional information about the Property_relationship. *) description : OPTIONAL text_select; (* The related specifies the second of the two Property_definition objects related by the Property_relationship. *) related : property_definition; (* The relating specifies the first of the two Property_definition objects related by the Property_relationship. *) relating : property_definition; (* The relation_type specifies the meaning of the relationship. Where applicable, the following values shall be used:<ul> <li>dependency: The related Property_definition is dependent upon the relating Property_definition;</li> <li>hierarchy: The application object defines a hierarchical relationship where the related Property_definition is on a lower level than the relating Property_definition.</li> </ul> *) relation_type : label; END_ENTITY; (* A Property_value is the representation of a characteristic of a Property_definition. *) ENTITY property_value; |
(* The definition specifies the Property_definition that the Property_value characterizes. *) definition : property_definition; (* The property_value_name specifies the word, or group of words, that is used to refer to the Property_value. <example number="26"> "I1" or "vol2" are examples for the value name of a property_value_name.</example> *) property_value_name : label; (* The specified_value specifies either a text description or a numerical measure representing the Property_value. <note>If the specified value is represented as a numerical value, it is either the actual value, a range of possible values, a limit for the value of a Property_value, or a list of these.</note> *) specified_value : property_value_select; END_ENTITY; (* A Property_value_function is a mechanism for representing a function that is used to calculate the relative value (with regard to optimality) of a Property_value. *) ENTITY property_value_function; (* The defines_property_value_merit specifies the Property_value whose relative value is calculated by the function_specification. *) defines_property_value_merit : property_value; (* The function_specification specifies the function used for determining the relative value of the Property_value defined by the attribute defines_property_value_merit. *) function_specification : text_select; END_ENTITY; (* A Property_value_relationship is a relationship between two Property_value objects. *) ENTITY property_value_relationship; (* The related specifies the second Property_value in the relationship. *) related : property_value; (* The relating specifies the first Property_value in the relationship. *) relating : property_value; |
(* The relation_description specifies additional information about the Property_value_relationship. *) relation_description : OPTIONAL text_select; (* The relation_type specifies the meaning of the relationship. <note>The PAS 20542 group shall consider defining a list of preferred values for this attribute.</note> *) relation_type : label; END_ENTITY; (* A Rank_assignment is the assignment of an element to a particular Ranking_element. <note>The assignment to a particular priority is assumed to be relative to a set of alternatives.</note> *) ENTITY rank_assignment; (* The assigned_rank specifies the Ranking_element to which the element is assigned. *) assigned_rank : ranking_element; (* The assigned_to_element specifies the element that is assigned. *) assigned_to_element : ranked_element_select; (* The assignment_criteria specifies the criteria that were applied for assigning the assigned element to a particular Ranking_element. *) assignment_criteria : OPTIONAL label; (* The assignment_description specifies additional information about the Rank_assignment. *) assignment_description : OPTIONAL text_select; (* The relevant_elements specifies a Rank_group that holds a number of elements ranked according to the same criteria. *) relevant_elements : rank_group; END_ENTITY; (* A Rank_group is a placeholder for elements that are compared and ranked in accordance with a specified criterion. *) ENTITY rank_group; (* The classification_criteria specifies the purpose of the classification_criteria. It defines the criteria that are common to all elements assigned to a Rank_group. *) classification_criteria : ranking_type; |
(* The name specifies the word, or set of words, that is used to refer to the Rank_group. *) name : label; INVERSE (* The relevant_elements specifies a Rank_group that holds a number of elements ranked according to the same criteria. *) compared_element : SET [0 : ?] OF rank_assignment FOR relevant_elements; END_ENTITY; (* A Rank_relation is the the mechanism for representing partially orders between two Ranking_element objects. *) ENTITY rank_relation; (* The higher_rank specifies the higher priority Ranking_element. *) higher_rank : ranking_element; (* The lower_rank specifies the lower priority Ranking_element. *) lower_rank : ranking_element; END_ENTITY; (* A Ranking_element is the representation of a distinct priority level in a Ranking_system. *) ENTITY ranking_element; (* The description specifies additional information about the Ranking_element. *) description : OPTIONAL text_select; (* The name specifies the word, or set of words, that is used to refer to a Ranking_element. *) name : label; INVERSE (* The lower_rank specifies the lower priority Ranking_element. *) higher_ranked_element : SET [0 : ?] OF rank_relation FOR lower_rank; (* The higher_rank specifies the higher priority Ranking_element. *) lower_ranked_element : SET [0 : ?] OF rank_relation FOR higher_rank; END_ENTITY; |
(* A Ranking_system is a mechanism for representing discrete ranges of priority levels. *) ENTITY ranking_system; (* The description specifies additional information about the Ranking_system. *) description : OPTIONAL text_select; (* The highest_rank specifies the highest priority level in the Ranking_system. *) highest_rank : ranking_element; (* The name specifies the word, or set of words, that are used to refer to the Ranking_system. *) name : label; END_ENTITY; (* A Real_data_type_definition is a type of Elementary_maths_space that includes all real values. *) ENTITY real_data_type_definition SUBTYPE OF (elementary_maths_space); END_ENTITY; (* A Real_interval is a type of Maths_space that is a bounded sub-set of all real values. *) ENTITY real_interval ABSTRACT SUPERTYPE OF (ONEOF(finite_real_interval, hibound_real_interval, lobound_real_interval)) SUBTYPE OF (maths_space); END_ENTITY; (* A Realized_system is the reference to a physically realized system. A Realized_system is realized in accordance with a specification identified by the realisztion_of attribute. <note number="1">The data model has been extended to cover real systems in order to correctly represent verification plans and verification results.</note> *) ENTITY realized_system; (* The description specifies additional information on the Realized_system. *) description : text_select; |
(* The id specifies the identifier of the Realized_system. <note number="2">The id typically specifies the serial number of the Realised_system.</note> *) id : element_identifier; (* The name specifies the word, or set of words, that is used to refer to the Realized_system. *) name : label; (* The realization_of specifies the system_instance that provided the specification for the realization of the Realized_system. *) realization_of : system_instance; UNIQUE UR1: id, realization_of; END_ENTITY; (* A Realized_system_composition_relationship is the hierarchy relationship between two Realized_system objects. The super-system in the composition is identified via the system attribute and the sub-system is identified via the component attribute. <note>The Realized_system_composition_relationship specifies that a system of system structure has been formed for some purpose. In the scope of PAS 20542, the most likely reason is for verification that realized systems are conformant with the specification that the realization was based on.</note> *) ENTITY realized_system_composition_relationship; (* The component specifies the sub-system in the Realized_system_composition_relationship. *) component : realized_system; (* The description specifies additional information on the Realized_system_composition_relationship. *) description : text_select; (* The mirror_of specifies the System_composition_relationship that is realized in a physical system and indicated by the Realized_system_composition_relationship. *) mirror_of : system_composition_relationship; (* The system specifies the super-system in the Realized_system_composition_relationship. *) system : realized_system; END_ENTITY; |
(* A Record_data_type_definition is a type of User_defined_data_type_definition that combines a number of values into a single item (a record). There is a dependency between the combined values that limits their use independently. <example number="27">Assume the following declaration:<ol><li>record EmployeeDetails</li><li>name : String;</p><p>date_of_birth : Date;</p><p>age : Integer Derived = TODAY - date_of_birth;</p><p>end record;</p><p>The date_of_birth is the date_of_birth of the employee named in the record. If the date of birth is separated from the rest of the details of the employee then it becomes just a date.</p></example> *) ENTITY record_data_type_definition SUBTYPE OF (user_defined_data_type_definition); END_ENTITY; (* A Record_data_type_member is a relationship between a Record_data_type_definition and a Data_field it contains. There is no order amongst the occurrences. All of the members of a Record_data_type_definition must be present. *) ENTITY record_data_type_member; (* The child specifies the Data_field object in the relationship. *) child : data_field; (* The parent specifies the Record_data_type_definition in the relationship. *) parent : record_data_type_definition; END_ENTITY; (* A Recursive_data_type_definition is a type of User_defined_data_type_definition and a redefinition of another data type definition. At its simplest a Recursive_data_type_definition renames or re-describes another data type. At its most complex, a Recursive_data_type_definition attaches new properties, possibly overriding ones of the redefined User_defined_data_type_definition or Maths_space. <p>A recursive data type inherits the properties of the data type it redefines.</p> <p>A recursive data type may have properties that the data type it redefines does not have.</p> <p>A recursive data type can have alternate values for properties that the type it redefines has. Redefined properties may conflict with existing properties. In cases of conflict it shall be assumed that the properties of the recursive_data_type_definition takes precedence over the properties of the redefined data type.</p> *) |
ENTITY recursive_data_type_definition SUBTYPE OF (user_defined_data_type_definition); (* The redefines specifies the Maths_space or User_defined_data_type_definition that the Recursive_data_type_definition is based on. *) redefines : data_type_definition_select; END_ENTITY; (* A Requirement_allocation_property_relationship is a mechanism for relating a Requirement_instance allocated to an element to a Property_value assigned to that element. <note>This construct allows for tracing the consequences or implications of allocating a requirement to an element.</note> *) ENTITY requirement_allocation_property_relationship; (* The allocated_requirement specifies the requirement in the relationship. *) allocated_requirement : requirement_allocation_relationship; (* The define_property_value specifies the Property_value that is influenced or defined by the requirement. *) define_property_value : property_value; (* The description specifies additional information about the Requirement_allocation_property_relationship. *) description : OPTIONAL text_select; END_ENTITY; (* A Requirement_allocation_relationship is the mechanism for allocating Requirement_instance to another element such that the element shall fulfil or has been found compliant with the capabilities stated by the requirement. <note>The semantics of the Requirement_allocation_relationship are further defined by the role attribute.</note> *) ENTITY requirement_allocation_relationship SUPERTYPE OF (specific_requirement_allocation_relationship); (* The description specifies additional information about the Requirement_allocation_relationship. *) |
description : OPTIONAL text_select; (* The relation_to specifies the element that the Requirement_instance is allocated to. *) relation_to : requirement_allocation_select; (* The requirement specifies the Requirement_instance in the relationship. *) requirement : requirement_instance; (* The role specifies the semantics of the relation. Where applicable the following values shall be used:<ul> <li>allocation: The application_object specifies an allocation relationship where the requirement object is allocated to the relation_to object. The allocation relation means that the relation_to object shall be designed in such a way that the requirement is fulfilled;</li> </li>fulfils: The application_object specifies a fulfils relationship where the requirement stated in the requirement object is fulfilled by the relation_to object. The fulfils relation means that the relation_to object has been evaluated and found to be compliant with the requirement object.</li> </ul> *) role : label; END_ENTITY; (* A Requirement_class is a collector for requirements of similar characteristics. <note number="1">The standard does not specify a fixed structure for requirement classification. Instead a dynamical structure is provided by the Requirement_class and the Requirement_class_relationship.</note> *) ENTITY requirement_class; (* The description specifies additional information about the Requirement_class. <note number="2">The description may carry information identifying the characteristics of requirements that are in scope of the description.</note> *) description : OPTIONAL text_select; (* The id specifies the identifier of the Requirement_class. *) id : element_identifier; (* The name specifies the word, or set of words, that is used to refer to the Requirement_class. *) name : label; UNIQUE UR1: id; END_ENTITY; |
(* A Requirement_class_relationship is a relationship between two Requirement_class objects. <note>The semantics of the relationship are specified by the relationship_type attribute.</note> *) ENTITY requirement_class_relationship; (* The description specifies additional textual information about the specialisation: The related_class Requirement_class is a specialisation of the relating_class Requirement_class. *) description : OPTIONAL text_select; (* The related_class specifies the second Related_class in the relationship. *) related_class : requirement_class; (* The relating_class specifies the first Relating_class in the relationship. *) relating_class : requirement_class; (* The relationship_type specifies the nature of the relationship. Where applicable one of the following values shall be used:<ul> <li>specialization: The related_class Requirement_class is a specialization of the relating_class Requirement_class;</li. <li>equivalence: The related_class Requirement_class is a synonym of the relating_class Requirement_class.</li> </ul> *) relationship_type : label; END_ENTITY; |
(* A Requirement_composition_relationship represents the decomposition relationship between a Requirement_definition and a Requirement_occurence. <note number="1">A Requirement_definition object may be decomposed into any number of Requirement_occurence objects.</note> <note number="2">One important assumption is that the model will be employed for representation of multiple versions or variants of a system specification. Consequently there is a substantial benefit if common design elements among the versions could be shared or reused. These assumptions have led to a model where four entities are involved in representing a single requirement as seen from a user's point of view. The structure is outlined below. <p>The entity Requirement_definition holds the description of what is required. In the model there are three sup-types of this entity that support different representations of what is required. No assumptions are made as to the context in which the requirement is used which means that no inter-requirement relationships are defined on the Requirement_definition entity. A Requirement_definition object may provide definition for any number of requirement_occurence objects.</p><p>The Requirement_instance entity is a context dependent representation of a requirement. A Requirement_instance object may be assigned to a System_view object (in the system architecture UoF). All relationships between requirements are defined on the Requirement_instance entity.</p><p>The requirement_composition_relationship entity is the means for decomposing requirements. For each added requirement in a composition a new Requirement_composition_relationship object has to be instantiated.</p><p>The Requirement_occurence entity is an intermediate representation of a requirement. It is included in the model to allow for maximum traceability and for improving the support for reusing a requirement in more than one context (different system versions or systems). A requirement_occurence object using exactly one Requirement_definition object as its definition may serve as a definition for any number of Requirement_instance objects.</p><p>Consequently, the requirement_occurence entity separates the static requirement breakdown structure from the dynamic system specific requirement representation (represented by the Requirement_instance entity) and it implements loose coupling between parent and child requirements in a requirement breakdown structure.</p><p>The first aspect is important as it allows multiple context dependent objects ( Requirement_instance ) to reference the same context independent object.</p> <p>The second aspect is that a Requirement_definition object that is part of a composition (via a requirement_occurence and requirement_composition_relationship objects) is not tightly linked to the parent Requirement_definition object. The construct allows the information model to represent a specific requirement as part of a requirement composition hierarchy in one situation while in another situation it may be viewed as a top-level requirement.</p></note> *) ENTITY requirement_composition_relationship; |
(* The child_requirement specifies the decomposing Requirement_occurence object in the relationship. *) child_requirement : requirement_occurence; (* The description specifies additional textual information about the Requirement_composition_relationship. *) description : OPTIONAL text_select; (* The index specifies an identifier for the Requirement_occurence identified by the child_requirement in the context of the Requirement_definition defined by the parent_definition attribute. <note number="3">The index is the means of representing the identifier often used to identify a requirement in requirement management tools. In PAS 20542, this idenfier is built up stepwise one position at a time. If numerical indexing is used and a particular child_requirement is the third in the composition defined by the parent_definition, then the index attribute shall be 3.</note> *) index : label; (* The parent_definition specifies the decomposed Requirement_definition n the relationship. *) parent_definition : requirement_definition; UNIQUE UR1: index, parent_definition; END_ENTITY; (* A Requirement_definition is the context independent definition of a requirement. <note>The combination of Requirement_definition, Requirement_occurrence and Requirement_composition_relationship objects define the mechanism for breaking down complex requirements to their basic parts. The use of three separate entities allows for representing that a particular requirement_definition object is part of several breakdown hierarchies and the use of a Requirement_occurrence object for each individual hierarchy allows for the unambiguous and insulated representation of each breakdown hierarchy.</note> *) ENTITY requirement_definition ABSTRACT SUPERTYPE OF (ONEOF(model_defined_requirement_definition, structured_requirement_definition, textual_requirement_definition)); |
(* The associated_version specifies the Configuration_element_version for the Requirement_definition. *) associated_version : configuration_element_version; (* The id specifies the identifier of the Requirement_definition. *) id : element_identifier; (* The name specifies the word, or set of words, that is used to refer to the Requirement_definition. *) name : OPTIONAL label; INVERSE (* The parent_definition specifies the decomposed Requirement_definition n the relationship. *) composed_of : SET [0 : ?] OF requirement_composition_relationship FOR parent_definition; (* The requirement specifies the Requirement_definition in the assignment. *) in_requirement_class : SET [0 : 1] OF requirement_requirement_class_assignment FOR requirement; UNIQUE UR1: id; END_ENTITY; (* A Requirement_instance is a context dependent representation of a requirement for a particular system. <note>The Requirement_occurence and Requirement_definition objects provide the definition of what is required.</note> *) ENTITY requirement_instance; (* The definition specifies the Requirement_occurrence that provides additional information on what is required. *) definition : requirement_occurence; (* The id specifies the identifier of the Requirement_instance. *) id : element_identifier; (* The name specifies the word, or set of words, that is used to refer to the Requirement_instance. *) name : label; |
INVERSE (* The associated_requirement specifies the Requirement_instance in the relationship. *) implied_external : SET [0 : ?] OF implied_external_interaction FOR associated_requirement; UNIQUE UR1: definition, id; END_ENTITY; (* A Requirement_occurence is the placeholder for a static instance of a requirement in a requirement breakdown hierarchy. *) ENTITY requirement_occurence; (* The definition specifies the Requirement_definition object that provides the definition of what is required. *) definition : requirement_definition; (* The id specifies the identifier of the Requirement_occurrence. *) id : element_identifier; (* The name specifies the word, or set of words, that is used to refer to the Requirement_occurence. *) name : label; INVERSE (* The child_requirement specifies the decomposing Requirement_occurence object in the relationship. *) child_of : SET [0 : ?] OF requirement_composition_relationship FOR child_requirement; UNIQUE UR1: definition, id; END_ENTITY; |
(* A Requirement_relationship is a means of representing relationships among Requirement_instance objects. <note number="1">The Requirement_relationship may record the existence of relationships among a set of requirements or may be used to capture relationships between sets of requirements and individual requirements.</note> <note number="2">The Requirement_relationship may be used, for example, to identify alternate or derived between requirements in different System_view objects.</note> <note number="3">There are two ways of using the Requirement_relationship:<ol><li>To relate a number of requirements. The purpose of the relation is specified by the relationship type attribute. Any number of Requirement_relationship_input_assignment objects relating Requirement_relationship objects and a number of Requirement_instance objects maintains such a relation. In this use no new Requirement_relationship_resulting_relationship are instantiated as a result of the establishment of the Requirement_relationship.</li><li>The creation or identification of requirements that are dependent on an established requirement_relationship. As in the first case, any number of Requirement_relationship_input_assignment objects relating a requirement_relationship and a number of Requirement_instance objects build up the input to the relationship. To indicate the output of the analysis any number of Requirement_relationship_resulting_relationship objects may be used to indicate requirements created or identified as results based on the requirement relationship.</li></note> *) ENTITY requirement_relationship; (* The description specifies additional information on the Requirement_relationship. *) description : OPTIONAL text_select; (* The relationship_type specifies the type of relationship. Where applicable one of the following values shall be used:<ul> <li>alternate: The requirements associated via Requirement_relationship_input_assignment objects to the Requirement_relationship are mutually exclusive or equivalent;</li> <li>derived: The requirements associated via Requirement_relationship_input_assignment objects are used to derive additional Requirement_instance objects. The new requirements are indicated using Resulting_relationship objects.</li> <ul> *) relationship_type : label; END_ENTITY; |
(* A Requirement_relationship_context_assignment is the mechanism for associating a Requirement_relationship or Requirement_allocation_relationship to a System_view for which the relationship is valid. <note>The Requirement_relationship_context_assignment allows for specifying that a relationship is valid for more than one System_view, which allows for reuse of the specification elements over multiple versions of a system specification.</note> *) ENTITY requirement_relationship_context_assignment; (* The assigned_requirement_relationship specifies the relationship assigned to a system_view by a assigned_requirement_relationship. *) assigned_requirement_relationship : assigned_requirement_relationship_select; (* The description specifies additional information about the Requirement_relationship_context_assignment. *) description : OPTIONAL text_select; (* The system_context specifies the system_view that the requirement relationship is assigned to. *) system_context : system_view; END_ENTITY; (* A Requirement_relationship_input_assignment is the mechanism for assigning a Requirement_instance to a Requirement_relationship. *) ENTITY requirement_relationship_input_assignment; (* The assigned_instance specifies the Requirement_instance in the relation. *) assigned_instance : requirement_instance; (* The input_requirement specifies the Requirement_relationship in the relation. *) input_requirement : requirement_relationship; END_ENTITY; (* A Requirement_relationship_resulting_relationship is the mechanism for relating a Requirement_instance to a Requirement_relationship indicating that the Requirement_instance was implied by the Requirement_relationship. *) ENTITY requirement_relationship_resulting_relationship; |
(* The motivation specifies additional information about why the Requirement_relationship_resulting_relationship was created. *) motivation : OPTIONAL text_select; (* The Requirement_relationship specifies the Requirement_relationship. *) requirement_relationship : requirement_relationship; (* The resulting_requirement specifies the newly created requirement. *) resulting_requirement : requirement_instance; (* The role ought to be deleted! *) role : label; END_ENTITY; (* A Requirement_requirement_class_assignment is the mechanism for assigning a Requirement_definition to a Requirement_class such that the characteristics of the Requirement_definition are compliant with those defined for the Requirement_class. *) ENTITY requirement_requirement_class_assignment; (* The class specifies the Requirement_class in the assignment. *) class : requirement_class; (* The motivation specifies the reason for the assignment. *) motivation : OPTIONAL text_select; (* The requirement specifies the Requirement_definition in the assignment. *) requirement : requirement_definition; END_ENTITY; (* A Requirement_system_view_assignment is the mechanism for assigning a Requirement_instance to a System_view indicating that the requirement applies to the System_view. *) ENTITY requirement_system_view_assignment SUPERTYPE OF (root_requirement_system_view_assignment); (* The description specifies additional information about the Requirement_system_view_assignment. *) description : OPTIONAL text_select; |
(* The requirement specifies the Requirement_instance in the relationship. *) requirement : requirement_instance; (* The system_view specifies the System_view in the relationship. *) system_view : system_view; END_ENTITY; (* A Requirement_traces_to_requirement_relationship is a relationship between two Requirement_instance objects assigned to different Partial_system_view objects establishing a traceability link between the two requirements. <note number="1">The relationship is valid for a particular System_view only.</note> <note number="2">This relationship is motivated by the need to maintain traceability between different System_view objects of a system. Furthermore it is implied that the source and traced requirements are not assigned to the same System_view.</note> *) ENTITY requirement_traces_to_requirement_relationship; (* The motivation specifies additional textual information about the nature of the Requirement_traces_to_requirement_relationship. *) motivation : OPTIONAL text_select; (* The source_requirement specifies the first Requirement_instance in the relationship. *) source_requirement : requirement_instance; (* The traced_requirement specifies the second Requirement_instance in the relationship. *) traced_requirement : requirement_instance; (* The valid_context specifies the System_view for which the Requirement_traces_to_requirement_relationship is valid. *) valid_context : system_definition; END_ENTITY; (* A Root_requirement_system_view_assignment is a type of Requirement_system_view_assignment and the mechanism for assigning a Requirement_instance which is the root of a requirement composition structure to a System_view. For example, the assigned requirement shall not be the child in a requirement composition structure.<p>The index attribute defines the first element in the presentation index for the requirement in the particular system.</p> *) |
ENTITY root_requirement_system_view_assignment SUBTYPE OF (requirement_system_view_assignment); (* The index specifies an identifier for presentation of the Requirement_instance identified by the attribute requirement inherited from Requirement_system_view_assignment in the context of the System_view defined by the system_view attribute. <example number="28">The index for a particular For example, the assigned requirement shall not be the child in a requirement composition structure may be 5, indicating that the Requirement_instance identified by the requirement attribute (inherited from Requirement_system_view_assignment) is the fifth requirement for the System_view identified by the system_view attribute (likewise inherited from Requirement_system_view_assignment).</example> <note>The index is the means for representing the identifier often used to identify a requirement in requirement management tools. In PAS 20542, this idenfier is built up stepwise one position at a time for each level in the composition. For example, if numerical indexing is used and a particular child_requirement is the third in the composition defined by the system_view attribute then the index attribute shall be "3".</note> <p>Further decomposition of the requirement shall add information to the index one position at a time. For example, if the requirement is decomposed into 4 sub-requirements then these may be indexed 1..4 using the index attribute of the Requirement_composition_relationship.</p><p>The index of a requirement in a composition structure is reconstructed by concatinating the index attributes of each Requirement_composition_relationship encountered while traversing a decomposed requirement from the topmost item to a leaf requirement.</p> *) index : label; UNIQUE UR1: index, SELF\requirement_system_view_assignment.system_view; END_ENTITY; (* A Selection_package is a type of Package with the discriminator that the number of elements that may be selected from the Package for a particular system is constrained. <note number="1">The attribute selection_type specifies the semantics of the selection_package.</note> <note number="2">The selection_package allows a specification that provides a constraint that only one of the elements may be selected from the elements in the Package.</note> *) ENTITY selection_package |
SUBTYPE OF (package); (* The selection_type specifies the selection constraint. Where applicable one of the following values shall be used:<ul <li>and: One element of the package may be selected for a particular system;</li> <li>or: Any number of elements of the package may be selected for a particular system.</ul> </li> *) selection_type : label; END_ENTITY; (* A Single_cardinality is a single integer representing a numerical constraint. *) ENTITY single_cardinality; (* The defined_value specifies the numerical constraint. *) defined_value : single_cardinality_select; END_ENTITY; (* A Specific_requirement_allocation_relationship is a type of Requirement_allocation_relationship that serves as a mechanism for the allocation or tracing of a requirement_instance to an element that cannot be unambiguously identified in a functional breakdown structure, for example, an Fsm_generic_state or Cb_place. <note number="1">The method for identifying elements in the breakdown structure is to identify the Functionality_instance_reference closest in the breakdown structure to the Fsm_generic_state or Cb_place via the related_to attribute and to specifically identify the traced object via the specific_element attribute.</note> <notev number="2">In cases where the Specific_requirement_allocation_relationship indicates a requirement allocation to an Fsm_generic_state, the related_to attribute shall identify the Fsm_model object that defines the context of the finite state machine.</note> <note number="3">In cases where the Specific_requirement_allocation_relationship indicates a requirement allocation to a Cb_place, then the related_to attribute shall identify the Functionality_instance_reference that, in turn, identifies the Composite_function_definition (via a Function_instance) which is constrained by the Functional_behaviour_model of which the Cb_place identified by the Specific_element attribute is an element.</note> *) ENTITY specific_requirement_allocation_relationship SUBTYPE OF (requirement_allocation_relationship); |
(* The specific_element specifies the object that the requirement is allocated to via the Specific_requirement_allocation_relationship. *) specific_element : specific_element_select; WHERE WR1: 'SYSTEMS_ENGINEERING_DATA_REPRESENTATION.FUNCTIONALITY_INSTANCE_REFERENCE' IN TYPEOF(SELF\requirement_allocation_relationship.relation_to); END_ENTITY; (* A Specification_state_assignment is the mechanism for assigning a Textual_specification to a Fsm_state such that the specification is implemented by the state. *) ENTITY specification_state_assignment; (* The assigned_to specifies the Fsm_state in the assignment. *) assigned_to : fsm_state; (* The specification specifies the Textual_specification in the assignment. *) specification : textual_specification; END_ENTITY; (* A Start_order is a type of Work_order that serves as the authorization for one or more Engineering_process_activity objects to be performed. <note>A Start_order captures all kinds of work orders except for order for changes - which is handled by Change_order.</note> *) ENTITY start_order SUBTYPE OF (work_order); (* The start_order_type specifies the type of activity authorized by the Start_order. Where applicable one of the following values shall be used:<ul><li>design_activity: authorisation to start design activity for a system;</li> <li>impact_analysis: authorisation to start analysis activity for identifying the impact of a critical issue.</li> </ul> *) start_order_type : label; END_ENTITY; |
(* A Start_request is a type of Work_request that solicits the commencement of some work. <note>A Start_request captures all kinds of requests to start activities except for change related information.</note> *) ENTITY start_request SUBTYPE OF (work_request); (* The request_type specifies the nature of the Start_request. Where applicable, one of the following values shall be used:<ul><li>cost_reduction: A request aimed at reducing the engineering and manufacturing costs of an item;</li> <li>customer_rejection: A request resulting from a rejection by a customer;</li> <li>customer_request: A request for an activity that is necessary to solve the request of a customer;</li> <li>durability_improvement: A request aimed at extending the life time of an item;</li> <li>government_regulation: A request resulting from legal requirements;</li> <li>procurement_alignment: A request to adjust the purchasing process of different items;</li> <li>security_reason: A request for an activity that is necessary from a security point of view; </li> <li>standardization: A request to unify variants of an item;</li> <li>supplier_request: A request for an activity necessary to solve the request of a supplier;</li> <li>technical_improvement: A request aimed at improving the technical aspects of an item.</li> </ul> *) request_type : label; END_ENTITY; (* A State_context_relationship is a mechanism for relating a Fsm_generic_state to a Functional_state_context indicating that the Fsm_state is a top-level state in the Functional_state_context. <note>This entity provides the link between a Fsm_state (top-level state if a statechart) and the environment in which a finite state machine exists.</note> *) ENTITY state_context_relationship; (* The in_context specifies the Functional_state_context in the relationship. *) in_context : generic_state_context; (* The state specifies the Fsm_generic_state in the relationship. *) state : fsm_generic_state; END_ENTITY; |
(* A State_function_interaction_port is an element of the interface to a Functional_state_context. <note>The State_function_interaction_port is a means for importing knowledge of functions outside a Functional_state_context into a Functional_state_context. Explicit import of such knowledge is required as the Functional_state_context maintains it own name space.</note> *) ENTITY state_function_interaction_port; (* The port_of specifies the Functional_state_context interface of which the State_function_interaction_port is part. *) port_of : functional_state_context; END_ENTITY; (* A State_machine_functional_behaviour_model is a type of Functional_behaviour_model with the discriminator dynamic behaviour is captured using finite state machine and related formalisms. *) ENTITY state_machine_functional_behaviour_model SUBTYPE OF (functional_behaviour_model); INVERSE (* The behaviour_model specifies the State_machine_functional_behaviour_model object for which the Fsm_model provides the behaviour specification. *) behaviour_constraint : SET [1 : ?] OF fsm_model FOR behaviour_model; END_ENTITY; (* A state_transition_specification_assignment is an assignment of a textual specification to a Fsm_state_transition. <note number="1"> The state_transition_specification_assignment is the mechanism for assigning a guarding expression to a Fsm_state_transition in a Moore style finite state machine or the assignment of a guarding expression and a set of action statements to a Fsm_state_transition in a Mealy style finite state machine. </note><note number="2"> The language of the assigned specification is not prescribed by AP 233. </note> *) |
ENTITY state_transition_specification_assignment; (* The assigned_to specifies the Fsm_state_transition to which the textual specification is assigned. *) assigned_to : fsm_state_transition; (* The specification specifies the textual specification assigned to the Fsm_state_transition. *) specification : textual_specification; END_ENTITY; (* A String_data_type_definition is a type of Elementary_maths_space containing all of the strings up to length n that can be formed from combinations of the allowable characters. Where n is the length of the string. If n is not given, the string can have infinite length. *) ENTITY string_data_type_definition SUBTYPE OF (elementary_maths_space); (* The size specifies the space occupied by the String_data_type_definition. <note number="1">The low bound of the Finite_integer_interval is generally not used but is available when a future use (such as the identification of sub-strings within strings) becomes apparent. The low bound should be set to zero.</note> <note number="2">The size of the Finite_integer_interval is the maximum number of characters and instance of a String_data_type_definition can have. </note> A size need not be given for a String_data_type_definition in which case it has an unknown length. The size need not be specified for a particular String_data_type_definition object. *) size : OPTIONAL finite_integer_interval; END_ENTITY; (* A Structured_requirement_definition is a type of Requirement_definition with the discriminator that the required capability is expressed as a value. <note number="1">This entity provides the capability to represent requirements that are structured and typed - as opposed to requirements expressed in text.</note> <note number="2">The name of this entity shall be reconsidered. The current name reflects the fact that the property model is used to store the requirement. A potentially better name is Structured_requirement_definition.</note> *) |
ENTITY structured_requirement_definition SUBTYPE OF (requirement_definition); (* The required_characteristic specifies the Property_value that provides the structured definition of the requirement. *) required_characteristic : property_value; END_ENTITY; (* A System_composition_relationship is the decomposition relationship between a System_definition object and a System_instance object that is a sub-system of the System_definition object. *) ENTITY system_composition_relationship; (* The component_system specifies the sub-system in the relationship. *) component_system : system_instance; (* The decomposed_system specifies the system in the relationship. *) decomposed_system : system_definition; (* The description specifies additional textual information about the relationship. *) description : OPTIONAL text_select; (* The relationship describes the type of the System_composition_relationship. Where applicable one of the following values shall be used:<ul> <li>mandatory: The sub-system must be in the system breakdown structure of a real system for it to be valid;</li> <li>optional: The sub-system may, but is not required to, be in the system breakdown structure for any real system.</li> </ul> *) relationship_type : label; END_ENTITY; (* A System_definition is a type of System_view and a representation of a system specification for a life cycle of a system. <note>The specification may be in any degree of completeness. The system_definition, via relationships to the collection of detailed entities (function_definition etc), forms the system specification at that point in its evolution. At completion, the System_definition will form the complete system specification for the system life cycle that the System_definition defines.</note> *) |
ENTITY system_definition SUBTYPE OF (system_view); (* The life_cycle_stage specifies the phase in the system life-cycle the System_definition is valid for. <example number="29">The value for life_cycle_stage may be "operational" indicating that the System_definition provides the specification for the operational stage of the system under specification.</example> *) life_cycle_stage : label; INVERSE (* The system_definition_context specifies the System_definition object for which the Partial_system_view is valid. *) assigned_to_system : SET [0 : ?] OF partial_system_view_relationship FOR system_definition_context; (* The system_specification specifies the System_definition to which the Partial_system_view is assigned. *) scenarios_for_system : SET [0 : ?] OF system_view_assignment FOR system_specification; END_ENTITY; (* A system_functional_configuration is the mechanism for assigning a functional_reference_configuration to a context_function_relationship. <note> The system_functional_configuration defines the non-functional characteristics such as property values and allocation information that is valid in one particular view on a system. </note> *) ENTITY system_functional_configuration; (* The functional_configuration specifies the functional_reference_configuration that is assigned by the functional_configuration. *) functional_configuration : functional_reference_configuration; (* The system specifies the context_function_relationship to which the functional_reference_configuration is assigned. |
*) system : context_function_relationship; END_ENTITY; (* A System_instance is the instantiation of a system specification in a particular context. <note number="1">A System_instance does not imply a realized system, only that a particular specification is planned to be used for the realization of a system in a system composition structure.</note> <note number="2">Each System_instance gets its definition from exactly one System_definition object, defined by the attribute definition.</note> *) ENTITY system_instance; (* The definition specifies the System_definition object that provides the specification for a particular definition. There is exactly one System_definition object acting as the definition for a particular definition. *) definition : system_definition; (* The description specifies additional information about the System_instance. *) description : OPTIONAL text_select; (* The id specifies the element_identifier of the System_instance. *) id : element_identifier; (* The name specifies the word, or set of words, that is used to refer to the System_instance. *) name : label; UNIQUE UR1: definition, id; END_ENTITY; (* A system_instance_relationship is a representation of an interaction relationship between two or more System_instance objects. <note> system_instance_relationship is used to capture the context of a system in an entity-relationship modelling style. The idea is to model a set of interacting systems and the relationships between them. This means defining the cardinality constraints between the systems involved in a relation. All objects involved in a system_instance_relationship must be part of the same system breakdown structure. |
</note><ol><li>This is a new modelling philosophy from point of view of the model and corresponds to system context view argued for by David Oliver. An example of a system context diagram is available on page 210 in Engineering Complex Systems with Models and Objects, by David Oliver. The actual relationship is formed by System_instance, System_instance_relationship_port and system_instance_relationship objects.</li> *) ENTITY system_instance_relationship; (* The description specifies additional information about the description. *) description : text_select; (* The name specifies the word, or set of words, by which the name is referred. *) name : label; INVERSE (* The defined_relationship specifies the System_instance_relationship referenced. *) connected_port : SET [2 : ?] OF system_instance_relationship_port FOR defined_relationship; END_ENTITY; (* A System_instance_relationship_port is the mechanism for associating a System_instance object to a System_instance_relationship object. <note>The system_instance_relationship_port also specifies the cardinality of the System_instance object involved in the relation.</note> <example number="30">In a cellular telephone system it may be appropriate to express that for each cell there may be in the range of 0-5000 terminals concurrently. In PAS 20542 this is expressed by instantiating a System_instance_relationship relationship between a cell systems System_instance and cellular telephone system System_instance with System_instance_relationship_port objects capturing the cardinality information for each system in the relationship. <p>For the example the system_instance_relationship_port for the cellular telephone system system_instance the cardinality figure would be the interval 0-5000.</p> </example> *) ENTITY system_instance_relationship_port; (* The cardinality specifies the range of System_instance objects that are involved in the relation. Regardless of the cardinality specified, exactly one System_instance object is always specified by the port_of attribute. <p>Cardinality defines the number of System_instance objects that are involved in the System_instance_relationship defined by the defined_relationship attribute.</p> *) |
cardinality : cardinality_association_select; (* The defined_relationship specifies the System_instance_relationship referenced. *) defined_relationship : system_instance_relationship; (* The port_of specifies the System_instance referenced. *) port_of : system_instance; END_ENTITY; (* A System_instance_replication_relationship is the relation between two System_instance objects where a new System_instance object replaces the original one in a system. <note>The entity does not adequately capture the requirement. Additional work is required.</note> *) ENTITY system_instance_replication_relationship; (* The rationale specifies the motivation for replacing the System_instance. *) rationale : OPTIONAL text_select; (* The replaced_application specifies the original System_instance. *) replaced_application : system_instance; (* The relacing_application specifies the replaced System_instance. *) replacing_application : system_instance; END_ENTITY; (* A System_physical_configuration is the mechanism for assigning a Physical_reference_configuration to a Context_physical_relationship. *) ENTITY system_physical_configuration; (* The physical_configuration specifies the Physical_reference_configuration that is assigned by the System_physical_configuration. *) physical_configuration : physical_reference_configuration; (* The system specifies the Context_physical_relationship to which the Physical_reference_configuration is assigned. *) system : context_physical_relationship; END_ENTITY; |
(* A System_substitution_relationship is a relationship that indicates that one System_composition_relationship may be substituted for another System_composition_relationship. The subjects of the substitution are the related component_system System_instance objects of both System_composition_relationship objects. The decomposed_system System_definition shall be the same in both System_composition_relationship objects. *) ENTITY system_substitution_relationship; (* The base specifies the System_composition_relationship that is replaceable. *) base : system_composition_relationship; (* The description specifies textual additional information on the System_substitution_relationship. *) description : OPTIONAL text_select; (* The substitute specifies the system_composition_relationship that may be used instead of the base System_composition_relationship. *) substitute : system_composition_relationship; END_ENTITY; (* A System_view is a partial or complete view on a system under specification. <note number="1 ">A System_view is a collector for all information that is of interest for a system specification.</note> <note number="2">System_view captures the concept of a particular perspective to the system model, as if viewed from a specific stakeholder. It also provides all system related entities with basic capabilities such as version management, persistent Ids, names etc.</note> *) ENTITY system_view ABSTRACT SUPERTYPE OF (ONEOF(partial_system_view, system_definition)); (* The associated_version specifies the Configuration_element object for which the Configuration_element_version object represents a version. *) associated_version : configuration_element_version; (* The description specifies additional textual information about the System_view. *) description : OPTIONAL text_select; (* The id specifies the identifier of the System_view. *) id : element_identifier; |
(* The name specifies the word, or set of words, that is used to refer to the System_view. *) name : label; INVERSE (* The associated_context specifies the System_view that is valid for the relationship. *) system : SET [0 : ?] OF context_function_relationship FOR associated_context; UNIQUE UR1: id; WHERE WR1: at_most_one_system_function_assigned(SELF); END_ENTITY; (* A System_view_assignment is the assignment of a Partial_system_view to a System_definition. <note>The Partial_system_view assigned to the System_definition represents a part of the complete system specification.</note> *) ENTITY system_view_assignment; (* The assigned_view specifies the assigned Partial_system_view. *) assigned_view : partial_system_view; (* The assignment_comment specifies additional textual information about the assignment. *) assignment_comment : OPTIONAL text_select; (* The system_specification specifies the System_definition to which the Partial_system_view is assigned. *) system_specification : system_definition; END_ENTITY; (* A System_view_context is a description of the fidelity and system viewpoint for a Partial_system_view. <note>The System_view_context carries a number of attributes that would be more efficient if they could be assigned individually.</note> *) ENTITY system_view_context; (* The description specifies additional textual information about the System_view_context. *) description : OPTIONAL text_select; |
(* The fidelity specifies a classification of the level of specification detail the partial_system_view that references the fidelity. <example number="31">The value for fidelity may be "user" to indicate that the associated partial_system_view defines a systems specification at user level of detail.</example> *) fidelity : label; (* The system_viewpoint specifies the particular viewpoint that is valid for the System_view_context. <example number="32">The system_viewpoint might be "maintainer" indicating that a Partial_system_view referencing the system_viewpoint provides specifications that are valid from a maintainer's point of view.</example> The system_viewpoint may also be used to indicate that specifications of the referencing Partial_system_view are relevant for a very specific domain. <example number="33">The system_viewpoint may be "temporal_safety_analysis" indicating that a partial_system_view object referencing the system_viewpoint provides a sub-set of system specifications that defines the temporal requirements of the system under specification .</example> *) system_viewpoint : label; END_ENTITY; (* A Textual_paragraph is a structured representation of text. <note number="1">The name shall probably be change to reflect the fact that the entity does not provide a template only but also textual information.</note> *) ENTITY textual_paragraph; (* The element_value specifies the textual component of the Textual_paragraph. *) element_value : LIST [1 : ?] OF text_elements; (* The name specifies the word, or set of words, that is used to refer to the Textual_paragraph. <note number="2">The name attribute may be a reference to formatting information for the text.</note> *) name : label; END_ENTITY; |
(* A Textual_requirement_definition is a type of Requirement_definition and a definition of a requirement expressed in text. <note>This is the most "primitive" representation of requirements in PAS 20542.</note> *) ENTITY textual_requirement_definition SUBTYPE OF (requirement_definition); (* The description specifies the required capabilities. *) description : text_select; END_ENTITY; (* A Textual_section is text in which constituent elements (paragraphs) are named. <note>The Textual_section is provided for situations where the structure of the textual information needs further formatting.</note> *) ENTITY textual_section; (* The element specifies the individual element of the template. *) element : LIST [1 : ?] OF textual_paragraph; (* The name specifies the word, or set of words, that is used to refer to the Textual_section. *) name : label; END_ENTITY; (* A Textual_specification is text expressed using a defined langauge. <note number="1">The language may or may not be computer interpretable.</note> *) ENTITY textual_specification; definition : text_select; (* The definition_language specifies with a word or set of words the language that the specification is written in. <note number="3"> Possible values for definition_language could be "ANSI C", "structured text", etc.</note> <note number="4">The list of preferred languages shall be revisited.</note> *) definition_language : label; END_ENTITY; |
(* A Textual_table is a representation of a row structure where a Textual_section represents each position in the structure. <note number="1">A Textual_section may hold a list of Textual_paragraph objects. Each Textual_paragraph represents a column in the Textual_table.</note> *) ENTITY textual_table; (* The name specifies the word, or set of words, that is used to refer to the Textual_table. *) name : label; (* The table_row specifies the number of rows in theTextual_table. <note number="2">The number of rows shall be greater than zero.</note> *) table_row : LIST [1 : ?] OF textual_section; END_ENTITY; (* A Triggered_system_view_relationship is a type of Partial_system_view_relationship and an indicator that TBD <note number="1">The model support specification of system modes (each Partial_system_view can be viewed as a high level mode of a system). A Triggered_system_view_relationship is a Partial_system_view_relationship where the relation between relating and related Partial_system_view is such that the system can make a transition from one mode to another when the transition_condition attribute is fulfilled.</note> <note number="2">The relationship is unidirectional, the Triggered_system_view_relationship only specifies a transition from the related to the relating Partial_system_view.</note> *) ENTITY triggered_system_view_relationship SUBTYPE OF (partial_system_view_relationship); (* The transition_condition specifies, in text, the condition that shall be fulfilled. <note number="3">If the transition is fulfilled the TBD.</note> *) transition_condition : text; END_ENTITY; (* An Undefined_data_type_definition is a type of User_defined_data_type_definition whose value domain and range are not defined. <note>The Undefined_data_type_definition shall be used in all cases where the data type of a Data_instance is unknown.</note> *) ENTITY undefined_data_type_definition |
SUBTYPE OF (user_defined_data_type_definition); END_ENTITY; (* A Union_data_type_definition is a type of User_defined_data_type_definition structure which can take the value of one of its components at any time. *) ENTITY union_data_type_definition SUBTYPE OF (user_defined_data_type_definition); END_ENTITY; (* An Union_data_type_member is a relationship between a Union_data_type_definition and a Data_field it contains. The members of a Union_data_type_definition are mutually exclusive. *) ENTITY union_data_type_member; (* The child specifies the Data_field object in the relationship *) child : data_field; (* The parent specifies the Union_data_type_definition object in the relationship. *) parent : union_data_type_definition; END_ENTITY; (* A Unit is the occurrence of a unit of measurement. *) ENTITY unit; (* The unit_name specifies the name of the unit of measurement, using (ideally) an appropriate ISO standard of Unit terms. <note number="1">Examples would be: s (seconds), m (meters); kg (kilograms), etc.</note> <note number="2">The unit_name shall correspond with standard measurement types.</note> *) unit_name : label; END_ENTITY; |
(* A User_defined_data_type_definition is a data type with a value domain not directly defined within PAS 20542. *) ENTITY user_defined_data_type_definition ABSTRACT SUPERTYPE OF (ONEOF(abstract_data_type_definition, aggregate_data_type_definition, derived_data_type_definition, record_data_type_definition, recursive_data_type_definition, undefined_data_type_definition, union_data_type_definition)); (* The associated_version specifies the Configuration_element_version for the User_defined_data_type_definition. *) associated_version : configuration_element_version; (* The description specifies additional information about the User_defined_data_type_definition. *) description : OPTIONAL text_select; (* The id specifies the identifier of the User_defined_data_type_definition. *) id : element_identifier; (* The name specifies the word, or set of words, that are used to refer to the User_defined_data_type_definition. *) name : label; UNIQUE UR1: id; END_ENTITY; (* A Value_limit is a type of Value_with_unit and a qualified numerical value representing either the lower limit or the upper limit of a particular characteristic. <example number="34">"30.5 max" and "5 min" are examples for a Value_limit.</example> *) ENTITY value_limit SUBTYPE OF (value_with_unit); (* The limit specifies the limit of the value. *) limit : NUMBER; |
(* The limit qualifier specifies the type of limit. Where applicable the following values shall be used:<ul> <li>max: The specified limit is an upper limit;</li> <li>min: The specified limit is a lower limit.</li> </ul> *) limit_qualifier : label; END_ENTITY; (* A Value_list is an ordered collection of Value_with_unit objects for a Property_value. <example number="35">Property_definition may be composed of different property values such as "mass", "speed" and "age" which are altogether necessary in a given context. The value_list collects all of them in a given order, such that each is identifiable by its index in the list.</example> *) ENTITY value_list; (* The values specifies the ordered collection of Value_with_unit objects that together are provided for a Property value. *) values : LIST [1 : ?] OF value_with_unit; END_ENTITY; (* A Value_range is a type of Value_with_unit and a pair of numerical values representing the range in which the value of a Property_value shall lie. <note>This kind of tolerance may replace the nominal value of a Property_value. All values within the range are considered to be equally good. Usually, this way of dimensioning is used for clearances of large number of objects with a particular specification.</note> *) ENTITY value_range SUBTYPE OF (value_with_unit); (* The distribution_function specifies the forecasted distribution function of a large set of measurements. *) distribution_function : OPTIONAL textual_specification; (* The lower_limit specifies the minimum acceptable value of the Property_value that is constrained by the Value range. *) lower_limit : NUMBER; |
(* The upper_limit specifies the maximum acceptable value of the Property_value that is constrained by the Value range. *) upper_limit : NUMBER; END_ENTITY; (* A Value_with_unit is either a single numerical measure, or a range of numerical measures with upper, lower, or upper and lower bounds. <note>Each value_with_unit is either a Value_limit, a Value_range, or a Nominal_value.</note> *) ENTITY value_with_unit ABSTRACT SUPERTYPE OF (ONEOF(nominal_value, value_limit, value_range)); (* The significant_digits specifies the number of significant digits for a particular Value_with_unit. *) significant_digits : OPTIONAL INTEGER; (* The unit_component specifies the measurement unit valid for the Value_with_unit. *) unit_component : OPTIONAL unit; END_ENTITY; (* A Verification_report_for_verification_specification is the mechanism for relating the result of a Verification_specification_allocation to a Verification_result. The result of the verification activity is captured by the verification_report_entry attribute. *) ENTITY verification_report_for_verification_specification; (* The description specifies additional information on the Verification_report_for_verification_specification. *) description : text_select; (* The specific_verification_element specifies the Verification_specification_allocation which has been used for verification. *) specific_verification_element : verification_specification_allocation; (* The verification_report_entry sspecifies a description of the result of the verification. *) verification_report_entry : verification_result; END_ENTITY; |
(* A Verification_result is the verdict of a verification activity. *) ENTITY verification_result; (* The description the overall verdict of a verification activity. Results from the application of individual verification_specification object to elements under verification is captured by the entity verification_report_for_verification_specification. The description specifies additional information on the Verification_result. *) description : text_select; (* The id specifies the identifier of the Verification_result. *) id : element_identifier; (* The name specifies the word, or set of words, that are used to refer to the Verification_result. *) name : label; (* The system_under_verification specifies the Verification_specification_system_view_relationship that the Verification_result is valid for. *) system_under_verification : verification_specification_system_view_relationship; UNIQUE UR1: id, system_under_verification; END_ENTITY; (* A Verification_specification is a specification of how a system, functionality or physical element of a system shall be verified. <note number="1">A Verification_specification uses the requirement structure to define how a system shall be tested. The rationale for this is that the requirements structure does allow representation not limited to text. Via the Model_defined_requirement_definition entity it is possible to specify that models or external files shall be used in the verification activity.</note> <note number="2">The Verification_specification does not imply traditional testing. It may be formal verification, analysis or inspection of a system or any other method.</note> *) ENTITY verification_specification; (* The definition specifies the Requirement_definition that defines what shall be tested. *) definition : requirement_occurence; |
(* The description specifies additional information about the Verification_specification. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Verification_specification. *) id : element_identifier; (* The name specifies the word, or set of words, that is used to refer to the Verification_specification. *) name : label; (* The verification_method specifies how the test shall be carried out for a particular system. *) verification_method : label; END_ENTITY; (* A Verification_specification_allocation is a mechanism for allocating a Verification_specification to a System_instance, a Physical_instance, a Function_instance, or a Requirement_instance such that the Verification_specification shall be applied to the allocated object. *) ENTITY verification_specification_allocation; (* The description specifies additional information about the Verification_specification_allocation. *) description : OPTIONAL text_select; (* The relevant_for specifies the object that the Verification_specification is allocated to. *) relevant_for : verification_allocation_select; (* The specification specifies the Verification_specification. *) specification : verification_specification; END_ENTITY; (* A Verification_specification_system_view_relationship is the mechanism for assigning a Verification_specification to a System_view indicating the test specification shall be applied for verifying and or validating the system. *) ENTITY verification_specification_system_view_relationship; (* The assigned_verification specifies the assigned Verification_specification. *) assigned_verification : verification_specification; |
(* The description specifies additional information about the Verification_specification_system_view_relationship. *) description : OPTIONAL text_select; (* The index specifies an identifier for the Verification_specification identified by the attribute assigned_verification in the context of the system_view defined by the system_view attribute. *) index : label; (* The system_view specifies the System_view to which the Verification_specification is assigned. *) system_view : system_view; END_ENTITY; (* A View_relationship is a hierarchical relation between two Visual_element objects such that the child object is a part of the Graphics_view of the parent object. <note number="1">If a View_relationship exists between two Graphics_view objects the same hierarchical relationship shall exist between the General_function_definition, General_physical_definition or Fsm_generic_state objects involved in the hierarchy.</note> <note number="2">Each Graphics_view object is potentially part of many Multi_level_view objects. To allow for overlapping views each View_relationship shall, via the valid_in attribute define the Multi_level_view for which the relationship is valid.</note> *) ENTITY view_relationship; (* The child specifies the Graphics_view that is superimposed in the Graphics_view of the parent. *) child : graphics_view; (* The parent specifies the Graphics_view that acts as a context of the child Graphics_view. *) parent : graphics_view; (* The valid_in specifies the Multi_level_view for which the relation is valid. *) valid_in : multi_level_view; END_ENTITY; |
(* A Visual_element is the super-type for all entities carrying graphical information for an object. A Visual_element is a Graphics_node, an Actual_port_position, a Formal_port_position, or a Graphics_link. *) ENTITY visual_element ABSTRACT SUPERTYPE OF (ONEOF(actual_port_position, formal_port_position, graphics_link, graphics_node)); (* The view specifies the Graphics_view for which the Visual_element is defined. *) view : graphics_view; END_ENTITY; (* A Work_order is the authorization for one or more Engineering_process_activity objects to be performed. *) ENTITY work_order ABSTRACT SUPERTYPE OF (ONEOF(change_order, start_order)); (* The description specifies additional information about the Work_order. *) description : OPTIONAL text_select; (* The id specifies the identifier of the Work_order. *) id : element_identifier; (* The is_controlling specifies the Engineering_process_activity objects that are controlled by this particular Work_order. *) is_controlling : SET [1 : ?] OF engineering_process_activity; (* The status specifies the condition of the Work_order. Where applicable, the following values shall be used:<ul> <li>in_work: The request is being developed;</li> <li>issued: The request has been completed and reviewed, and immediate action takes place;</li> <li>resolved: The request is resolved; the actions as defined by the request have been completed and no further work is required.</li> </ul> *) status : label; (* The version_id specifies the identification of a particular version of a Work_order. *) version_id : OPTIONAL element_identifier; END_ENTITY; |
(* A Work_request is the solicitation for some work to be done. *) ENTITY work_request ABSTRACT SUPERTYPE OF (ONEOF(change_request, start_request)); (* The description specifies additional information about the Work_request. *) description : text_select; (* The id specifies the identifier of the Work_request. *) id : element_identifier; (* The notified_person specifies the Person or the Organization that shall be informed about the Work_request and the date when the Person or Organization shall be informed. *) notified_person : SET [0 : ?] OF date_and_person_organization; (* The requestor specifies the Person or Organization who issued the request and the date when this Person or Organization issued the request. *) requestor : date_and_person_organization; (* The scope specifies the objects that are subject to the Work_request. *) scope : SET [0 : ?] OF specification_element_select; (* The status specifies the status of the Work_request. Where applicable, the following values shall be used:<ul> <li>in_work: The request is being developed;</li> <li>issued: The request has been completed and reviewed, and immediate action takes place;</li> <li>resolved: The request is resolved; the actions as defined by the request have been completed and no further work is required.</li> </ul> *) status : label; (* The version_id specifies the identification of a particular version of a Work_request. *) version_id : OPTIONAL element_identifier; END_ENTITY; FUNCTION at_most_one_system_function_assigned (a_system_view : system_view): LOGICAL; LOCAL no_of_system_functions : INTEGER := 0; END_LOCAL; |
IF SIZEOF(a_system_view.system) > 0 THEN REPEAT i := 1 TO SIZEOF(a_system_view.system); IF a_system_view.system[i].role = system_function THEN no_of_system_functions := no_of_system_functions + 1; END_IF; END_REPEAT; END_IF; RETURN (no_of_system_functions <= 1); END_FUNCTION; FUNCTION correct_binding (binding : io_port_binding): BOOLEAN; LOCAL function_interface : function_instance; END_LOCAL; IF ('SYSTEM_ENGINERING_AND_DESIGN.FUNCTION_INSTANCE' IN TYPEOF(binding.actual_port.port_of)) THEN RETURN (FALSE); END_IF; function_interface := binding.actual_port.port_of; IF (binding.formal_port.port_of :=: function_interface.definition) THEN RETURN (TRUE); ELSE RETURN (FALSE); END_IF; END_FUNCTION; FUNCTION determineactualportrole (p : actual_io_port): port_data_relation; IF (p.port_type = input) OR (p.port_type = control) OR (p.port_type = mechanism) THEN RETURN (consumer); ELSE |
RETURN (producer); END_IF; END_FUNCTION; FUNCTION determineformalportrole (p : formal_io_port): port_data_relation; IF (p.port_type = input) OR (p.port_type = control) OR (p.port_type = mechanism) THEN RETURN (producer); ELSE RETURN (consumer); END_IF; END_FUNCTION; END_SCHEMA; |
Обозначение ссылочного международного стандарта | Степень соответствия | Обозначение и наименование соответствующего национального стандарта |
ИСО/МЭК 8824-1 | IDT | ГОСТ Р ИСО/МЭК 8824-1:2001 Информационная технология. Абстрактная синтаксическая нотация версии один (АСН.1). Часть 1. Спецификация основной нотации |
ИСО 10303-1:1994 | IDT | ГОСТ Р ИСО 10303-1:1999 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 1. Общие представления и основополагающие принципы |
ИСО 10303-11:2004 | IDT | ГОСТ Р ИСО 10303-11:2009 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 11. Методы описания. Справочное руководство по языку EXPRESS |
ИСО 10303-21:2002 | IDT | ГОСТ Р ИСО 10303-21:2002 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 21. Методы реализации. Кодирование открытым текстом структуры обмена |
ИСО 10303-22:1998 | IDT | ГОСТ Р ИСО 10303-22:2002 Системы автоматизации производства и их интеграция. Представление данных об изделии и обмен этими данными. Часть 22. Методы реализации. Стандартный интерфейс доступа к данным |
Примечание - В настоящей таблице использовано следующее условное обозначение степени соответствия стандартов: - IDT - идентичные стандарты. | ||
[1] Electronics Industries Alliance (EIA), November 1997, EIA 632, Processes for Engineering a System | ||
[2] National Institute of Standards and Technology, December 1993, FIPS PUB 183, Integration Definition for Functional Modeling (IDEF0), Federal Information Processing Standards Publication 183 | ||
[3] The Institute of Electrical and Electronics Engineers, Inc, 1994, IEEE Std 1220, IEEE trial-use Standard for Application and Management of the Systems Engineering Process | ||
[4] The Institute of Electrical and Electronics Engineers, Inc, December 1998, IEEE Std 1220, IEEE Standard for Application and Management of the Systems Engineering Process | ||
[5] The Institute of Electrical and Electronics Engineers, Inc, 1990, IEEE Std 610.12, IEEE Standard Glossary of Software Engineering Terminology | ||
[6] International Organization for Standardization (ISO), November 1997, ISO 15288, Life-Cycle Management - System Life Cycle Processes | ||
[7] Military Standards, May 1992, MIL-STD-499B, Systems Engineering (draft Military Standard) | ||
[8] The Software Engineering Institute (SEI), 1995, SE-CMM, version 1.1, The Systems Engineering Capability Maturity Model | ||
[9] BAE SYSTEMS, 2006-02-12, ISO 10303 WG3 N 1234, version 4, Julian Johnson and Mark Taylor, SEDRES-AP233 WD#5 Overview pack | ||
[10] Institut | ||
[11] | ИСО/МЭК 8859-1:1998 | Информационные технологии. 8-битовые однобайтовые наборы кодированных графических знаков. Часть 1. Латинский алфавит N 1 |
ISO/IEC 8859-1:1998 | Information technology - 8-bit single-byte coded graphic character sets - Part 1: Latin alphabet No. 1 | |
[12] | ИСО 10303-203:2011 | Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 203. Протокол применения: проектирование механических деталей и узлов с контролируемой конфигурацией 3D (модульная версия) |
ISO 10303-203:2011 | Industrial automation systems and integration - Product data representation and exchange - Part 203: Application protocol: Configuration controlled 3D design of mechanical parts and assemblies | |
[13] | ИСО 10303-209:2001 | Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 209. Протокол прикладной программы: анализ композитных и металлических конструкционных деталей и связанное с ним проектирование |
ISO 10303-209:2001 | Industrial automation systems and integration - Product data representation and exchange - Part 209: Application protocol: Composite and metallic structural analysis and related design | |
[14] | ИСО 10303-210:2011 | Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 210. Протокол прикладной программы. Электронная сборка, межкомпонентное соединение и проектирование компоновки |
ISO 10303-210:2011 | Industrial automation systems and integration - Product data representation and exchange - Part 210: Application protocol: Electronic assembly, interconnection, and packaging design | |
[15] | ИСО 10303-212:2001 | Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 212. Протокол прикладной программы. Электротехнический расчет и установка |
ISO 10303-212:2001 | Industrial automation systems and integration - Product data representation and exchange - Part 212: Application protocol: Electrotechnical design and installation | |
[16] | ИСО 10303-214:2010 | Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 214. Протокол прикладной программы: базовые данные для процессов проектирования транспортных средств |
ISO 10303-214:2010 | Industrial automation systems and integration - Product data representation and exchange - Part 214: Application protocol: Core data for automotive mechanical design processes | |
[17] | ИСО 10303-221:2007 | Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 221. Протокол прикладной программы. Функциональные данные для технологических установок и их схематическое представление |
ISO 10303-221:2007 | Industrial automation systems and integration - Product data representation and exchange - Part 221: Application protocol: Functional data and their schematic representation for process plants | |
[18] | ИСО 10303-227:2005 | Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 227. Протокол прикладной программы. Пространственная конфигурация установки |
ISO 10303-227:2005 | Industrial automation systems and integration - Product data representation and exchange - Part 227: Application protocol: Plant spatial configuration | |
[19] | ИСО 10303-232:2002 | Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 232. Протокол прикладной программы. Пакетирование технических данных для оперативной информации и обмена |
ISO 10303-232:2002 | Industrial automation systems and integration - Product data representation and exchange - Part 232: Application protocol: Technical data packaging core information and exchange | |
[20] | ИСО 10303-239:2005 | Системы промышленной автоматизации и интеграция. Представление данных о продукции и обмен данными. Часть 239. Протокол прикладной программы. Поддержка жизненного цикла продукции |
ISO 10303-239:2005 | Industrial automation systems and integration - Product data representation and exchange - Part 239: Application protocol: Product life cycle support | |
УДК 658.52.011.56 | ОКС 25.040.40 | Т 58 |
Ключевые слова: системы промышленной автоматизации, интеграция, жизненный цикл систем, управление производством | ||