Template:— contract (cntrct) Context:— UK_Defence |
Date: 2010/03/16 15:29:12 Revision: 1.4
|
This section specifies the template contract.
NOTE
The template has been defined in the context of
UK_Defence.
Refer to the business context for details of related templates.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
This template describes how to represent a written or spoken agreement that is enforceable by law.
The Contract business object is used by those UK_Defence Data Exchange
Specifications that require information about a written or spoken agreements that are enforceable by law.
Figure 1 — Graphical Representation for Business Object Contract
Contract:
The definition of an Contract object is:
Data about written or spoken agreements that are enforceable by law.
Attribute name
|
Attribute description
|
Attribute type
|
Optionality
|
Effective from date |
This is the date from which the Contract becomes effective. |
Intrinsic |
Mandatory |
Effective to date |
This is the date until which the Contract is effective. |
Intrinsic |
Mandatory |
ID |
This is the Identifier of the Contract. |
Identifier |
Mandatory |
Name |
This is the name of the Contract. |
Intrinsic |
Mandatory |
Payment completion date |
The date by which payment for the Contract must be made. |
Intrinsic |
Mandatory |
Payment method |
The method by which payment for the Contract must be made. |
Intrinsic |
Mandatory |
Providing party |
The contractee. |
Intrinsic |
Mandatory |
Receiving party |
The contractor. |
Intrinsic |
Mandatory |
Type |
This is the type of the Contract. |
Intrinsic |
Optional |
Value |
This is the value of the Contract. |
Intrinsic |
Mandatory |
Table 1 — Contract attribute details
The EXPRESS-G diagram in
Figure
2
shows the templates and EXPRESS entities that are required
to represent the template
"contract".
The text highlighted in blue shows the template parameters.
Figure 2 — An EXPRESS-G representation of the Information model for contract
The graphic for the template to be used in other EXPRESS-G diagrams
is shown in Figure
3
below.
Figure 3 — The graphical representation of the contract template
The following input parameters are defined for this template:
The name or identifier of the contract.
The identifier of the organization responsible for the contract.
The Name of the contract.
The identifier of the organization responsible for the Name of the contract.
The year component of the date and time from which the contract applies.
The month component of the date and time from which the contract applies.
The day component of the date and time from which the contract applies.
The hour component of the date and time from which the contract applies.
The minute component of the date and time from which the contract applies.
This parameter is optional. If not given, it will remain unset.
The second component of the date and time from which the contract applies.
This parameter is optional. If not given, it will remain unset.
The year component of the date and time until which the contract applies.
The month component of the date and time until which the contract applies.
The day component of the date and time until which the contract applies.
The hour component of the date and time until which the contract applies.
The minute component of the date and time until which the contract applies.
This parameter is optional. If not given, it will remain unset.
The second component of the date and time until which the contract applies.
This parameter is optional. If not given, it will remain unset.
The year component of the date and time by which the payment for the contract must be made.
The month component of the date and time by which the payment for the contract must be made.
The day component of the date and time by which the payment for the contract must be made.
The hour component of the date and time by which the payment for the contract must be made.
The minute component of the date and time by which the payment for the contract must be made.
This parameter is optional. If not given, it will remain unset.
The second component of the date and time by which the payment for the contract must be made.
This parameter is optional. If not given, it will remain unset.
The name of the class used to classify the contract.
(
Contract)
The following classes and their sub-classes can be used:
classifications: [Contract_payment_method]
Error RDL4: The URI urn:plcs:rdl:uk_defence is not listed in dexlib/data/refdata/rdl_index.xml
The value of the contract
The data type must also be indicated in this parameter, e.g.
"ANY_NUMBER_VALUE(5)".
The class name corresponding to the currency in which the value of the contract is measured.
The following classes and their sub-classes can be used:
The following reference parameters are defined for this template:
Allow the
Contract
entity instantiated in this path to be referenced when this template is used.
Note: The
Contract
entity can be referenced in a template path by:
%^target = $contract.contract%
where
target
is the parameter to which the
Contract
is bound.
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 = $contract.document%
where
target
is the parameter to which the
Document
is bound.
Allow the
Document_assignment
entity instantiated in this path to be referenced when this template is used.
%^target = $contract.document_assignment%
The following parameter combinations specify a uniqueness constraint:
Unique constraint: Unique id
Each instance of the
entity
(
Contract)
within the data set shall be uniquely identified
by a combination of the following parameters on this
template (contract) namely:
ID,
ID_source_organization.
The
instance is
referenced by the following template parameter:
contract.
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.
-- Instantiate a Contract Contract-- Bind the Contract to the parameter ^contract -- The parameter is a reference parameter so the Contract_assignment -- entity can be referred to when this template is used. %^contract =
Contract%
-- Set the Contract attributes id, purpose and kind to be ignored Contract.id = '/IGNORE'
Contract.kind = '/IGNORE'
Contract.purpose = '/IGNORE'
-- Assign identifier /
identifier(
ID=@ID,
source_organization=@ID_source_organization,
type='Contract_identification_code',
items=^contract)/
-- Assign payment completion date /
assigning_time(
date_class_name='Date_planned_payment_completion',
date_ecl_id='urn:plcs:rdl:uk_defence',
year=@Payment_completion_year,
month=@Payment_completion_month,
day=@Payment_completion_day,
hour=@Payment_completion_hour,
minute=@Payment_completion_minute,
second=@Payment_completion_second,
sense='.EXACT.',
hour_offset='0',
minute_offset='0',
items=^contract)/
/
assigning_reference_data(
items=^contract,
class_name=@Payment_method,
ecl_id='urn:plcs:rdl:uk_defence')/
-- Represent contract document /
representing_document(
doc_id=@Name,
doc_id_class_name='Contract_name',
doc_id_ecl_id='urn:plcs:rdl:uk_defence',
doc_org_id=@Name_source_organization,
doc_org_id_class_name='Organization_name',
doc_org_id_ecl_id='urn:plcs:rdl:std',
doc_vn_id='/NULL',
doc_vn_id_class_name='Version_identification_code',
doc_vn_id_ecl_id='urn:plcs:rdl:std',
doc_vn_org_id='/NULL',
doc_vn_org_id_class_name='Organization_identification_code',
doc_vn_org_id_ecl_id='urn:plcs:rdl:std',
domain='Through_life_support_standard',
domain_ecl_id='urn:plcs:rdl:uk_defence',
life_cycle_stage='Support',
life_cycle_stage_ecl_id='urn:plcs:rdl:std')/
%^document = $representing_document.document%
-- Assign contract document /
assigning_document(
doc_ass_role='Document_assignment',
doc_ar_ecl_id='urn:plcs:rdl:std',
assigned_document=^document,
is_assigned_to=^contract)/
%^document_assignment = $assigning_document.doc_asg%
-- Associcate contract document with contract /
assigning_document(
doc_ass_role='Document_assignment',
doc_ar_ecl_id='urn:plcs:rdl:std',
assigned_document=^document,
is_assigned_to=^contract)/
%^document_assignment = $assigning_document.doc_asg%
-- Contract effectivity /
assigning_dated_effectivity(
start_year=@Effective_from_year,
start_month=@Effective_from_month,
start_day=@Effective_from_day,
start_hour=@Effective_from_hour,
start_minute=@Effective_from_minute,
start_second=@Effective_from_second,
start_sense='exact',
start_hour_offset=0,
start_minute_offset=0,
end_year=@Effective_to_year,
end_month=@Effective_to_month,
end_day=@Effective_to_day,
end_hour=@Effective_to_hour,
end_minute=@Effective_to_minute,
end_second=@Effective_to_second,
end_sense='exact',
end_hour_offset=0,
end_minute_offset=0,
role_class_name='Effectivity_assignment',
role_ecl_id='urn:plcs:rdl:std',
items=^contract)/
/
assigning_product_property(
property_class_name='Contract_value',
property_ecl_id='urn:plcs:rdl:uk_defence',
described_element=^contract)/
%^target = $assigning_product_property.property%
/
product_property_numeric(
value=@Value,
unit=@Currency,
unit_ecl_id='urn:plcs:rdl:std',
si_unit='false',
context='Numerical_representation_context',
context_ecl_id='urn:plcs:rdl:std',
property=^target)/
-- Create relationship to providing organization Organization_or_person_in_organization_assignmentOrganization_or_person_in_organization_assignment.items ->
^contract
Organization_or_person_in_organization_assignment.assigned_entity ->
@Providing_partyOrganization_or_person_in_organization_assignment.role = '/IGNORE'
-- Create relationship to receiving organization Organization_or_person_in_organization_assignmentOrganization_or_person_in_organization_assignment.items ->
^contract
Organization_or_person_in_organization_assignment.assigned_entity ->
@Receiving_partyOrganization_or_person_in_organization_assignment.role = '/IGNORE'
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
4
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/contract(ID='C01', ID_source_organization='UK_Defence', Providing_party='ACME Engineering', Receiving_party='UK_Defence', Name='UK_Defence ACME Contract', Name_source_organzation='UK_Defence', Effective_from_year='2008', Effective_from_month='1', Effective_from_day='30', Effective_from_hour='12', Effective_from_minute='0', Effective_from_second='0', Effective_to_year='2009', Effective_to_month='1', Effective_to_day='30', Effective_to_hour='12', Effective_to_minute='0', Effective_to_second='0', Payment_completion_year='2009', Payment_completion_month='2', Payment_completion_day='10', Payment_completion_hour='17', Payment_completion_minute='0', Payment_completion_second='0', Type='Contract_type', Payment_method='Contract_payment_method', Value='20000', Currency='GBP')/
(an illustration of the consolidated contract template is shown in
Figure
5 below.)
Figure 4 — Entities instantiated by contract template
The instance diagram in
Figure
5
shows the graphic symbol for the template that is to be
used in other instance diagrams. The example template is:
/contract(ID='C01', ID_source_organization='UK_Defence', Providing_party='ACME Engineering', Receiving_party='UK_Defence', Name='UK_Defence ACME Contract', Name_source_organzation='UK_Defence', Effective_from_year='2008', Effective_from_month='1', Effective_from_day='30', Effective_from_hour='12', Effective_from_minute='0', Effective_from_second='0', Effective_to_year='2009', Effective_to_month='1', Effective_to_day='30', Effective_to_hour='12', Effective_to_minute='0', Effective_to_second='0', Payment_completion_year='2009', Payment_completion_month='2', Payment_completion_day='10', Payment_completion_hour='17', Payment_completion_minute='0', Payment_completion_second='0', Type='Contract_type', Payment_method='Contract_payment_method', Value='20000', Currency='GBP')/
Figure 5 — Instantiation of contract template
The following section details how the
contract
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 EXPRESS-G diagram in Figure
6
shows the possible characterizations of the template
"contract".
Figure 6 — Characterizations for contract
The following characterizations may apply:
Characterization Assigning contract type
NOTE this characterization is optional.