Capability (C052):— representing_resource Date: 2012/05/23 17:37:04
Revision: 1.39

Business DEX overview

Resources are stocks or supplies or single items of materials or assets or persons that may be used or consumed in the carrying out of tasks and actions.

EXAMPLE    The part editor for ISO 10303-239; a maintenance fitter; ISO 10303-28; the Boeing 747; Airforce One; and concrete are all examples of resources.

Relating tasks, methods, events, and activities to different resouce specifications

Tasks, methods, events, activities and other items may require resources. Those resources may be described in terms of of a specification of the resource requirement:

EXAMPLE    The requirement for a system of dealing with mines at sea.

or in terms of an item that satisfies such a requirement (see below).

Categorizing different items as resources and relating those item to one another

Where a resource is specified in terms of a document, organization, person, product or other item that constitutes a resource in a particular context, such items may be types:

EXAMPLE    A MCMV (mine counter measure vessel).

or tokens:

EXAMPLE    HMS Daring.

Different resources required for the same (or different) tasks may be related.

EXAMPLE    A number of MCMVs and a certain type of sonar equipment might be required for a particualr mine clearance task. These two items might be required to share in certain compatibility relationships.

Information model overview

The EXPRESS-G for the representingresource
[warning:]Error C1: Capability representingresource not in dex_index.xml
capability is shown in Figure 1 below and explained in the following sections.

NOTE 1   The EXPRESS-G is not complete. For the complete EXPRESS see the modules: Resource item and Required resource.



Figure 1 —  Representing resource EXPRESS-G

Figure 1 —  Representing resource EXPRESS-G

The resource item

A Resource_item is the fundamental unit of resource. A resource item can be one of the following (as defined in Ap239_task_specification_resourced):

NOTE 2   The list comprises two distinct datatype categories: types of things (unmarked) and tokens of things (marked *). In general, types are used when specifying resources, for example, when saying a task needs to use a crane, whereas tokens are used when recording history, for example, that a task used crane number 123. This is not, however, a hard and fast rule, and two exceptions occur when, for example:

  1. A task is specified against a specific resource, such as "the naval dockyard in Portsmouth" on the basis of an assumption that particular facilities only available there;
  2. It is not necessary to track which particular resource was used when a task was performed, such as the fact that task 1234 used a hammer on 20th December. Resource use like this would normally only be recorded if it were unusual.

The identification of a Resource_item is defined in the capability referencing_resource
[warning:]Error C1: Capability referencing_resource not in dex_index.xml
. A Resource_item also has a name and an optional description. Resource_item may also be further characterized (see below).

An example instance diagram for Resource_item is shown in figure 5 below in the section on characterization.

NOTE 3   Resource_item is also referenced by the activity
[warning:]Error C1: Capability activity not in dex_index.xml
, observation
[warning:]Error C1: Capability observation not in dex_index.xml
, resource_management
[warning:]Error C1: Capability resource_management not in dex_index.xml
, resource_as_realized
[warning:]Error C1: Capability resource_as_realized not in dex_index.xml
, scheme_entry
[warning:]Error C1: Capability scheme_entry not in dex_index.xml
, task
[warning:]Error C1: Capability task not in dex_index.xml
and work_request
[warning:]Error C1: Capability work_request not in dex_index.xml
capabilities, but these are uses of Resource_item rather than its characteristics.

Resource item relationships

Resource_item objects may be related to other Resource_items or to other items.

Relationships between Resource_items are defined using the typical STEP relationship pattern, with the role being defined by classification, rather than by means of an explicit attribute. There are no constraints on the network of relationships. The subtype of this relationship Resource_group_relationship, which covers relationships such as "a tool box contains a mallet" or "a compressor provides compressed air". That is, it is stronger than the general Resource_event_relationship in that it implies that all the particular resources should be considered, and perhaps managed, as a single unit.

The Resource_group_relationship optionally carries a quantity, used, for example, to describe the relation "the oil tank holds up to 2000l of unleaded petrol". An instance diagram for this is shown in figure 2.



Figure 2 —  Resource Group

Figure 2 —  Resource Group

The Resource_item_assignment allows a Resource_item to be related to:

NOTE 4   The role may not be "as resource item". In this relationship, potential roles for Part include "applicable to" or "purchased for". For example, baggage loading vehicle is applicable to Boeing 737. For further discussion of the meaning of this relationship, see below.

NOTE 5   Both Resource_item_assignment and Resource_item_relationship may be further characterized (see below).

Required resource

Tasks are specified by identifying the resources they require: such as tools, test equipment, cleaning rags, etc. The Required_resource construct provides three ways to identify these resources: by specification, by resource type, or by particular resource.

Required_resource_by_specification is the subtype of Required_resource that identifies the resource by stating the things the resource must have or must do, for example, a 115v 20kVA power supply. The basic facility for identifying the requirement is the description attribute of Required_resource. It is, however, possible to apply a requirement (strictly a Requirement_view_definition) by using a Requirement_assignment.

The definition of a resource in terms of a resource type or a particular item is established through use of the Required_resource_by_resource_item subtype . This subtype specifies the required resource by referencing a Resource_item. The resource is specified by the Resource_item, which references a type of item, such as a Part, or a Type_of_person; or references a token of an item, such as Product_as_individual or Person.

NOTE 6   A Required_resource can always be classified and may be further characterized (see below).

Relationships between pairs of Required_resource objects are established through use of the Required_resource_relationship. The role of the Required_resource_relationship is defined by means of classification. One important use of this relationship is to identify particular Resource_items that meet the specification of a Required_resource_by_specification.

NOTE 7   This mechanism identifies the items than may fulfil the specification, not the item actually used by the task. The item used by the task is identified by means of the ResourceasRealized
[warning:]Error C1: Capability ResourceasRealized not in dex_index.xml
capability.

NOTE 8   A Required_resource_relationship can always be classified and may be further characterized (see below).

Figure 3 shows an instance diagram for the Required_resource area.



Figure 3 —  Required Resource

Figure 3 —  Required Resource

Required resource assignment

The problem considered here is: "What is the difference between assigning a Task_method to a Required_resource with Applied_activity_method_assignment, and assigning a Required_resource to a Task_method with Required_resource_assignment?". This is a fundamental issue concerning the interpretation of Applied_activity_method_assignment and Required_resource_assignment.

Essentially,

For example, one of the tasks in servicing a passenger aircraft is to service the lavatories. This might require the use of (Applied_activity_method_assignment) a dedicated servicing vehicle (the Resource_item) designed for the aircraft type (a Resource_item_assignment to Product_group) . The vehicle must be filled beforehand (Required_resource_assignment) with water (a quantified, required resource linked by Required_resource_relationship) for the flush, and the sewage disposed of afterwards (Required_resource_assignment). An instance diagram for this is shown in figure 4.



Figure 4 —  Tasks and Resources

Figure 4 —  Tasks and Resources

A Required_resource_assignment can be assigned to:

* ap239_task_secification_resourced
[warning:]Error C1: Capability ap239_task_secification_resourced not in dex_index.xml
; #ap239_work_definition
[warning:]Error C1: Capability ap239_work_definition not in dex_index.xml
.

NOTE 9   A Required_resource_assignment can always be classified and may be further characterized (see below).

Required_resource_assignment is also used by Scheme_entry.

The roles identified above are defined through reference data. The set of roles required for the DEX are defined in the DEX. If finer grained relationships are required, it is recommended this is done by extending the reference data to include subtypes of the roles.

Characterization of representing resource

Most of the constructs shown in Figure 1 can be characterized; which is to say that they may have approvals, classifications, conditions, dates or times, identifiers, justifications, persons or organizations, or properties assigned to them. The following sections detail the characterization of resource objects.

Assigning approvals

Approvals of resources or of resource assignments are represented by the assignment of Approval objects to Required_resource, Required_resource_assignment, Required_resource_by_resource_item, Resource_item, and Resource_item_assignment objects using Approval_assignment objects.

NOTE 10   The assignment of approvals is described in the capability: C019: assigning_approvals.

An instance diagram showing the assignment of an approval to a Resource_item is given in Figure 5.

Assigning classifications

The classification of resources or of assignments of resources is represented by the assignment of External_class objects to Required_resource, Required_resource_assignment, Required_resource_by_resource_item, Resource_item, and Resource_item_assignment objects using Approval_assignment objects.

An instance diagram showing the assignment of a classification to an Resource_item is given in Figure 5.

Assigning conditions

The application of conditional statements to resources or assignments of resources is represented by the assignment of Condition objects to Required_resource, Required_resource_assignment, Required_resource_by_resource_item, Resource_item, and Resource_item_assignment objects using Condition_assignment objects.

Assigning dates and times

Start and end dates for the availability of resources or for the need-for resources are represented by the assignment of Date_time objects or Calendar_date objects to Required_resource, Required_resource_assignment, Required_resource_by_resource_item, Resource_item, and Resource_item_assignment objects using Date_or_date_time_assignment objects.

NOTE 11   The assignment of date and times is described in the capability: C036: assigning_date_time.

Assigning identifers

The identification of resources is achieved by the linking of Identification_assignment objects to Required_resource, Required_resource_by_resource_item, and Resource_item objects.

NOTE 12   The assignment of approvals is described in the capability: C001: assigning_identifiers.

An instance diagram showing the assignment of an identifer to an Resource_item is given in Figure 5.

Assigning justifications

Justifications for resources or assignments of resources are represented by the assignment of Justification objects to Required_resource, Required_resource_assignment, Required_resource_by_resource_item, Resource_item, and Resource_item_assignment objects using Justification_assignment objects.

Assigning locations

Locations of resources or of assignments of resources are represented by the assignment of Location objects to Required_resource, Required_resource_assignment, Required_resource_by_resource_item, Resource_item, and Resource_item_assignment objects using Location_assignment objects.

Assigning persons and organizations

The ownership or responsibility for resources or of assignments of resources is represented by the assignment of Organization and Person_in_organization objects to Required_resource, Required_resource_assignment, Required_resource_by_resource_item, Resource_item, and Resource_item_assignment objects using Organization_or_person_in_organization_assignment objects.

Assigning resource properties

The attachment of properties to resources is achieved by the linking of Resource_property objects to Required_resource, Required_resource_by_resource_item, and Resource_item. objects.

NOTE 13   The assignment of approvals is described in the capability: C078: assigning_resource_properties.



Figure 5 —  Resource as characterized

Figure 5 —  Resource as characterized

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_required_resource (Short name: asg_req_res)

This section specifies the template assigning_required_resource.

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 the assignment of a required resource.

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


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

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

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

Figure 2 —  The graphical representation of the assigning_required_resource template

Input parameters
The following input parameters are defined for this template:
item (Type= 'SELECT (required_resource_item)' )
The item to which the required resource is assigned.
resource_item (Type= 'ENTITY (Resource_item)' )
The resource item that plays the role of a required resource.
class_name (Type='CLASS')
The name of the External_class that determines the role of the required resource given by the input parameter @resource_item.
The following classes and their sub-classes can be used:
classifications: "Required_resource" (urn:plcs:rdl:std:Required_resource)
ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identification of the External_class_library storing the External_class given by the input parameter @class_name.
Reference parameters
The following reference parameters are defined for this template:
req_res_item(Type='ENTITY (Required_resource_by_resource_item)')
Allow the Required_resource_by_resource_item entity instantiated in this path to be referenced when this template is used.
Note: The Required_resource_by_resource_item entity can be referenced in a template path by:
%^target = $assigning_required_resource.req_res_item%
where target is the parameter to which the Required_resource_by_resource_item is bound.
req_res_asg(Type='ENTITY (Required_resource_assignment)')
Allow the Required_resource_assignment entity instantiated in this path to be referenced when this template is used.
Note: The Required_resource_assignment entity can be referenced in a template path by:
%^target = $assigning_required_resource.req_res_asg%
where target is the parameter to which the Required_resource_assignment is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Unique assignment
Each instance of the entity (Required_resource_assignment) within the data set shall be uniquely identified by a combination of the following parameters on this template (assigning_required_resource) namely: item, resource_item, class_name, ecl_id.
The instance is referenced by the following template parameter: req_res_asg.
There should be one assignment between each assigned resource, item and class in a data set.
Unique constraint: Unique required resource
Each instance of the entity (Required_resource_by_resource_item) within the data set shall be uniquely identified by a combination of the following parameters on this template (assigning_required_resource) namely: item, resource_item, class_name, ecl_id.
The instance is referenced by the following template parameter: req_res_item.
There should be one required resource item relationship between each assigned resource, item and class in a data set.
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.
-- Instantiate the Required_resource_by_resource_item entity
Required_resource_by_resource_item

-- Mark the Required_resource_by_resource_item entity as
-- referable when this template is used by binding it to the reference
-- parameter ^req_res_item
%^req_res_item = Required_resource_by_resource_item%

-- Set the Required_resource_by_resource_item attributes name and description to be ignored
-- and the resource_item attribute to the entity given by the @resource_item input parameter
Required_resource_by_resource_item.name = '/IGNORE'
Required_resource_by_resource_item.description = '/IGNORE'
Required_resource_by_resource_item.resource_item -> @resource_item

-- Assign the External_class in the reference data library
-- being used to determine the role of the required resource item
/assigning_reference_data(
    items=^req_res_item,
    class_name=@class_name,
    ecl_id=@ecl_id)/

-- Instantiate the Required_resource_assignment entity
Required_resource_assignment

-- Mark the Required_resource_assignment entity as
-- referable when this template is used by binding it to the reference
-- parameter ^req_res_asg
%^req_res_asg = Required_resource_assignment%

-- Set the Required_resource_assignment attributes item and assigned_resource
Required_resource_assignment.item -> @item
Required_resource_assignment.assigned_resource -> Required_resource
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Required_resource_by_resource_item.name '/IGNORE' Required_resource.name
Required_resource_by_resource_item.description '/IGNORE' Required_resource.description
Instance diagrams
The instance diagram in Figure  3 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/assigning_required_resource(item='#2', resource_item='#1', class_name='Consumable', ecl_id='urn:plcs:rdl:sample')/
(an illustration of the consolidated assigning_required_resource template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by assigning_required_resource template

Figure 3 —  Entities instantiated by assigning_required_resource template

The instance model in STEP ASCII exchange file format (ISO 10303 Part 21 syntax) is:
#1 = RESOURCE_ITEM('/IGNORE','/IGNORE',$); #2 = TASK_METHOD_VERSION('/IGNORE','/IGNORE','/IGNORE','/IGNORE',$,$); #3 = REQUIRED_RESOURCE_BY_RESOURCE_ITEM('/IGNORE','/IGNORE',$,#1); #4 = REQUIRED_RESOURCE_ASSIGNMENT(#3,#2); #6 = CLASSIFICATION_ASSIGNMENT(#8,(#3),'/IGNORE'); #8 = EXTERNAL_CLASS('/NULL','Consumable','/IGNORE',#9); #9 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:sample',$);
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_required_resource(item='#2', resource_item='#1', class_name='Consumable', ecl_id='urn:plcs:rdl:sample')/


Figure 4 —  Instantiation of assigning_required_resource template

Figure 4 —  Instantiation of assigning_required_resource template

Characterizations
The following section details how the assigning_required_resource 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 property

NOTE   this characterization is optional.

The assignment of properties (assigning_resource_property) to the Required_resource_by_resource_item can be used e.g. to represent e.g. quantities.

NOTE    Depending on the type of property being defined, one of the following templates will be used together with the assigning_resource_property template:

Template: representing_required_resource_relationship (Short name: rep_req_res_rel)

This section specifies the template representing_required_resource_relationship.

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 relationship between required resources, where type of relationship is determined by classification.

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


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

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

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

Figure 2 —  The graphical representation of the representing_required_resource_relationship template

Input parameters
The following input parameters are defined for this template:
req_res_rel_class_name (Type='CLASS')
The name of the External_class that determines type of relationship.
The following classes and their sub-classes can be used:
classifications: "Required_resource_relationship" (urn:plcs:rdl:std:Required_resource_relationship)
req_res_rel_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identification of the External_class_library storing the External_class given by the input parameter @class_name.
relating_req_res (Type= 'ENTITY (Required_resource)' )
The Required_resource that relates to another Required_resource .
related_req_res (Type= 'ENTITY (Required_resource)' )
The Required_resource being related to by another Required_resource .
Reference parameters
The following reference parameters are defined for this template:
relationship(Type='ENTITY (Required_resource_relationship)')
Allow the Required_resource_relationship entity instantiated in this path to be referenced when this template is used.
Note: The Required_resource_relationship entity can be referenced in a template path by:
%^target = $representing_required_resource_relationship.relationship%
where target is the parameter to which the Required_resource_relationship 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.
-- Instantiate and bind Required_resource_relationship
Required_resource_relationship
%^relationship = Required_resource_relationship%
^relationship.name = '/IGNORE'
^relationship.description = '/IGNORE'
^relationship.relating -> @relating_req_res
^relationship.related -> @related_req_res

-- Invocate template assigning_reference_data and
-- assign it to Required_resource_relationship
/assigning_reference_data(
    class_name= @req_res_rel_class_name,
    ecl_id= @req_res_rel_ecl_id,
    items= ^relationship)/
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Required_resource_relationship.name '/IGNORE'
Required_resource_relationship.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_required_resource_relationship(class_name='Alternative_resource', ecl_id='urn:plcs:rdl:sample', relating_req_res='#1', related_req_res='#2')/
(an illustration of the consolidated representing_required_resource_relationship template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by representing_required_resource_relationship template

Figure 3 —  Entities instantiated by representing_required_resource_relationship template

The instance model in STEP ASCII exchange file format (ISO 10303 Part 21 syntax) is:
#1 = REQUIRED_RESOURCE_BY_RESOURCE_ITEM('/IGNORE','/IGNORE',$,$); #2 = REQUIRED_RESOURCE_BY_RESOURCE_ITEM('/IGNORE','/IGNORE',$,$); #3 = REQUIRED_RESOURCE_RELATIONSHIP('/IGNORE','/IGNORE',#1,#2); #5 = CLASSIFICATION_ASSIGNMENT(#6,(#3),'/IGNORE'); #6 = EXTERNAL_CLASS('/NULL','Alternative_resource','/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:
/representing_required_resource_relationship(class_name='Alternative_resource', ecl_id='urn:plcs:rdl:sample', relating_req_res='#1', related_req_res='#2')/


Figure 4 —  Instantiation of representing_required_resource_relationship template

Figure 4 —  Instantiation of representing_required_resource_relationship template

Characterizations
No common characterizations of the template representing_required_resource_relationship have been identified. However, the ISO 10303-239 EXPRESS model may enable other assignments to the entities instantiated by the template.
Template: representing_resource_item (Short name: rep_res_item)

This section specifies the template representing_resource_item.

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 resource_item and its possible realizations. A resource_item is used as a placeholder for the object that the resource item may refer to. It is expected that each resource_item will be identifiable and be distinguishable from other types of resource_items.

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

The diagram shows the resource_item being identified.



Figure 1 —  An EXPRESS-G representation of the information model for the template 'representing_resource_item'

Figure 1 —  An EXPRESS-G representation of the information model for the template 'representing_resource_item'

The graphic for the template to be used in other EXPRESS-G diagrams is shown in Figure  2 below.


Figure 2 —  Graphical representations for the template 'representing_resource_item'

Figure 2 —  Graphical representations for the template 'representing_resource_item'

Input parameters
The following input parameters are defined for this template:
res_item_id (Type='STRING')
Identification of the Resource_item
res_item_id_class (Default=Resource_item_identification_code,Type='CLASS')
The name of the class used to classify the identifier (@res_item_id) and to provide the role or reason for the identification
The following classes and their sub-classes can be used:
classifications: "Resource_item_identification_code" (urn:plcs:rdl:std:Resource_item_identification_code), "Resource_item_name" (urn:plcs:rdl:std:Resource_item_name)
res_item_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The id of the External_class_library storing the @res_item_id_class
res_item_id_org_id (Type='STRING')
The identifier of the Organization that "owns" the identifier.
res_item_id_org_id_class (Default=Organization_name,Type='CLASS')
The name of the class being used to classify the identification of the Organization. For example CAGE code.
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)
res_item_id_org_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The id of the External_class_library storing the definition of the class used to classify the organization identifier.
res_item_items (Type= 'SELECT (resource_item_select)' , Optional)
Item that is added to the SET of resource items that realizes the resource item under consideration.
Reference parameters
The following reference parameters are defined for this template:
res_item(Type='ENTITY (Resource_item)')
Allow the Resource_item entity instantiated in this path to be referenced when this template is used.
Note: The Resource_item entity can be referenced in a template path by:
%^target = $representing_resource_item.res_item%
where target is the parameter to which the Resource_item is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Resource item
Each instance of the entity (Resource_item) within the data set shall be uniquely identified by a combination of the following parameters on this template (representing_resource_item) namely: res_item_id, res_item_id_class, res_item_id_ecl_id, res_item_id_org_id, res_item_id_org_id_class, res_item_id_org_id_ecl_id.
The instance is referenced by the following template parameter: res_item.
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.
Resource_item

-- Mark the Resource_item entity as
-- referable when this template is used by binding it to the reference
-- parameter res_item
%^res_item = Resource_item%
Resource_item.name = '/IGNORE'
Resource_item.description = '/IGNORE'
Resource_item.resource_items -> @res_item_items

-- Identification of the Resource_item
/assigning_identification(
    items=^res_item,
    id=@res_item_id,
    id_class_name=@res_item_id_class,
    id_ecl_id=@res_item_id_ecl_id,
    org_id=@res_item_id_org_id,
    org_id_class_name=@res_item_id_org_id_class,
    org_id_ecl_id=@res_item_id_org_id_ecl_id )/
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Resource_item.name '/IGNORE'
Resource_item.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_resource_item(res_item_id='PRUS-RI-001-001', res_item_id_class='Resource_item_identification_code', res_item_id_ecl_id='urn:plcs:rdl:std', res_item_id_org_id='Parts R Us Ltd', res_item_id_org_id_class='Organization_name', res_item_id_org_id_ecl_id='urn:plcs:rdl:std', res_item_items='#1')/
(an illustration of the consolidated representing_resource_item template is shown in Figure 4 below.)


Figure 3 —  Entities and templates used by the 'representing_resource_item' template

Figure 3 —  Entities and templates used by the 'representing_resource_item' template

The instance model in STEP ASCII exchange file format (ISO 10303 Part 21 syntax) is:
DATA; #1 = PART('/IGNORE','/IGNORE','/IGNORE'); #2 = RESOURCE_ITEM('/IGNORE','/IGNORE',(#1)); #3 = IDENTIFICATION_ASSIGNMENT('PRUS-RI-001-001','/IGNORE',$,(#2)); #5 = CLASSIFICATION_ASSIGNMENT(#7,(#3),'/IGNORE'); #7 = EXTERNAL_CLASS('/NULL','Resource_item_identification_code','/IGNORE',#8); #8 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std',$); #10 = ORGANIZATION('/IGNORE','/IGNORE'); #12 = IDENTIFICATION_ASSIGNMENT('Parts R Us Ltd','/IGNORE','/IGNORE',(#10)); #14 = CLASSIFICATION_ASSIGNMENT(#16,(#12),'/IGNORE'); #16 = EXTERNAL_CLASS('/NULL','Organization_name','/IGNORE',#8); #18 = ORGANIZATION_OR_PERSON_IN_ORGANIZATION_ASSIGNMENT(#10,'/IGNORE',(#3)); #20 = CLASSIFICATION_ASSIGNMENT(#22,(#18),'/IGNORE'); #22 = EXTERNAL_CLASS('/NULL','Owner_of','/IGNORE',#8); ENDSEC;
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_resource_item(res_item_id='PRUS-RI-001-001', res_item_id_class='Resource_item_identification_code', res_item_id_ecl_id='urn:plcs:rdl:std', res_item_id_org_id='Parts R Us Ltd', res_item_id_org_id_class='Organization_name', res_item_id_org_id_ecl_id='urn:plcs:rdl:std', res_item_items='#1')/


Figure 4 —  Invocation of the 'representing_resource_item' template - graphical presentation

Figure 4 —  Invocation of the 'representing_resource_item' template - graphical presentation

Characterizations
The following section details how the representing_resource_item 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 classifications

NOTE   this characterization is optional.

Classifications can be assigned to the Resource_item using the template assigning_reference_data.

Characterization Assigning properties

NOTE   this characterization is optional.

Properties can be assigned to the Resource_item using the template assigning_resource_property.

Characterization Assigning descriptions

NOTE   this characterization is optional.

Descriptions can be assigned to the Resource_item using the template assigning_descriptor.

Characterization Assigning documents

NOTE   this characterization is optional.

Documents can be assigned to the Resource_item using the template assigning_document.

Characterization Assigning dates

NOTE   this characterization is optional.

Dates can be assigned to the Resource_item using the template assigning_calendar_date.

Template: representing_resource_item_realization (Short name: rep_res_item_real)

This section specifies the template representing_resource_item_realization.

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 the realization of a resource item, where the resource item is used as a placeholder for the object that the resource item may refer to.

Note:
While this template continues to be maintained for backward compatibility, its use has deprecated and may be removed in the future. The template representing_resource_item shall be used instead.
Model diagrams
The EXPRESS-G diagram in Figure 1 shows the templates and EXPRESS entities that are required to represent the template "representing_resource_item_realization". The text highlighted in blue shows the template parameters.


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

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

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

Figure 2 —  The graphical representation of the representing_resource_item_realization template

Input parameters
The following input parameters are defined for this template:
res_item_id (Type='STRING')
The identification of the Resource_item
res_item_id_class (Default=Resource_item_identification_code,Type='CLASS')
The type of identifier (@res_item_id) being referenced
The following classes and their sub-classes can be used:
classifications: "Resource_item_identification_code" (urn:plcs:rdl:std:Resource_item_identification_code), "Resource_item_name" (urn:plcs:rdl:std:Resource_item_name)
res_item_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The id of the External_class_library storing the @res_item_id_class
res_item_id_org_id (Type='STRING')
The Organization that "owns" the identifier.
res_item_id_org_id_class (Default=Organization_name,Type='CLASS')
The type of Organization identifier.
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)
res_item_id_org_id_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The id of the External_class_library storing the definition of the class used to classify the organization identifier.
res_item_items (Type= 'SELECT (resource_item_select)' )
Item that shall be added to the SET of resource items that realizes the resource item under consideration.
Reference parameters
The following reference parameters are defined for this template:
res_item(Type='ENTITY (Resource_item)')
Allow the Resource_item entity instantiated in this path to be referenced when this template is used.
Note: The Resource_item entity can be referenced in a template path by:
%^target = $representing_resource_item_realization.res_item%
where target is the parameter to which the Resource_item is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Resource item
Each instance of the entity (Resource_item) within the data set shall be uniquely identified by a combination of the following parameters on this template (representing_resource_item_realization) namely: res_item_id, res_item_id_class, res_item_id_ecl_id, res_item_id_org_id, res_item_id_org_id_class, res_item_id_org_id_ecl_id.
The instance is referenced by the following template parameter: res_item.
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.
Resource_item

-- Mark the file entity as
-- referable when this template is used by binding it to the reference
-- parameter id_assgn
%^res_item = Resource_item%
Resource_item.name = '/IGNORE'
Resource_item.description = '/IGNORE'
Resource_item.resource_items -> @res_item_items

-- Identification of the Resource_item
/assigning_identification(
    items=^res_item,
    id=@res_item_id,
    id_class_name=@res_item_id_class,
    id_ecl_id=@res_item_id_ecl_id,
    org_id=@res_item_id_org_id,
    org_id_class_name=@res_item_id_org_id_class,
    org_id_ecl_id=@res_item_id_org_id_ecl_id )/
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Resource_item.name '/IGNORE'
Resource_item.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_resource_item_realization(res_item_id='PRUS-RI-001-001', res_item_id_class='Resource_item_identification_code', res_item_id_ecl_id='urn:plcs:rdl:std', res_item_id_org_id='Parts R Us Ltd', res_item_id_org_id_class='Organization_name', res_item_id_org_id_ecl_id='urn:plcs:rdl:std', res_item_items='#1')/
(an illustration of the consolidated representing_resource_item_realization template is shown in Figure 4 below.)


Figure 3 —  Entities and templates used by representing_resource_item_realization template

Figure 3 —  Entities and templates used by representing_resource_item_realization template

The instance model in STEP ASCII exchange file format (ISO 10303 Part 21 syntax) is:
#1 = RESOURCE_ITEM('/IGNORE','/IGNORE',(#25)); #3 = IDENTIFICATION_ASSIGNMENT('PRUS-RI-001-001','/IGNORE',$,(#1)); #5 = CLASSIFICATION_ASSIGNMENT(#7,(#3),'/IGNORE'); #7 = EXTERNAL_CLASS('/NULL','Resource_item_identification_code','/IGNORE',#8); #8 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:std',$); #10 = ORGANIZATION('/IGNORE','/IGNORE'); #12 = IDENTIFICATION_ASSIGNMENT('Parts R Us Ltd','/IGNORE','/IGNORE',(#10)); #14 = CLASSIFICATION_ASSIGNMENT(#16,(#12),'/IGNORE'); #16 = EXTERNAL_CLASS('/NULL','Organization_name','/IGNORE',#8); #18 = ORGANIZATION_OR_PERSON_IN_ORGANIZATION_ASSIGNMENT(#10,'/IGNORE',(#3)); #20 = CLASSIFICATION_ASSIGNMENT(#22,(#18),'/IGNORE'); #22 = EXTERNAL_CLASS('/NULL','Owner_of','/IGNORE',#8); #25 = PART('/IGNORE','/IGNORE','/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:
/representing_resource_item_realization(res_item_id='PRUS-RI-001-001', res_item_id_class='Resource_item_identification_code', res_item_id_ecl_id='urn:plcs:rdl:std', res_item_id_org_id='Parts R Us Ltd', res_item_id_org_id_class='Organization_name', res_item_id_org_id_ecl_id='urn:plcs:rdl:std', res_item_items='#1')/


Figure 4 —  Instantiation of representing_resource_item_realization template

Figure 4 —  Instantiation of representing_resource_item_realization template

Characterizations
No common characterizations of the template representing_resource_item_realization have been identified. However, the ISO 10303-239 EXPRESS model may enable other assignments to the entities instantiated by the template.
Template: representing_resource_item_relationship (Short name: rep_res_item_rel)

This section specifies the template representing_resource_item_relationship.

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 relationship between two resource items.

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


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

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

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

Figure 2 —  The graphical representation of the representing_resource_item_relationship template

Input parameters
The following input parameters are defined for this template:
class_name (Type='CLASS')
The name of the External_class used to describe the role of the relationship.
The following classes and their sub-classes can be used:
classifications: "Resource_item_relationship" (urn:plcs:rdl:std:Resource_item_relationship)
ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The id of the External_class_library storing the @class_name
relating (Type= 'ENTITY (Resource_item)' )
The Resource_item entity which relates to another Resource_item .
related (Type= 'ENTITY (Resource_item)' )
The Resource_item entity which is related to from another Resource_item .
Reference parameters
The following reference parameters are defined for this template:
res_item_rel(Type='ENTITY (Resource_item_relationship)')
Allow the Resource_item_relationship entity instantiated in this path to be referenced when this template is used.
Note: The Resource_item_relationship entity can be referenced in a template path by:
%^target = $representing_resource_item_relationship.res_item_rel%
where target is the parameter to which the Resource_item_relationship 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.
Resource_item_relationship

-- Mark the Resource_item_relationship entity as
-- referable when this template is used by binding it to the reference
-- parameter res_item_rel
%^res_item_rel = Resource_item_relationship%
Resource_item_relationship.name = '/IGNORE'
Resource_item_relationship.description = '/IGNORE'
Resource_item_relationship.relating -> @relating
Resource_item_relationship.related -> @related

-- Provide the role of the relationship by classifying the Resource_item_relationship
/assigning_reference_data(
    items=^res_item_rel,
    class_name=@class_name,
    ecl_id=@ecl_id)/
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Resource_item_relationship.name '/IGNORE'
Resource_item_relationship.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_resource_item_relationship(class_name='Alternative', ecl_id='urn:plcs:rdl:sample', relating='#1', realted='#2')/
(an illustration of the consolidated representing_resource_item_relationship template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by representing_resource_item_relationship template

Figure 3 —  Entities instantiated by representing_resource_item_relationship 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:
/representing_resource_item_relationship(class_name='Alternative', ecl_id='urn:plcs:rdl:sample', relating='#1', realted='#2')/


Figure 4 —  Instantiation of representing_resource_item_relationship template

Figure 4 —  Instantiation of representing_resource_item_relationship template

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

Related capabilities

This capability "representing_resource" is related to the following capabilities:

Dependent capabilities

This capability "representing_resource" is dependent on the following capabilities:

Model reference data

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

[Required_financial_resource]
[warning:]Error RDL1: The class Required_financial_resource does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
Required_human_resource(urn:plcs:rdl:std:Required_human_resource)
required resource by resource item that refers to a person or to a type of person with a skill needed to perform a task or an activity.
Required_material_resource(urn:plcs:rdl:std:Required_material_resource)
Required resource by resource item that refers to a physical item which is needed in order to perform a task or an activity. Note 1: This may represent artifacts, constructions or materials.
[Required_resource_by_functional_specification]
[warning:]Error RDL1: The class Required_resource_by_functional_specification does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Required_resource_by_physical_specification]
[warning:]Error RDL1: The class Required_resource_by_physical_specification does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Financial_resource_item]
[warning:]Error RDL1: The class Financial_resource_item does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Human_resource_item]
[warning:]Error RDL1: The class Human_resource_item does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
Material_resource_item(urn:plcs:rdl:std:Material_resource_item)
A Material_resource_item is a Resource_item that is classified as being a quantity of raw material, artefacts, tools, or equipment; or a facility; or the use of raw materials, artefacts, tools, equipment, or facilities for a certain period of time or for the carrying out of certain tasks in an application context.
[Resource_group_assembly_decomposition_relationship]
[warning:]Error RDL1: The class Resource_group_assembly_decomposition_relationship does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Resource_group_class_decomposition_relationship]
[warning:]Error RDL1: The class Resource_group_class_decomposition_relationship does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Resource_group_general_association_relationship]
[warning:]Error RDL1: The class Resource_group_general_association_relationship does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Contractual_resource_item_assignment]
[warning:]Error RDL1: The class Contractual_resource_item_assignment does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Locating_resource_item_assignment]
[warning:]Error RDL1: The class Locating_resource_item_assignment does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Material_resource_item_assignment]
[warning:]Error RDL1: The class Material_resource_item_assignment does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml

© OASIS 2010 — All rights reserved