Capability (C080):— representing_properties_textually Date: 2007/06/22 12:22:11
Revision: 1.39

Business overview

This section provides a business level overview of this capability.

In STEP, a property may be represented by text. Often this is used where quantitative representations are not suitable:

EXAMPLE    a requirement property may be expressed in words "The laptop shall be grey in colour"

or where words can only describe what the engineer had in mind:

EXAMPLE    a quantity property may be represented as "as required"

In AP239, there are three types of property assignment, C076: assigning_product_properties, C077: assigning_process_properties , and C078: assigning_resource_properties, but all may be represented using this capability.

Properties

A property is a qualitative or quantitative characteristic that something may possess. ISO10303 uses properties extensively.

Property Representation

Properties are represented in different ways, depending on the type of the property:

Figure 1 —  Representing a Product Property

Figure 1 —  Representing a Product Property



Figure 2 —  Representing a Process Property

Figure 2 —  Representing a Process Property



Figure 3 —  Representing a Resource Property

Figure 3 —  Representing a Resource Property

There may be multiple representations of the same property:

Figure 4 —  Multiple Representations of a Property

Figure 4 —  Multiple Representations of a Property

EXAMPLE    a mass property may be represented as 1kg and also represented as 2.2lbs

A representation may be made up of several representation items

EXAMPLE    Paragraphs in a text representation of a property.

Information model overview

This section provides an overview of the information model that supports this capability.

The model used for representing properties textually is shown in Figure 5 below:



Figure 5 —  Entities Used for Textual Property Representation

Figure 5 —  Entities Used for Textual Property Representation

To represent a text property, the following entities are required:

The Representation is linked to the entity instance representing the name of the property (which is liked to the item whose property it represents), using one of the following entities:

Figure 6 shows an example instantiation of a text property which represents a requirement, assigned to a Requirement_view_definition (details omitted in figure). There are two representation items which describe the text in each paragraph of the requirement.



Figure 6 —  Instances Used for Text Property Representation

Figure 6 —  Instances Used for Text Property Representation

Process properties are linked to representation instance in a different way to product properties. Figure 7 shows the instances used to link a process property to its representation.



Figure 7 —  Instances Used for Text Property Representation of Process Properties

Figure 7 —  Instances Used for Text Property Representation of Process Properties

Characterization of text properties

Closed issue Issue: THX-2 by Tom Hendrix (04-05-10) [minor_technical, closed] - {Type = contents}
rep item text includes *shall be less than * The rep item has the requirement semantic in its text, which means there are three ways to represent *required* : classification, qualification, and embedded descriptive text. Suggest using one of first two , consistently with other capabilities, and just putting the value in the rep item, thus *less than 5 kg.*
Comment: (Ian Bailey 2004-07-29)
All this is doing is capturing the text produced by a requirements management tool. Most requirements start with "the thing shall...". This is the way we handle requirement text, and it would be inappropriate to expect pre-processors to change the requirements text produced by systems engineers.
Comment: (Mike Ward 2005-01-05)
Issue closed for reasons provided in IBY's comment of 2004-07-29.
Closed issue Issue: THX-3 by Tom Hendrix (04-05-10) [minor_technical, closed] - {Type = contents}
Figure 7 missing. Need to commit and check the reference
Comment: (Ian Bailey 2004-07-29)
This seems to be OK now.
Closed issue Issue: THX-5 by Tom Hendrix (04-05-10) [minor_technical, closed] - {Type = contents}
*EXAMPLE A required property may be represented with a text string; * The laptop shall weigh less than 5kg.* Suggest explaining in the vicinity of figure 6 that the rep item does not include all this text, and does not identify the item. See also THX-2
Comment: (Tom Hendrix 04-05-10)
EXAMPLE The laptop shall be grey in colour. Suggest an illustration that shows both colour and mass as two separate instances of assigned_property.
Comment: (Ian Bailey 2004-07-29)
Made a small change. Again, this is valid text, as it would have come from a requirements tool. There may not be a laptop product anywhere that this is assigned to - in fact this is often the case with requirements specs.
Closed issue Issue: NN-1 by Nigel Newling (05-11-17) [minor_technical, closed] - {Type = contents}
Is the mandatory recording of the date and time when a property was assigned a value necessary? This is not always known or relevant. It would require a lot of extra entity instances to represent an unknown value. Same applies to person and organization characterisation.
Comment: (Peter Bergström 2006-04-18)
I agree, there is no need to make things overly complicated and force people and applications to 'invent' data. I suggest a change of wording to 'strongly recommended' or such. The new templates have them optional, currently.
Comment: (Peter Bergström 2006-05-27)
Date and time, as well as organization and person, have been made optional.
Closed issue Issue: NN-2 by Nigel Newling (05-11-17) [minor_technical, closed] - {Type = contents}
Make it clear that the name of the property maps to Assigned_property.name and the value of the property maps to String_representation_item.string_value.
Comment: (Peter Bergstrom 2006-04-18)
I think this is clear from the new templates.
Closed issue Issue: NN-3 by Nigel Newling (05-11-17) [minor_technical, closed] - {Type = contents}
Instantiation diagrams need to reflect the developments in reference data and how classification is handled i.e. apply general rule that id and name not populated but contained in External_class. Indeed, new template notation could be used in the diagrams.
Comment: (Peter Bergström 2006-05-29)
fixed.

Date and Time Assignment

Recording the date and time at which a property was given a value (i.e. represented) is not mandatory, but highly recommended. This allows a history of property values to be recorded - i.e. the same property may have several representations with different dates and times assigned to them.

Figure 8 —  A property changing over time

Figure 8 —  A property changing over time

In Figure 8, a requirement is shown which once had a text representation of "shall weigh 10kg", but which has subsequently changed to "shall weigh 7kg". Two property_representation instances (and all the other representation instances) are related to the property. The representation instances have dates and times assigned to them (assigning_time) indicating when the value was established. The link from old representation to new is achieved with the representation_relationship instance through template property_value_relationship.

Person and Organization Assignment

It is optional, but highly recommended, to record the person (and their organization) who assigned the property value.

Figure 9 —  Assigning Person and Organization to a Property Representation

Figure 9 —  Assigning Person and Organization to a Property Representation

In Figure 9, the instances establish that the property value was set by a person in an organization.

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: representing_text_property (Short name: rep_text)

This section specifies the template representing_text_property.

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 text string value for any property.

EXAMPLE    A quantity property may be represented with a text string; "As required".

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


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

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

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

Figure 2 —   The graphical representation of representing_text_property template

Input parameters
The following input parameters are defined for this template:
value (Type='STRING')
The text value of the property.
context (Type='CLASS')
The name of the class being used to classify the representation context (Representation_context) of the property.
The following classes and their sub-classes can be used:
classifications: "Representation_context" (urn:plcs:rdl:std:Representation_context)
context_ecl_id (Default=urn:plcs:rdl:std,Type='URN')
The identifier of the External_class_library storing the definition of the class referenced by the parameter @context.
Reference parameters
The following reference parameters are defined for this template:
representation(Type='ENTITY (Representation)')
Allow the Representation entity instantiated in this path to be referenced when this template is used.
Note: The Representation entity can be referenced in a template path by:
%^target = $representing_text_property.representation%
where target is the parameter to which the Representation is bound.
representation_context(Type='ENTITY (Representation_context)')
Allow the Representation_context entity instantiated in this path to be referenced when this template is used.
Note: The Representation_context entity can be referenced in a template path by:
%^target = $representing_text_property.representation_context%
where target is the parameter to which the Representation_context is bound.
Uniqueness constraints

The following parameter combinations specify a uniqueness constraint:
Unique constraint: Unique Representation_context
Each instance of the entity (Representation_context) within the data set shall be uniquely identified by a combination of the following parameters on this template (representing_text_property) namely: context, context_ecl_id.
The instance is referenced by the following template parameter: representation_context.
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 Representation entity
Representation

-- Set the Property_value_representation attributes id, name and description to be ignored
Representation.id = '/IGNORE'
Representation.name = '/IGNORE'
Representation.description = '/IGNORE'

-- Bind the Representation to the parameter ^representation.
-- The parameter is a reference parameter so the Representation
-- entity can be referred to when this template is used.
%^representation = Representation%

-- Instantiate Representation_context and assign
-- Representation at it
%^representation_context = Representation_context%
^representation.context_of_items -> ^representation_context

-- Set the Representation_context attributes id and kind to be ignored
Representation_context.id = '/IGNORE'
Representation_context.kind = '/IGNORE'

-- Assign reference data for kind of Representation_context
/assigning_reference_data(
    items=^representation_context,
    class_name=@context,
    ecl_id=@context_ecl_id)/

-- Instantiate String_representation_item and assign
-- Representation to it
^representation.items -> String_representation_item

-- Set the String_representation_item attribute name to be ignored
String_representation_item.name = '/IGNORE'

-- Set the String_representation_item attribute string_value to the
-- value of the input parameter value
String_representation_item.string_value -> @value
The following entities are instantiated with attributes as specified:
Entity in path Value Inherited from
Representation.id '/IGNORE'
Representation.name '/IGNORE'
Representation.description '/IGNORE'
Representation_context.id '/IGNORE'
Representation_context.kind '/IGNORE'
String_representation_item.name '/IGNORE' Representation_item.name
Instance diagrams
The instance diagram in Figure  3 shows an example of the EXPRESS entities and templates that are instantiated by the template:
/representing_text_property(value='Shall weigh 10 kg', context='Requirement_text', context_ecl_id='urn:plcs:rdl:sample')/
(an illustration of the consolidated representing_text_property template is shown in Figure 4 below.)


Figure 3 —  Entities instantiated by representing_text_property template

Figure 3 —  Entities instantiated by representing_text_property 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_text_property(value='Shall weigh 10 kg', context='Requirement_text', context_ecl_id='urn:plcs:rdl:sample')/


Figure 4 —  Instantiation of representing_text_property template, related to a product property

Figure 4 —  Instantiation of representing_text_property template, related to a product property

Characterizations
The following section details how the representing_text_property 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 5 shows the possible characterizations of the template "representing_text_property".


Figure 5 —  Characterizations for representing_text_property template

Figure 5 —  Characterizations for representing_text_property template

The following characterizations may apply:
Characterization Assigning dates and time

NOTE   this characterization is optional.

Dates and time can be associated with the assignment of property value representation by using the template assigning_time.



Figure 6 —  Characterization by date and time of representing_text_property template

Figure 6 —  Characterization by date and time of representing_text_property template

A creation date is commonly assigned to the template representing_text_property.

The date (and time) of creation of the property value representation is represented by using the template assigning_time to assign a date and time to Property_value_representation. The date assignment is classified as: "Date actual creation" (urn:plcs:rdl:std:Date actual creation) to indicate that it is the date when the property value representation was actually created. The assignment of time is illustrated in Figure 5 and instantiated by Figure 6.

Other dates and times may be assigned instead.

Characterization Assigning organization

NOTE   this characterization is optional.

An Organization can be associated with the property value representation by using the template assigning_organization. Similarly a Person_in_organization be associated through the template assigning_person_in_organization



Figure 7 —  Characterization by organization of representing_text_property template

Figure 7 —  Characterization by organization of representing_text_property template

A common role in which an organization (or person) is assigned to a property value representation is as a "Creator of" the representation. The creating organization is represented by using the template assigning_organization assigned to Property_value_representation. A creating person (in an organization) is represented by using the template assigning_person_in_organization assigned to Property_value_representation.

The assignment of the organization or person (Organization_or_person_in_organization_assignment) is classified as: "Creator of" (urn:plcs:rdl:std:Creator of) to indicate that this organization or person created the property value representation. The assignment of an organization as being the creator of the representation is illustrated in Figure 5. The instantiation of the assignment of a person in an organization is illustrated in Figure 7.

Other roles of an organization with regard to a property value representation may be assigned instead.

Related capabilities

This capability "Representing Text Properties" is related to the following capabilities:

Dependent capabilities

This capability "Representing Text Properties" is dependent on the following capabilities:

© OASIS 2010 — All rights reserved