Template:— representing_digital_document (rep_dig_doc)
Capability:representing_documents
Date: 2009/03/18 11:45:33
Revision: 1.6

This section specifies the template representing_digital_document.

NOTE  The template has been defined in the context of the capability representing_documents which provides an overall description of the relevant parts of the ISO 10303-239 information model and a description of related templates.

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

Description

This template describes how to represent a digital document.

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


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

Figure 1 —  An EXPRESS-G representation of the Information model for representing_digital_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 representing_digital_document template

Figure 2 —  The graphical representation of the representing_digital_document template

Input parameters
The following input parameters are defined for this template:
doc_id (Type='STRING')
The identifier of the document
doc_id_class_name (Default=Document_identification_code,Type='CLASS', Optional)
The id of the External_class_library that stores the class used to classify the type of identifier
The following classes and their sub-classes can be used:
classifications: "Document_identification_code" (urn:plcs:rdl:std:Document_identification_code), "Document_name" (urn:plcs:rdl:std:Document_name), [Document_number]
[warning:]Error RDL1: The class Document_number does not exist in RDL at urn urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
doc_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN', Optional)
The location of the External_class_library that stores the classifications used to classify the document, document_version and document_definition.
doc_org_id (Type='STRING')
The name or identifier of the organization responsible for the document representation
doc_org_id_class_name (Default=Organization_name,Type='CLASS', Optional)
The name of the class being used to classify the identification (Identification_assignment) of the organization responsible for creating the document representation
The following classes and their sub-classes can be used:
classifications: "Organization_identification_code" (urn:plcs:rdl:std:Organization_identification_code), "Organization_name" (urn:plcs:rdl:std:Organization_name)
doc_org_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN', Optional)
The identifier of the External_class_library storing the definition of the class used to classify the organization identifier.
doc_vn_id (Type='STRING')
The version identifier of the document version
doc_vn_id_class_name (Default=Version_identification_code,Type='CLASS', Optional)
The id of the External_class_library that stores the class used to classify the type of identifier
The following classes and their sub-classes can be used:
classifications: "Version_identification_code" (urn:plcs:rdl:std:Version_identification_code)
doc_vn_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN', Optional)
The location of the External_class_library that stores the classifications used to classify the document, document_version and document_definition.
doc_vn_org_id (Type='STRING')
The name or identifier of the organization responsible for the document representation
doc_vn_org_id_class_name (Default=Organization_name,Type='CLASS', Optional)
The name of the class being used to classify the identification (Identification_assignment) of the organization responsible for the document representation
The following classes and their sub-classes can be used:
classifications: "Organization_identification_code" (urn:plcs:rdl:std:Organization_identification_code), "Organization_name" (urn:plcs:rdl:std:Organization_name)
doc_vn_org_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN', Optional)
The identifier of the External_class_library storing the definition of the class used to classify the organization identifier.
domain (Default=Product_life_cycle_support,Type='CLASS', Optional)
The id of the External_class_library used to describe the type of application domain of the view_definition_context instance.
The following classes and their sub-classes can be used:
classifications: "Discipline_domain" (urn:plcs:rdl:std:Discipline_domain)
domain_ecl_id (Default=urn:plcs:rdl:std,Type='URN', Optional)
The identifier of the External_class_library storing the definition of the class used to classify the organization identifier.
life_cycle_stage (Default=Support_stage,Type='CLASS', Optional)
The id of the External_class_library used to describe the type of life cycle stage of the view_definition_context instance.
The following classes and their sub-classes can be used:
classifications: "Life_cycle_stage" (urn:plcs:rdl:std:Life_cycle_stage)
life_cycle_stage_ecl_id (Default=urn:plcs:rdl:std,Type='URN', Optional)
The identifier of the External_class_library storing the definition of the class used to classify the organization identifier.
digital_file (Type= 'ENTITY (Digital_file)' , Optional)
The entities to which the Digital_document_definition may be related to.
Reference parameters
The following reference parameters are defined for this template:
document(Type='ENTITY (Document)')
Allow the Document entity instantiated in this path to be referenced when this template is used.
Note: The Document entity can be referenced in a template path by:
%^target = $representing_digital_document.document%
where target is the parameter to which the Document is bound.
document_version(Type='ENTITY (Document_version)')
Allow the Document_version entity instantiated in this path to be referenced when this template is used.
Note: The Document_version entity can be referenced in a template path by:
%^target = $representing_digital_document.document_version%
where target is the parameter to which the Document_version is bound.
digital_document_definition(Type='ENTITY (Digital_document_definition)')
Allow the Digital_document_definition entity instantiated in this path to be referenced when this template is used.
Note: The Digital_document_definition entity can be referenced in a template path by:
%^target = $representing_digital_document.digital_document_definition%
where target is the parameter to which the Digital_document_definition is bound.
view_definition_context(Type='ENTITY (View_definition_context)')
Allow the View_definition_context entity instantiated in this path to be referenced when this template is used.
Note: The View_definition_context entity can be referenced in a template path by:
%^target = $representing_digital_document.view_definition_context%
where target is the parameter to which the View_definition_context 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.
Document

-- Mark the Document entity as
-- referable when this template is used by binding it to the reference
-- parameter id_assgn
%^document = Document%
Document.id = '/IGNORE'
Document.name = '/IGNORE'
Document.description = '/IGNORE'

-- Identify the Document
/assigning_identification(
    items=^document,
    id=@doc_id,
    id_class_name=@doc_id_class_name,
    id_ecl_id=@doc_id_ecl_id,
    org_id=@doc_org_id,
    org_id_class_name=@doc_org_id_class_name,
    org_id_ecl_id=@doc_org_id_ecl_id )/
Document_version

-- Mark the Document_version entity as
-- referable when this template is used by binding it to the reference
-- parameter ^document_version
%^document_version = Document_version%
Document_version.id = '/IGNORE'
Document_version.description = '/IGNORE'

-- Relate the document_version to the document
Document_version.of_product -> Document

-- Identify the Document_version
/assigning_identification(
    items=^document_version,
    id=@doc_vn_id,
    id_class_name=@doc_vn_id_class_name,
    id_ecl_id=@doc_vn_id_ecl_id,
    org_id=@doc_vn_org_id,
    org_id_class_name=@doc_vn_org_id_class_name,
    org_id_ecl_id=@doc_vn_org_id_ecl_id )/
Digital_document_definition

-- Mark the Digital_document_definition entity as
-- referable when this template is used by binding it to the reference
-- parameter ^digital_document_definition
%^digital_document_definition = Digital_document_definition%
Digital_document_definition.id = '/IGNORE'
Digital_document_definition.name = '/IGNORE'
Digital_document_definition.additional_characterization = '/IGNORE'

-- If an optional Digital hardcopy is provided, then link it to the Digital doc definition
Digital_document_definition.files -> @digital_file

-- Relate the document_version to the document
Digital_document_definition.defined_version -> Document_version
View_definition_context

-- Mark the View_definition_context entity as
-- referable when this template is used by binding it to the reference
-- parameter ^view_definition_context
%^view_definition_context = 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=^view_definition_context,
    class_name=@life_cycle_stage,
    ecl_id=@life_cycle_stage_ecl_id)/

-- provide the life cycle stage of the view definition by classification
/assigning_reference_data(
    items=^view_definition_context,
    class_name=@domain,
    ecl_id=@domain_ecl_id)/

-- Relate the digital_document_definition to the View_definition_context
Digital_document_definition.initial_context -> View_definition_context
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Document.id '/IGNORE' Product.id
Document.name '/IGNORE' Product.name
Document.description '/IGNORE' Product.description
Document_version.id '/IGNORE' Product_version.id
Document_version.description '/IGNORE' Product_version.description
Digital_document_definition.id '/IGNORE' Product_view_definition.id
Digital_document_definition.name '/IGNORE' Product_view_definition.name
Digital_document_definition.additional_characterization '/IGNORE' Product_view_definition.additional_characterization
View_definition_context.application_domain '/IGNORE'
View_definition_context.life_cycle_stage '/IGNORE'
View_definition_context.description '/IGNORE'
Instance diagrams
The instance diagram in Figure  3 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/representing_digital_document(doc_id='DOC-PH-001-001', doc_id_class_name='Document_identification_code', doc_id_ecl_id='urn:plcs:rdl:std', doc_org_id='Parts R Us Ltd', doc_org_id_class_name='Organization_name', doc_org_id_ecl_id='urn:plcs:rdl:std', doc_vn_id='0.3', doc_vn_id_class_name='Version_identification_code', doc_vn_id_ecl_id='urn:plcs:rdl:std', doc_vn_org_id='urn:plcs:rdl:std', doc_vn_org_id_class_name='Organization_name', doc_vn_org_id_ecl_id='urn:plcs:rdl:std', domain='Maintenance', domain_ecl_id='urn:plcs:rdl:std', life_cycle_stage='Support_stage', life_cycle_stage_ecl_id='urn:plcs:rdl:std')/
(an illustration of the consolidated representing_digital_document template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by representing_digital_document template

Figure 3 —  Entities instantiated by representing_digital_document template

The instance model in STEP ASCII exchange file format (ISO 10303 Part 21 syntax) is:
DATA; #15 = EXTERNAL_CLASS('/IGNORE','Organization_name','/IGNORE',#16); #14 = CLASSIFICATION_ASSIGNMENT(#15,(#12),'/IGNORE'); #12 = IDENTIFICATION_ASSIGNMENT('Parts R Us Ltd','/IGNORE','/IGNORE',(#10)); #10 = ORGANIZATION('/IGNORE','/IGNORE'); #8 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std',$); #7 = EXTERNAL_CLASS('/IGNORE','Document_identification_code','/IGNORE',#8); #6 = CLASSIFICATION_ASSIGNMENT(#7,(#4),'/IGNORE'); #4 = IDENTIFICATION_ASSIGNMENT('DOC-PH-001-001','/IGNORE',$,(#2)); #2 = DOCUMENT('/IGNORE','/IGNORE','/IGNORE'); #30 = ORGANIZATION('/IGNORE','/IGNORE'); #28 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std',$); #27 = EXTERNAL_CLASS('/IGNORE','Version_identification_code','/IGNORE',#28); #26 = CLASSIFICATION_ASSIGNMENT(#27,(#24),'/IGNORE'); #24 = IDENTIFICATION_ASSIGNMENT('0.3','/IGNORE',$,(#22)); #22 = DOCUMENT_VERSION('/IGNORE','/IGNORE',#2); #21 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std',$); #20 = EXTERNAL_CLASS('/IGNORE','Owner_of','/IGNORE',#21); #19 = CLASSIFICATION_ASSIGNMENT(#20,(#17),'/IGNORE'); #17 = ORGANIZATION_OR_PERSON_IN_ORGANIZATION_ASSIGNMENT(#10,'/IGNORE',(#4)); #16 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std',$); #47 = EXTERNAL_CLASS_LIBRARY($,$); #46 = EXTERNAL_CLASS('/IGNORE','Support_stage','/IGNORE',#47); #45 = CLASSIFICATION_ASSIGNMENT(#46,(#43),'/IGNORE'); #43 = VIEW_DEFINITION_CONTEXT('/IGNORE','/IGNORE','/IGNORE'); #42 = DIGITAL_DOCUMENT_DEFINITION('/IGNORE','/IGNORE','/IGNORE',#43,(),#22,()); #41 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std',$); #40 = EXTERNAL_CLASS('/IGNORE','Owner_of','/IGNORE',#41); #39 = CLASSIFICATION_ASSIGNMENT(#40,(#37),'/IGNORE'); #37 = ORGANIZATION_OR_PERSON_IN_ORGANIZATION_ASSIGNMENT(#30,'/IGNORE',(#24)); #36 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std',$); #35 = EXTERNAL_CLASS('/IGNORE','Organization_name','/IGNORE',#36); #34 = CLASSIFICATION_ASSIGNMENT(#35,(#32),'/IGNORE'); #32 = IDENTIFICATION_ASSIGNMENT('Parts R Us Ltd','/IGNORE','/IGNORE',(#30)); #51 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std',$); #50 = EXTERNAL_CLASS('/IGNORE','Maintenance','/IGNORE',#51); #49 = CLASSIFICATION_ASSIGNMENT(#50,(#43),'/IGNORE'); ENDSEC;
The instance model in STEP XML exchange file format (ISO 10303 Part 28 ed.2 syntax) is:
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_digital_document(doc_id='DOC-PH-001-001', doc_id_class_name='Document_identification_code', doc_id_ecl_id='urn:plcs:rdl:std', doc_org_id='Parts R Us Ltd', doc_org_id_class_name='Organization_name', doc_org_id_ecl_id='urn:plcs:rdl:std', doc_vn_id='0.3', doc_vn_id_class_name='Version_identification_code', doc_vn_id_ecl_id='urn:plcs:rdl:std', doc_vn_org_id='urn:plcs:rdl:std', doc_vn_org_id_class_name='Organization_name', doc_vn_org_id_ecl_id='urn:plcs:rdl:std', domain='Maintenance', domain_ecl_id='urn:plcs:rdl:std', life_cycle_stage='Support_stage', life_cycle_stage_ecl_id='urn:plcs:rdl:std')/


Figure 4 —  Entities instantiated by representing_digital_document template

Figure 4 —  Entities instantiated by representing_digital_document template

Characterizations
The following section details how the representing_digital_document 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 following characterizations may apply:
Characterization Assigning date

NOTE   this characterization is optional.

The date when the Work_order and the Directed_activity was issued can be represented by assigning a date (using the relationship Date_or_date_time_assignment) to the Work_order and the Directed_activity using the assigning_calendar_date template with the Date_time being classified as a type of "Date actual release" (urn:plcs:rdl:std:Date actual release).

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

© OASIS 2010 — All rights reserved