Capability (C006):— assigning_effectivity |
Date: 2008/02/25 12:17:46 Revision: 1.25
|
Issue:
RBN-4 by Rob Bodington (06-06-28) [minor_technical, closed] - {Type = contents}
TEMPLATE: representing_dated_effectivity
Error in path:
%^dated_effectivity = Dated_effectivity.%
should be
%^dated_effectivity = Dated_effectivity%
Template assigning_time.
Rather than biding directly to the reference parameter of a sub template.
e.g.
Dated_effectivity.start_bound -> $representing_date_time.date_time%
It is better to introduce a local ref parameter.
E.g.
%^start_date_time = $representing_date_time.date_time%
Dated_effectivity.start_bound -> ^start_date_time
Comment:
(Rob Bodington 06-06-28)
Modified
There are two applications of effectivity that are possible with this capability. The first of these is configuration effectivity
(used intimately with product configuration), and the second - a more independant, general usage.
Configuration effectivity allows attachment of effectivity information to occurrences of component parts in the context of
a particular configuration item. This enables the specification of the valid use of a part occurrence in the context defined
for a particular product configuration. This controls the constituent parts that are planned to be used for manufacturing
end items of a particular product configuration within a dated time period or for a certain lot or serial number range of
the end items.
The Effectivity entity supports the specification of a domain of applicability for product data. Effectivity is a generic concept defining
the valid use of the product data to which the effectivity is assigned.
This capability allows assignment of general validity periods to product data that control the usage of these product data
independent of any particular life cycle or context.
This is achieved through the Effectivity_assignment entity which may refer to one or more target items (instances) of product data that the validity period is assigned. The types of product data to which an effectivity may be
assigned are defined in the effectivity_item select type.
Hence, the validity period of Effectivity may be applied to different types of product data, potentially specifying an additional role in which the effectivity is
assigned.
NOTE
The assignment of effectivities is often done during the approval process, i.e, when releasing product data for the next stage
of the development process, it gets effectivity information assigned to determine when and in which context these product
data may be used.
The following diagram shows the different capabilities required for assignment of effectivities.
Figure 1 — High-level Information Model Overview
NOTE
The target entities will largely exist in other capabilities.
The following diagram provides a more detailed overview of effectivity and it's subtypes.
Figure 1.1 — Detailed Information Model Overview
NOTE
The subtypes cannot be mixed during instantiation, although different types can be related through effectivity relationships.
NOTE
Subtypes and relationships involving of time interval are shown separately in a subsequent section.
Effectivity is a key concept to control the valid use of product data. The effectivity entity supports the specification of
a domain of applicability for product data. Effectivity is a generic concept defining the valid use of the product data to
which the effectivity is assigned.
The subtypes of Effectivity include;
These subtypes, which are discussed in detail later, restrict the domain of applicability of the associated product data to
a date range, a particular lot or serial number range, or to a time interval respectively.
The validity period of Effectivity may be applied to different types of product data, through the Effectivity_assignment entity.
Effectivity_assignment provides a set of items, which refer to the instances of product data, to which the validity period is assigned. The types of product data to which
an effectivity may be assigned are defined in the effectivity_item select type.
The Effectivity_assignment entity should have a role associated with it through the entity Classification_assignment. This classification should be used to distinguish between, e.g., required, planned, or actual, effectivities of an object.
The class assigned through this mechanism is normally represented as an external_class as defined within an external_class_library.
This is described more fully in the capability C010: assigning_reference_data.
The Instance Model: EXPRESS entities and attributes
The instantiation of the EXPRESS entities and attributes used to support the requirements of Item_usage_effectivity, dated_effectivity
and serial_effectivity are shown in the figure below.
Figure 2 — Effectivity Assignment Instance Diagram
NOTE
the definition of the time period is provided in a later example
EXAMPLE
#460=PART_VIEW_DEFINITION('', 'design view on sleeve assembly', '', #230, (#830), #450);
#560=NEXT_ASSEMBLY_USAGE('su-2', 'single instance usage', 'su2 - front', #660, #460, $, '');
#660=PART_VIEW_DEFINITION('', 'design view on hub assembly', '', #230, (#830), #650);
#7018=EXTERNAL_CLASS_LIBRARY('http://www.lsc.co.uk/RDL/MoD/PLCS/Identifiers/', '');
#7024=EFFECTIVITY_ASSIGNMENT(#7025, $, (#560));
#7025=TIME_INTERVAL_EFFECTIVITY($, 'tpvfa_001', 'time period validity for assembly', #7026);
#7033=CLASSIFICATION_ASSIGNMENT(#7034, (#7024), $);
#7034=EXTERNAL_CLASS($, 'planned period', $, #7018);
NOTE
for clarity, the example is incomplete (instances #230, #830, #450, #650 and #7026 are not shown).
The Dated_effectivity entity is a subtype of Effectivity that applies onwards from a point in time, or between two points in time which define the start (start_bound) and end (end_bound) of the Dated_effectivity. These points in time may be specified as date or a date and time, or by an event occurrence.
Depending on whether the end_bound attribute is specified, the actual domain of time defined by a Dated_effectivity is:
- either, the time interval between the start and end date or event;
- or, the open time interval that starts at the start date or event.
If the end_bound is an event that actually identifies a point in time that comes before the start_bound, then the actual domain of effectivity is empty.
NOTE
If both attributes are specified with dates, the end_bound shall be greater than the start_bound.
Figure 3 — Dated Effectivity Instance Diagram
NOTE
In this example, the effectivity defines a valid start date (planned) as indicated by the classification "planned start" (#7042).
A date and a time (with time zone) specifies when the validity begins.
NOTE
That a secondary bound was not necessary (optional) or would be redundant since the role of the effectivity is to only identify
the start_bound (beginning) of the validity.
EXAMPLE
#560=NEXT_ASSEMBLY_USAGE('su-2', 'single instance usage', 'su2 - front', #660, #460, $, '');
#7018=EXTERNAL_CLASS_LIBRARY('http://www.lsc.co.uk/RDL/MoD/PLCS/Identifiers/', '');
#7023=DATED_EFFECTIVITY($, $, $, #7029, #7035);
#7029=DATE_TIME(#7032, #7030);
#7030=LOCAL_TIME(15, 27, 30., #7031);
#7031=TIME_OFFSET(5, 0, .BEHIND.);
#7032=CALENDAR_DATE(2004, 6, 12);
#7040=EFFECTIVITY_ASSIGNMENT(#7023, $, (#560));
#7041=CLASSIFICATION_ASSIGNMENT(#7042, (#7040), $);
#7042=EXTERNAL_CLASS($, 'planned start', $, #7018);
A Serial_effectivity is a type of Effectivity for which the domain of applicability is defined as a possibly open-ended interval of serial numbers. The start_id is the first valid serial number and the optional end_id is the last valid serial number. If the value for end_id is not specified, the interval of applicability has no upper bound.
NOTE
In the context of the PLCS Schema, Serial_effectivity is only used to specify the valid use of a part occurrence in the context of a serial number range for end items of the identified
product configuration, i.e., Product_configuration.
Figure 4 — Serialized Effectivity Instance Diagram
NOTE
In this example, the effectivity defines a validity range of serial numbers.
NOTE
Although a separate classification assignment is not necessary, we have included one for clarity. The name of the class assigned
needs to be agreed by those exchanging the data if using this feature.
EXAMPLE
#560=NEXT_ASSEMBLY_USAGE('su-2', 'single instance usage', 'su2 - front', #660, #460, $, '');
#7018=EXTERNAL_CLASS_LIBRARY('http://www.lsc.co.uk/RDL/MoD/PLCS/Identifiers/', '');
#7036=SERIAL_EFFECTIVITY($, 'Front brake abs', 'Valid serial number range', 'UK-075UYF-12791-14E-3701', 'UK-075UYF-12791-14E-4700');
#7037=EFFECTIVITY_ASSIGNMENT(#7036, $, (#560));
#7038=CLASSIFICATION_ASSIGNMENT(#7039, (#7037), $);
#7039=EXTERNAL_CLASS($, 'planned', $, #7018);
The entity Lot_effectivity is a subtype of Effectivity. It defines the domain of applicability as a given batch of end items.
The lot_id specifies a production batch of end items for the manufacturing of which the effectivity applies and the lot_size specifies the size of the batch of end items for the manufacturing of which the effectivity applies.
NOTE
In the context of the PLCS Schema, Lot_effectivity is only used to specify the valid use of a part occurrence in the context of a unit of manufacture of the identified product
configuration, i.e., the Product_configuration.
Figure 5 — Lot Effectivity Instance Diagram
NOTE
In this example, the effectivity identifies a batch/lot of products and the number (size) of units to be processed. There
is no constraints on the form of the lot identifier.
NOTE
Although a separate classification assignment is not necessary, we have included one for clarity. The name of the class assigned
needs to be agreed by those exchanging the data if using this feature.
EXAMPLE
#560=NEXT_ASSEMBLY_USAGE('su-2', 'single instance usage', 'su2 - front', #660, #460, $, '');
#7018=EXTERNAL_CLASS_LIBRARY('http://www.lsc.co.uk/RDL/MoD/PLCS/Identifiers/', '');
#7022=UNIT('count', .T.);
#7043=LOT_EFFECTIVITY($, 'Front brake abs', 'Valid lot/batch', 'UK-075UYF-12791-14E-3701+', #7044);
#7044=VALUE_WITH_UNIT(#7022, LENGTH_MEASURE(999.));
#7045=EFFECTIVITY_ASSIGNMENT(#7043, $, (#560));
#7046=CLASSIFICATION_ASSIGNMENT(#7047, (#7045), $);
#7047=EXTERNAL_CLASS($, 'actual', $, #7018);
The entity Time_interval_effectivity is a subtype of Effectivity for which the domain of applicability (the effectivity_period) is defined as a possibly open. However, this entity only provides the ability to identify a time interval - it does not
define the interval itself. For that we use the subtype of this Time_interval_with_bounds, which provides a start (primary_bound) and an optional end (secondary_bound) time, but also a duration (duration_from_primary_bound). This type of effectivity enables the specification of an interval of time through one boundary and the duration of the
interval.
NOTE
These bounding points in time may be specified as date or a date and time, or by an event occurrence.
NOTE
In the context of the PLCS Schema, Time_interval_effectivity is only used to specify validity periods for the associated product data.
Time_interval_relationship
A Time_interval_relationship, relates two instances of Time_interval together. The relating_time_interval represents the first (or proceeding) time interval and the related_time_interval represents the second (or latter) interval. The relation_type attribute provides the context of the relationship. There are no set values for the types of relationships, so these must
be agreed between the parties involved. One type of relationship might be "decreasing" - meaning that the intervals get shorter
from one to another. This might be a useful function where the configuration being assembled depends upon something the dwindling
life expectancy of the fabricating tool or the decreasing amount of a raw material or resource which is consumed by the process
concerned.
Figure 6 — Time Interval Relationship
Figure 6.1 — Time Interval Effectivity Instance Diagram
NOTE
In this example, the effectivity defines a validity period which began on Jun 12th 2004 at 3.27pm GMT-5hrs and was valid for
a total of 6.5 hours.
NOTE
that a secondary_bound was not (necessary or) defined for the time interval and that the classification and assignment items
have not been shown here.
EXAMPLE
#7025=TIME_INTERVAL_EFFECTIVITY($, 'tpvfa_001', 'time period validity for assembly', #7026);
#7026=TIME_INTERVAL_WITH_BOUNDS($, 'duration of manufacture', 'time required for manufacture', #7029, $, #7027);
#7027=DURATION(#7028, PLANE_ANGLE_MEASURE(6.5));
#7028=UNIT('Hours', .T.);
#7029=DATE_TIME(#7032, #7030);
#7030=LOCAL_TIME(15, 27, 30., #7031);
#7031=TIME_OFFSET(5, 0, .BEHIND.);
#7032=CALENDAR_DATE(2004, 6, 12);
An Effectivity_relationship is an association between two instances of Effectivity . The meaning of the relationship is represented with the relation_type attribute. An effectivity_relationship may be used
to define an effectivity with respect to some other effectivity or to express some dependency between two effectivity objects.
Figure 7 — Effectivity Relationship Instance Diagram
EXAMPLE
#7025=TIME_INTERVAL_EFFECTIVITY($, 'tpvfa_001', 'time period validity for assembly', #7026);
#7036=SERIAL_EFFECTIVITY($, 'Front brake abs', 'Valid serial number range', 'UK-075UYF-12791-14E-3701', 'UK-075UYF-12791-14E-4700');
#7048=EFFECTIVITY_RELATIONSHIP('Constraint', 'The serial effectivity constrains the time interval effectivity', #7036, #7025);
NOTE
The relation_type attribute is used to specify the type of the Effectivity_relationship and therefore should be populated with predefined values of which both sides of the exchange have a common understanding.
The value ’constraint’ for the name attribute should be used to indicate that the validity period defined by the related_effectivity should be within the time period of the relating_effectivity. The value ’inheritance’ for the relation_type attribute should be used to indicate that the related_effectivity shall not define its own validity period, but inherits the validity period from the relating_effectivity (this inheritance might occur over a chain of interrelated effectivity_relationship instances). There are no further standard
mappings specified for the name attribute. Additional values must be agreed upon mutually.
For an Effectivity that identifies a period of time, if applicable, the following values shall be used for the Role attribute
(as instantiated through an instance of Classification_assignment):
- 'actual period': The actual period during which the Effectivity lasted;
- 'actual start': The actual date in the past when the Effectivity became effective;
- 'actual stop': The actual date in the past when the Effectivity ceased to be effective;
- 'planned period': The period associated with the Effectivity defines a planned period of time during which the associated
object is or was supposed to be effective;
- 'planned start': The date or event associated with the Effectivity defines the date or event when the Effectivity is or was
supposed to start;
- 'planned stop': The date or event associated with the Effectivity defines the date or event when the Effectivity is or was
supposed to stop;
- 'required period': The associated object must be kept effective for this period;
- 'required start': The date or event associated with the Effectivity is a due start date. Conformance to this bound is expected;
- 'required stop': The date or event associated with the Effectivity is a due stop date. Conformance to this bound is expected.
For examples of classification please refer to the examples above.
The class assigned through this mechanism is normally represented as an External_class as defined within an External_class_library. This is described more fully in the capability C010: assigning_reference_data.
Effectivity can be implicitly assigned when managing the composition of a configuration. Configuration composition management
is concerned with the specification of the different product configurations that exist for a given product concept, and the
association with product data that is necessary to build those configurations. This includes the identification of the actual
constituents that are to be included in a planned unit of production of a Product_configuration and their valid usage.
Capability C063: representing_product_configuration describes the context of product configuration management but we reproduce those parts necessary below to describe the implicit
assignment.
The association of effectivity information to different types of product data can be achieved through the Item_usage_effectivity entity. This entity represents a tuple of; a resolved_configuration (an instance of Item_design_association - see C063: representing_product_configuration), an effectivity_domain (an instance of a type of Effectivity), and an item_usage_relationship (i.e. an instance of a type of View_definition_usage, such as Next_assembly_usage (see C003: representing_assembly_structure).
The reference to an instance of Item_design_association allows control of the constituent parts
(e.g. an instance of
Part_version or
Part_view_definition)
that should be used to build the physical instances of a Product_configuration through the referenced
design
which is a type of
version_or_definition. Hence, the effectivity is related to parts, assembly and configuration - implicitly.
The composition of the product configurations for planned units of manufacture may be controlled for a given time period,
lot, or serial number range (See the sections above for the use of these).
NOTE
It is recommended to not instantiate the Effectivity instance as standalone instance, i.e., an effectivity should always be assigned to some product data either by using the
Effectivity_assignment or by using the relevant subtype of effectivity in conjunction with Item_usage_effectivity, or the effectivity should have a relationship to some other effectivity that is assigned to some product data through Effectivity_relationship. Furthermore, it is always recommended to instantiate an effectivity as one of its subtypes, unless the definition of the
effectivity is based on some other effectivity using Effectivity_relationship.
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_dated_effectivity.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
The EXPRESS-G diagram in
Figure
1
shows the templates and EXPRESS entities that are required
to represent the template
"assigning_dated_effectivity".
The text highlighted in blue shows the template parameters.
Figure 1 — An EXPRESS-G representation of the Information model for assigning_dated_effectivity
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 template assigning_dated_effectivity
The following input parameters are defined for this template:
Calendar_date year_component of the effectivity start date and time.
Calendar_date month_component of the effectivity start date and time.
Calendar_date day_component of the effectivity start date and time.
Local_time hour_component of the effectivity start date and time.
Local_time minute_component of the effectivity start date and time.
This parameter is optional. If not given, it will remain unset.
Local_time day_component of the effectivity start date and time.
This parameter is optional. If not given, it will remain unset.
The direction of the offset. Enumeration values: 'ahead', 'exact' or 'behind'.
The number of hours by which a time is offset from Coordinated Universal Time.
The number of minutes by which a time is offset from Coordinated Universal Time.
The value of this attribute need not be specified.
This parameter is optional. If not given, it will remain unset.
Calendar_date year_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
Calendar_date month_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
Calendar_date day_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
Local_time hour_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
Local_time minute_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
Local_time second_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
The direction of the offset. Enumeration values: 'ahead', 'exact' or 'behind'.
The number of hours by which a time is offset from Coordinated Universal Time.
The number of minutes by which a time is offset from Coordinated Universal Time.
The value of this attribute need not be specified.
This parameter is optional. If not given, it will remain unset.
The name of the class being used to classify the
effectivity assignment
(
Effectivity_assignment)
This provides the role for the assignment.
The following classes and their sub-classes can be used:
The identifier of the
External_class_library
storing the definition of the class referenced by the parameter @role_class_name.
The items to which the dated effectivity is assigned.
The following reference parameters are defined for this template:
Allow the
Effectivity_assignment
entity instantiated in this path to be referenced when this template is used.
%^target = $assigning_dated_effectivity.eff_asgn%
Allow the
Dated_effectivity
entity instantiated in this path to be referenced when this template is used.
%^target = $assigning_dated_effectivity.dated_effectivity%
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
-- Instantiate Effectivity_assignment entity Effectivity_assignment-- Set the Effectivity_assignment attribute role to be ignored Effectivity_assignment.role = '/IGNORE'
-- Bind the Effectivity_assignment to the parameter ^eff_asgn. -- The parameter is a reference parameter so the Effectivity_assignment -- entity can be referred to when this template is used. %^eff_asgn =
Effectivity_assignment%
-- Assign reference data to Effectivity_assignment /
assigning_reference_data(
items=Effectivity_assignment,
class_name=@role_class_name,
ecl_id=@role_ecl_id)/
-- Instantiate representing_dated_effectivity /
representing_dated_effectivity(
start_year=@start_year,
start_month=@start_month,
start_day=@start_day,
start_hour=@start_hour,
start_minute=@start_minute,
start_second=@start_second,
start_sense=@start_sense,
start_hour_offset=@start_hour_offset,
start_minute_offset=@start_minute_offset,
end_year=@end_year,
end_month=@end_month,
end_day=@end_day,
end_hour=@end_hour,
end_minute=@end_minute,
end_second=@end_second,
end_sense=@end_sense,
end_hour_offset=@end_hour_offset,
end_minute_offset=@end_minute_offset)/
-- Bind the Dated_effectivity instantiated by the -- template representing_dated_effectivity -- to the parameter ^dated_effectivity. -- The parameter is a reference parameter so the -- Dated_effectivity can be referred to when this template is used. -- %^dated_effectivity = $representing_dated_effectivity.^dated_effectivity% %^dated_effectivity = $representing_dated_effectivity.dated_effectivity%
-- Set the Effectivity_assignment.assigned_effectivity to -- the Dated_effectivity entity instantiated by -- representing_dated_effectivity -- Effectivity_assignment.assigned_effectivity -> $representing_dated_effectivity.^dated_effectivity -- Effectivity_assignment.assigned_effectivity -> $representing_dated_effectivity.dated_effectivity Effectivity_assignment.assigned_effectivity ->
^dated_effectivity
-- Assign the Effectivity_assignment -- to the instances passed into the template through the @items -- input parameter (e.g. an Next_assembly_usage) Effectivity_assignment.items ->
@items
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
3
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/assigning_dated_effectivity(start_year='2005', start_month='11', start_day='22', start_hour='15', start_minute='15', start_second='00', start_sense='ahead', start_hour_offset='2', start_minute_offset='', end_year='2005', end_month='12', end_day='24', end_hour='15', end_minute='15', end_second='', end_sense='ahead', end_hour_offset='1', end_minute_offset='', role_class_name='Actual_effectivity', role_ecl_id='urn:plcs:rdl:std')/
(an illustration of the consolidated assigning_dated_effectivity template is shown in
Figure
4 below.)
Figure 3 — Entities instantiated by template assigning_dated_effectivity
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_dated_effectivity(start_year='2005', start_month='11', start_day='22', start_hour='15', start_minute='15', start_second='00', start_sense='ahead', start_hour_offset='2', start_minute_offset='', end_year='2005', end_month='12', end_day='24', end_hour='15', end_minute='15', end_second='', end_sense='ahead', end_hour_offset='1', end_minute_offset='', role_class_name='Actual_effectivity', role_ecl_id='urn:plcs:rdl:std')/
Figure 4 — Instantiation of template assigning_dated_effectivity
No common characterizations of the template
assigning_dated_effectivity
have been identified. However, the ISO 10303-239 EXPRESS model
may enable other assignments to the entities instantiated by the template.
This section specifies the template representing_dated_effectivity.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
The EXPRESS-G diagram in
Figure
1
shows the templates and EXPRESS entities that are required
to represent the template
"representing_dated_effectivity".
The text highlighted in blue shows the template parameters.
Figure 1 — An EXPRESS-G representation of the Information model for representing_dated_effectivity
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 representing_dated_effectivity template
The following input parameters are defined for this template:
Calendar_date
year_component of the effectivity start date and time.
Calendar_date
month_component of the effectivity start date and time.
Calendar_date
day_component of the effectivity start date and time.
Local_time
hour_component of the effectivity start date and time.
Local_time
minute_component of the effectivity start date and time.
This parameter is optional. If not given, it will remain unset.
Local_time
day_component of the effectivity start date and time.
This parameter is optional. If not given, it will remain unset.
The direction of the offset. Enumeration values: 'ahead', 'exact' or 'behind'.
The number of hours by which a time is offset from Coordinated Universal Time.
The number of minutes by which a time is offset from Coordinated Universal Time.
The value of this attribute need not be specified.
This parameter is optional. If not given, it will remain unset.
Calendar_date
year_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
Calendar_date
month_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
Calendar_date
day_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
Local_time
hour_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
Local_time
minute_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
Local_time
second_component of the effectivity end date and time.
This parameter is optional. If not given, it will remain unset.
The direction of the offset. Enumeration values: 'ahead', 'exact' or 'behind'.
The number of hours by which a time is offset from Coordinated Universal Time.
The number of minutes by which a time is offset from Coordinated Universal Time.
The value of this attribute need not be specified.
This parameter is optional. If not given, it will remain unset.
The following reference parameters are defined for this template:
Allow the
Dated_effectivity
entity instantiated in this path to be referenced when this template is used.
%^target = $representing_dated_effectivity.dated_effectivity%
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
-- Instantiate Dated_effectivity entity Dated_effectivity-- Bind the Dated_effectivity entity to the parameter dated_effectivity -- The dated_effectivity parameter is a reference parameter so the -- Dated_effectivity entity can be referred to when this template is used. %^dated_effectivity =
Dated_effectivity%
-- Set the Dated_effectivity attributes to be ignored Dated_effectivity.id = '/IGNORE'
Dated_effectivity.name = '/IGNORE'
Dated_effectivity.description = '/IGNORE'
-- Set up date for start_bound - Instantiate the representing_date_time template /
representing_date_time(
year=@start_year,
month=@start_month,
day=@start_day,
hour=@start_hour,
minute=@start_minute,
second=@start_second,
sense=@start_sense,
hour_offset=@start_hour_offset,
minute_offset=@start_minute_offset)/
-- representing_date_time has a reference parameter ^date_time -- which is bound to the entity Date_time -- Assign Dated_effectivity.start_bound to ^date_time %^start_date_time = $representing_date_time.date_time%
Dated_effectivity.start_bound ->
^start_date_time
-- Set up date for end_bound - Instantiate the representing_date_time template -- NOTE - this is optional /
representing_date_time(
year=@end_year,
month=@end_month,
day=@end_day,
hour=@end_hour,
minute=@end_minute,
second=@end_second,
sense=@end_sense,
hour_offset=@end_hour_offset,
minute_offset=@end_minute_offset)/
-- representing_date_time has a reference parameter ^date_time -- which is bound to the entity Date_time -- Assign Dated_effectivity.end_bound to ^date_time %^end_date_time = $representing_date_time.date_time%
Dated_effectivity.end_bound ->
^end_date_time
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
3
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/representing_dated_effectivity_start_date(start_year='2005', start_month='11', start_day='22', start_hour='15', start_minute='15', start_second='00', start_sense='exact', start_hour_offset='0', start_minute_offset='')/
(an illustration of the consolidated representing_dated_effectivity_start_date template is shown in
Figure
5 below.)
This is an example of when setting a start_bound dated effectivity, when e.g.
the end_bound date is not yet known. This may be used when the end_bound date is
dependent on other events, such as start date for installation (end date unknown
until part needs to be replaced, at which point the end_bound date for this
date_effectivity is set simultaneously as the start_bound date for the replacing part
is set).
Figure 3 — Entities instantiated by representing_dated_effectivity template,
when only start_bound attribute is used
The instance diagram in Figure
4
shows an example of the EXPRESS entities and templates that are instantiated by the template:
(an illustration of the consolidated template is shown in
Figure
5 below.)
/representing_dated_effectivity(start_year='2005', start_month='11', start_day='22', start_hour='15', start_minute='15', start_second='00', start_sense='exact', start_hour_offset='0', start_minute_offset='', end_year='2005', end_month='12', end_day='24', end_hour='15', end_minute='15', end_second='', end_sense='exact', end_hour_offset='0', end_minute_offset='')/
Note that the template
assigning_identification
is used in the diagram.
Namely:
@1 /assigning_identification(id='Release 1', id_class_name='Effectivity_identification_code', id_ecl_id='urn:plcs:rdl:std', items='#242')/
Figure 4 — Entities instantiated by representing_dated_effectivity template,
using both start and end_bound dates
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:
/representing_dated_effectivity(start_year='2005', start_month='11', start_day='22', start_hour='15', start_minute='15', start_second='00', start_sense='exact', start_hour_offset='0', start_minute_offset='', end_year='2005', end_month='12', end_day='24', end_hour='15', end_minute='15', end_second='', end_sense='exact', end_hour_offset='0', end_minute_offset='')/
Figure 5 — Instantiation of representing_dated_effectivity template
The following section details how the
representing_dated_effectivity
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 identifiers
NOTE this characterization is optional.
This section specifies the template assigning_conditional_effectivity.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
The EXPRESS-G diagram in
Figure
1
shows the templates and EXPRESS entities that are required
to represent the template
"assigning_conditional_effectivity".
The text highlighted in blue shows the template parameters.
Figure 1 — An EXPRESS-G representation of the Information model for assigning_conditional_effectivity
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_conditional_effectivity template
The following input parameters are defined for this template:
The following classes and their sub-classes can be used:
The items which are the target for the assigned effectivity, i.e. the items
which are subject for restricted usage.
The item which defines the domain in which the @target_items are effective.
The following reference parameters are defined for this template:
Allow the
Effectivity
entity instantiated in this path to be referenced when this template is used.
Note: The
Effectivity
entity can be referenced in a template path by:
%^target = $assigning_conditional_effectivity.effectivity%
where
target
is the parameter to which the
Effectivity
is bound.
Allow the
Condition
entity instantiated in this path to be referenced when this template is used.
Note: The
Condition
entity can be referenced in a template path by:
%^target = $assigning_conditional_effectivity.cond%
where
target
is the parameter to which the
Condition
is bound.
Allow the
Condition_assignment
entity instantiated in this path to be referenced when this template is used.
%^target = $assigning_conditional_effectivity.cond_asg%
Allow the
Condition_parameter
entity instantiated in this path to be referenced when this template is used.
%^target = $assigning_conditional_effectivity.cond_para%
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
-- Set up the effectivity entity /
assigning_effectivity(
items=@target_items,
eff_class_name='Conditional_effectivity',
eff_ecl_id='urn:plcs:rdl:std',
role_class_name='Effectivity_target',
role_ecl_id='urn:plsc:rdl:std')/
%^effectivity = $assigning_effectivity.effectivity%
-- Assign the parameter defining the effectivity domain to the condition parameter item -- and assign the reference parameter ^effectivity from the instantiated assigning_effectivity -- template to the condition item /
assigning_condition(
cond_item=^effectivity,
cond_para_item=@condition_para_item,
cond_asg_class='Effectivity_context_assignment',
cond_asg_ecl_id='urn:plcs:rdl:std',
cond_class='Effectivity_context',
cond_ecl_id='urn:plcs:rdl:std')/
%^cond = $assigning_condition.cond%
%^cond_asg = $assigning_condition.cond_asg%
%^cond_para = $assigning_condition.cond_para%
-- Assign the External_class in the reference data library -- being used to determine type of condition parameter /
assigning_reference_data(
items=^cond_para,
class_name=@para_class,
ecl_id=@para_ecl_id)/
The instance diagram in Figure
3
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/assigning_conditional_effectivity(para_class='Performing_organization', para_ecl_id='urn:plcs:rdl:sample', target_items='#3', condition_para_item='#4')/
(an illustration of the consolidated assigning_conditional_effectivity template is shown in
Figure
4 below.)
Figure 3 — Entities instantiated by assigning_conditional_effectivity 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:
/assigning_conditional_effectivity(para_class='Performing_organization', para_ecl_id='urn:plcs:rdl:sample', target_items='#3', condition_para_item='#4')/
Figure 4 — Instantiation of assigning_conditional_effectivity template
No common characterizations of the template
assigning_conditional_effectivity
have been identified. However, the ISO 10303-239 EXPRESS model
may enable other assignments to the entities instantiated by the template.
This section specifies the template assigning_effectivity.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
This template describes how to represent the assignment of an
Effectivity.
The EXPRESS-G diagram in
Figure
1
shows the templates and EXPRESS entities that are required
to represent the template
"assigning_effectivity".
The text highlighted in blue shows the template parameters.
Figure 1 — An EXPRESS-G representation of the Information model for assigning_effectivity
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_effectivity template
The following input parameters are defined for this template:
The name of the class being used to classify the
effectivity
(
Effectivity)
This provides the role for the effectivity.
The following classes and their sub-classes can be used:
The identifier of the
External_class_library
storing the definition of the class referenced by the parameter @eff_class_name.
The name of the class being used to classify the
effectivity assignment
(
Effectivity_assignment)
This provides the role for the assignment.
The following classes and their sub-classes can be used:
The identifier of the
External_class_library
storing the definition of the class referenced by the parameter @role_class_name.
The items to which the effectivity is assigned.
The following reference parameters are defined for this template:
Allow the
Effectivity_assignment
entity instantiated in this path to be referenced when this template is used.
%^target = $assigning_effectivity.eff_asg%
Allow the
Effectivity
entity instantiated in this path to be referenced when this template is used.
Note: The
Effectivity
entity can be referenced in a template path by:
%^target = $assigning_effectivity.effectivity%
where
target
is the parameter to which the
Effectivity
is bound.
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
-- Instantiate the Effectivity entity Effectivity-- Set the Effectivity attributes id, name and description to be ignored Effectivity.id = '/IGNORE'
Effectivity.name = '/IGNORE'
Effectivity.description = '/IGNORE'
-- Bind the Effectivity entity to the parameter ^effectivity. -- The parameter is a reference parameter so the Effectivity -- entity can be referred to when this template is used. %^effectivity =
Effectivity%
-- Assign reference data to Effectivity /
assigning_reference_data(
items=^effectivity,
class_name=@eff_class_name,
ecl_id=@eff_ecl_id)/
-- Instantiate Effectivity_assignment entity Effectivity_assignment-- Set the Effectivity_assignment attribute role to be ignored Effectivity_assignment.role = '/IGNORE'
-- Bind the Effectivity_assignment to the parameter ^eff_asg. -- The parameter is a reference parameter so the Effectivity_assignment -- entity can be referred to when this template is used. %^eff_asg =
Effectivity_assignment%
-- Assign reference data to Effectivity_assignment /
assigning_reference_data(
items=^eff_asg,
class_name=@role_class_name,
ecl_id=@role_ecl_id)/
-- Set the Effectivity_assignment.assigned_effectivity attribute to the Effectivity entity -- instantiated at the beginning of this path Effectivity_assignment.assigned_effectivity ->
Effectivity-- Assign the Effectivity_assignment -- to the instances passed into the template through the @items -- input parameter Effectivity_assignment.items ->
@items
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
3
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/assigning_effectivity(items='#1', eff_class_name='Design_effectivity', eff_ecl_id='urn:plcs:rdl:sample', role_class_name='Effectivity_target', role_ecl_id='urn:plcs:rdl:sample')/
(an illustration of the consolidated assigning_effectivity template is shown in
Figure
4 below.)
Figure 3 — Entities instantiated by assigning_effectivity template
The instance model in STEP ASCII exchange file format (ISO 10303 Part
21 syntax) is:
#1 = TASK_METHOD_VERSION_ASSIGNMENT($,(),'/IGNORE');
#2 = EFFECTIVITY('/IGNORE','/IGNORE','/IGNORE');
#3 = EFFECTIVITY_ASSIGNMENT(#2,'/IGNORE',(#1));
#5 = CLASSIFICATION_ASSIGNMENT(#7,(#3),'/IGNORE');
#7 = EXTERNAL_CLASS('/NULL','Effectivity_target','/IGNORE',#8);
#8 = EXTERNAL_CLASS_LIBRARY('urn:plcs:rdl:sample',$);
#10 = CLASSIFICATION_ASSIGNMENT(#12,(#2),'/IGNORE');
#12 = EXTERNAL_CLASS('/NULL','Design_effectivity','/IGNORE',#8);
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_effectivity(items='#1', eff_class_name='Design_effectivity', eff_ecl_id='urn:plcs:rdl:sample', role_class_name='Effectivity_target', role_ecl_id='urn:plcs:rdl:sample')/
Figure 4 — Instantiation of assigning_effectivity template
The following section details how the
assigning_effectivity
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 descriptions
NOTE this characterization is optional.
Characterization Assigning identifications
NOTE this characterization is optional.
This section specifies the template representing_serial_effectivity.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
The EXPRESS-G diagram in
Figure
1
shows the templates and EXPRESS entities that are required
to represent the template
"representing_serial_effectivity".
The text highlighted in blue shows the template parameters.
Figure 1 — An EXPRESS-G representation of the Information model for representing_serial_effectivity
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_serial_effectivity template
The following input parameters are defined for this template:
Identification of the first serialized item within a range of serialized items.
end_id (Type='STRING', Optional)
Identification of the last serialized item within the range of serialized items.
The following reference parameters are defined for this template:
Allow the
Serial_effectivity
entity instantiated in this path to be referenced when this template is used.
%^target = $representing_serial_effectivity.serial_eff%
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
3
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/representing_serial_effectivity(start_id='101', end_id='110')/
(an illustration of the consolidated representing_serial_effectivity template is shown in
Figure
4 below.)
Figure 3 — Entities instantiated by representing_serial_effectivity 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_serial_effectivity(start_id='101', end_id='110')/
Figure 4 — Instantiation of representing_serial_effectivity template
No common characterizations of the template
representing_serial_effectivity
have been identified. However, the ISO 10303-239 EXPRESS model
may enable other assignments to the entities instantiated by the template.
This section specifies the template assigning_serial_effectivity.
NOTE
An explanation of a template and the associated instantiation path is
provided in the
Template overview
section.
The EXPRESS-G diagram in
Figure
1
shows the templates and EXPRESS entities that are required
to represent the template
"assigning_serial_effectivity".
The text highlighted in blue shows the template parameters.
Figure 1 — An EXPRESS-G representation of the Information model for assigning_serial_effectivity
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_serial_effectivity template
The following input parameters are defined for this template:
Identification of the first serialized item within a range of serialized items.
end_id (Type='STRING', Optional)
Identification of the last serialized item within the range of serialized items.
The name of the class being used to classify the
effectivity assignment
(
Effectivity_assignment)
This provides the role for the assignment.
The following classes and their sub-classes can be used:
The identifier of the
External_class_library
storing the definition of the class referenced by the parameter @role_class_name.
The items to which the effectivity is assigned.
The following reference parameters are defined for this template:
Allow the
Serial_effectivity
entity instantiated in this path to be referenced when this template is used.
%^target = $assigning_serial_effectivity.serial_eff%
Allow the
Effectivity_assignment
entity instantiated in this path to be referenced when this template is used.
%^target = $assigning_serial_effectivity.eff_asgn%
The instantiation path shown below specifies the entities that are to be
instantiated by the template.
-- Instantiate Effectivity_assignment entity Effectivity_assignment-- Set the Effectivity_assignment attribute role to be ignored Effectivity_assignment.role = '/IGNORE'
-- Bind the Effectivity_assignment to the parameter ^eff_asgn. -- The parameter is a reference parameter so the Effectivity_assignment -- entity can be referred to when this template is used. %^eff_asgn =
Effectivity_assignment%
-- Assign reference data to Effectivity_assignment /
assigning_reference_data(
items=^eff_asgn,
class_name=@role_class_name,
ecl_id=@role_ecl_id)/
-- Instantiate representing_serial_effectivity /
representing_serial_effectivity(
start_id=@start_id,
end_id=@end_id)/
Serial_effectivity-- Mark the Serial_effectivity entity as -- referable when this template is used by binding it to the reference -- parameter serial_eff %^serial_eff =
Serial_effectivity%
-- Bind the Serial_effectivity instantiated by the -- template representing_serial_effectivity -- to the parameter ^serial_eff. -- The parameter is a reference parameter so the -- Serial_effectivity can be referred to when this template is used. %^serial_eff = $representing_serial_effectivity.serial_eff%
-- Set the Effectivity_assignment.assigned_effectivity to -- the Serial_effectivity entity instantiated by -- representing_serial_effectivity Effectivity_assignment.assigned_effectivity ->
^serial_eff
-- Assign the Effectivity_assignment -- to the instances passed into the template through the @items -- input parameter (e.g. an Next_assembly_usage) Effectivity_assignment.items ->
@items
The following entities are instantiated with attributes as specified:
The instance diagram in Figure
3
shows an example of the EXPRESS entities and templates that are instantiated by the template:
/assigning_serial_effectivity(start_id='101', end_id='110', role_class_name='Task_effectivity', role_ecl_id='urn:plcs:rdl:sample', items='#1')/
(an illustration of the consolidated assigning_serial_effectivity template is shown in
Figure
4 below.)
Figure 3 — Entities instantiated by assigning_serial_effectivity 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:
/assigning_serial_effectivity(start_id='101', end_id='110', role_class_name='Task_effectivity', role_ecl_id='urn:plcs:rdl:sample', items='#1')/
Figure 4 — Instantiation of assigning_serial_effectivity template
No common characterizations of the template
assigning_serial_effectivity
have been identified. However, the ISO 10303-239 EXPRESS model
may enable other assignments to the entities instantiated by the template.
This capability
"Assigning effectivity" is related to the
following capabilities:
This capability
"Assigning effectivity" is dependent on
the following capabilities:
The following classes of reference data are required for this capability:
[Actual]
Error RDL1: The class Actual does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Planned]
Error RDL1: The class Planned does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Actual_start]
Error RDL1: The class Actual_start does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Actual_end]
Error RDL1: The class Actual_end does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Actual_duration]
Error RDL1: The class Actual_duration does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Planned_start]
Error RDL1: The class Planned_start does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Planned_end]
Error RDL1: The class Planned_end does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Planned_duration]
Error RDL1: The class Planned_duration does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Required_start]
Error RDL1: The class Required_start does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Required_end]
Error RDL1: The class Required_end does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Inheritance]
Error RDL1: The class Inheritance does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml
[Constraint]
Error RDL1: The class Constraint does not exist in RDL at URI urn:plcs:rdl:std. Check the dexlib/data/refdata/rdl_index.xml