Template:— assigning_partial_document (asg_partial_doc) Date: 2008/03/05 14:41:06
Revision: 1.7

This section specifies the template assigning_partial_document.

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 portion of a document to an item. It does not create the document entity instance to be populated, nor does it create the item to which the document is to be assigned to - these are the subject of separate templates. This template only facilitates the assignment.
AP239 Issue (GYL-8)
The current version of AP239 does not allow the 'assigning_descriptor'' to be assigned to a Partial_document_assignment. This requires that the documented_element_select is extended to include Document_assignment.

This has been raised as issue, GYL-8, against ISO 10303-239. The EXPRESS schema has been modified in DEXlib (Long form: dexlib/data/schemas/ap239_arm_lf.exp, short form: dexlib/data/schemas/ap239_arm_sf.exp). These changes will be made to ISO 10303-239 as a Technical Corrigendum at some stage.

Model diagrams
The EXPRESS-G diagram in Figure 1 shows the templates and EXPRESS entities that are required to represent the template "assigning_partial_document". The text highlighted in blue shows the template parameters.


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

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

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

Figure 2 —  The graphical representation of the assigning_partial_document template

Input parameters
The following input parameters are defined for this template:
doc (Type= 'SELECT (assigned_document_select)' )
The Document, Document_version, Document_definition or File which is assigned by the Document_assignment.
doc_asg_role (Type='CLASS')
The name of the External_class being used to determine the role of the assignment.
The following classes and their sub-classes can be used:
classifications: "Partial_document_assignment" (urn:plcs:rdl:std:Partial_document_assignment)
doc_asg_role_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The id of the External_class_library that stores the External_class used to classify the Document_assignment.
doc_portion (Type='STRING')
A textual description that identifies a specific portion of the contents of a document..
is_assigned_to (Type= 'SELECT (documented_element_select)' )
The entity of which the identified portion is assigned (Document, Document_version, Document_definition or File).
Reference parameters
The following reference parameters are defined for this template:
partial_doc_asg(Type='ENTITY (Partial_document_assignment)')
Allow the Partial_document_assignment entity instantiated in this path to be referenced when this template is used.
Note: The Partial_document_assignment entity can be referenced in a template path by:
%^target = $assigning_partial_document.partial_doc_asg%
where target is the parameter to which the Partial_document_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 Templates Help/Information section.
-- Create the partial document assignment entity.
Partial_document_assignment
Partial_document_assignment.role = '/IGNORE'
Partial_document_assignment.document_portion = '/IGNORE'
Partial_document_assignment.is_assigned_to -> @is_assigned_to

-- Mark the Partial_document_assignment entity as referable when this template is used.
-- In other words, bind the Partial_document_assignment instance to the reference
-- parameter partial_doc_asg
%^partial_doc_asg = Partial_document_assignment%

-- Assign the role through ref data
/assigning_reference_data(
    items=^partial_doc_asg,
    class_name=@doc_asg_role,
    ecl_id=@doc_asg_role_ecl_id)/

-- Assign the text identifying the portion of the document being assigned
/assigning_descriptor(
    descr=@doc_portion,
    class_name='Description',
    ecl_id='urn:plcs:rdl:std',
    is_assigned_to=^partial_doc_asg)/

-- Assign the partial document to be used
Partial_document_assignment.assigned_document -> @doc
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Partial_document_assignment.role '/IGNORE' Document_assignment.role
Partial_document_assignment.document_portion '/IGNORE'
Instance diagrams
The instance diagram in Figure  3 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/assigning_partial_document(doc='#1', doc_asg_role='Partial_document_reference', doc_asg_role_ecl_id='urn:plcs:rdl:std', doc_portion='Chapter 2', is_assigned_to='#2')/
(an illustration of the consolidated assigning_partial_document template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by assigning_partial_document template

Figure 3 —  Entities instantiated by assigning_partial_document 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_partial_document(doc='#1', doc_asg_role='Partial_document_reference', doc_asg_role_ecl_id='urn:plcs:rdl:std', doc_portion='Chapter 2', is_assigned_to='#2')/


Figure 4 —  Instantiation of assigning_partial_document template

Figure 4 —  Instantiation of assigning_partial_document template

Characterizations
No common characterizations of the template assigning_partial_document have been identified. However, the ISO 10303-239 EXPRESS model may enable other assignments to the entities instantiated by the template.

© OASIS 2010 — All rights reserved