Difference between revisions of "Extensions.DataType"

From emotive
Jump to navigation Jump to search
(Update according to the new ISO_WD_13209-4_OTX.- Edited by Ngoc Tran.)
 
(8 intermediate revisions by 2 users not shown)
Line 1: Line 1:
{{DISPLAYTITLE:OTX '''DataTypes''' Extension}}[[Category:OTX-Extension]][[Category:DataTypes]]
+
{{DISPLAYTITLE:OTX '''DataType''' Extension}}[[Category:OTX-Extension]][[Category:DataType]]
 
__TOC__
 
__TOC__
 
== Classification ==
 
== Classification ==
{{ClassificationExtension | DataTypes | User-defined structure and enumeration data types | [[OtxReference#Extensions|OTX Extension]] | - | - }}
+
{{ClassificationExtension | DataType | Support often required data types Enumeration and Structure. | [[OtxReference#Extensions|OTX Extension]] | - | - | SpecifiedBy={{OtxSpec4}} }}
  
 
== Introduction ==
 
== Introduction ==
The OTX '''DataTypes''' extension allows users to create a definition of new structure and enumeration data types through the signature concept. The definition can be re-used in each declaration and can be validated at design time.  
+
The purpose of the OTX '''DataTypes''' extension is support often required data types [[Extensions.DataType.Enumeration|Enumeration]] and [[Extensions.DataType.Structure|Structure]]. <br />
 
+
The inner structure of data types [[Extensions.DataType.Enumeration|Enumeration]] and [[Extensions.DataType.Structure|Structure]] have to be defined during authoring time via a signature. This approach has the advantage, that a validation is possible at design time. <br />
{{Note | Only identical signature structures and enumerations are handled as identical data types. Changing of items in structures shall trigger the [[DeepMonitorChangeEvent]].}}
+
Identical enumerations and structures, which refer to the same signature are handled as identical data types. <br />
  
 
== Terms ==
 
== Terms ==
 
{| {{TableHeader}}
 
{| {{TableHeader}}
  
{{TableRowKeyValueList|[[Extensions.DataTypes.EnumerationContainsName|EnumerationContainsName]]|}}
+
{{TableRowKeyValueList|[[Extensions.DataType.EnumerationContainsName|EnumerationContainsName]]|}}
{{TableRowKeyValueList|[[Extensions.DataTypes.EnumerationContainsValue|EnumerationContainsValue]]|}}
+
{{TableRowKeyValueList|[[Extensions.DataType.EnumerationContainsValue|EnumerationContainsValue]]|}}
{{TableRowKeyValueList|[[Extensions.DataTypes.EnumerationGetEntryList|EnumerationGetEntryList]]|}}
+
{{TableRowKeyValueList|[[Extensions.DataType.EnumerationGetEntryList|EnumerationGetEntryList]]|}}
{{TableRowKeyValueList|[[Extensions.DataTypes.GetEnumerationByName|GetEnumerationByName]]|}}
+
{{TableRowKeyValueList|[[Extensions.DataType.GetEnumerationByName|GetEnumerationByName]]|}}
{{TableRowKeyValueList|[[Extensions.DataTypes.GetEnumerationByValue|GetEnumerationByValue]]|}}
+
{{TableRowKeyValueList|[[Extensions.DataType.GetEnumerationByValue|GetEnumerationByValue]]|}}
{{TableRowKeyValueList|[[Extensions.DataTypes.StructureCopy|StructureCopy]]|}}
+
{{TableRowKeyValueList|[[Extensions.DataType.CreateResourceLocation|CreateResourceLocation]]|}}
 +
{{TableRowKeyValueList|[[Extensions.DataType.GetResourceLocationId|GetResourceLocationId]]|}}
 +
{{TableRowKeyValueList|[[Extensions.DataType.IsResourceLocationMapped|IsResourceLocationMapped]]|}}
 +
{{TableRowKeyValueList|[[Extensions.DataType.StructureCopy|StructureCopy]]|}}
 +
{{TableRowKeyValueList|[[Extensions.DataType.StructureCreate|StructureCreate]]|}}
  
 
|}
 
|}
Line 24: Line 28:
 
{| {{TableHeader}}
 
{| {{TableHeader}}
  
{{TableRowKeyValueList|[[Extensions.DataTypes.Enumeration|Enumeration]]|}}
+
{{TableRowKeyValueList|[[Extensions.DataType.Enumeration|Enumeration]]|}}
{{TableRowKeyValueList|[[Extensions.DataTypes.Structure|Structure]]|}}
+
{{TableRowKeyValueList|[[Extensions.DataType.ResourceLocation|ResourceLocation]]|}}
 +
{{TableRowKeyValueList|[[Extensions.DataType.Structure|Structure]]|}}
 +
 
 +
|}
 +
 
 +
== Exceptions ==
 +
{| {{TableHeader}}
  
 +
{{TableRowKeyValueList|[[Extensions.DataType.DataTypeException|DataTypeException]]|}}
 
|}
 
|}
  
Line 32: Line 43:
 
{| {{TableHeader}}
 
{| {{TableHeader}}
  
{{TableRowKeyValueList|[[Extensions.DataTypes.DataTypeSignature|DataTypeSignature]]|}}
+
{{TableRowKeyValueList|[[Extensions.DataType.StructureSignature|StructureSignature]]|}}
{{TableRowKeyValueList|[[Extensions.DataTypes.EnumerationSignature|EnumerationSignature]]|}}
+
{{TableRowKeyValueList|[[Extensions.DataType.EnumerationSignature|EnumerationSignature]]|}}
  
 
|}
 
|}
Line 40: Line 51:
 
{| {{TableHeader}}
 
{| {{TableHeader}}
  
{{TableRowKeyValueList|[[Extensions.DataTypes.DataTypesChk003|DataTypes_Chk003]]|No circular dependencies of structures }}
+
{{TableRowKeyValueList|[[Extensions.DataType.DataTypeChk001|DataType_Chk001]]|Accessing structure elements}}
 
+
{{TableRowKeyValueList|[[Extensions.DataType.DataTypeChk002|DataType_Chk002]]|Accessing Enumerations elements}}
 +
{{TableRowKeyValueList|[[Extensions.DataType.DataTypeChk003|DataType_Chk003]]|No circular dependencies of structures }}
 +
{{TableRowKeyValueList|[[Extensions.DataType.DataTypeChk004|DataType_Chk004]]|Unique enumeration values}}
 
|}
 
|}

Latest revision as of 06:39, 1 October 2019

Classification

Name DataType
Short Description Support often required data types Enumeration and Structure.
Class OTX Extension
Base Extension -
Pre-Conditions -
Specified by ISO 13209-4

Introduction

The purpose of the OTX DataTypes extension is support often required data types Enumeration and Structure.
The inner structure of data types Enumeration and Structure have to be defined during authoring time via a signature. This approach has the advantage, that a validation is possible at design time.
Identical enumerations and structures, which refer to the same signature are handled as identical data types.

Terms

EnumerationContainsName
EnumerationContainsValue
EnumerationGetEntryList
GetEnumerationByName
GetEnumerationByValue
CreateResourceLocation
GetResourceLocationId
IsResourceLocationMapped
StructureCopy
StructureCreate

Data Types

Enumeration
ResourceLocation
Structure

Exceptions

DataTypeException

Signatures

StructureSignature
EnumerationSignature

Checker rules

DataType_Chk001 Accessing structure elements
DataType_Chk002 Accessing Enumerations elements
DataType_Chk003 No circular dependencies of structures
DataType_Chk004 Unique enumeration values