Capability (C049):— assigning_location | Date: 2007/06/22 12:22:09 Revision: 1.7 |
This section provides a business level overview of this capability.
The purpose of this capability is to enable the asignment of a Location to an entity of interest such as a Product_as_realized, Activity, Required_resource, or Event. Clearly for a product that moves, such as a ship, there are an infinite number of locations that it would have been in. The purpose of the capability is to enable the assignment of the Location when a significant event occurred such as a maintenance task, or a failure state occurred.
This section provides an overview of the information model that supports this capability.
A Location_assignment is a relationship between a Product, Event, or Person and a Location. There may be a distinct assignment for each qualification. For example planned, scheduled or actual locations.
Each assignment may have a start and end date or time. A Location may have multiple Location_assignments. The information model for assigning location is illustrated below.
The EXPRESS-G for assigning location is shown in Figure 1. below and explained in the following sections.
Each instance of Location shall be identified through the assignment of an identifier which has been classified as an "Location identification code" (urn:plcs:rdl:std:Location identification code). This may, for example, be the name associated with a location and can be provided through the use of the template assigning_identification_with_no_organization.
Each instance of Location shall optionally be assigned a classification of[Location_type_code]Error RDL1: The class Location_type_code does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
. This allows, for example, the location to be characterized using specialisations of this class such as;
The assigned Location represents a place or position where an Activity or Event can occur, or where a Product or Resource_item can exist. The role that the Location plays in these contexts can be given by classifying the Location_assignment as a type of "Location assignment role" (urn:plcs:rdl:std:Location assignment role). The purpose of the assignment will depend upon each business-specific use but there are several generic sub-classes which may be used (and specialised further where and when necessary), e.g.;
NOTE This list is not exhaustive or meant to cover all contexts, .
The items to which a Location_assignment can be assigned is determined by the select type (location_assignment_select), which varies depending upon the DEX in which this capability is used.
NOTE Where the select type list includes Document_definitions, Files, or any of their subtypes, (i.e. Digital_document_definition, Physical_document_definition, Digital_file, or Hardcopy), it is recommended to use the Document_location_identification functionality so that only a single representation is used for these items. This usage is compatible with the recommended PDM Schema usage. Hence, it is recommended not to use Location_assignment and Location for these entities.
Each Location may have zero or more alternative_location_representations, and is therefore an optional attribute of location. The subtypes of Location_representation provide the alternative representations of the Location defined and are represented using capability C027: representing_location.
NOTE These alternatives are meant to be alternative representations of the same place defined by the instance of Location that they are an attribute of. For different Locations see the guidance below about "Alternative location" (urn:plcs:rdl:std:Alternative location)s.
The representation of Location_representations is beyond the scope of C049: assigning_location. The template assigning_location defined below, does not instantiate any alternative_location_representations. The capability C027: representing_location is designed for this purpose.
A relationship between two Locations may be represented using an instance of Location_relationship. The meaning of the relationship can be provided through a classification of the relationship using the template assigning_reference_data. The classification should be a type of "Location relationship role" (urn:plcs:rdl:std:Location relationship role).
EXAMPLE Location B, which is in reference to location A or Location B (UK), which is a refinement of Location A (Europe).
The following sub-classes of "Location relationship role" (urn:plcs:rdl:std:Location relationship role) are provided for use with this DEX, but may be specialised where required by business-specific requirements;
NOTE There is no restriction on the types of relationship, however, the use of an alternative relationship should be used with care to ensure that the location related is indeed an alternate location and not an alternative representation of the relating location. For this purpose the alternative_location_representations of a Location should be used.
This section specifies how the information model can be further characterized by the assignment of additional information such as dates, approvals and people or organizations.
The following characterizations may apply.
Optionally, a Location_assignment can be given an Approval using an Approval_assignment.
This can be achieved through the use of the template: assigning_approval, defined within the capability C019: assigning_approvals.
The Approval
and Approval_assignment
are classified as a [Location_approval]Error RDL1: The class Location_approval does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
, or other suitable sub-class of [Approval_purpose]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
and [Approval_assignment_role]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
, respectively. (Note classification and reference data is described in C010: assigning_reference_data).
The Approval represented will have a status associated with it indicating whether the assignment has been approved or not. See C019: assigning_approvals for details on assigning approvals.
The date when the Location was assigned is represented by providing a date to the Location_assignment. This can be achieved through the use of the template assigning_calendar_date.
NOTE The representation of dates is described the capability C036: assigning_date_time.
The person or organization who assigned the location may be represented by using an Approving_person_organization to assign a Organization or Person_in_organization to the Location_assignment. This may be redundant if an authorized Approval has already been provided.
The Location_assignment, may optionally be assigned an Effectivity through the use of Effectivity_assignment For example, the Location_assignment may only be effective through a given set of dates. This may be specified through the use of the template assigning_dated_effectivity.
Care needs to be taken using Effectivity if also using planned start and planned end dates assigned directly to the Location_assignment, to avoid a conflict of semantics. Where there are multiple or overlapping periods when a location may be effective, then assigning_dated_effectivity should be used to manage them. However, for exchanging simple cases or where effectivity is not within the scope of the schema, then it is recommended to use assigning_calendar_date as described above and in capability C036: assigning_date_time.
Effectivity is described in C006: assigning_effectivity.
A Location and/or Location_assignment, may optionally be assigned a Property_representation through the use of Resource_property or Assigned_property, respectively. For example, the Location_assignment may have a maximum berth size or draft for a ship. Properties may be provided (for Location_assignments) through C076: assigning_product_properties (see template assigning_product_property), or (for Locations) through C078: assigning_resource_properties (see template assigning_resource_property).
NOTE For the example above, the maximum draft may be represented as a property of the shipyard, when the yard is being treated as a resource.
The following sections define a set of templates for the capability, where a template is a specification of a set of entities that need to be instantiated to represent a given set of information.
This section specifies the template assigning_location.
NOTE An explanation of a template and the associated instantiation path is provided in the Template overview section.
target
is the parameter to which the
Location_assignment
is bound.
-- The template assigning_location has an external reference -- locn_asst. Bind this to the local external reference -- location_assignment. It can now be the target for assigned dates %^locn_asst = $assigning_location.locn_asst% -- assign date to location_assignment in the role of "planned_start_date" /assigning_calendar_date(items=^locn_asst, date_class_name='Planned_start_date', date_ecl_id='urn:plcs:rdl:std', year=@2005, month=@4, day=@5)/
target
is the parameter to which the
Location
is bound.
-- The template assigning_location has an external reference -- location. Bind this to the local external reference -- Location. It can now be the target for assignments %^location = $representing_location.location% -- assign 'Home' to the location in the role of "Name" -- as known by organisation with the name "Company_name". /assigning_identification(items=^location, id='Home', id_class_name='Name', id_ecl_id='urn:plcs:rdl:std' org_id='Company_name' org_id_class_name='Organization_name' org_id_ecl_id='urn:plcs:rdl:std')/
Entity in path | Value | Inherited from |
Location.description | '/IGNORE' | — |
Location.name | '/IGNORE' | — |
Location_assignment.description | '/IGNORE' | — |
Location_assignment.role | '/IGNORE' | — |
NOTE this characterization is optional.
Dates can be associated with the assignment of a location_assignment by using the template assigning_calendar_date. For example, the planned start and end date of a location assigned to an instance of Location_assignment.
When instantiating the templates for assigning a date to a referenced location_assignment
this requires the use of the reference parameter $assigning_location.locn_asst
to identify the assigning_location
instantiated by the template
Location_assignment).
NOTE this characterization is optional.
Reference data can be associated with the location instance by using the template assigning_reference_data. For example, the type of location may be assigned to an instance of Location.
Care needs to be taken to avoid potential conflicts with the (optional - [0:?]) alternative_location_representations attribute as the subtypes of Location_representation provide the major typing mechanism for this part of the model. Also note that these subtypes are handled in a separate set of templates.
NOTE The mechanism for assigning reference data to a location is shown in figure Figure 6.
NOTE this characterization is optional.
Further Identifiers can be associated with an instance of location_assignment by using the template assigning_identification. For example, an id may be assigned to an instance of Location_assignment, if required.
NOTE The mechanism for assigning identifier is shown in figure Figure 6.
NOTE this characterization is optional.
Two Locations can be associated together by a Location_relationship with the relationship classified appropriately to describe the role (or purpose) of the relationship. This can be achieved by using the templates assigning_location and assigning_reference_data. There may be two assigning_location templates used, which create different Locations for one (or more) entities (e.g. activity). The relationship is classified as a type of "Location relationship role" (urn:plcs:rdl:std:Location relationship role) (or sub-class, e.g. "Alternative location" (urn:plcs:rdl:std:Alternative location)) using the assigning_reference_data template. This is shown in the figure below.
NOTE Due to the simplicity, no separate template has been created for representing these relationships.
This capability "Assigning location" is related to the following capabilities:
This capability "Assigning location" is dependent on the following capabilities:
The following classes of reference data are required for this capability:
[Planned_location]© OASIS 2010 — All rights reserved