Capability (C046):— representing_variance Date: 2007/06/22 12:22:11
Revision: 1.30

Business overview

This section provides a business level overview of this capability.

This capability represents a record of where the Product or Activity varies from the original intent and authorization and conditions for continued use has been granted.

This is illustrated in Figure 1 which shows conceptually how the authorization is represented.



Figure 1 —  Representation of a concession

Figure 1 —  Representation of a concession

Information model overview

This section provides an overview of the information model that supports this capability.

Information model overview

The EXPRESS-G for the activity model is shown in Figure 2 below and explained in the following sections.



Figure 2 —  EXPRESS-G for variance

Figure 2 —  EXPRESS-G for variance

Representing Concessions

A concession is represented by an Approval that is assigned (using Approval_assignment) to the subject of the concession. Typically the subject is a Product_as_realized or a planned activity (Activity). The Approval and Approval_assignment are classified as "Concession" (urn:plcs:rdl:std:Concession) (Classification and reference data is described in C010: assigning_reference_data). The Approval representing the concession will have a status associated with it indicating whether the concession has been approved or not. See C019: assigning_approvals for details on assigning approvals. The possible approval status are represented by the following classes stored as reference data:

An example of a concession is shown in Figure 3. This shows part (A) which should have a 1mm hole in it. The operator made an error and a 1.1 mm hole is the result. This is noticed and a concession is raised to check whether this can be used. The concession is approved with no limitations. The concession is represented by Approval (#1) and Approval_assignment (#2), and is granted against the Product_as_realized (#9).

NOTE    Only the main entities required for representing a concession are shown in order to simplify the diagram.



Figure 3 —  An approved concession

Figure 3 —  An approved concession

The basic template for concessions which can represent the scenario above can be found in assigning_concession and is illustrated from Figure 
[warning:]Error Fig 2: There is no figure with id asg_conc_tmp_expnd.png
through to Figure 
[warning:]Error Fig 2: There is no figure with id asg_concession.png
.

NOTE    An expansion of the template to most of the entity instances can be seen in Figure 
[warning:]Error Fig 2: There is no figure with id asg_conc_inst_all.png
.

Reasons for Concessions

The underlying reasons for the concession or waiver being granted may be based on performance measurements made on the product or may be an observed state of the product. These reasons are represented by a Justification that is assigned to the Approval by a Justification_assignment. The Justification_assignment is classified as a "Concession justification" (urn:plcs:rdl:std:Concession justification), or other appropriate sub-class of "Justification assignment role" (urn:plcs:rdl:std:Justification assignment role). The reasons for the waiver, such as the observed state or performance measure are recorded by assigning them to the Justification by a Justification_support_assignment which is also classified as a "Concession justification" (urn:plcs:rdl:std:Concession justification), or other appropriate sub-class.

The basic template for assigning justifications which can represent the scenario above can be found in assigning_supported_justification
[warning:]Error T1: DEX assigning_supported_justification not in Dexlib
and is illustrated in Figure 
[warning:]Error Fig 2: There is no figure with id asg_just_ent_inst1.png
, Figure 
[warning:]Error Fig 2: There is no figure with id asg_just_ent_inst_char.png
, and Figure 
[warning:]Error Fig 2: There is no figure with id asg_just_tmp_inst1.png
.

The reasons for a concession may also be recorded in documents, in which case the document (Document) is assigned to the Approval representing the concession by a Document_assignment which is classified as a [Documented_concession]
[warning:]Error RDL1: The class Documented_concession does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
. There may be more than one document describing the "Concession" (urn:plcs:rdl:std:Concession). These documents may also be related together. Details of representing documents is provided in C005: representing_documents. The assignment of the document can be achieved by use of the template assigning_document and is an optional characterization of the assigning_concession template - and is illustrated in Figure 
[warning:]Error Fig 2: There is no figure with id asg_conc_inst.png
.

An instance diagram showing a concession and the reasons for the concession is shown in Figure 4. The concession is represented by Approval (#1) and Approval_assignment (#2), and is granted against the Product_as_realized (#9).

The reason for the concession being granted is that the part (Product_as_realized (#1)) has a 1.1 mm hole in it which is in tolerance. (The hole is represented by an Assigned_property (#11). Details of representing product properties are provided in C076: assigning_product_properties). This provides justification for the concession. This is represented by the Justification (#12) instance being linked to the Assigned_property (#11) by the instance Justification_support_assignment (#14). The Justification (#12) is then assigned to the approval representing the concession by Justification_assignment (#13).

In addition to or an alternative to using Justification (#12) the reasons for the concession can also be recorded in a document (Document (#17)) which is assigned to the Approval (#1) representing the concession by the Document_assignment (#16). The assignment of the document in this case shall be of type [Documented_justification]
[warning:]Error RDL1: The class Documented_justification does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
to distinguish it from other documents.

NOTE    Only the main entities required for representing a concession are shown in order to simplify the diagram.



Figure 4 —  Concession and reasons for the concession

Figure 4 —  Concession and reasons for the concession

The template for this can be found in Figure 
[warning:]Error Fig 2: There is no figure with id asg_conc
.

Conditional concessions

In many cases, the concession will be granted with an associated restriction for use. For example, a part (B) should have a 1mm hole in it. The operator made an error and a 1.1 mm hole is the result. This is noticed and a concession is raised to check whether this can be used. The concession is approved, however with the limitation that it can only be assembled into an aircraft that will not fly in conditions above 25 degrees C.

The restriction is represented either by Document and/or by using Conditions.

Documented conditional concessions

When a document is used to record the condition under which the concession is given, the document (Document) is assigned to the Approval representing the concession by a Document_assignment which is classified as a [Documented_condition]
[warning:]Error RDL1: The class Documented_condition does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
to distinguish it from others. Details of representing documents is provided in C005: representing_documents.

An example showing the use of a document to represent the condition of usage as described for part (B) above is shown in Figure 5. This shows Part (B) (Product_as_realized (#9)). fitted to an aircraft. Product_as_realized (#23). The concession is represented by Approval (#1) and assigned to / against Part B by Approval_assignment (#2). This concession places a restriction on the aircraft to which the part is fitted, so the Approval (#1) and assigned to / against Part B by Approval_assignment (#2). This restriction is described in the Document (#26) which is assigned to the concession (Approval (#1)) by the Document_assignment (#27). The Document (#26) should be classified as a [Documented_condition]
[warning:]Error RDL1: The class Documented_condition does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
.

The assignment of the document can be achieved by use of the template assigning_document and is an optional characterization of the assigning_concession template - and is illustrated in Figure 
[warning:]Error Fig 2: There is no figure with id asg_conc_inst.png
(modifying the classification in the example as required).

NOTE    Only the main entities required for representing a concession are shown in order to simplify the diagram.



Figure 5 —  Documented conditional concession on part and assembly

Figure 5 —  Documented conditional concession on part and assembly

Explicit conditional concessions

When the condition under which the concession is given is to be made explicit, a Condition is assigned to the Approval representing the concession by a Condition_assignment. The Condition_assignment is classified as a "Concession condition" (urn:plcs:rdl:std:Concession condition). The inputs to the condition are represented by Condition_parameter. The use of condition is described in C026: representing_condition.

In other words, the Condition is used to represent the limitations, which if met, mean that the concession is approved.

This is illustrated in Figure 6 which shows Part (B) (Product_as_realized (#7)) fitted to an aircraft Product_as_realized (#23). The concession is represented by Approval (#1) and assigned to / against Part B by Approval_assignment (#2). This concession places a restriction on the aircraft to which the part is fitted, so the Approval (#1) is assigned to / against Part B by Approval_assignment (#24).

The concession is granted if the aircraft to which part (B) is fitted will not fly in conditions above 25 degrees C. This conditional concession is represented by Condition (#28) assigned to the concession, Approval (#1), by the Condition_assignment (#29). In other words, the concession is approved if the condition is met. The parameter of the concession is the operating temperature of the aircraft represented by the Assigned_property (#31). If this is below the 25 degrees C then the concession is granted.

The basic template for assigning conditions which can represent the scenario above can be found in assigning_condition and is illustrated in Figure 
[warning:]Error Fig 2: There is no figure with id basic_cond_tmp_ents.png
toFigure 
[warning:]Error Fig 2: There is no figure with id basic_cond_tmp_insts.png
.

NOTE    The expression "below the 25 degrees C" is represented as the description attribute of a Document attached to an instance of Condition (#28). I.e. in a non computer interpretable form. This is illustrated as part of the template arrangement depicted in Figure 
[warning:]Error Fig 2: There is no figure with id basic_cond_tmp_ents.png
and Figure 
[warning:]Error Fig 2: There is no figure with id basic_cond_ent_insts.png
.



Figure 6 —  Concession on part and assembly

Figure 6 —  Concession on part and assembly

Characterization of variance

Identification

The concession, represented by an Approval, is identified by assigning it an identifier through the use of Identification_assignment.

NOTE    Identification is described in C001: assigning_identifiers.

Assigning a Person or Organization

The person or organization who authorized the concession is represented by using an Approving_person_organization to assign a Organization or Person_in_organization to the Approval representing the concession

Assigning Dates

The date when the concession was granted is represented by the date on the actual_date attribute on the Approval.

NOTE    The representation of dates is described the capability C036: assigning_date_time.

Limiting duration of concession by effectivity

The time period over which a concession is effective can be set by the assigning a Dated_effectivity to the Approval representing the concession, by using an Effectivity_assignment.

NOTE    The use of effectivity is described in the capability: C006: assigning_effectivity.

Capability templates

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.

Template: assigning_concession (Short name: asg_conc)

This section specifies the template assigning_concession.

NOTE  An explanation of a template and the associated instantiation path is provided in the Template overview section.

Description
This template describes how to assign a basic concession. A concession, at its simplest, is a specific type of Approval. This template effectively defines this through specifying the concession-class as the type of Approval. It uses and is dependant on the assigning_approval template. It allows sub-classes of concession to also be specified. It is assumed that, in most cases. the authorization is provided by a Person, rather than an Organization and that the Person authorizing the approval has the authority to do so. The Organization which contains the Person is represented. It does allow the authorization to be provided by an Organization.
Model diagrams
The EXPRESS-G diagram in Figure 1 shows the templates and EXPRESS entities that are required to represent the template "assigning_concession". The text highlighted in blue shows the template parameters.


Figure 1 —  An EXPRESS-G representation of the Information model for Assigning_concession

Figure 1 —  An EXPRESS-G representation of the Information model for Assigning_concession

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_concession template

Figure 2 —  The graphical representation of the assigning_concession template

Input parameters
The following input parameters are defined for this template:
asn_role (Default=Concession,Type='CLASS')
the type of Approval_assignment
The following classes and their sub-classes can be used:
classifications: "Concession" (urn:plcs:rdl:std:Concession)
role_ecl_id (Default=urn:plcs:rdl:std,Type='URN', Optional)
The identifier of the External_class_library storing the definition of the class referenced by the parameter @asn_role.
status (Default=Not_yet_approved,Type='CLASS')
types of status allowed
The following classes and their sub-classes can be used:
classifications: "Approved" (urn:plcs:rdl:std:Approved), "Approved_with_concession" (urn:plcs:rdl:std:Approved_with_concession), "Rejected" (urn:plcs:rdl:std:Rejected), "Withdrawn" (urn:plcs:rdl:std:Withdrawn), "Not_yet_approved" (urn:plcs:rdl:std:Not_yet_approved)
status_ecl_id (Default=urn:plcs:rdl:std,Type='URN', Optional)
The identifier of the External_class_library storing the definition of the class referenced by the parameter @status.
date_cn (Type='CLASS')
The name of the class being used to classify the role date assignment, e.g. the start date.
The following classes and their sub-classes can be used:
classifications: "Date_actual" (urn:plcs:rdl:std:Date_actual)
date_ecl_id (Type='URN')
The id of the External_class_library in which the date class is defined.
year (Type='INTEGER')
Calendar_date year_component
month (Type='INTEGER')
Calendar_date month_component
day (Type='INTEGER')
Calendar_date day_component
items (Type= 'SELECT (approval_item)' )
The items to which the approval is assigned
person_org (Type= 'SELECT (organization_or_person_in_organization_select)' )
The person or organization responsible for the approval
Reference parameters
The following reference parameters are defined for this template:
approval(Type='ENTITY (Approval)')
Allow the Approval entity instantiated in this path to be referenced when this template is used.
Note: The Approval entity can be referenced in a template path by:
%^target = $assigning_concession.approval%
where target is the parameter to which the Approval is bound.
approval_assgn(Type='ENTITY (Approval_assignment)')
Allow the Approval_assignment entity instantiated in this path to be referenced when this template is used.
Note: The Approval_assignment entity can be referenced in a template path by:
%^target = $assigning_concession.approval_assgn%
where target is the parameter to which the Approval_assignment is bound.
Instantiation path
The instantiation path shown below specifies the entities that are to be instantiated by the template.
A description of templates and the syntax for the instantiation path is provided in the Reading Capability Templates help section.
-- Call Assigning_approval.
/assigning_approval(
    status=@status,
    status_ecl_id=@status_ecl_id,
    items=@items,
    person_org=@person_org)/

-- Get the approval instance from the template call
%^approval_assgn = $assigning_approval.approval_assgn%
%^approval = $assigning_approval.approval%

-- Assign Ref data to Approval
/assigning_reference_data(
    items=^approval_assgn,
    class_name=@asn_role,
    ecl_id=@role_ecl_id)/

-- Assign the date of concession
/assigning_time(
    date_class_name=@date_cn,
    date_ecl_id=@date_ecl_id,
    year=@year,
    month=@month,
    day=@day,
    hour='0',
    minute='0',
    second='0',
    sense='.EXACT.',
    hour_offset='0',
    minute_offset='0',
    items=^approval)/
Instance diagrams
The instance diagram in Figure  3 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/assigning_concession(asn_role='Concession', role_ecl_id='urn:plcs:rdl:std', status='Approved', status_ecl_id='urn:plcs:rdl:std', date_cn='Date_actual_creation', date_ecl_id='urn:plcs:rdl:std', year='2005', month='10', day='7', items='#9', person_org='#69')/
(an illustration of the consolidated assigning_concession template is shown in Figure 4 below.)
Note that the templates assigning_approval, assigning_time, and assigning_reference_data are used in the diagram. Note that either template representing_organization or templates representing_person_in_organization and assigning_identification must be present to make the approval complete. In this diagram, the assignment of an approving organization was done as follows:
@69 /representing_organization(org_id='Bike Rent Limited', org_id_class_name='Organization_name', org_id_ecl_id='urn:plcs:rdl:std')/


Figure 3 —  Entities instantiated by assigning_concession template

Figure 3 —  Entities instantiated by assigning_concession template

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_concession(asn_role='Concession', role_ecl_id='urn:plcs:rdl:std', status='Approved', status_ecl_id='urn:plcs:rdl:std', date_cn='Date_actual_creation', date_ecl_id='urn:plcs:rdl:std', year='2005', month='10', day='7', items='#9', person_org='#69')/


Figure 4 —  Instantiation of assigning_concession template

Figure 4 —  Instantiation of assigning_concession template

Characterizations
The following section details how the assigning_concession template can be optionally characterized by assigning other constructs to it. These are characterizations commonly applied to the template. The ISO 10303-239 EXPRESS model may enable other assignments to the entities instantiated by the template.
The EXPRESS-G diagram in Figure 5 shows the possible characterizations of the template "assigning_concession".


Figure 5 —  Characterizations for assigning_concession

Figure 5 —  Characterizations for assigning_concession

The following characterizations may apply:
Characterization Assigning dates

NOTE   this characterization is optional.

Dates can be associated with the concession, in a given role, by using the template assigning_time.

These are applied to the ^approval reference parameter. See Figure 5 for the an abstract view of this.

One date is commonly assigned to the template assigning_concession, namely the actual sign off date on which the concession approval was authorized.

Characterization Assigning identifers

NOTE   this characterization is optional.

Identifiers can be associated with the concession by using the template assigning_identification.

These are applied to the ^approval reference parameter. See Figure 5 for the an abstract view of this.

Characterization Assigning names or descriptions

NOTE   this characterization is optional.

Names or descriptions can be associated with the concession by using the template assigning_descriptor.

These are applied to the ^approval reference parameter. See Figure 5 for the an abstract view of this.

Characterization Assigning documents

NOTE   this characterization is optional.

Documents describing the reason for a "Concession" (urn:plcs:rdl:std:Concession) can be attached to an Approval by using the template assigning_document.

These are applied to the ^approval reference parameter. See Figure 5 for the an abstract view of this.

Characterization Assigning conditions of usage

NOTE   this characterization is optional.

Conditions of the usage of an item caused by the "Concession" (urn:plcs:rdl:std:Concession) can be attached to an Approval by using the template assigning_condition.

These are applied to the ^approval reference parameter. See Figure 5 for the an abstract view of this.

Characterization Assigning justification

NOTE   this characterization is optional.

Justifications for the "Concession" (urn:plcs:rdl:std:Concession) can be attached to an Approval by using the template assigning_justification for the justification.

These are applied to the ^approval reference parameter. See Figure 5 for the an abstract view of this.

Related capabilities

This capability "Representing a variance" is related to the following capabilities:

Dependent capabilities

This capability "Representing a variance" is dependent on the following capabilities:

Model reference data

The following classes of reference data are required for this capability:

Concession(urn:plcs:rdl:std:Concession)
A Concession is a class of Approval whose members represent a concession. A concession is the approval to perform an activity or use a product when there is some variance from the design. Note: a concession is typically limited to the delivery of a product that has non-conforming characteristics within specified limits for an agreed time or quantity of product.
[Documented_concession]
[warning:]Error RDL1: The class Documented_concession does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Documented_justification]
[warning:]Error RDL1: The class Documented_justification does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Documented_condition]
[warning:]Error RDL1: The class Documented_condition does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Documented_condition_evaluation]
[warning:]Error RDL1: The class Documented_condition_evaluation does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Justification_identification_code]
[warning:]Error RDL1: The class Justification_identification_code does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Justification_type_code]
[warning:]Error RDL1: The class Justification_type_code does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Cost_justification]
[warning:]Error RDL1: The class Cost_justification does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
Justification_assignment_role(urn:plcs:rdl:std:Justification_assignment_role)
A Justification_assignment_role is a Justification_assignment that classifies that the associated Justification is related to the associated Item within the context of a specific role. NOTE: It is expected that sub-classes of this will define those specific roles.
Justification_support_assignment_role(urn:plcs:rdl:std:Justification_support_assignment_role)
A Justification_support_assignment_role specifies that the Justification being assigned to an item is done so in the context of a specific role. It is expected that sub-classes of this will provide the context of the role.
[Condition_identification_code]
[warning:]Error RDL1: The class Condition_identification_code does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
Condition_type_code(urn:plcs:rdl:std:Condition_type_code)
A Condition_type_code is a Condition that classifies Condition instances. NOTE: It is expected that sub-classes of this class will define specific types of Conditions which will allow the grouping of conforming entries together
Text_based_condition(urn:plcs:rdl:std:Text_based_condition)
condition that is provided as text, and cannot be evaluated without recourse to human intervention.
[Default_condition]
[warning:]Error RDL1: The class Default_condition does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Condition_assignment_role]
[warning:]Error RDL1: The class Condition_assignment_role does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Condition_parameter_role]
[warning:]Error RDL1: The class Condition_parameter_role does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Condition_definition_input]
[warning:]Error RDL1: The class Condition_definition_input does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Condition_evaluation_identification_code]
[warning:]Error RDL1: The class Condition_evaluation_identification_code does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Condition_evaluation_type_code]
[warning:]Error RDL1: The class Condition_evaluation_type_code does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Condition_evaluation_assignment_role]
[warning:]Error RDL1: The class Condition_evaluation_assignment_role does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Condition_evaluation_parameter_role]
[warning:]Error RDL1: The class Condition_evaluation_parameter_role does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Condition_evaluation_input]
[warning:]Error RDL1: The class Condition_evaluation_input does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Approval_purpose]
[warning:]Error RDL1: The class Approval_purpose does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Approving_person_organization_type]
[warning:]Error RDL1: The class Approving_person_organization_type does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Authority_for_approval]
[warning:]Error RDL1: The class Authority_for_approval does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Approval_assignment_role]
[warning:]Error RDL1: The class Approval_assignment_role does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Justification_approval]
[warning:]Error RDL1: The class Justification_approval does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Condition_approval]
[warning:]Error RDL1: The class Condition_approval does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Condition_evaluation_approval]
[warning:]Error RDL1: The class Condition_evaluation_approval does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml

© OASIS 2010 — All rights reserved