Capability (C004):— representing_breakdown_structure Date: 2007/06/22 12:22:10
Revision: 1.26

Capability EXPRESS information model

This section describes the EXPRESS information model for the capability.

From module : product_breakdown - using all



TYPE breakdown_element_realization_property_assignment_select = SELECT BASED_ON property_assignment_select WITH
   (Breakdown_element_realization,
    Breakdown_element_usage);
END_TYPE;



TYPE breakdown_item = EXTENSIBLE SELECT
   (Breakdown_element_definition,
    Breakdown_element_usage);
END_TYPE;



TYPE product_item = EXTENSIBLE SELECT
   (Product_view_definition,
    View_definition_usage);
END_TYPE;


Breakdown

A Breakdown is a type of Product that identifies a partitioning of a product into a set of related elements so as to form explicit, parent-child views that comprise the product elements.

The parent-child view is represented by Breakdown_element_usage objects relating the elements in the breakdown that are represented by Breakdown_element objects.

A Breakdown may be:


ENTITY Breakdown
  SUBTYPE OF (Product);
END_ENTITY;


Breakdown_context

A Breakdown_context is a membership relationship between a Breakdown_element and a Breakdown of which the element is a member.


ENTITY Breakdown_context;
  id : STRING;
  name : STRING;
  description : OPTIONAL STRING;
  breakdown : Breakdown_version;
  breakdown_element : Breakdown_element_definition;
END_ENTITY;

id: the identifier for the membership relationship between the breakdown element and the breakdown.

name: the word or words by which the membership relationship between the breakdown element and the breakdown is known.

description: the text that provides further information about the membership relationship between the Breakdown_element and the Breakdown. The value of this attribute need not be specified.

breakdown: the version of the Breakdown of which the Breakdown_element is a member.

breakdown_element: the view of the version of the Breakdown_element that is a member of the Breakdown.


Breakdown_element

A Breakdown_element is a type of Product that identifies the elements in one or more Breakdown objects.

NOTE    Breakdown_element is non-specific and allows for various types of product breakdown. The more specific breakdown elements are Functional_element, Physical_element, System_element, and Zone_element.


ENTITY Breakdown_element
  SUBTYPE OF (Product);
END_ENTITY;


Breakdown_element_definition

A Breakdown_element_definition is a type of Product_view_definition that identifies a view of a version (Breakdown_element_version) of a Breakdown_element.

NOTE    Breakdown_element_definition is non-specific and allows for various types of product breakdowns. The more specific breakdown element definitions are Functional_element_definition, Physical_element_definition, System_element_definition and Zone_element_definition.


ENTITY Breakdown_element_definition
  SUBTYPE OF (Product_view_definition);
  SELF\Product_view_definition.defined_version : Breakdown_element_version;
END_ENTITY;

defined_version: the Breakdown_element_definition shall only be a view of a Breakdown_element.


Breakdown_element_realization

A Breakdown_element_realization is a type of Product_definition_element_relationship that identifies a relationship between a Breakdown_element_definition or a Breakdown_element_usage and an item that realizes that element definition or usage.

EXAMPLE    A pump realizes the 'provide fuel to engine' element in a functional breakdown for a ship.


ENTITY Breakdown_element_realization
  SUBTYPE OF (Product_definition_element_relationship);
END_ENTITY;


Breakdown_element_usage

A Breakdown_element_usage is a type of View_definition_relationship that identifies a relationship between a parent and child Breakdown_element.


ENTITY Breakdown_element_usage
  SUBTYPE OF (View_definition_usage);
  name : STRING;
  SELF\View_definition_relationship.relating_view RENAMED parent_element : Breakdown_element_definition;
  SELF\View_definition_relationship.related_view RENAMED child_element : Breakdown_element_definition;
END_ENTITY;

name: the word or words by which the relationship between the parent and the child breakdown elements is known.

parent_element: the parent breakdown element of the relationship.

child_element: the child breakdown element of the relationship.


Breakdown_element_version

A Breakdown_element_version is a type of Product_version that identifies a version of a Breakdown_element.

.

NOTE    Breakdown_element_version is non-specific and allows for various types of product breakdown. The more specific breakdown elements are Functional_element_version, Physical_element_version, System_element_version and Zone_element_version.


ENTITY Breakdown_element_version
  SUBTYPE OF (Product_version);
  SELF\Product_version.of_product : Breakdown_element;
END_ENTITY;

of_product: the Breakdown_element_version shall only be a version of a Breakdown_element.


Breakdown_of

A Breakdown_of is a relationship between a Breakdown and a Product of which the breakdown is a view.


ENTITY Breakdown_of;
  id : STRING;
  name : STRING;
  description : OPTIONAL STRING;
  breakdown : Breakdown_version;
  of_view : Product_view_definition;
END_ENTITY;

id: the identifier for the relationship between the breakdown and the product.

name: the word or words by which the relationship between the breakdown and the product is known.

description: the text that provides further information about the relationship between the breakdown and the product. The value of this attribute need not be specified.

breakdown: the Breakdown_version that is a view of the product.

of_view: the product of which the breakdown is a view.


Breakdown_version

A Breakdown_version is a type of Product_version that identifies a version of a Breakdown .


ENTITY Breakdown_version
  SUBTYPE OF (Product_version);
  SELF\Product_version.of_product : Breakdown;
INVERSE
  breakdown_of : SET[1:?] OF Breakdown_of FOR breakdown;
END_ENTITY;

of_product: the Breakdown_version shall only be a version of a Breakdown.


Product_definition_element_relationship

A Product_definition_element_relationship is a relationship between a Breakdown_element_definition or a Breakdown_element_usage and a View_definition_relationship or a Product_view_definition .


ENTITY Product_definition_element_relationship;
  id : STRING;
  name : STRING;
  description : OPTIONAL STRING;
  breakdown : breakdown_item;
  product : product_item;
END_ENTITY;

id: the identifier for the relationship between the breakdown item and the product item.

name: the word or words by which the relationship between the breakdown item and the product item is known.

description: the text that provides further information about the relationship between the breakdown item and the product item. The value of this attribute need not be specified.

breakdown: the Breakdown_element_definition or a Breakdown_element_usage that is related to the View_definition_relationship or Product_view_definition.

product: the View_definition_relationship or Product_view_definition that is related to the Breakdown_element_definition or a Breakdown_element_usage.

From module : functional_breakdown - using all


Functional_breakdown

A Functional_breakdown is a type of Breakdown that identifies a partitioning of a product into a set of related functional elements so as to form explicit structural views that comprise the product elements.

The composite - component view is represented by Functional_element_usage instances relating the functional elements in the breakdown which are represented by Functional_elements.

EXAMPLE    A functional breakdown provides a decomposition of an aircraft in terms of high-level functional processes such as flight, taxiing and at rest all the way down to low-level processes such as detect onboard fuel level, move tail rudder and provide standard tow attachment point.


ENTITY Functional_breakdown
  SUBTYPE OF (Breakdown);
END_ENTITY;


Functional_breakdown_context

A Functional_breakdown_context is a type of Breakdown_context that is an association of a Functional_element to a Functional_breakdown of which the functional element is a member.

EXAMPLE    A function 'provide load lifting capability' is member of the functional breakdown of a helicopter.


ENTITY Functional_breakdown_context
  SUBTYPE OF (Breakdown_context);
  SELF\Breakdown_context.breakdown : Functional_breakdown_version;
  SELF\Breakdown_context.breakdown_element : Functional_element_definition;
END_ENTITY;

breakdown: the version of the Functional_breakdown of which the Functional_element is a member.

breakdown_element: the view of the version of the Functional_element that is a member of the Functional_breakdown.


Functional_breakdown_version

A Functional_breakdown_version is a type of Breakdown_version that identifies a version of a Functional_breakdown .


ENTITY Functional_breakdown_version
  SUBTYPE OF (Breakdown_version);
  SELF\Breakdown_version.of_product : Functional_breakdown;
END_ENTITY;

of_product: the Functional_breakdown_version shall only be a version of a Functional_breakdown .


Functional_element

A Functional_element is a type of Breakdown_element that identifies the elements in one or more Functional_breakdown objects.


ENTITY Functional_element
  SUBTYPE OF (Breakdown_element);
END_ENTITY;


Functional_element_definition

A Functional_element_definition is a type of Breakdown_element_definition that identifies a view of a version ( Functional_element_version ) of a Functional_element .


ENTITY Functional_element_definition
  SUBTYPE OF (Breakdown_element_definition);
  SELF\Breakdown_element_definition.defined_version : Functional_element_version;
END_ENTITY;

defined_version: the Functional_element_definition shall only be a view of a Functional_element.


Functional_element_usage

A Functional_element_usage is a type of Breakdown_element_usage that is an association of a functional element to another functional element that is a constituent. Functional_element.


ENTITY Functional_element_usage
  SUBTYPE OF (Breakdown_element_usage);
  SELF\Breakdown_element_usage.parent_element : Functional_element_definition;
  SELF\Breakdown_element_usage.child_element : Functional_element_definition;
END_ENTITY;

parent_element: the parent functional element is constituted.

child_element: the functional element that is the constituent.


Functional_element_version

A Functional_element_version is a type of Breakdown_element_version that identifies a version of a Functional_element .


ENTITY Functional_element_version
  SUBTYPE OF (Breakdown_element_version);
  SELF\Breakdown_element_version.of_product : Functional_element;
END_ENTITY;

of_product: the Functional_element_version shall only be a version of a Functional_element .

From module : physical_breakdown - using all


Physical_breakdown

A Physical_breakdown is a type of Breakdown that identifies a partitioning of a product into a set of related physical elements so as to form explicit, parent-child views that comprise the product elements.

The parent-child view is represented by Physical_element_usage instances relating the physical elements in the breakdown which are represented by Physical_elements.

EXAMPLE    A physical breakdown might provide a decomposition of an automobile in terms such as body, roof, bonnet, bumpers and this breakdown might be differerent from, and orthogonal to, a parts decomposition.


ENTITY Physical_breakdown
  SUBTYPE OF (Breakdown);
END_ENTITY;


Physical_breakdown_context

A Physical_breakdown_context is a type of Breakdown_context that is a membership relationship between a Physical_element and a Physical_breakdown of which the physical element is a member.

EXAMPLE    A wheel is a member of the physical breakdown of an automobile.


ENTITY Physical_breakdown_context
  SUBTYPE OF (Breakdown_context);
  SELF\Breakdown_context.breakdown : Physical_breakdown_version;
  SELF\Breakdown_context.breakdown_element : Physical_element_definition;
END_ENTITY;

breakdown: the version of the Physical_breakdown of which the Physical_element is a member.

breakdown_element: the view of the version of the Physical_element that is a member of the Physical_breakdown.


Physical_breakdown_version

A Physical_breakdown_version is a type of Breakdown_version that identifies a version of a Physical_breakdown .

EXAMPLE    An engineer modifies the current physical breakdown for an aircraft on the basis of a tail re-design.


ENTITY Physical_breakdown_version
  SUBTYPE OF (Breakdown_version);
  SELF\Breakdown_version.of_product : Physical_breakdown;
END_ENTITY;

of_product: the Physical_breakdown_version shall only be a version of a Physical_breakdown .


Physical_element

A Physical_element is a type of Breakdown_element that identifies the elements in one or more Physical_breakdown objects.


ENTITY Physical_element
  SUBTYPE OF (Breakdown_element);
END_ENTITY;


Physical_element_definition

A Physical_element_definition is a type of Breakdown_element_definition that identifies a view of a version (Physical_element_version) of a Physical_element.


ENTITY Physical_element_definition
  SUBTYPE OF (Breakdown_element_definition);
  SELF\Breakdown_element_definition.defined_version : Physical_element_version;
END_ENTITY;

defined_version: the Physical_element_definition shall only be a view of a Physical_element.


Physical_element_usage

A Physical_element_usage is a type of Breakdown_element_usage that is a relationship between a parent and child Physical_element.

EXAMPLE    In a physical breakdown, the aircraft (parent) might include (as children) a fuselage, wings, tail and undercarriage.


ENTITY Physical_element_usage
  SUBTYPE OF (Breakdown_element_usage);
  SELF\Breakdown_element_usage.parent_element : Physical_element_definition;
  SELF\Breakdown_element_usage.child_element : Physical_element_definition;
END_ENTITY;

parent_element: the parent physical element of the relationship.

child_element: the child physical element of the relationship.


Physical_element_version

A Physical_element_version is a type of Breakdown_element_version that identifies a version of a Physical_element .

EXAMPLE    An engineer changes the details describing the undercarriage that is an element in a physical breakdown of an aircraft.


ENTITY Physical_element_version
  SUBTYPE OF (Breakdown_element_version);
  SELF\Breakdown_element_version.of_product : Physical_element;
END_ENTITY;

of_product: the Physical_element_version shall only be a version of a Physical_element .

From module : zonal_breakdown - using all



TYPE in_zone_item = EXTENSIBLE SELECT
   (Product_view_definition);
END_TYPE;


In_zone

An In_zone is a relationship between a Zone_element and an item that exists within the zone.

EXAMPLE    A pump is in the starboard engine room of a ship.


ENTITY In_zone;
  id : STRING;
  name : STRING;
  description : OPTIONAL STRING;
  located_item : in_zone_item;
  zone : Zone_element_definition;
END_ENTITY;

id: an identifier for the relationship between the zone and the item in the zone.

name: the words by which the In_zone is known.

description: the text that provides further information about the relationship between the zone and the item in the zone. The value of this attribute need not be specified.

located_item: the item that exists in the zone.

zone: the region in which the item exists.


Zone_breakdown

A Zone_breakdown is a type of Breakdown that identifies a partitioning of a product into a set of related zonal elements so as to form explicit, parent-child views that comprise the product elements.

The parent-child view is represented by Zone_element_usage instances relating the zonal elements in the breakdown which are represented by Zone_elements.

EXAMPLE    A zonal breakdown provides a means of identifying the decomposition of an aircraft in terms of spaces or high-level conceptual parts such as 'wing' - which might further decompose into lower-level zones such as 'inner-wing', and 'outer wing'.


ENTITY Zone_breakdown
  SUBTYPE OF (Breakdown);
END_ENTITY;


Zone_breakdown_context

A Zone_breakdown_context is a type of Breakdown_context that is a membership relationship between a Zone_element and a Zone_breakdown of which the zonal element is a member.

EXAMPLE    A 'fire-check zone' might be a member of the zonal breakdown of a building.


ENTITY Zone_breakdown_context
  SUBTYPE OF (Breakdown_context);
  SELF\Breakdown_context.breakdown : Zone_breakdown_version;
  SELF\Breakdown_context.breakdown_element : Zone_element_definition;
END_ENTITY;

breakdown: the version of the Zone_breakdown of which the Zone_element is a member.

breakdown_element: the view of the version of the Zone_element that is a member of the Zone_breakdown.


Zone_breakdown_version

A Zone_breakdown_version is a type of Breakdown_version that identifies a version of a Zone_breakdown .

EXAMPLE    An architect modifies the current fire-check zone breakdown for an building on the basis of reports from a buildings inspector.


ENTITY Zone_breakdown_version
  SUBTYPE OF (Breakdown_version);
  SELF\Breakdown_version.of_product : Zone_breakdown;
END_ENTITY;

of_product: the Zone_breakdown_version shall only be a version of a Zone_breakdown .


Zone_element

A Zone_element is a type of Breakdown_element that identifies the elements in one or more Zone_breakdown objects.

EXAMPLE    'Empennage', 'Right vertical stabilizer and rudder' and 'Lower rudder' are all elements in a zonal breakdown of an aircraft.


ENTITY Zone_element
  SUBTYPE OF (Breakdown_element);
END_ENTITY;


Zone_element_definition

A Zone_element_definition is a type of Breakdown_element_definition that identifies a view of a version (Zone_element_version) of a Zone_element.

EXAMPLE    For an aircraft, an element 'Right vertical stabilizer tip' is in a zonal breakdown that an engineer uses for reliability-centred maintenance analysis.


ENTITY Zone_element_definition
  SUBTYPE OF (Breakdown_element_definition);
  SELF\Breakdown_element_definition.defined_version : Zone_element_version;
END_ENTITY;

defined_version: the Zone_element_definition shall only be a view of a Zone_element.


Zone_element_usage

A Zone_element_usage is a type of Breakdown_element_usage that is a relationship between a parent and child Zone_element.

EXAMPLE    In a zonal breakdown, the 'wing' (parent) might include (as children) an 'inner wing' and an 'outer wing'.


ENTITY Zone_element_usage
  SUBTYPE OF (Breakdown_element_usage);
  SELF\Breakdown_element_usage.parent_element : Zone_element_definition;
  SELF\Breakdown_element_usage.child_element : Zone_element_definition;
END_ENTITY;

parent_element: the parent zonal element of the relationship.

child_element: the child zonal element of the relationship.


Zone_element_version

A Zone_element_version is a type of Breakdown_element_version that identifies a version of a Zone_element.

EXAMPLE    An engineer defines an inspection task on a breakdown element 'Upper rudder' that is part of a zonal breakdown of an aircraft. The engineer identifies the corresponding view of the breakdown element.


ENTITY Zone_element_version
  SUBTYPE OF (Breakdown_element_version);
  SELF\Breakdown_element_version.of_product : Zone_element;
END_ENTITY;

of_product: the Zone_element_version shall only be a version of a Zone_element .

From module : system_breakdown - using all


System_breakdown

A System_breakdown is a type of Breakdown that identifies a partitioning of a system into a set of related elements so as to form explicit, assembly - component views that comprise the system elements.

The assembly-component view is represented by System_element_usage instances relating the system elements in the breakdown which are represented by System_elements.

EXAMPLE    A system breakdown provides a decomposition of an aircraft in terms of high-level mechanisms such as fuel system or flight control system - which might, in the second example, further decompose into low-level systems such as autopilot system and instrument landing system.


ENTITY System_breakdown
  SUBTYPE OF (Breakdown);
END_ENTITY;


System_breakdown_context

A System_breakdown_context is a type of Breakdown_context that is a membership relationship between a System_element and a System_breakdown of which the system element is a member.

EXAMPLE    A heating system is a member of the breakdown of a climate control system.


ENTITY System_breakdown_context
  SUBTYPE OF (Breakdown_context);
  SELF\Breakdown_context.breakdown : System_breakdown_version;
  SELF\Breakdown_context.breakdown_element : System_element_definition;
END_ENTITY;

breakdown: the version of the System_breakdown of which the System_element is a member.

breakdown_element: the view of the version of the System_element that is a member of the System_breakdown.


System_breakdown_version

A System_breakdown_version is a type of Breakdown_version that identifies a version of a System_breakdown .

EXAMPLE    A logistics engineer modifies the current systems breakdown for an aircraft and associated support equipment on the basis of results from a level of repair analysis.


ENTITY System_breakdown_version
  SUBTYPE OF (Breakdown_version);
  SELF\Breakdown_version.of_product : System_breakdown;
END_ENTITY;

of_product: the System_breakdown of which the System_breakdown_version is a version.


System_element

A System_element is a type of Breakdown_element that identifies the elements in one or more System_breakdown objects.


ENTITY System_element
  SUBTYPE OF (Breakdown_element);
END_ENTITY;


System_element_definition

A System_element_definition is a type of Breakdown_element_definition that identifies a view of a version (System_element_version) of a System_element.

EXAMPLE    The collision avoidance system element of a system breakdown is subject to a level of repair analysis to support implementation of optimized maintenance for an aircraft.


ENTITY System_element_definition
  SUBTYPE OF (Breakdown_element_definition);
  SELF\Breakdown_element_definition.defined_version : System_element_version;
END_ENTITY;

defined_version: the System_element_definition shall only be a view of a System_element.


System_element_usage

A System_element_usage is a type of Breakdown_element_usage that is a relationship between a System_element_definition and another System_element_definition that is a constituent.

EXAMPLE    In a system breakdown, the fuel system might include a fuel storage system and a fuel injection system as components.


ENTITY System_element_usage
  SUBTYPE OF (Breakdown_element_usage);
  SELF\Breakdown_element_usage.parent_element : System_element_definition;
  SELF\Breakdown_element_usage.child_element : System_element_definition;
END_ENTITY;

parent_element: the emergent system breakdown element.

child_element: the constituent system breakdown element.


System_element_version

A System_element_version is a type of Breakdown_element_version that identifies a version of a System_element .

EXAMPLE    A sound engineer changes the details describing the public address system that is an element in a system breakdown of an aircraft.


ENTITY System_element_version
  SUBTYPE OF (Breakdown_element_version);
  SELF\Breakdown_element_version.of_product : System_element;
END_ENTITY;

of_product: the System_element_version shall only be a version of a System_element .

From module : hybrid_breakdown - using all


Hybrid_breakdown

A Hybrid_breakdown is a type of Breakdown that identifies a non-specific partitioning of a product into a set of related elements so as to form explicit, parent-child views that comprise the elements.

The parent-child view is represented by Hybrid_element_usage instances relating the elements in the hybrid breakdown which are represented by types of Breakdown_elements.

EXAMPLE    A product breakdown in which a 'climate control' function has a decomposition that comprises a 'heating function' and a 'cooling function' and in which the 'heating function' has a decomposition that comprises a 'heating element' and a 'heat distribution system' would be an example of a 'hybrid breakdown'.


ENTITY Hybrid_breakdown
  SUBTYPE OF (Breakdown);
END_ENTITY;


Hybrid_breakdown_context

A Hybrid_breakdown_context is a type of Breakdown_context that is a relationship between a Breakdown_element and a Hybrid_breakdown of which the hybrid element is a member.

EXAMPLE    A 'pipe element' might be a member of a 'heating function' breakdown in a hybrid decomposition.


ENTITY Hybrid_breakdown_context
  SUBTYPE OF (Breakdown_context);
  SELF\Breakdown_context.breakdown : Hybrid_breakdown_version;
END_ENTITY;

breakdown: the version of the Hybrid_breakdown of which the Breakdown_element is a member.


Hybrid_breakdown_version

A Hybrid_breakdown_version is a type of Breakdown_version that identifies a version of a Hybrid_breakdown.


ENTITY Hybrid_breakdown_version
  SUBTYPE OF (Breakdown_version);
  SELF\Breakdown_version.of_product : Hybrid_breakdown;
END_ENTITY;

of_product: the Hybrid_breakdown_version shall only be a version of a Hybrid_breakdown.


Hybrid_element_usage

A Hybrid_element_usage is a type of Breakdown_element_usage that identifies a relationship between a parent and child Breakdown_element where the parent and child elements may be different subtypes of Breakdown_element.

EXAMPLE    In a hybrid breakdown, the 'fuel system' might include a 'tank element' and a 'fuel-injection element' as components.


ENTITY Hybrid_element_usage
  SUBTYPE OF (Breakdown_element_usage);
END_ENTITY;

From module : product_identification - using all


Product

A Product is the identification of a product or of a type of product. It is a collector of data common to all revisions of the Product.

NOTE 1   Products that this entity data type can represent, include:

In the interpreted models, these various meanings are represented within instances of the entity product_related_product_category, with prescribed values of the category name. For example, the category name 'document' shall be used when characterizing the fact that a product is actually a document.

EXAMPLE 1   The SS Titanic is a product that could be represented by the entity data type Product.

EXAMPLE 2   Lifeboat is a class of products that could be represented by the entity data type Product. Each lifeboat on the SS Titanic is a member of this class.

NOTE 2   A product is identified by an organization or a person in an organization. The definition of the domain of uniqueness and the mechanism for guaranteeing the uniqueness of product id are outside the scope of this application module.

NOTE 3   A product may have zero or more versions. A version of a product is represented with an instance of the entity Product_version or of one of its specializations.


ENTITY Product;
  id : STRING;
  name : OPTIONAL STRING;
  description : OPTIONAL STRING;
END_ENTITY;

id:

the identifier that distinguishes the product.

NOTE 4   A particular codification for the values of this attribute may be specified in the EXPRESS schemas that use or specialize this entity, or in an agreement of common understanding between the partners sharing this information.

EXAMPLE 3  

Part numbers, stock item numbers, and serial numbers are examples of product identifiers.

name: the words by which the product is known. The value of this attribute need not be specified.

description: the text that provides further information about the Product. The value of this attribute need not be specified.


Product_category_assignment

A Product_category_assignment is the inclusion of one or more products in a product category.

NOTE    Usually, products are classified in categories of products. However, at some early phase of design, a product may not yet be categorized.

EXAMPLE    A product may belong to categories named 'part', 'raw material', 'document', 'functionality', or 'requirement'.


ENTITY Product_category_assignment;
  category : Product_category;
  products : SET[1:?] OF Product;
END_ENTITY;

category: the Product_category that contains the products.

products: the instances of Product which identify members of the product category.

From module : product_version - using all


Product_version

A Product_version is a revision of a Product. It is a collector of the definitions of this revision of the Product.

NOTE    The set of all instances of Product_version of the same Product represents the history of the product.


ENTITY Product_version;
  id : STRING;
  description : OPTIONAL STRING;
  of_product : Product;
END_ENTITY;

id: the identifier for the Product_version.

description: the text that provides further information about the Product_version. The value of this attribute need not be specified.

of_product: the Product, the Product_version identifies a version of.

From module : product_view_definition - using all


Product_view_definition

A Product_view_definition is a characterization of a Product_version, relevant in one or more application domains and for one or more life cycle stages.

A Product_view_definition is a collector of the properties that characterize the Product_version in the initial_context and additional_contexts.

EXAMPLE 1   The design of the SS Titanic and the as-built description of the SS Titanic can be represented as two instances of Product_view_definition.


ENTITY Product_view_definition;
  id : STRING;
  name : OPTIONAL STRING;
  additional_characterization : OPTIONAL STRING;
  initial_context : View_definition_context;
  additional_contexts : SET[0:?] OF View_definition_context;
  defined_version : Product_version;
WHERE
  WR1: NOT (initial_context IN additional_contexts);
END_ENTITY;

id:

the identifier that distinguishes the Product_view_definition.

NOTE    The value of this attribute may be an empty string.

name:

the words by which the Product_view_definition is known. The value of this attribute need not be specified.

NOTE 1   This attribute is mapped onto description for compatibility with pre-existing application protocols.

additional_characterization:

the text that provides further information about the Product_view_definition. The value of this attribute need not be specified.

NOTE 2   This attribute may be used to precise the kind of definition.

EXAMPLE 2   In case the Product_view_definition characterizes a mating, this attribute may identify the kind of mating. 'clipping', 'welding' are examples of additional_characterization for a mating definition.

initial_context: the View_definition_context in which the defined_version has been primarily characterized by the Product_view_definition .

additional_contexts: the set of instances of View_definition_context in which this Product_view_definition is also relevant.

defined_version: the Product_version of which the Product_view_definition provides a characterization.


View_definition_context

A View_definition_context is the grouping of an application domain and a life cycle stage. It identifies a universe of discourse suitable for the description of products.

NOTE    Requirements and vocabularies vary among the industrial activity fields. This entity intends to identify such a domain.


ENTITY View_definition_context;
  application_domain : STRING;
  life_cycle_stage : STRING;
  description : OPTIONAL STRING;
END_ENTITY;

application_domain:

the text that identifies the application context that bounds the universe of discourse.

EXAMPLE 1   'assembly study', 'digital mock-up', 'electrical design', 'mechanical design', 'preliminary design', 'process planning' are examples of application domains

If application_domain is an empty string, the View_definition_context shall be considered as not specific of any application domain.

life_cycle_stage:

the text that identifies a stage in the life cycle of a product.

EXAMPLE 2   'design phase', 'production', 'recycling phase' are examples of life cycle stages.

If life_cycle_stage is an empty string, the View_definition_context shall be considered as not specific of any life cycle stage.

description: the text that provides further information about the View_definition_context. The value of this attribute need not be specified.

From module : product_view_definition_relationship - using all


View_definition_relationship

A View_definition_relationship is an association between two instances of Product_view_definition.

This association represents a relationship between the product versions, indirectly identified by the instances of Product_view_definition, relevant in the definition contexts of the related instances of Product_view_definition.


ENTITY View_definition_relationship;
  id : OPTIONAL STRING;
  relation_type : OPTIONAL STRING;
  description : OPTIONAL STRING;
  relating_view : Product_view_definition;
  related_view : Product_view_definition;
END_ENTITY;

id: the identifier for the View_definition_relationship. The value of this attribute need not be specified.

relation_type: the meaning of the relationship. The value of this attribute need not be specified. In particular, this attribute is not required in subtypes of this entity.

description: the text that provides further information about the View_definition_relationship. The value of this attribute need not be specified.

relating_view: one of the instances of Product_view_definition that is a part of the relationship.

related_view: the other instance of Product_view_definition that is part of the relationship. If one element of the relationship is dependent upon the other, this attribute shall be the dependent one.


View_definition_usage

A View_definition_usage is a type of View_definition_relationship that specifies a directed association between two instances of Product_view_definition.

This association represents a relationship stating that, in the definition contexts of the related instances of Product_view_definition, it is considered that the related product is used in the context of the relating product.


ENTITY View_definition_usage
  SUBTYPE OF (View_definition_relationship);
END_ENTITY;

From module : attachment_slot - using all


Attachment_slot

An Attachment_slot is a type of Product that represents the position in which a part is or can be attached to a parent product.

EXAMPLE    A fast jet aircraft has two engines. These engines are removable and interchangeable between individual aircraft. An attachment slot represents each installation position for an engine so as to ensure that an accurate record is maintained of which engines fly in which pairing on which aircraft for how many hours.


ENTITY Attachment_slot
  SUBTYPE OF (Product);
END_ENTITY;


Attachment_slot_as_planned

An Attachment_slot_as_planned is a type of Attachment_slot_version that identifies an individual that is the subject of a plan to realize an Attachment_slot.

EXAMPLE    FlyFasterWithUs Group will buy an aircraft with serial number 1234 next year. The company wishes to plan the schedule for removal of engines from the aircraft for maintenance purposes. Instances of the Attachment_slot_as_planned entity data type allow the company to associate individual engines with the aircraft at different times over the planned period.


ENTITY Attachment_slot_as_planned
  SUBTYPE OF (Attachment_slot_version);
END_ENTITY;


Attachment_slot_as_realized

An Attachment_slot_as_realized is a type of Attachment_slot_version that identifies an individual that is a realized Attachment_slot.

EXAMPLE    FlyFasterWithUs Group operates an aircraft with serial number 1234 next year. The company records which individual engines power the aircraft at different times during the lifetime of the aircraft.


ENTITY Attachment_slot_as_realized
  SUBTYPE OF (Attachment_slot_version);
END_ENTITY;


Attachment_slot_definition

An Attachment_slot_definition is a type of Product_view_definition that identifies a view of an Attachment_slot.

EXAMPLE    An airworthiness authority requires an airline company to report which individual engines power the aircraft at different times during the lifetime of the aircraft.


ENTITY Attachment_slot_definition
  SUBTYPE OF (Product_view_definition);
  SELF\Product_view_definition.defined_version : Attachment_slot_version;
END_ENTITY;

defined_version: the Attachment_slot_definition shall only be a view of an Attachment_slot.


Attachment_slot_design

An Attachment_slot_design is a type of Attachment_slot_version that identifies the design version of an attachment slot.

EXAMPLE    WeMakeBigPlanes Limited creates design version 1.34 of the attachment slot for the starboard engine of an aircraft.


ENTITY Attachment_slot_design
  SUBTYPE OF (Attachment_slot_version);
END_ENTITY;


Attachment_slot_design_to_planned

An Attachment_slot_design_to_planned is a relationship between a design version of an Attachment_slot and a planned individual that conforms to the design.

EXAMPLE    WeMakeBigPlanes Limited plans production of aircraft serial number 1234 with a starboard engine attachment slot that is to conform to design version 1.34.


ENTITY Attachment_slot_design_to_planned;
  id : STRING;
  name : STRING;
  description : OPTIONAL STRING;
  design : Attachment_slot_design;
  planned : Attachment_slot_as_planned;
WHERE
  WR1: SELF.design.of_product :=: SELF.planned.of_product;
END_ENTITY;

id: the identifier for the relationship between the design and the planned individual.

name: the words by which the relationship between the design and the planned individual is known.

description: the text that provides further information about the relationship between the design and the planned individual. The value of this attribute need not be specified.

design: the version of the attachment slot concept to which the planned individual will conform.

planned: the attachment slot that is to conform to the design version.


Attachment_slot_design_to_realized

An Attachment_slot_design_to_realized is a relationship between a design version of an Attachment_slot and a realized individual that conforms to the design.

EXAMPLE    WeMakeBigPlanes Limited builds aircraft serial number 1234 with a starboard engine attachment slot that conforms to design version 1.34.


ENTITY Attachment_slot_design_to_realized;
  id : STRING;
  name : STRING;
  description : OPTIONAL STRING;
  design : Attachment_slot_design;
  realized : Attachment_slot_as_realized;
WHERE
  WR1: SELF.design.of_product :=: SELF.realized.of_product;
END_ENTITY;

id: the identifier for the relationship between the design and the realized individual.

name: the words by which the relationship between the design and the realized individual is known.

description: the text that provides further information about the relationship between the design and the realized individual. The value of this attribute need not be specified.

design: the version of the concept to which the realized individual conforms.

realized: the individual that conforms to the design.


Attachment_slot_on_product

An Attachment_slot_on_product is a relationship between a product and an Attachment_slot that is a location on the product at which to install removable parts.

EXAMPLE    An aircraft has a pylon mounting on a wing as a location at which to install various equipment. An instance of the Attachment_slot_on_product entity data type identifies which attachment slot corresponds to the pylon.


ENTITY Attachment_slot_on_product;
  id : STRING;
  name : STRING;
  description : OPTIONAL STRING;
  product : Product_view_definition;
  attachment_slot : Attachment_slot_definition;
END_ENTITY;

id: the identifier for the relationship between the attachment slot and the product.

name: the words by which the relationship between the attachment slot and the product is known.

description: the text that provides further information about the relationship between the attachment slot and the product. The value of this attribute need not be specified.

product: the thing that associates the attachment slot location at which to attach parts to the product view definition.

attachment_slot: a location on a product at which to attach parts via an aperture.


Attachment_slot_planned_to_realized

An Attachment_slot_planned_to_realized is a relationship between a realized individual of an Attachment_slot and a corresponding planned individual.

EXAMPLE    WeMakeBigPlanes Limited builds aircraft serial number 2468 with a starboard engine attachment slot that was previously planned.


ENTITY Attachment_slot_planned_to_realized;
  id : STRING;
  name : STRING;
  description : OPTIONAL STRING;
  planned : Attachment_slot_as_planned;
  realized : Attachment_slot_as_realized;
WHERE
  WR1: SELF.planned.of_product :=: SELF.realized.of_product;
END_ENTITY;

id: the identifier for the relationship between the planned individual and the realized individual.

name: the words by which the relationship between the planned individual and the realized individual is known.

description: the text that provides further information about the relationship between the planned individual and the realized individual. The value of this attribute need not be specified.

planned: the attachment slot that relates to the realized individual.

realized: the individual that relates to the planned individual.


Attachment_slot_version

An Attachment_slot_version is a type of Product_version that identifies a version of Attachment_slot.

NOTE    This is a generic concept of version, in most situations it is possible and more specific to represent a version as Attachment_slot_design, Attachment_slot_as_planned or Attachment_slot_as_realized.


ENTITY Attachment_slot_version
  SUPERTYPE OF (ONEOF (Attachment_slot_as_planned,
                       Attachment_slot_as_realized,
                       Attachment_slot_design))
  SUBTYPE OF (Product_version);
  SELF\Product_version.of_product : Attachment_slot;
END_ENTITY;

of_product: the Attachment_slot_version shall only be a version of an Attachment_slot.


Product_in_attachment_slot

A Product_in_attachment_slot is a type of View_definition_usage that is a relationship between an Attachment_slot and a Product_view_definition of a Product that is designed to be attached to the attachment slot.

EXAMPLE    A long-range fuel tank is designed to be attached to an aircraft in an attachment slot that corresponds to a pylon mounting on a wing.


ENTITY Product_in_attachment_slot
  SUBTYPE OF (View_definition_usage);
  name : STRING;
  SELF\View_definition_relationship.related_view RENAMED attachment_slot : Attachment_slot_definition;
  SELF\View_definition_relationship.relating_view RENAMED product : Product_view_definition;
END_ENTITY;

name: the words by which the relationship between the attachment slot and the product is known.

attachment_slot: the position where the product can be attached.

product: the Product_view_definition of a Product that has been designed to be attached to the attachment slot.