ISA-95

OPC UA

Model

Type

Model

Type

Has property of

ISA95Association

HasISA95ClassProperty

Reference

Has value for

ISA95Association

HasISA95Property

Reference

May contain nested

ISA95Association

HasISA95(Class)Property

Reference

N/A

ISA95Association

HasISA95Attribute

Reference

Records the execution of

ISA95Association

N/A

Reference

May be made up of

ISA95Association

MadeUpOf

Reference

Defined by

ISA95Association

DefinedBy

Reference

Is tested by an

ISA95Association

TestedBy

Reference

Implemented By

ISA95Association

EquipmentOf

Reference

N/A

N/A

AssociateTo

Reference

N/A

N/A

ISA95EquipmentLevelEnum

DataType

N/A

N/A

ISA95TestResultDataType

DataType

N/A

N/A

ISA95AssetAssignmentDataType

DataType

Hierarchy scope

ISA95Attribute

ISA95HierarchyScopeType

DataVariable

N/A

N/A

ISA95TestResultType

DataVariable

N/A

N/A

ISA95AssetAssignmentType

DataVariable

N/A

N/A

ISA95ClassType

Object

N/A

N/A

ISA95ObjectType

Object

N/A

N/A

ISA95TestSpecificationType

Object

Personnel Information

ISA-95

OPC UA

Model

Type

Model

Type

QualificationTestResult

ISA95Object

QualificationTestResultType

DataVariable

Personnel Class Property

ISA95Property

PersonnelClassPropertyType

DataVariable

Person Property

ISA95Property

PersonPropertyType

DataVariable

Personnel

ISA95Object

PersonnelClassType

Object

Person

ISA95Object

PersonType

Object

QualificationTestSpecification

ISA95Object

QualificationTestSpecificationType

Object

Defined by

ISA95Association

DefinedByPersonnelClass

Reference

Is tested by an

ISA95Association

ConformsToQualificationTest

Reference

Role Based Equipment Information

ISA-95

OPC UA

Model

Type

Model

Type

EquipmentCapabilityTestResult

ISA95Object

EquipmentCapabilityTestResultType

DataVariable

EquipmentClass Property

ISA95Property

EquipmentClassPropertyType

DataVariable

EquipmentProperty

ISA95Property

EquipmentPropertyType

DataVariable

EquipmentClass

ISA95Object

EquipmentClassType

Object

Equipment

ISA95Object

EquipmentType

Object

EquipmentCapabilityTestSpecification

ISA95Object

EquipmentCapabilityTestSpecificationType

Object

Defines Procedure for Obtaining an

ISA95Association

Maps to

ISA95Association

Physical Asset Information

ISA-95

OPC UA

Model

Type

Model

Type

PhysicalAssetCapabilityTestResult

ISA95Object

PhysicalAssetCapabilityTestResultType

DataVariable

PhysicalAssetClass Property

ISA95Property

PhysicalAssetClassPropertyType

DataVariable

PhysicalAssetProperty

ISA95Property

PhysicalAssetPropertyType

DataVariable

PhysicalAssetClass

ISA95Object

PhysicalAssetClassType

Object

PhysicalAsset

ISA95Object

PhysicalAssetType

Object

PhysicalAssetCapabilityTestSpecification

ISA95Object

PhysicalAssetCapabilityTestSpecificationType

Object

Defines Procedure for Obtaining an

ISA95Association

Maps to

ISA95Association

Material Handling Information

ISA-95

OPC UA

Model

Type

Model

Type

QATestResult

ISA95Object

MaterialTestResultType

DataVariable

MaterialClass Property

ISA95Property

MaterialClassPropertyType

DataVariable

MaterialLotProperty

ISA95Property

MaterialLotPropertyType

DataVariable

MaterialDefinitionProperty

ISA95Property

MaterialDefinitionPropertyType

DataVariable

MaterialClass

ISA95Object

MaterialClassType

Object

MaterialDefinition

ISA95Object

MaterialDefinitionType

Object

MaterialLot

ISA95Object

MaterialLotTYpe

Object

MaterialSublot

ISA95Object

MaterialSubLotType

Object

MaterialTestSpecification

ISA95Object

MaterialTestSpecificationType

Object

Defines Procedure for Obtaining an

ISA95Association

Maps to

ISA95Association

B2MML Mapping (Informative)

Overview

This annex provides a mapping of the OPC UA ISA-95 information model to B2MML; conversely it also provides a mapping from B2MML to the OPC UA ISA-95 information model. This section is informative only in that B2MML is not a standard and as such multiple variation of it may exist. This mapping is for a common version, but may not apply to all implementation of B2MML.

Common

B2MML Core Component Type

OPC UA

Type Name

Type

Model

Type

AmountType

Data type

CDTAmountDecimal

DataType

BinaryObjectType

Data type

CDTBinaryObject

DataType

CodeType

Data type

CDTCode

DataType

DateTimeType

Data type

CDTDateTime

DataType

IdentifierType

Data type

CDTIdentifier

DataType

IndicatorType

Data type

CDTIndicator

DataType

MeasureType

Data type

CDTMeasureDecimal

DataType

CDTMeasureDouble

DataType

CDTMeasureFloat

DataType

CDTMeasureInt64

DataType

CDTMeasureInt32

DataType

NameType

Data type

CDTName

DataType

NumericType

Data type

CDTNumberDecimal

DataType

CDTNumberDouble

DataType

CDTNumberFloat

DataType

CDTNumberInt64

DataType

CDTNumberInt32

DataType

CDTOrdinal

DataType

CDTPercentDouble

DataType

CDTPercentFloat

DataType

CDTRateDouble

DataType

CDTRateFloat

DataType

CDTRatioDouble

DataType

CDTRatioFloat

DataType

CDTRatioInt64

DataType

CDTRatioInt32

DataType

CDTValueDecimal

DataType

CDTValueDouble

DataType

CDTValueFloat

DataType

CDTValueInt64

DataType

CDTValueInt32

DataType

QuantityType

Data type

CDTQuantityDecimal

DataType

CDTQuantityDouble

DataType

CDTQuantityFloat

DataType

CDTQuantityInt64

DataType

CDTQuantityInt32

DataType

TextType

Data type

CDTText

DataType

CDTValueString

DataType

CDTDate

DataType

CDTTime

DataType

Note: The conversion of measurement data from decimal to float or double can result in a loss of precision.

Personnel Information

B2MML

OPC UA

Model

Type

Model

Type

QualificationTestResult

ISA95Object

QualificationTestResultType

DataVariable

Personnel Class Property

ISA95Property

PersonnelClassPropertyType

DataVariable

Person Property

ISA95Property

PersonPropertyType

DataVariable

Personnel

ISA95Object

PersonnelClassType

Object

Person

ISA95Object

PersonType

Object

QualificationTestSpecification

ISA95Object

QualificationTestSpecificationType

Object

Defined by

ISA95Association

DefinedByPersonnelClass

Reference

Is tested by an

ISA95Association

ConformsToQualificationTest

Reference

Role Based Equipment Information

B2MML

OPC UA

Model

Type

Model

Type

EquipmentCapabilityTestResult

ISA95Object

EquipmentCapabilityTestResultType

DataVariable

EquipmentClass Property

ISA95Property

EquipmentClassPropertyType

DataVariable

EquipmentProperty

ISA95Property

EquipmentPropertyType

DataVariable

EquipmentClass

ISA95Object

EquipmentClassType

Object

Equipment

ISA95Object

EquipmentType

Object

EquipmentCapabilityTestSpecification

ISA95Object

EquipmentCapabilityTestSpecificationType

Object

Defines Procedure for Obtaining an

ISA95Association

Maps to

ISA95Association

Physical Asset Information

B2MML

OPC UA

Model

Type

Model

Type

PhysicalAssetCapabilityTestResult

ISA95Object

PhysicalAssetCapabilityTestResultType

DataVariable

PhysicalAssetClass Property

ISA95Property

PhysicalAssetClassPropertyType

DataVariable

PhysicalAssetProperty

ISA95Property

PhysicalAssetPropertyType

DataVariable

PhysicalAssetClass

ISA95Object

PhysicalAssetClassType

Object

PhysicalAsset

ISA95Object

PhysicalAssetType

Object

PhysicalAssetCapabilityTestSpecification

ISA95Object

PhysicalAssetCapabilityTestSpecificationType

Object

Defines Procedure for Obtaining an

ISA95Association

Maps to

ISA95Association

Material Handling Information

B2MML

OPC UA

Model

Type

Model

Type

QATestResult

ISA95Object

MaterialTestResultType

DataVariable

MaterialClass Property

ISA95Property

MaterialClassPropertyType

DataVariable

MaterialLotProperty

ISA95Property

MaterialLotPropertyType

DataVariable

MaterialDefinitionProperty

ISA95Property

MaterialDefinitionPropertyType

DataVariable

MaterialClass

ISA95Object

MaterialClassType

Object

MaterialDefinition

ISA95Object

MaterialDefinitionType

Object

MaterialLot

ISA95Object

MaterialLotTYpe

Object

MaterialSublot

ISA95Object

MaterialSubLotType

Object

MaterialTestSpecification

ISA95Object

MaterialTestSpecificationType

Object

Defines Procedure for Obtaining an

ISA95Association

Maps to

ISA95Association

Extensions

ISA95HierarchyScopeType

The ISA95HierarchyScopeType is a concrete VariableType that can be used directly. It is a subtype of BaseDataVariableType

This VariableType indicates where the exchanged information fits within the role base equipment hierarchy defined in ISA-95. It defines the scope of the exchanged information, such as a site or area for which the information is relevant.

Table 130 – ISA95HierarchyScopeType definition

Attribute

Value

BrowseName

ISA95HierarchyScopeType

IsAbstract

False

ValueRank

0 (OneOrMoreDimensions)

DataType

ISA95EquipmentElementLevelEnum

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseDataVariableType defined in OPC 10000-5

HasComponent

Variable

OtherValue

String

TextItemType

Optional

HasComponent

Variable

<SubScope>

ISA95Equipment ElementLevelEnum

ISA95HierarchyScopeType

Optional

ToEquipmentScope

Object

<Equipment>

ISA95EquipmentType

Optional

HasProperty

Variable

EnumStrings

String

Mandatory

OtherValue defines a customized hierarchy scope. If Value attribute is set to “OTHER_14”, then OtherValue shall be identification of the hierarchy scope.

SubScope indicates a sub hierarchy definition.

<Equipment> defines an ISA95EquipmentType Object that this variable is associated with.

ToEquipmentScope

The ToEquipmentScope is a concrete ReferenceType that can be used directly. It is a subtype of NonHierarchicalReferences.

Table 131 - ToEquipmentScope ReferenceType

Attributes

Value

BrowseName

ToEquipmentScope

InverseName

ToHierarchyScope

Symmetric

False

IsAbstract

False

References

NodeClass

BrowseName

Comment

Subtype of NonHierarchicalReferences ReferenceType defined in OPC 10000-5

This ReferenceType is used to describe the Equipment that an ISA95HierarchyScope variable is to be associated with.

The SourceNode of this ReferenceType shall be a Variable or VariableType of ISA95HierarchyScopeType or its subtype

The TargetNode of this ReferenceType shall be an Object of ISA95EquipmentType or its subtype.

Company

The following definition illustrates what a company definition may look like. This definition will be used in examples of the ISA-95 information model, but another implementation may choose to represent the information a different manner. In some systems it maybe simply is a reference to some other system that contains the actual company information.

The company information includes address information of the company. This information is available both as a dataType (see Table 132 and Table 133) and as a VariableType (see Table 134).. This combination allows the information to access as a block or individually.

Table 132 – AddressDataType Structure

Name

Type

Description

AddressDataType

Structure

Information that describes an address.

Street

LocalizedText

The street

City

LocalizedText

The city

State

LocalizedText

The state or region

Country

LocalizedText

The country

PostalCode

LocalizedText

The postal code

Its representation in the AddressSpace is defined in a below table.

Table 133 – AddressDataType Definition

Attributes

Value

BrowseName

AddressDataType

Table 134 – AddressVariableType definition

Attribute

Value

BrowseName

AddressVariableType

IsAbstract

False

ValueRank

0

DataType

AddressDataType

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the CompanyType defined in XXXX

HasProperty

Variable

Street

LocalizedText

BaseDataVariableType

Mandatory

HasProperty

Variable

City

LocalizedText

BaseDataVariableType

Mandatory

HasProperty

Variable

State

LocalizedText

BaseDataVariableType

Mandatory

HasProperty

Variable

Country

LocalizedText

BaseDataVariableType

Mandatory

HasProperty

Variable

PostalCode

LocalizedText

BaseDataVariableType

Mandatory

HasProperty

Variable

Street

LocalizedText

BaseDataVariableType

Mandatory

The company include contact information for key personnel at the company. This information is available both as a DataType and as a variable type. This combination allows the information to access as a block of individually.

Table 135 – ContactDataType Structure

Name

Type

Description

ContactDataType

Structure

Information that describes an address.

Title

LocalizedText

Mr, Mrs, Ms, Dr, Sir,….

GivenName

LocalizedText

FamilyName

LocalizedText

PhoneNumber

String

Email

LocalizedText

AltPhoneNumber

String

Alternate Phone Number

AltEmail

LocalizedText

Alternate email address

Its representation in the AddressSpace is defined in a below table.

Table 136 – ContactDataType Definition

Attributes

Value

BrowseName

ContactDataType

Table 137 – ContactVariableType Type definition

Attribute

Value

BrowseName

ContactVariabletype

IsAbstract

False

ValueRank

0 (OneOrMoreDimensions)

DataType

ContactDataType

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the BaseDataVariableType defined in XXXX

HasProperty

Variable

Title

LocalizedText

BaseDataVariable

Mandatory

HasProperty

Variable

GivenName

LocalizedText

BaseDataVariable

Mandatory

HasProperty

Variable

FamilyName

LocalizedText

BaseDataVariable

Mandatory

HasProperty

Variable

PhoneNumber

String

BaseDataVariable

Mandatory

HasProperty

Variable

Email

LocalizedText

BaseDataVariable

Mandatory

HasProperty

Variable

AltPhoneNumber

String

BaseDataVariable

Mandatory

HasProperty

Variable

AltEmail

LocalizedText

BaseDataVariable

Mandatory

This is an example of a possible Company sub-type. It is used in examples since it provides more information and is more typical of what an actual user would require.

Table 138 – TypicalCompanyType Type definition

Attribute

Value

BrowseName

TypicalCompanyType

IsAbstract

False

ValueRank

0 (OneOrMoreDimensions)

DataType

BaseDataType

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the CompanyType defined in XXXX

HasComponent

Variable

PrimaryContact

ContactDataType

ContactVariableType

Mandatory

HasComponent

Variable

PrimaryAddress

AddressDataType

AddressVariableType

Mandatory

HasComponent

Variable

SalesContact

ContactDataType

ContactVariableType

Mandatory

HasComponent

Variable

ServiceContact

ContactDataType

ContactVariableType

Mandatory

HasComponent

Variable

PurchasingContact

ContactDataType

ContactVariableType

Mandatory

HasComponent

Variable

AlternateAddress

AddressDataType

AddressVariableType

Optional

HasComponent

Variable

WEBSite

String

Property

Mandatory

UML notation used in ISA-95 (Informative)

The ISA-95 object models are illustrated using the Unified Modelling Language (UML) notational methodology, as defined in ISA/IEC 19501.

Table 139 - UML notation used in ISA-95

Symbol Name

Symbol

Definition

UMLPackage

image035.png

Defines a package, a collection of object models, state models, use cases, and other UML models. Packages are general-purpose grouping mechanisms used to organize semantically related model elements. In this standard a package is used to specify an external model, such as a production rule model, or a reference to another part of the model.

UMLClass

image036.png

Represents a UML class of objects, each with the same types of

attributes. Each object is uniquely identifiable or enumerable. No

operations or methods are listed for the classes.

UMLAssociation

image037.png

An association between elements of a class and elements of

another or the same class. Each association is identified. May

have the expected number or range of members of the subclass,

when ‘n’ indicates an indeterminate number. For example, 0..n

means that zero or more members of the subclass may exist.

UMLGeneralization

image038.png

Generalization (arrow points to the super class) shows that an

element of the class is a specialized type of the super class.

UMLDependence

image039.png

Dependence is a weak association that shows that a modelling

element depends on another modelling element. The item at the

tail depends on the item at the head of the relationship.

UMLAggregation

image040.png

Aggregation (made up of) shows that an element of the class is

made up of elements of other classes.

UMLCompositie

image041.png

Composite shows a strong form of aggregation, which requires

that a part instance be included in at most one composite at a time and that the composite object has sole responsibility for

disposition of its parts.

Notation Extensions

Overview

The definition of the notation used in figures in this standard is described in OPC 10000-3. The following section describes some extension to this notation to allow for the illustration of structured DataTypes

Node Type Notation

DataTypeElement graphical extension is represented by the graphical form defined in Table 140

Table 140 - Notation of Nodes depending on the NodeClass

NodeClass

Graphical Representation

Comment

DataTypeElement

image042.png

Gray pentagon including text representing the string-part of the DisplayName of the DataTypeElement.

Reference Notation

Table 141 defines an extension that illustrates the elements that are part of a DataType.

Table 141 - Simple Notation of Nodes depending on the NodeClass

ReferenceType

Graphical Representation

Comment

DataItem

image043.png

This construct is used to link a DataType to the DataTypeElement that the structured data type is composed of.