Capability (C092):— representing_requirements |
Date: 2012/05/23 17:39:01 Revision: 1.22
|
This section provides a business level overview of this capability.
@@@@ section @@@@
This section provides an overview of the information model that supports
this capability.
The EXPRESS-G for requirements is shown in Figure 1 below and
explained in the following sections.
NOTE
See also the modules:
Requirement assignment,
Requirement identification and version,
Requirement view definition,
Product identification,
Product version,
Product view definition,
Product view definition relationship, and
Product version relationship.
Figure 1 — Requirements EXPRESS-G
Where "source" may be:
- Activity_method,
- Applied_activity_method_assignment,
- Applied_state_assignment,
- Applied_state_definition_assignment,
- Document_version,
- Interface_connector_occurrence,
- Part_version,
- Product_as_individual_version,
- Product_view_definition,
- State, or
- State_definition.
and "assignee" may be:
- Activity_method,
- Alternate_part_relationship,
- Applied_activity_method_assignment,
- Applied_state_assignment,
- Applied_state_definition_assignment,
- Assembly_component_relationship,
- Assembly_relationship_substitution,
- Attachment_slot,
- Attachment_slot_version,
- Breakdown,
- Breakdown_element,
- Breakdown_element_realization,
- Breakdown_element_usage,
- Breakdown_element_version,
- Breakdown_version,
- Document_version,
- Interface_connector_occurrence,
- Interface_specification,
- Part_version,
- Product_as_individual_version,
- Product_as_planned,
- Product_as_realized,
- Product_configuration,
- Product_in_attachment_slot,
- Product_view_definition,
- Project,
- Required_resource_by_specification,
- State, or
- State_definition
The following sections define a set of templates for the capability,
where a template is a specification of a set of entities that need to
be instantiated to represent a given set of information.
This section specifies the template representing_requirements.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
This template describes the representation and identification of requirements data.
The EXPRESS-G diagram in
Figure
shows the templates and EXPRESS entities that are required
to represent the template
"representing_requirements".
The text highlighted in blue shows the template parameters.
Figure 1 — Representation of requirement data (EXPRESS-G)
The graphic for the template to be used in other EXPRESS-G diagrams
is shown in Figure
below.
Figure 2 — Representation of requirement data (Condensed EXPRESS-G)
The following input parameters are defined for this template:
The identifier assigned to a requirement.
The classification of the identifier assigned to a requirement.
The following classes and their sub-classes can be used:
The identifier assigned to an organization that assigns an identifier to a requirement.
The classification of the organization that assigns an identifier assigned to a requirement.
The following classes and their sub-classes can be used:
The identifier assigned to a requirement version.
The classification of the identifier assigned to a requirement version.
The following classes and their sub-classes can be used:
The identifier assigned to an organization that assigns an identifier to a requirement version.
The classification of the organization that assigns an identifier assigned to a requirement version.
The following classes and their sub-classes can be used:
The identifier assigned to a requirement view definition.
The classification of the identifier assigned to a requirement view definition.
The following classes and their sub-classes can be used:
The identifier assigned to an organization that assigns an identifier to a requirement view definition.
The classification of the organization that assigns an identifier assigned to a requirement view definition.
The following classes and their sub-classes can be used:
The following classes and their sub-classes can be used:
The following classes and their sub-classes can be used:
The following reference parameters are defined for this template:
Allow the
Requirement
entity instantiated in this path to be referenced when this template is used.
Note: The
Requirement
entity can be referenced in a template path by:
%^target = $representing_requirements.req%
where
target
is the parameter to which the
Requirement
is bound.
Allow the
Requirement_version
entity instantiated in this path to be referenced when this template is used.
%^target = $representing_requirements.req_ver%
%^target = $representing_requirements.rvd%
%^target = $representing_requirements.vdc%
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
-- Instantiate the Requirement entity. Requirement-- Bind the Requirement entity to the parameter ^req. %^req =
Requirement%
-- Identify the Requirement /
assigning_identification(
id=@req_id,
id_class_name=@req_id_class_name,
id_ecl_id=@req_id_ecl_id,
org_id=@req_org_id,
org_id_class_name=@req_org_id_class_name,
org_id_ecl_id=@req_org_id_ecl_id,
items=^req)/
-- Instantiate the Requirement_version entity and link it to Requirement.
^req <-
Requirement_version.of_product-- Bind the Requirement_version entity to the parameter ^req_ver. %^req_ver =
Requirement_version%
-- Identify the Requirement_version /
assigning_identification(
id=@req_ver_id,
id_class_name=@req_ver_id_class_name,
id_ecl_id=@req_ver_id_ecl_id,
org_id=@req_ver_org_id,
org_id_class_name=@req_ver_org_id_class_name,
org_id_ecl_id=@req_ver_org_id_ecl_id,
items=^req_ver)/
-- Instantiate the View_definition_context. View_definition_contextView_definition_context.application_domain = '/IGNORE'
View_definition_context.life_cycle_stage = '/IGNORE'
View_definition_context.description = '/IGNORE'
-- Bind the View_definition_context entity to the parameter ^vdc. %^vdc =
View_definition_context%
-- Classify the View_definition_context /
assigning_reference_data(
items=^vdc,
class_name=@vdc_ad_class_name,
ecl_id=@vdc_ad_ecl_id)/
/
assigning_reference_data(
items=^vdc,
class_name=@vdc_lcs_class_name,
ecl_id=@vdc_lcs_ecl_id)/
-- Instantiate the Requirement_view_definition entity and link it to Requirement_version and to View_definition_context.
^req_ver <-
Requirement_view_definition.defined_version
^vdc <-
Requirement_view_definition.initial_context-- Bind the Requirement_view_definition entity to the parameter ^rvd. %^rvd =
Requirement_view_definition%
-- Identify the Requirement_view_definition. /
assigning_identification(
id=@rvd_id,
id_class_name=@rvd_id_class_name,
id_ecl_id=@rvd_id_ecl_id,
org_id=@rvd_org_id,
org_id_class_name=@rvd_org_id_class_name,
org_id_ecl_id=@rvd_org_id_ecl_id,
items=^rvd)/
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/representing_requirements(req_id='1', of_product='#1', req_ver_id='2', defined_version='#2', rvd_id='3', rvd_org_id='Big Planes Inc', req_ver_org_id='Big Planes Inc', req_org_id='Big Planes Inc', req_id_class_name='Requirement_identification_code', req_ver_id_class_name='Progression_identification_code', rvd_id_class_name='Requirement_view_definition_identification_code', req_org_id_class_name='Organization_identification_name', req_ver_org_id_class_name='Organization_identification_name', rvd_org_id_class_name='Organization_identification_name', req_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_class_name='Requirement_category', req_ver_class_name='Requirement_version_category', rvd_class_name='Requirement_view_definition_category', req_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_ecl_id='http://www.plcsinc.org/plcs-proposed', initial_context='#3')/
(an illustration of the consolidated representing_requirements template is shown in
Figure
below.)
Figure 3 — Representation of requirement data (EXPRESS-I diagram)
The instance diagram in
Figure
shows the graphic symbol for the template that is to be
used in other instance diagrams. The example template is:
/representing_requirements(req_id='1', of_product='#1', req_ver_id='2', defined_version='#2', rvd_id='3', rvd_org_id='Big Planes Inc', req_ver_org_id='Big Planes Inc', req_org_id='Big Planes Inc', req_id_class_name='Requirement_identification_code', req_ver_id_class_name='Progression_identification_code', rvd_id_class_name='Requirement_view_definition_identification_code', req_org_id_class_name='Organization_identification_name', req_ver_org_id_class_name='Organization_identification_name', rvd_org_id_class_name='Organization_identification_name', req_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_class_name='Requirement_category', req_ver_class_name='Requirement_version_category', rvd_class_name='Requirement_view_definition_category', req_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_ecl_id='http://www.plcsinc.org/plcs-proposed', initial_context='#3')/
Figure 4 — Representing requirement data (condensed EXPRESS-I)
No common characterizations of the template
representing_requirements
have been identified. However, the ISO 10303-239 EXPRESS model
may enable other assignments to the entities instantiated by the template.
This section specifies the template representing_requirement.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
This template describes the representation and identification of requirements data.
The EXPRESS-G diagram in
Figure
1
shows the templates and EXPRESS entities that are required
to represent the template
"representing_requirement".
The text highlighted in blue shows the template parameters.
Figure 1 — An EXPRESS-G representation of the Information model for representing_requirement
The graphic for the template to be used in other EXPRESS-G diagrams
is shown in Figure
2
below.
Figure 2 — The graphical representation of the representing_requirement template
The following input parameters are defined for this template:
The classification of the requirement identifier (@req_id).
The following classes and their sub-classes can be used:
The identifier or name of the organization that "owns" the requirement identifier (@req_id).
The classification of the organization identifier or name (@req_org_id).
The following classes and their sub-classes can be used:
The identifier of the requirement version.
The classification of the requirement version identifier (@req_ver_id).
The following classes and their sub-classes can be used:
The identifier or name of the organization that "owns" the requirement version identifier (@req_ver_id) .
The classification of the organization identifier or name given in @req_ver_org_id.
The following classes and their sub-classes can be used:
domain (Default=Product_life_cycle_support,Type='CLASS', Optional)
The following classes and their sub-classes can be used:
The following classes and their sub-classes can be used:
The following reference parameters are defined for this template:
Allow the
Requirement
entity instantiated in this path to be referenced when this template is used.
Note: The
Requirement
entity can be referenced in a template path by:
%^target = $representing_requirement.req%
where
target
is the parameter to which the
Requirement
is bound.
Allow the
Requirement_version
entity instantiated in this path to be referenced when this template is used.
%^target = $representing_requirement.req_ver%
%^target = $representing_requirement.req_view%
%^target = $representing_requirement.contxt%
The following parameter combinations specify a uniqueness constraint:
Unique constraint: Unique part view
Each instance of the
entity
(
Requirement_view_definition)
within the data set shall be uniquely identified
by a combination of the following parameters on this
template (representing_requirement) namely:
req_id,
req_id_class_name,
req_id_ecl_id,
req_org_id,
req_org_id_class_name,
req_org_id_ecl_id,
req_ver_id,
req_ver_id_class_name,
req_ver_id_ecl_id,
req_ver_org_id,
req_ver_org_id_class_name,
req_ver_org_id_ecl_id,
domain,
domain_ecl_id,
life_cycle_stage,
life_cycle_stage_ecl_id.
The
instance is
referenced by the following template parameter:
req_view.
Unique constraint: Unique requirement
Unique constraint: Unique requirement version
Each instance of the
entity
(
Requirement_version)
within the data set shall be uniquely identified
by a combination of the following parameters on this
template (representing_requirement) namely:
req_id,
req_id_class_name,
req_id_ecl_id,
req_org_id,
req_org_id_class_name,
req_org_id_ecl_id,
req_ver_id,
req_ver_id_class_name,
req_ver_id_ecl_id,
req_ver_org_id,
req_ver_org_id_class_name,
req_ver_org_id_ecl_id.
The
instance is
referenced by the following template parameter:
req_ver.
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
RequirementRequirement.id = '/IGNORE'
Requirement.name = '/IGNORE'
Requirement.description = '/IGNORE'
-- Bind the Requirement entity to the parameter ^req. %^req =
Requirement%
-- Identify the Requirement /
assigning_identification(
id=@req_id,
id_class_name=@req_id_class_name,
id_ecl_id=@req_id_ecl_id,
org_id=@req_org_id,
org_id_class_name=@req_org_id_class_name,
org_id_ecl_id=@req_org_id_ecl_id,
items=^req)/
-- Requirement_version Requirement_version-- Mark the Requirement_version entity as referable when this template -- is used by binding it to the reference parameter ^req_ver %^req_ver =
Requirement_version%
Requirement_version.id = '/IGNORE'
Requirement_version.description = '/IGNORE'
-- Relate the Requirement_version to the Requirement Requirement_version.of_product ->
Requirement-- Identify the Requirement_version /
assigning_identification(
id=@req_ver_id,
id_class_name=@req_ver_id_class_name,
id_ecl_id=@req_ver_id_ecl_id,
org_id=@req_ver_org_id,
org_id_class_name=@req_ver_org_id_class_name,
org_id_ecl_id=@req_ver_org_id_ecl_id,
items=^req_ver)/
-- Requirement_view_definition-- Mark the Requirement_view_definition entity as referable -- when this template is used by binding it to the reference -- parameter ^req_view %^req_view =
Requirement_view_definition%
Requirement_view_definition.id = '/IGNORE'
Requirement_view_definition.name = '/IGNORE'
Requirement_view_definition.additional_characterization = '/IGNORE'
-- Relate the Requirement_version to the Requirement Requirement_view_definition.defined_version ->
Requirement_version-- View_definition_context-- Mark the View_definition_context entity as referable when this -- template is used by binding it to the reference parameter ^contxt %^contxt =
View_definition_context%
-- Ignore the attributes View_definition_context.application_domain = '/IGNORE'
View_definition_context.life_cycle_stage = '/IGNORE'
View_definition_context.description = '/IGNORE'
-- provide the application domain of the view definition by classification /
assigning_reference_data(
items=^contxt,
class_name=@domain,
ecl_id=@domain_ecl_id)/
-- provide the life cycle stage of the view definition by classification /
assigning_reference_data(
items=^contxt,
class_name=@life_cycle_stage,
ecl_id=@life_cycle_stage_ecl_id)/
-- Relate the Requirement_view_definition to the View_definition_context Requirement_view_definition.initial_context ->
View_definition_context
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
3
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/representing_requirement(req_id='TR-3452', req_id_class_name='Requirement_idenitification_code', req_id_ecl_id='urn:plcs:rdl:std', req_org_id='Bicycle Inc.', req_org_id_class_name='Organization_name', req_org_id_ecl_id='urn:plcs:rdl:std', req_ver_id='1', req_ver_id_class_name='Progression_idenitification_code', req_ver_id_ecl_id='urn:plcs:rdl:std', req_ver_org_id='Bicycle Inc.', req_ver_org_id_class_name='Organization_name', req_ver_org_id_ecl_id='urn:plcs:rdl:std', domain='Logistics_support_analysis', domain_ecl_id='urn:plcs:rdl:sample', life_cycle_stage='Development_stage', life_cycle_stage_ecl_id='urn:plcs:rdl:std')/
(an illustration of the consolidated representing_requirement template is shown in
Figure
4 below.)
Figure 3 — Entities instantiated by representing_requirement template
The instance model in STEP ASCII exchange file format (ISO 10303 Part
21 syntax) is:
#1 = REQUIREMENT('/IGNORE','/IGNORE','/IGNORE');
#2 = REQUIREMENT_VERSION('/IGNORE','/IGNORE',#1);
#3 = REQUIREMENT_VIEW_DEFINITION('/IGNORE','/IGNORE','/IGNORE',#4,(),#2);
#4 = VIEW_DEFINITION_CONTEXT('/IGNORE','/IGNORE','/IGNORE');
#6 = IDENTIFICATION_ASSIGNMENT('TR-3452','/IGNORE','/IGNORE',(#1));
#8 = CLASSIFICATION_ASSIGNMENT(#9,(#6),'/IGNORE');
#9 = EXTERNAL_CLASS('/NULL','Requirement_idenitification_code','/IGNORE',#10);
#10 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std','/IGNORE');
#13 = ORGANIZATION('/IGNORE','/IGNORE');
#15 = IDENTIFICATION_ASSIGNMENT('Bicycle Inc.','/IGNORE','/IGNORE',(#13));
#17 = CLASSIFICATION_ASSIGNMENT(#18,(#15),'/IGNORE');
#18 = EXTERNAL_CLASS('/NULL','Organization_name','/IGNORE',#19);
#19 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std','/IGNORE');
#20 = ORGANIZATION_OR_PERSON_IN_ORGANIZATION_ASSIGNMENT(#13,'/IGNORE',(#6,#26));
#22 = CLASSIFICATION_ASSIGNMENT(#23,(#20),'/IGNORE');
#23 = EXTERNAL_CLASS('/NULL','Owner_of','/IGNORE',#10);
#26 = IDENTIFICATION_ASSIGNMENT('1','/IGNORE','/IGNORE',(#2));
#28 = CLASSIFICATION_ASSIGNMENT(#29,(#26),'/IGNORE');
#29 = EXTERNAL_CLASS('/NULL','Progression_idenitification_code','/IGNORE',#10);
#46 = CLASSIFICATION_ASSIGNMENT(#47,(#4),'/IGNORE');
#47 = EXTERNAL_CLASS('/NULL','Logistics_support_analysis','/IGNORE',#48);
#48 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:sample','/IGNORE');
#50 = CLASSIFICATION_ASSIGNMENT(#51,(#4),'/IGNORE');
#51 = EXTERNAL_CLASS('/NULL','Development_stage','/IGNORE',#10);
The instance diagram in
Figure
4
shows the graphic symbol for the template that is to be
used in other instance diagrams. The example template is:
/representing_requirement(req_id='TR-3452', req_id_class_name='Requirement_idenitification_code', req_id_ecl_id='urn:plcs:rdl:std', req_org_id='Bicycle Inc.', req_org_id_class_name='Organization_name', req_org_id_ecl_id='urn:plcs:rdl:std', req_ver_id='1', req_ver_id_class_name='Progression_idenitification_code', req_ver_id_ecl_id='urn:plcs:rdl:std', req_ver_org_id='Bicycle Inc.', req_ver_org_id_class_name='Organization_name', req_ver_org_id_ecl_id='urn:plcs:rdl:std', domain='Logistics_support_analysis', domain_ecl_id='urn:plcs:rdl:sample', life_cycle_stage='Development_stage', life_cycle_stage_ecl_id='urn:plcs:rdl:std')/
Figure 4 — Instantiation of representing_requirement template
No common characterizations of the template
representing_requirement
have been identified. However, the ISO 10303-239 EXPRESS model
may enable other assignments to the entities instantiated by the template.
This section specifies the template assigning_requirements.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
This template describes the assignment of requirements data to material to which those requirements relate.
The EXPRESS-G diagram in
Figure
shows the templates and EXPRESS entities that are required
to represent the template
"assigning_requirements".
The text highlighted in blue shows the template parameters.
Figure 1 — Assigning requirement data (EXPRESS-G diagram)
The graphic for the template to be used in other EXPRESS-G diagrams
is shown in Figure
below.
Figure 2 — Assigning requirement data (condensed EXPRESS-G diagram)
The following input parameters are defined for this template:
The identifier assigned to a requirement.
The classification of the identifier assigned to a requirement.
The following classes and their sub-classes can be used:
The identifier assigned to an organization that assigns an identifier to a requirement.
The identifier assigned to a requirement version.
The classification of the identifier assigned to a requirement version.
The following classes and their sub-classes can be used:
The identifier assigned to an organization that assigns an identifier to a requirement version.
The identifier assigned to a requirement view definition.
The classification of the identifier assigned to a requirement view definition.
The following classes and their sub-classes can be used:
classifications: [Requirement_view_definition_identification_code]
Error RDL1: The class Requirement_view_definition_identification_code does not exist in RDL at urn urn:plcs:rdl:std. Check
the dexlib/data/refdata/rdl_index.xml
The identifier assigned to an organization that assigns an identifier to a requirement view definition.
The following classes and their sub-classes can be used:
The following classes and their sub-classes can be used:
The items to which a requirement is assigned.
The following reference parameters are defined for this template:
Allow the
Requirement
entity instantiated in this path to be referenced when this template is used.
Note: The
Requirement
entity can be referenced in a template path by:
%^target = $assigning_requirements.req%
where
target
is the parameter to which the
Requirement
is bound.
Allow the
Requirement_version
entity instantiated in this path to be referenced when this template is used.
%^target = $assigning_requirements.req_ver%
%^target = $assigning_requirements.rvd%
%^target = $assigning_requirements.vdc%
Allow the
Requirement_assignment
entity instantiated in this path to be referenced when this template is used.
%^target = $assigning_requirements.req_asg%
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
-- Instantiate the Requirement entity. Requirement-- Bind the Requirement entity to the parameter ^req. %^req =
Requirement%
-- Identify the Requirement /
assigning_identification(
items=^req,
id=@req_id,
id_class_name=@req_id_class_name,
id_ecl_id=@req_id_ecl_id)/
-- Instantiate the Requirement_version entity and link it to Requirement.
^req <-
Requirement_version.of_product-- Bind the Requirement_version entity to the parameter ^req_ver. %^req_ver =
Requirement_version%
-- Identify the Requirement_version /
assigning_identification(
items=^req_ver,
id=@req_ver_id,
id_class_name=@req_ver_id_class_name,
id_ecl_id=@req_ver_id_ecl_id)/
-- Instantiate the View_definition_context. View_definition_contextView_definition_context.application_domain = '/IGNORE'
View_definition_context.life_cycle_stage = '/IGNORE'
View_definition_context.description = '/IGNORE'
-- Bind the View_definition_context entity to the parameter ^vdc. %^vdc =
View_definition_context%
-- Classify the View_definition_context /
assigning_reference_data(
items=^vdc,
class_name=@vdc_ad_class_name,
ecl_id=@vdc_ad_ecl_id)/
/
assigning_reference_data(
items=^vdc,
class_name=@vdc_lcs_class_name,
ecl_id=@vdc_lcs_ecl_id)/
-- Instantiate the Requirement_view_definition entity and link it to Requirement_version and to View_definition_context.
^req_ver <-
Requirement_view_definition.defined_version
^vdc <-
Requirement_view_definition.initial_context-- Bind the Requirement_view_definition entity to the parameter ^rvd. %^rvd =
Requirement_view_definition%
-- Identify the Requirement_view_definition. /
assigning_identification(
items=^rvd,
id=@rvd_id,
id_class_name=@rvd_id_class_name,
id_ecl_id=@rvd_id_ecl_id)/
-- Instantiate the Requirement_assignment entity and link it to Requirement_view_definition.
^rvd <-
Requirement_assignment.assigned_requirementRequirement_assignment.assigned_to ->
@itemsRequirement_assignment.id = '/IGNORE'
Requirement_assignment.description = '/IGNORE'
-- Bind the Requirement_assignment entity to the parameter ^req_ass. %^req_ass =
Requirement_assignment%
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/assigning_requirements(req_id='1', req_ver_id='2', rvd_id='3', req_id_class_name='Requirement_identification_code', req_ver_id_class_name='Progression_identification_code', rvd_id_class_name='Requirement_view_definition_identification_code', req_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_class_name='Requirement_category', req_ver_class_name='Requirement_version_category', rvd_class_name='Requirement_view_definition_category', req_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_ecl_id='http://www.plcsinc.org/plcs-proposed')/
(an illustration of the consolidated assigning_requirements template is shown in
Figure
below.)
Figure 3 — Assigning requirement data to a part version (EXPRESS-I diagram)
The instance diagram in
Figure
shows the graphic symbol for the template that is to be
used in other instance diagrams. The example template is:
/assigning_requirements(req_id='1', req_ver_id='2', rvd_id='3', req_id_class_name='Requirement_identification_code', req_ver_id_class_name='Progression_identification_code', rvd_id_class_name='Requirement_view_definition_identification_code', req_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_class_name='Requirement_category', req_ver_class_name='Requirement_version_category', rvd_class_name='Requirement_view_definition_category', req_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_ecl_id='http://www.plcsinc.org/plcs-proposed')/
Figure 4 — Assigning requirement data to a part version (condensed EXPRESS-I diagram)
No common characterizations of the template
assigning_requirements
have been identified. However, the ISO 10303-239 EXPRESS model
may enable other assignments to the entities instantiated by the template.
This section specifies the template assigning_requirement.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
This template describes how to represent the assignment of a requirement to an entity within a data set.
The meaning of the assignment is provided by classification.
The EXPRESS-G diagram in
Figure
1
shows the templates and EXPRESS entities that are required
to represent the template
"assigning_requirement".
The text highlighted in blue shows the template parameters.
Figure 1 — An EXPRESS-G representation of the Information model for assigning_requirement
The graphic for the template to be used in other EXPRESS-G diagrams
is shown in Figure
2
below.
Figure 2 — The graphical representation of the assigning_requirement template
The following input parameters are defined for this template:
The name of the class
(
External_class)
being used to determine role of the requirement assignment.
The following classes and their sub-classes can be used:
ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The requirement being assigned.
The entity to which the requirement
is assigned.
The following reference parameters are defined for this template:
Allow the
Requirement_assignment
entity instantiated in this path to be referenced when this template is used.
%^target = $assigning_requirement.req_asg%
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
3
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/assigning_requirement(assigned_to='#1', assigned_requirement='#2', class_name='Defined_for', ecl_id='urn:plcs:rdl:sample')/
(an illustration of the consolidated assigning_requirement template is shown in
Figure
4 below.)
Figure 3 — Entities instantiated by assigning_requirement template
The instance model in STEP ASCII exchange file format (ISO 10303 Part
21 syntax) is:
#1 = PART_VERSION('/IGNORE','/IGNORE',$);
#2 = REQUIREMENT_VIEW_DEFINITION('/IGNORE','/IGNORE','/IGNORE',$,(),$);
#3 = REQUIREMENT_ASSIGNMENT('/IGNORE','/IGNORE',#2,#1);
#5 = CLASSIFICATION_ASSIGNMENT(#6,(#3),'/IGNORE');
#6 = EXTERNAL_CLASS('/NULL','Defined_for','/IGNORE',#7);
#7 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:sample','/IGNORE');
The instance diagram in
Figure
4
shows the graphic symbol for the template that is to be
used in other instance diagrams. The example template is:
/assigning_requirement(assigned_to='#1', assigned_requirement='#2', class_name='Defined_for', ecl_id='urn:plcs:rdl:sample')/
Figure 4 — Instantiation of assigning_requirement template
No common characterizations of the template
assigning_requirement
have been identified. However, the ISO 10303-239 EXPRESS model
may enable other assignments to the entities instantiated by the template.
This section specifies the template relating_requirement_versions.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
This template describes the creation of relationships between different versions of requirements.
The EXPRESS-G diagram in
Figure
1
shows the templates and EXPRESS entities that are required
to represent the template
"relating_requirement_versions".
The text highlighted in blue shows the template parameters.
Figure 1 — Relating requirement versions (EXPRESS-G diagram)
The graphic for the template to be used in other EXPRESS-G diagrams
is shown in Figure
2
below.
Figure 2 — Relating requirement versions (condensed EXPRESS-G diagram)
The following input parameters are defined for this template:
The preceding version of the requirement.
The succeding version of the requirement.
rel_type (Default=Successor_of,Type='CLASS')
The type of relationship between the versions.
The following classes and their sub-classes can be used:
The following reference parameters are defined for this template:
%^target = $relating_requirement_versions.req_ver_rel%
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
3
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/relating_requirement_versions(related_version='#7', relating_version='#8', rel_type='Successor_of', rel_type_ecl_id='urn:plcs:rdl:sample')/
(an illustration of the consolidated relating_requirement_versions template is shown in
Figure
4 below.)
Figure 3 — Entities instantiated by template relating_requirement_versions (EXPRESS-I diagram)
The instance diagram in
Figure
4
shows the graphic symbol for the template that is to be
used in other instance diagrams. The example template is:
/relating_requirement_versions(related_version='#7', relating_version='#8', rel_type='Successor_of', rel_type_ecl_id='urn:plcs:rdl:sample')/
Figure 4 — Instantiation of template relating_requirement_versions
No common characterizations of the template
relating_requirement_versions
have been identified. However, the ISO 10303-239 EXPRESS model
may enable other assignments to the entities instantiated by the template.
This section specifies the template sourcing_requirements.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
This template describes the linking of requirements to their individual sources.
The EXPRESS-G diagram in
Figure
shows the templates and EXPRESS entities that are required
to represent the template
"sourcing_requirements".
The text highlighted in blue shows the template parameters.
Error model_diag_1: Either delete A DESCRIPTION OF THE DIAGRAM or provide a description
EXAMPLE
Figure 14 — Sourcing requirements (EXPRESS-G diagram)
The graphic for the template to be used in other EXPRESS-G diagrams
is shown in Figure
below.
Error model_diag_1: Either delete A DESCRIPTION OF THE DIAGRAM or provide a description
EXAMPLE
Figure 15 — Sourcing requirements (condensed EXPRESS-G diagram)
The following input parameters are defined for this template:
The identifier assigned to a requirement.
The classification of the identifier assigned to a requirement.
The following classes and their sub-classes can be used:
The identifier assigned to an organization that assigns an identifier to a requirement.
The identifier assigned to a requirement version.
The classification of the identifier assigned to a requirement version.
The following classes and their sub-classes can be used:
The identifier assigned to an organization that assigns an identifier to a requirement version.
The identifier assigned to a requirement view definition.
The classification of the identifier assigned to a requirement view definition.
The following classes and their sub-classes can be used:
classifications: [Requirement_view_definition_identification_code]
Error RDL1: The class Requirement_view_definition_identification_code does not exist in RDL at urn urn:plcs:rdl:std. Check
the dexlib/data/refdata/rdl_index.xml
The identifier assigned to an organization that assigns an identifier to a requirement view definition.
The following classes and their sub-classes can be used:
The following classes and their sub-classes can be used:
The following reference parameters are defined for this template:
Allow the
Requirement
entity instantiated in this path to be referenced when this template is used.
Note: The
Requirement
entity can be referenced in a template path by:
%^target = $sourcing_requirements.req%
where
target
is the parameter to which the
Requirement
is bound.
Allow the
Requirement_version
entity instantiated in this path to be referenced when this template is used.
%^target = $sourcing_requirements.req_ver%
%^target = $sourcing_requirements.rvd%
%^target = $sourcing_requirements.vdc%
Allow the
Requirement_source
entity instantiated in this path to be referenced when this template is used.
%^target = $sourcing_requirements.req_srce%
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
-- Instantiate a Requirement entity. Requirement-- Bind the Requirement entity to the parameter ^req. %^req =
Requirement%
-- Identify the Requirement /
assigning_identification(
items=^req,
id=@req_id,
id_class_name=@req_id_class_name,
id_ecl_id=@req_id_ecl_id)/
-- Instantiate a Requirement_version entity and link it to Requirement.
^req <-
Requirement_version.of_product-- Bind the Requirement_version entity to the parameter ^req_ver. %^req_ver =
Requirement_version%
-- Identify the Requirement_version /
assigning_identification(
items=^req_ver,
id=@req_ver_id,
id_class_name=@req_ver_id_class_name,
id_ecl_id=@req_ver_id_ecl_id)/
-- Instantiate the View_definition_context. View_definition_contextView_definition_context.application_domain = '/IGNORE'
View_definition_context.life_cycle_stage = '/IGNORE'
View_definition_context.description = '/IGNORE'
-- Bind the View_definition_context entity to the parameter ^vdc. %^vdc =
View_definition_context%
-- Classify the View_definition_context /
assigning_reference_data(
items=^vdc,
class_name=@vdc_ad_class_name,
ecl_id=@vdc_ad_ecl_id)/
/
assigning_reference_data(
items=^vdc,
class_name=@vdc_lcs_class_name,
ecl_id=@vdc_lcs_ecl_id)/
-- Instantiate a Requirement_view_definition entity and link it to a Requirement_version and to the View_definition_context.
^req_ver <-
Requirement_view_definition.defined_version
^vdc <-
Requirement_view_definition.initial_context-- Bind the Requirement_view_definition entity to the parameter ^rvd. %^rvd =
Requirement_view_definition%
-- Identify the Requirement_view_definition. /
assigning_identification(
items=^rvd,
id=@rvd_id,
id_class_name=@rvd_id_class_name,
id_ecl_id=@rvd_id_ecl_id)/
-- Instantiate a Requirement_source entity and link it to the Requirement_view_definition.
^rvd <-
Requirement_source.sourced_requirementRequirement_source.id = '/IGNORE'
Requirement_source.description = '/IGNORE'
-- Bind the Requirement_source entity to the parameter ^req_srce %^req_srce =
Requirement_source%
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/sourcing_requirements(req_id='1', req_ver_id='2', rvd_id='3', req_id_class_name='Requirement_identification_code', req_ver_id_class_name='Progression_identification_code', rvd_id_class_name='Requirement_view_definition_identification_code', req_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_class_name='Requirement_category', req_ver_class_name='Requirement_version_category', rvd_class_name='Requirement_view_definition_category', req_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_ecl_id='http://www.plcsinc.org/plcs-proposed')/
(an illustration of the consolidated sourcing_requirements template is shown in
Figure
below.)
Figure 16 — Sourcing requirements (EXPRESS-I diagram)
The instance diagram in
Figure
shows the graphic symbol for the template that is to be
used in other instance diagrams. The example template is:
/sourcing_requirements(req_id='1', req_ver_id='2', rvd_id='3', req_id_class_name='Requirement_identification_code', req_ver_id_class_name='Progression_identification_code', rvd_id_class_name='Requirement_view_definition_identification_code', req_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_class_name='Requirement_category', req_ver_class_name='Requirement_version_category', rvd_class_name='Requirement_view_definition_category', req_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_ecl_id='http://www.plcsinc.org/plcs-proposed')/
Figure 17 — Sourcing requirements (condensed EXPRESS-I diagram)
No common characterizations of the template
sourcing_requirements
have been identified. However, the ISO 10303-239 EXPRESS model
may enable other assignments to the entities instantiated by the template.
This section specifies the template relating_requirements.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
This template describes the creation of relationships between requirements.
The EXPRESS-G diagram in
Figure
shows the templates and EXPRESS entities that are required
to represent the template
"relating_requirements".
The text highlighted in blue shows the template parameters.
Figure 18 — Relating requirements (EXPRESS-G diagram)
The graphic for the template to be used in other EXPRESS-G diagrams
is shown in Figure
below.
Figure 19 — Sourcing requirements (condensed EXPRESS-G diagram)
The following input parameters are defined for this template:
The identifier assigned to a requirement.
The classification of the identifier assigned to a requirement.
The following classes and their sub-classes can be used:
The identifier assigned to an organization that assigns an identifier to a requirement.
The identifier assigned to a requirement version.
The classification of the identifier assigned to a requirement version.
The following classes and their sub-classes can be used:
The identifier assigned to an organization that assigns an identifier to a requirement version.
The identifier assigned to a requirement view definition.
The classification of the identifier assigned to a requirement view definition.
The following classes and their sub-classes can be used:
classifications: [Requirement_view_definition_identification_code]
Error RDL1: The class Requirement_view_definition_identification_code does not exist in RDL at urn urn:plcs:rdl:std. Check
the dexlib/data/refdata/rdl_index.xml
The identifier assigned to an organization that assigns an identifier to a requirement view definition.
The following classes and their sub-classes can be used:
The following classes and their sub-classes can be used:
The requirement_view_definition corresponding to the requirement collection member.
The requirement_view_definition corresponding to the requirement collection.
The following reference parameters are defined for this template:
Allow the
Requirement
entity instantiated in this path to be referenced when this template is used.
Note: The
Requirement
entity can be referenced in a template path by:
%^target = $relating_requirements.req%
where
target
is the parameter to which the
Requirement
is bound.
Allow the
Requirement_version
entity instantiated in this path to be referenced when this template is used.
%^target = $relating_requirements.req_ver%
%^target = $relating_requirements.rvd%
%^target = $relating_requirements.vdc%
%^target = $relating_requirements.req_col_rel%
Allow the
Tracing_relationship
entity instantiated in this path to be referenced when this template is used.
%^target = $relating_requirements.trc_rel%
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
-- Instantiate a Requirement entity. Requirement-- Bind the Requirement entity to the parameter ^req. %^req =
Requirement%
-- Identify the Requirement /
assigning_identification(
items=^req,
id=@req_id,
id_class_name=@req_id_class_name,
id_ecl_id=@req_id_ecl_id)/
-- Instantiate a Requirement_version entity and link it to Requirement.
^req <-
Requirement_version.of_product-- Bind the Requirement_version entity to the parameter ^req_ver. %^req_ver =
Requirement_version%
-- Identify the Requirement_version /
assigning_identification(
items=^req_ver,
id=@req_ver_id,
id_class_name=@req_ver_id_class_name,
id_ecl_id=@req_ver_id_ecl_id)/
-- Instantiate the View_definition_context. View_definition_contextView_definition_context.application_domain = '/IGNORE'
View_definition_context.life_cycle_stage = '/IGNORE'
View_definition_context.description = '/IGNORE'
-- Bind the View_definition_context entity to the parameter ^vdc. %^vdc =
View_definition_context%
-- Classify the View_definition_context /
assigning_reference_data(
items=^vdc,
class_name=@vdc_ad_class_name,
ecl_id=@vdc_ad_ecl_id)/
/
assigning_reference_data(
items=^vdc,
class_name=@vdc_lcs_class_name,
ecl_id=@vdc_lcs_ecl_id)/
-- Instantiate a Requirement_view_definition entity and link it to a Requirement_version and to the View_definition_context.
^req_ver <-
Requirement_view_definition.defined_version
^vdc <-
Requirement_view_definition.initial_context-- Bind the Requirement_view_definition entity to the parameter ^rvd. %^rvd =
Requirement_view_definition%
-- Identify the Requirement_view_definition. /
assigning_identification(
items=^rvd,
id=@rvd_id,
id_class_name=@rvd_id_class_name,
id_ecl_id=@rvd_id_ecl_id)/
-- Instantiate a Requirement_collection_relationship entity and link it to two Requirement_view_definition objects.
^rvd <-
Requirement_collection_relationship.collection
^rvd <-
Requirement_collection_relationship.memberRequirement_collection_relationship.id = '/IGNORE'
Requirement_collection_relationship.relation_type = '/IGNORE'
Requirement_collection_relationship.description = '/IGNORE'
-- Bind the Requirement_collection_relationship entity to the parameter ^req_col_rel %^req_col_rel =
Requirement_collection_relationship%
-- Instantiate a Tracing_relationship entity and link it to two Requirement_view_definition objects.
^rvd <-
Tracing_relationship.traces_from
^rvd <-
Tracing_relationship.traces_toTracing_relationship.id = '/IGNORE'
Tracing_relationship.relation_type = '/IGNORE'
Tracing_relationship.description = '/IGNORE'
-- Bind the Tracing_relationship entity to the parameter ^trc_rel %^trc_rel =
Tracing_relationship%
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/relating_requirements(req_id='1', req_ver_id='2', rvd_id='3', req_id_class_name='Requirement_identification_code', req_ver_id_class_name='Progression_identification_code', rvd_id_class_name='Requirement_view_definition_identification_code', req_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_class_name='Requirement_category', req_ver_class_name='Requirement_version_category', rvd_class_name='Requirement_view_definition_category', req_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_ecl_id='http://www.plcsinc.org/plcs-proposed')/
(an illustration of the consolidated relating_requirements template is shown in
Figure
below.)
Figure 20 — Relating requirements (EXPRESS-I diagram)
The instance diagram in
Figure
shows the graphic symbol for the template that is to be
used in other instance diagrams. The example template is:
/relating_requirements(req_id='1', req_ver_id='2', rvd_id='3', req_id_class_name='Requirement_identification_code', req_ver_id_class_name='Progression_identification_code', rvd_id_class_name='Requirement_view_definition_identification_code', req_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ver_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_org_id_ecl_id='http://www.plcsinc.org/plcs-proposed', req_class_name='Requirement_category', req_ver_class_name='Requirement_version_category', rvd_class_name='Requirement_view_definition_category', req_ecl_id='http://www.plcsinc.org/plcs-proposed', req_ecl_id='http://www.plcsinc.org/plcs-proposed', rvd_ecl_id='http://www.plcsinc.org/plcs-proposed')/
Figure 21 — Relating requirements (condensed EXPRESS-I diagram)
No common characterizations of the template
relating_requirements
have been identified. However, the ISO 10303-239 EXPRESS model
may enable other assignments to the entities instantiated by the template.