Template: OASIS:WorkOrder

This section specifies the template WorkOrder.

The specification comprises a SysML Block that represents the template and an associated Parametric Diagram that defines the templates and PLCS PSMTemplate objects instantiated by the WorkOrder template.

The specification comprises the following sections:

NOTE    An explanation of a template and its specification is provided in the Template overview

The WorkOrder template describes how to represent a work order - the authority to undertake some work and the activity authorized by the work order.

The WorkOrder is one of a set of templates used to represent activities. These are summarized in Figure 1 which shows that the model contains templates for:

The actual templates are:

Figure 1 -  Templates representing activities

The SysML Block Definition diagram in Figure 2 shows how Work order is represented in the PLCS PSM.

Figure 2 -  Work order model

The following templates are related to the WorkOrder template:

NOTE    The WorkOrder template may make reference to other templates as part of the Parametric Diagram. These are not listed here.

Figure 3 shows the SysML Block that represents the template. The Block is an abstraction representing a pattern of templates and PLCS PSMTemplate objects.

The properties, i.e. the SysML Block Part, Reference and Value properties, of the template's SysML Block are described in the Template Properties section.

The output ports shown on the template's SysML Block are described in the template output ports section.

The constraints shown on the template's SysML Block are described in the template constraints section.

The SysML Parametric diagrams for the template Block are shown in template parametric diagram section.

Figure 3 -  Template block definition diagram for WorkOrder

The following SysML Part, Reference, and Value properties are defined for this template:

References:
inResponseTo [0..*] (Block: Ap239Ap233Psm:WorkRequest)
The work request that is being addressed by the work order.
issuingPersonOrOrganization [1] (Block: Ap239Ap233Psm:OrganizationOrPersonInOrganizationSelect)
The PersonInOrganization or Organization that issued the work order.
status [0..1] (Template: OASIS:StateAssertion)
The status of the work order.
The reference data used in Template: OASIS:StateAssertion is restricted as follows:
RDL constraint 1:
The status is represented subclasses of State_of_work_order.
The reference data for:
OASIS:StateAssertion.sameAs -> ExternalOwlObject.individual
is restricted to the following class or a subclass:
Parts:
ids [1..*] (Template: OASIS:Identification)
The identifiers assigned to the work order.
The reference data used in Template: OASIS:Identification is restricted as follows:
RDL constraint 1:
The ids must be classified as an Work_order_identification_code or a subclass thereof.
The reference data for:
OASIS:Identification.role -> ExternalOwlClass.class
is restricted to the following class or a subclass:
description [0..1] (Template: OASIS:Descriptor)
An optional description assigned to the work order.
classifications [0..*] (Template: OASIS:Classifier)
The classification of the work order.
The reference data used in Template: OASIS:Classifier is restricted as follows:
RDL constraint 1:
The reference data for:
OASIS:Classifier.class -> ExternalOwlClass.class
is restricted to classes that are subclasses of the following class:
name [0..1] (Template: OASIS:Name)
An optional name assigned to the work order.
Values:
dateOfIssue [0..1] (Block: Ap239Ap233Psm:DateTimeString)
The optional date when the work order was issued.

The following constraint, normally a uniqueness constraint, is applicable when instantiating the DateTimeString:

rule.Ap239Ap233Psm.ExternalOwlClass.ur1
Constraint: XSDDATETIME
Specification: (OCL2.0)
self.matches('[0-9]{4}-[0-9]{2}-[0-9]{2}T[0-9]{2}:[0-9]{2}:[0-9]{2}Z')

The following output ports are defined for this template:

work_order (Block: Ap239Ap233Psm:WorkOrder)
Enables the Block: Ap239Ap233Psm:WorkOrder instantiated by this template to be referenced when the template is used.

The following constraints are defined for this template:

Constraint: uniqueWorkOrder
Specification: (OCL2.0)
WorkOrder::allInstance()->isUnique(id)
There shall only be one WorkOrder within the data set uniquely identified by the following parameter on this template namely: WorkOrder.id.

This section describes the template's Parametric Diagram. The diagram details the pattern of templates and PLCS PSMTemplate objects that are required to represent the template WorkOrder.

The public properties, i.e. those visible in the template's SysML block (See Figure 3) are shown on the left of a Parametric Diagram.

NOTE    Restrictions on the reference data to be set on the public properties is defined in the Template Properties section.

The output ports are shown on the right of a Parametric Diagram.

PLCS PSM objects are shaded khaki and Templates are shaded light green in a Parametric Diagram.

Figure 4 -  Parametric diagram for WorkOrder

The following blocks are instantiated by this template and bound to private parts of the template as shown in the Parametric Diagram section:

Private Part Property:workOrder [1] (Block: Ap239Ap233Psm:WorkOrder)
Private Part Property:issueDate [0..1] (Block: Ap239Ap233Psm:DateTimeAssignment)
Private Part Property:organizationIssuing [1] (Block: Ap239Ap233Psm:OrganizationOrPersonInOrganizationAssignment)
Private Part Property:statusAssg [0..1] (Block: Ap239Ap233Psm:StateAssignment)
Private Reference Property:classDateOfIssue [0..1] (Block: Ap239Ap233Psm:ExternalOwlClass)

The following constraint, normally a uniqueness constraint, is applicable when instantiating the ExternalOwlClass:

rule.Ap239Ap233Psm.ExternalOwlClass.ur1
Constraint: ur1
Specification: (OCL2.0)
ExternalOwlClass::allInstances()->isUnique(class)
Private Reference Property:classIssuingBody [1] (Block: Ap239Ap233Psm:ExternalOwlClass)

The following constraint, normally a uniqueness constraint, is applicable when instantiating the ExternalOwlClass:

rule.Ap239Ap233Psm.ExternalOwlClass.ur1
Constraint: ur1
Specification: (OCL2.0)
ExternalOwlClass::allInstances()->isUnique(class)
Private Part Property:issueDateClassifier [0..1] (Template: OASIS:Classifier)
Private Part Property:issuingOrgClassifier [1] (Template: OASIS:Classifier)
Private Part Property:combNameAndDesc [1] (Constraint Block: OASIS:Name:CombineNamesAndDescriptors)

Figure 3 shows the instances that have been instantiated in the template. These are used to set the default value of blocks.

Instance diagram
Figure 3 -  Model instance diagram for WorkOrder

The following instances have been created:

classWorkOrderIdentificationCode instance of Block: Ap239Ap233Psm:ExternalOwlClass.

This is the standard classification of a work order id and is used as a constraint on the id.
classIssuerOf instance of Block: Ap239Ap233Psm:ExternalOwlClass.

This is used within the template to correctly classify the person and organization assignment to to the work order.
classDateOfIssue instance of Block: Ap239Ap233Psm:ExternalOwlClass.

This is used within the template to classify the date assignment.

There are no constraint blocks defined in this template.

The following section provides an example XML dataset that has been instantiated in accordance with this template.

Data set: Work order

Work order work_order.xml View download

This example shows the XML instantiated to represent an Work order raised on a Realized Part.