Help TOC > PLCS technical description
PLCS technical description Date: 2008/03/04 21:43:19
Revision: 1.30

This technical description provides an introduction to the ISO 10303-239ISO 10303-239 Industrial automation systems and integration — Product data representation and exchange Part 239: Application protocol: Product life cycle support, See: and PLCSProduct Life Cycle Support The project developing ISO 10303-239. The name of ISO 10303-239 (published by ISO in 2005). (Product Life Cycle Support) standard and key components for its use:

These components and their relationships are described and an account of how these components may be further specialized by others is provided. Brief descriptions of the DEXlibDEXlib is the XML environment created for the development of PLCS OASIS DEXs and components. It is also used for the development of Business DEXs and components. The ongoing work in the DEXlib development environment is published on a daily basis in HTML at development environment and the publication status procedures used are also given.

A technical overview of PLCS

ISO 10303-239 (PLCS) specifies the information required to support a product throughout its life. It is one of the ISO 10303ISO 10303 is an ISO standard for the computer-interpretable representation and exchange of industrial product data. Its official title is Industrial automation systems and integration - Product data representation and exchange, and it is also known as STEP or the Standard for the Exchange of Product model data. See: family of standards, generally known as STEPISO 10303 - Product data representation and exchange (abbreviation stands for "STandard for the Exchange of Product model data"). A family of standards for product data exchange. See: (STandard for the Exchange of Product model data. This family of standards includes the Application ProtocolApplication Protocol - an implementable component of ISO 10303 STEP which specifies an information model to support a specific business domain.s (APs) which define particular business viewpoints of a common information model, and the PLCS standard belongs to this series. APs are numbered sequentially within STEP. PLCS is AP number 239 and is therefore sometimes referred to as AP239An ISO 10303 STEP Application Protocol (ISO10303-239) supporting the Product Life Cycle Support. or as "ISO 10303-239".

The scope of a STEP AP is initially described in an Activity ModelAn IDEF0 model that describes an application in terms of its processes and information flows., using the IDEF0a functional modeling language. modelling language, which defines the activities and information flows between activities that the AP can support. The activity model is informative rather than normative.

ISO 10303-239 PLCS is intended to "provide through life support for product". The activity model defines four major activities:

These are further decomposed and analysed in the more detailed layers of the Activity Model.

The Activity Model that has been developed for a STEP AP serves as the basis of an information model which represents the information produced by or used by the activities described in the Activity Model. It is this information model that provides a formal representation of the data structures that are shared or exchanged during the life cycle of a product. The information model is normative. This is illustrated in Figure 1 which shows how a STEP AP defines the scope of the information to be exchanged or shared, and offers a range of exchange formats independent of technology to support that exchange. These formats define the requirements for translators applied to specific systems.

Figure 1 —  The role of a STEP AP

Figure 1 —  The role of a STEP AP

The information model of ISO 10303-239 PLCS is capable of representing all the information required to cover the entire life cycle of a product. It is not however, aimed at any particular business or industry domain. Because it is designed to be used in many different business applications, it is a large, generic information model. Whiles this fact ensures that ISO 10303-239 PLCS has a wide range of application, this also implies that that different users will focus on different (though overlapping) areas of the model; and that different users, with different information requirements, may interpret the information model in different ways. In order to address these considerations, the PLCS community has developed a number of mechanisms for partitioning the information model into smaller components and for providing additional (and more precise) semantics that add business specific terminology.

The PLCS community (through the OASIS PLCS TCThe technical committee within OASIS responsible for developing the PLCS DEXs ) has identified:

The need for precise semantics exists at different levels, from the business independent semantics and guidelines provided by OASIS PLCS TC, through business domains (e.g. automotive, aerospace, military), down to specific projects. It is anticipated that the same process (using DEXs, RD, and usage guidelines) is applied at all levels, and that all users of ISO 10303-239 PLCS will take advantage of the starting point given by the work within OASIS PLCS TC. This document makes a distinction between the domain-independent components of PLCS (published by OASIS PLCS TC) and components that are business dependent (published by other groups). The intention is that the independent components (e.g. PLCS DEXs, Templates, and the OASIS PLCS RD) will be specialized into more business dependent components (Business DEX, Business TemplateA Business Template is a Template that represents a Business Object or part of a Business Object.s, and domain specific RD).

The development environment for all of these components of PLCS is called "DEXlib".

PLCS and its components

ISO 10303-239 (PLCS) specifies the information required to support a product throughout its life. This specification uses the EXPRESSThe STEP product data specification language. It consists of language elements that allow an unambiguous data definition and specification of constraints on the data defined. Defined in ISO 10303-11. See: modelling language and provided a basis for the representation, exchange, and sharing of the relevant information.

The fundamental data structures of this model are the EXPRESS "Entities". For example, in PLCS there are Entities defining Parts (Part), versions of parts (Part_version), and people (Person). Each Entity may have attributes that provide further information about the thing being represented by an Entity. For example, a person has a first name and last name. Two of the attributes of the Person are "first_name" and "last_name".

Because the information model defined by ISO 10303-239 (PLCS) has a scope that is wider than most applications or any single data exchange, it is unlikely that any single software application will be able to declare compliance to the whole of PLCS. It is would also be difficult to contract for data to be provided according to the whole of ISO 10303-239 as the scope is so large.

The DEXs (Data EXchange specifications) address this problem by providing a way of narrowing down the scope of the information model to be used in any given exchange.

There are a number of data structure patterns of the PLCS model that will be common to many DEXs. (e.g. the representation and assignment of dates and times). Rather than each DEX replicating the detailed specification of these data structures, "Templates" are defined for common elements of the model and are reused across different DEXs. One DEX will be composed of many Templates, and one Template will form part of many DEXs. The reuse of Templates ensures that different interpretations of equivalent concepts in different DEXs are avoided.

Templates are defined within "Capabilities" which, collectively, provide a complete usage guide for the PLCS model. Each Template has just one defining CapabilityA description of how EXPRESS entities are used to represent a given concept (a specific "functionality" or "capability"). It provides guidance and rules on what Entities should be used to represent a given concept, how the entities should be related, and what Reference Data should be used. As well as general guidance, a set of Templates are defined within a Capability to provide precise specifications of which Entities should be instantiated to represent identified concepts., but each Capability may define one or more Templates.

The information model defined by ISO 10303-239 (PLCS) is generic and does not employ business specific terminology. Additional semantics may be represented by extending the entities of the generic PLCS information model through classification with so called "Reference Data" (RD). This provides a mechanism for adapting the model to the semantics of more specialized domains.

In summary:

DEX architecture

The PLCS DEX architecture is shown in Figure 2, and comprises:

Figure 2 —  DEXs, Capabilities, Templates, and Reference Data.

Figure 2 —  DEXs, Capabilities, Templates, and Reference Data.

The PLCS architecture is extended to encompass specific industrial domains by the following components:

Figure 3 —  DEX architecture extended with business specific constructs

Figure 3 —  DEX architecture extended with business specific constructs

DEXlib development environment

The development environment for all of these components of PLCS is called the "DEXlib development environment". It is an XMLExtensible Markup Language (XML) is a general-purpose markup language recommended by W3C. See environment which manages all PLCS components and their relationships. It was created as a development environment for the work undertaken by the OASIS PLCS TC, but has been extended to provide the same mechanism for the development of business specific DEXs.

DEXlib is located at (, and may be accessed by developers using CVSConcurrent Versions System, a revision control system, popular for open source and commercial software development. See: . The content of the DEXlib development environment is available in HTML format at (, for the mutual benefit of developers and users of PLCS.