The MaterialDefinitionType is a concrete ObjectType that can be used directly. It is a subtype of ISA95ClassType defined in 7.6.2

This ObjectType indicates a grouping of Material with similar characteristics for a definite purpose such as manufacturing operations definition, scheduling, capability and performance. A MaterialDefinitionType may be associated to material test specification(s). MaterialDefinitionType is used to further classify a MaterialClassType, for example a MaterialClassType may be Hydrochloric Acid, a MaterialDefinitionType may be ABC Chemicals version of Hydrochloric Acid, with addition properties provided by the company.

Table 76 - MaterialDefinitionType definition

Attribute

Value

BrowseName

MaterialDefinitionType

IsAbstract

False

References

NodeClass

BrowseName

DataType

TypeDefinition

ModellingRule

Subtype of the ISA95ClassType defined in 7.6.2.

HasISA95ClassProperty

Variable

<PropertyName>

BaseDataType

MaterialDefinitionPropertyType

OptionalPlaceholder

TestedByMaterialTest

Object

<TestSpecification>

MaterialTestSpecificationType

OptionalPlaceholder

DefinedByMaterialClass

Object

<MaterialClass>

MaterialClassType

OptionalPlaceholder

AssembledFrom Definition

Object

<AssemblyDefinition>

MaterialDefinitionType

OptionalPlaceholder

HasISA95Attribute

Variable

AssemblyType

BaseDataType

BaseDataVariableType

Optional

HasISA95Attribute

Variable

AssemblyRelationship

BaseDataType

BaseDataVariableType

Optional

<PropertyName> is a placeholder for possible instances of MaterialDefinitionPropertyType. These properties can have any name but shall be referenced using the HasISA95ClassProperty reference and shall be of type MaterialDefinitionPropertyType or a sub type of it

<TestSpecification> is a placeholder for any test specification that this MaterialDefinitionType conforms to. These test specifications can have any name but shall be referenced using the TestedByMaterialTest Reference and shall be of type MaterialTestSpecificationType or a subtype of it.

<MaterialClass> is a placeholder for any material class that defines this MaterialDefinitionType These material classes can have any name but shall be referenced using the DefinedByMaterialClass Reference and shall be MaterialClassType or a subtype of it.

<AssemblyDefinition> is a placeholder for any MaterialDefinitionTypes that are used to compose this material. These MaterialDefinitionType (assemblies) can have any name, but they shall be referenced using the AssembledFromDefinition reference and shall be subtypes of MaterialDefinitionType.

AssemblyType is flag that indicates if this assembly is a physical or logical assembly. This property is optional on a MaterialDefinitionType, in that it is only on MaterialDefinitionTypes that are being used as an assembly but it required on a MaterialDefinitionType that is an assembly.

AssemblyRelationship is flag that indicates if this assembly is permanent or transient. This property is optional on a MaterialDefinitionType, in that it is only on MaterialDefinitionTypes that are being used as an assembly but it required on a MaterialDefinitionType that is an assembly.