@t0a5tbr0t/node-red-contrib-opcua 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (82) hide show
  1. package/CHANGELOG.md +6 -0
  2. package/LICENSE +20 -0
  3. package/Readme.md +239 -0
  4. package/images/PROSYS-OPC-UA-EXAMPLE2.png +0 -0
  5. package/images/nodeopcua64.png +0 -0
  6. package/images/opcuanode.png +0 -0
  7. package/images/opcuanodeLogo64.png +0 -0
  8. package/opcua/101-opcuaitem.html +106 -0
  9. package/opcua/101-opcuaitem.js +82 -0
  10. package/opcua/102-opcuaclient.html +274 -0
  11. package/opcua/102-opcuaclient.js +2741 -0
  12. package/opcua/103-opcuabrowser.html +71 -0
  13. package/opcua/103-opcuabrowser.js +230 -0
  14. package/opcua/104-opcuaserver.html +261 -0
  15. package/opcua/104-opcuaserver.js +1844 -0
  16. package/opcua/105-opcuaendpoint.html +224 -0
  17. package/opcua/105-opcuaendpoint.js +64 -0
  18. package/opcua/106-opcuaevent.html +110 -0
  19. package/opcua/106-opcuaevent.js +50 -0
  20. package/opcua/107-opcuamethod.html +244 -0
  21. package/opcua/107-opcuamethod.js +521 -0
  22. package/opcua/108-opcuarights.html +223 -0
  23. package/opcua/108-opcuarights.js +156 -0
  24. package/opcua/109-opcuadiscovery.html +51 -0
  25. package/opcua/109-opcuadiscovery.js +180 -0
  26. package/opcua/dump_certificates.js +55 -0
  27. package/opcua/icons/opcuanode.png +0 -0
  28. package/opcua/icons/opcuanodeLogo.png +0 -0
  29. package/opcua/opcua-basics.js +1061 -0
  30. package/opcua/public/vendor/opc-foundation/binary/OPC.ISA95.Types.bsd.xml +141 -0
  31. package/opcua/public/vendor/opc-foundation/binary/Opc.Ua.Adi.Types.bsd.xml +76 -0
  32. package/opcua/public/vendor/opc-foundation/binary/Opc.Ua.Di.Types.bsd.xml +11 -0
  33. package/opcua/public/vendor/opc-foundation/binary/Opc.Ua.Gds.Types.bsd.xml +25 -0
  34. package/opcua/public/vendor/opc-foundation/binary/Opc.Ua.Types.bsd.xml +2391 -0
  35. package/opcua/public/vendor/opc-foundation/csv/AttributeIds.csv +22 -0
  36. package/opcua/public/vendor/opc-foundation/csv/NodeIds.csv +5746 -0
  37. package/opcua/public/vendor/opc-foundation/csv/Opc.Ua.StatusCodes.csv +227 -0
  38. package/opcua/public/vendor/opc-foundation/csv/OpcUaDiModel.csv +1523 -0
  39. package/opcua/public/vendor/opc-foundation/csv/OpcUaGdsModel.csv +400 -0
  40. package/opcua/public/vendor/opc-foundation/csv/ServerCapabilities.csv +13 -0
  41. package/opcua/public/vendor/opc-foundation/csv/ServerCapabilityIdentifiers.csv +13 -0
  42. package/opcua/public/vendor/opc-foundation/csv/StatusCode.csv +227 -0
  43. package/opcua/public/vendor/opc-foundation/csv/StatusCodes.csv +227 -0
  44. package/opcua/public/vendor/opc-foundation/schema/OPC.ISA95.Types.xsd +163 -0
  45. package/opcua/public/vendor/opc-foundation/schema/OPCBinarySchema.xsd +119 -0
  46. package/opcua/public/vendor/opc-foundation/schema/Opc.Ua.Types.xsd +3938 -0
  47. package/opcua/public/vendor/opc-foundation/schema/SecuredApplication.xsd +106 -0
  48. package/opcua/public/vendor/opc-foundation/schema/UANodeSet.xsd +420 -0
  49. package/opcua/public/vendor/opc-foundation/xml/OPC.ISA95.NodeSet2.Nov52013.xml +3293 -0
  50. package/opcua/public/vendor/opc-foundation/xml/Opc.ISA95.NodeSet2.xml +3589 -0
  51. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Adi.NodeSet2.xml +8301 -0
  52. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Adi.Types.bsd.xml +76 -0
  53. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Adi.Types.xsd +157 -0
  54. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.AutoID.NodeSet2.xml +6062 -0
  55. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Di.NodeSet2.xml +5066 -0
  56. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Di.PredefinedNodes.xml +11495 -0
  57. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Di.Types.bsd +86 -0
  58. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Di.Types.bsd.xml +11 -0
  59. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Di.Types.xsd +155 -0
  60. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Gds.NodeSet.xml +15226 -0
  61. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Gds.NodeSet2.xml +6214 -0
  62. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Gds.Types.bsd.xml +25 -0
  63. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.Gds.Types.xsd +30 -0
  64. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet-2.xml +134881 -0
  65. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet-3.xml +134881 -0
  66. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet.xml +134881 -0
  67. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet2.Part10.xml +832 -0
  68. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet2.Part11.xml +793 -0
  69. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet2.Part12.xml +3877 -0
  70. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet2.Part13.xml +344 -0
  71. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet2.Part3.xml +1103 -0
  72. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet2.Part4.xml +3091 -0
  73. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet2.Part5.xml +17092 -0
  74. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet2.Part8.xml +525 -0
  75. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet2.Part9.xml +2049 -0
  76. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet2.Part999.xml +134 -0
  77. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.NodeSet2.xml +67169 -0
  78. package/opcua/public/vendor/opc-foundation/xml/Opc.Ua.PredefinedNodes.xml +64500 -0
  79. package/opcua/public/vendor/opc-foundation/xml/OpcUaDiModel.xml +1239 -0
  80. package/opcua/utils.js +55 -0
  81. package/package.json +68 -0
  82. package/users.json +22 -0
@@ -0,0 +1,106 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <xs:schema id="SecuredApplication"
3
+ targetNamespace="http://opcfoundation.org/UA/2011/03/SecuredApplication.xsd"
4
+ elementFormDefault="qualified"
5
+ xmlns="http://opcfoundation.org/UA/2011/03/SecuredApplication.xsd"
6
+ xmlns:mstns="http://opcfoundation.org/UA/2011/03/SecuredApplication.xsd"
7
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
8
+ >
9
+ <xs:complexType name="SecuredApplication">
10
+ <xs:sequence>
11
+ <xs:element name="ApplicationName" type="xs:string" minOccurs="0" nillable="true"></xs:element>
12
+ <xs:element name="ApplicationUri" type="xs:string" minOccurs="0" nillable="true"></xs:element>
13
+ <xs:element name="ApplicationType" type="ApplicationType" minOccurs="0"></xs:element>
14
+ <xs:element name="ProductName" type="xs:string" minOccurs="0"></xs:element>
15
+ <xs:element name="ConfigurationMode" type="xs:string" minOccurs="0"></xs:element>
16
+ <xs:element name="LastExportTime" type="xs:dateTime" minOccurs="0"></xs:element>
17
+ <xs:element name="ConfigurationFile" type="xs:string" minOccurs="0"></xs:element>
18
+ <xs:element name="ExecutableFile" type="xs:string" minOccurs="0"></xs:element>
19
+ <xs:element name="ApplicationCertificate" type="CertificateIdentifier" minOccurs="0"></xs:element>
20
+ <xs:element name="TrustedCertificateStore" type="CertificateStoreIdentifier" minOccurs="0"></xs:element>
21
+ <xs:element name="TrustedCertificates" type="CertificateList" minOccurs="0"></xs:element>
22
+ <xs:element name="IssuerCertificateStore" type="CertificateStoreIdentifier" minOccurs="0"></xs:element>
23
+ <xs:element name="IssuerCertificates" type="CertificateList" minOccurs="0"></xs:element>
24
+ <xs:element name="RejectedCertificatesStore" type="CertificateStoreIdentifier" minOccurs="0"></xs:element>
25
+ <xs:element name="BaseAddresses" type="ListOfBaseAddresses" minOccurs="0"></xs:element>
26
+ <xs:element name="SecurityProfiles" type="ListOfSecurityProfiles" minOccurs="0"></xs:element>
27
+ <xs:element name="Extensions" type="ListOfExtensions" minOccurs="0" />
28
+ </xs:sequence>
29
+ </xs:complexType>
30
+ <xs:element name="SecuredApplication" type="SecuredApplication" />
31
+
32
+ <xs:complexType name="ListOfExtensions">
33
+ <xs:sequence>
34
+ <xs:element name="Extension" minOccurs="0" maxOccurs="unbounded" nillable="true">
35
+ <xs:complexType>
36
+ <xs:sequence>
37
+ <xs:any minOccurs="0" processContents="lax"/>
38
+ </xs:sequence>
39
+ </xs:complexType>
40
+ </xs:element>
41
+ </xs:sequence>
42
+ </xs:complexType>
43
+
44
+ <xs:complexType name ="ListOfBaseAddresses">
45
+ <xs:sequence>
46
+ <xs:element name="BaseAddress" type="xs:string" minOccurs="0" maxOccurs="unbounded"></xs:element>
47
+ </xs:sequence>
48
+ </xs:complexType>
49
+
50
+ <xs:complexType name ="SecurityProfile">
51
+ <xs:sequence>
52
+ <xs:element name="ProfileUri" type="xs:string" minOccurs="0"></xs:element>
53
+ <xs:element name="Enabled" type="xs:boolean" minOccurs="0"></xs:element>
54
+ </xs:sequence>
55
+ </xs:complexType>
56
+
57
+ <xs:complexType name ="ListOfSecurityProfiles">
58
+ <xs:sequence>
59
+ <xs:element name="SecurityProfile" type="SecurityProfile" minOccurs="0" maxOccurs="unbounded"></xs:element>
60
+ </xs:sequence>
61
+ </xs:complexType>
62
+
63
+ <xs:simpleType name="ApplicationType">
64
+ <xs:restriction base="xs:string">
65
+ <xs:enumeration value="Server_0" />
66
+ <xs:enumeration value="Client_1" />
67
+ <xs:enumeration value="ClientAndServer_2" />
68
+ <xs:enumeration value="DiscoveryServer_3" />
69
+ </xs:restriction>
70
+ </xs:simpleType>
71
+
72
+ <xs:complexType name ="CertificateIdentifier">
73
+ <xs:sequence>
74
+ <xs:element name="StoreType" type="xs:string" minOccurs="0"></xs:element>
75
+ <xs:element name="StorePath" type="xs:string" minOccurs="0"></xs:element>
76
+ <xs:element name="SubjectName" type="xs:string" minOccurs="0"></xs:element>
77
+ <xs:element name="Thumbprint" type="xs:string" minOccurs="0"></xs:element>
78
+ <xs:element name="RawData" type="xs:base64Binary" minOccurs="0"></xs:element>
79
+ <xs:element name="ValidationOptions" type="xs:int" minOccurs="0"></xs:element>
80
+ <xs:element name="OfflineRevocationList" type="xs:base64Binary" minOccurs="0"></xs:element>
81
+ <xs:element name="OnlineRevocationList" type="xs:string" minOccurs="0"></xs:element>
82
+ </xs:sequence>
83
+ </xs:complexType>
84
+
85
+ <xs:complexType name ="ListOfCertificateIdentifier">
86
+ <xs:sequence>
87
+ <xs:element name="CertificateIdentifier" type="CertificateIdentifier" minOccurs="0" maxOccurs="unbounded"></xs:element>
88
+ </xs:sequence>
89
+ </xs:complexType>
90
+
91
+ <xs:complexType name ="CertificateStoreIdentifier">
92
+ <xs:sequence>
93
+ <xs:element name="StoreType" type="xs:string" minOccurs="0"></xs:element>
94
+ <xs:element name="StorePath" type="xs:string" minOccurs="0"></xs:element>
95
+ <xs:element name="ValidationOptions" type="xs:int" minOccurs="0"></xs:element>
96
+ </xs:sequence>
97
+ </xs:complexType>
98
+
99
+ <xs:complexType name ="CertificateList">
100
+ <xs:sequence>
101
+ <xs:element name="Certificates" type="ListOfCertificateIdentifier" minOccurs="0"></xs:element>
102
+ <xs:element name="ValidationOptions" type="xs:int" minOccurs="0"></xs:element>
103
+ </xs:sequence>
104
+ </xs:complexType>
105
+
106
+ </xs:schema>
@@ -0,0 +1,420 @@
1
+ <?xml version="1.0" encoding="utf-8"?>
2
+ <xs:schema
3
+ targetNamespace="http://opcfoundation.org/UA/2011/03/UANodeSet.xsd"
4
+ elementFormDefault="qualified"
5
+ xmlns="http://opcfoundation.org/UA/2011/03/UANodeSet.xsd"
6
+ xmlns:xs="http://www.w3.org/2001/XMLSchema"
7
+ >
8
+ <xs:element name="UANodeSet">
9
+ <xs:complexType>
10
+ <xs:sequence>
11
+ <xs:element name="NamespaceUris" type="UriTable" minOccurs="0"></xs:element>
12
+ <xs:element name="ServerUris" type ="UriTable" minOccurs="0"></xs:element>
13
+ <xs:element name="Models" type="ModelTable" minOccurs="0"></xs:element>
14
+ <xs:element name="Aliases" type ="AliasTable" minOccurs="0"></xs:element>
15
+ <xs:element name="Extensions" type="ListOfExtensions" minOccurs="0"></xs:element>
16
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
17
+ <xs:element name="UAObject" type="UAObject"></xs:element>
18
+ <xs:element name="UAVariable" type="UAVariable"></xs:element>
19
+ <xs:element name="UAMethod" type="UAMethod"></xs:element>
20
+ <xs:element name="UAView" type="UAView"></xs:element>
21
+ <xs:element name="UAObjectType" type="UAObjectType"></xs:element>
22
+ <xs:element name="UAVariableType" type="UAVariableType"></xs:element>
23
+ <xs:element name="UADataType" type="UADataType"></xs:element>
24
+ <xs:element name="UAReferenceType" type="UAReferenceType"></xs:element>
25
+ </xs:choice>
26
+ </xs:sequence>
27
+ <xs:attribute name="LastModified" type="xs:dateTime" use="optional"></xs:attribute>
28
+ </xs:complexType>
29
+ </xs:element>
30
+
31
+ <xs:element name="UANodeSetChanges">
32
+ <xs:complexType>
33
+ <xs:sequence>
34
+ <xs:element name="NamespaceUris" type ="UriTable" minOccurs="0"></xs:element>
35
+ <xs:element name="ServerUris" type ="UriTable" minOccurs="0"></xs:element>
36
+ <xs:element name="Aliases" type ="AliasTable" minOccurs="0"></xs:element>
37
+ <xs:element name="Extensions" type="ListOfExtensions" minOccurs="0"></xs:element>
38
+ <xs:element name="NodesToAdd" type="NodesToAdd" minOccurs="0"></xs:element>
39
+ <xs:element name="ReferencesToAdd" type="ReferencesToChange" minOccurs="0"></xs:element>
40
+ <xs:element name="NodesToDelete" type="NodesToDelete" minOccurs="0"></xs:element>
41
+ <xs:element name="ReferencesToDelete" type="ReferencesToChange" minOccurs="0"></xs:element>
42
+ </xs:sequence>
43
+ <xs:attribute name="Version" type="xs:string" use="optional"></xs:attribute>
44
+ <xs:attribute name="LastModified" type="xs:dateTime" use="optional"></xs:attribute>
45
+ <xs:attribute name="TransactionId" type="xs:string" use="required"></xs:attribute>
46
+ <xs:attribute name="AcceptAllOrNothing" type="xs:boolean" default="false"></xs:attribute>
47
+ </xs:complexType>
48
+ </xs:element>
49
+
50
+ <xs:element name="UANodeSetChangesStatus">
51
+ <xs:complexType>
52
+ <xs:sequence>
53
+ <xs:element name="NodesToAdd" type="NodeSetStatusList" minOccurs="0"></xs:element>
54
+ <xs:element name="ReferencesToAdd" type="NodeSetStatusList" minOccurs="0"></xs:element>
55
+ <xs:element name="NodesToDelete" type="NodeSetStatusList" minOccurs="0"></xs:element>
56
+ <xs:element name="ReferencesToDelete" type="NodeSetStatusList" minOccurs="0"></xs:element>
57
+ </xs:sequence>
58
+ <xs:attribute name="Version" type="xs:string" use="optional"></xs:attribute>
59
+ <xs:attribute name="LastModified" type="xs:dateTime" use="optional"></xs:attribute>
60
+ <xs:attribute name="TransactionId" type="xs:string" use="required"></xs:attribute>
61
+ </xs:complexType>
62
+ </xs:element>
63
+
64
+ <xs:complexType name="NodesToAdd">
65
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
66
+ <xs:element name="UAObject" type="UAObject"></xs:element>
67
+ <xs:element name="UAVariable" type="UAVariable"></xs:element>
68
+ <xs:element name="UAMethod" type="UAMethod"></xs:element>
69
+ <xs:element name="UAView" type="UAView"></xs:element>
70
+ <xs:element name="UAObjectType" type="UAObjectType"></xs:element>
71
+ <xs:element name="UAVariableType" type="UAVariableType"></xs:element>
72
+ <xs:element name="UADataType" type="UADataType"></xs:element>
73
+ <xs:element name="UAReferenceType" type="UAReferenceType"></xs:element>
74
+ </xs:choice>
75
+ </xs:complexType>
76
+
77
+ <xs:complexType name="NodesToDelete">
78
+ <xs:sequence>
79
+ <xs:element name="Node" type="NodeToDelete" minOccurs="0" maxOccurs="unbounded"></xs:element>
80
+ </xs:sequence>
81
+ </xs:complexType>
82
+
83
+ <xs:complexType name="NodeToDelete">
84
+ <xs:simpleContent>
85
+ <xs:extension base="NodeId">
86
+ <xs:attribute name="DeleteReverseReferences" type="xs:boolean" default="true"></xs:attribute>
87
+ </xs:extension>
88
+ </xs:simpleContent>
89
+ </xs:complexType>
90
+
91
+ <xs:complexType name="ReferencesToChange">
92
+ <xs:sequence>
93
+ <xs:element name="Reference" type="ReferenceChange" minOccurs="0" maxOccurs="unbounded"></xs:element>
94
+ </xs:sequence>
95
+ </xs:complexType>
96
+
97
+ <xs:complexType name="ReferenceChange">
98
+ <xs:simpleContent>
99
+ <xs:extension base="NodeId">
100
+ <xs:attribute name="Source" type="NodeId" use="required"></xs:attribute>
101
+ <xs:attribute name="ReferenceType" type="NodeId" use="required"></xs:attribute>
102
+ <xs:attribute name="IsForward" type="xs:boolean" default="true"></xs:attribute>
103
+ </xs:extension>
104
+ </xs:simpleContent>
105
+ </xs:complexType>
106
+
107
+ <xs:complexType name="NodeSetStatus">
108
+ <xs:simpleContent>
109
+ <xs:extension base="xs:string">
110
+ <xs:attribute name="Code" type="xs:unsignedInt" default="0"></xs:attribute>
111
+ </xs:extension>
112
+ </xs:simpleContent>
113
+ </xs:complexType>
114
+
115
+ <xs:complexType name="NodeSetStatusList">
116
+ <xs:sequence>
117
+ <xs:element name="Status" type="NodeSetStatus" minOccurs="0" maxOccurs="unbounded"></xs:element>
118
+ </xs:sequence>
119
+ </xs:complexType>
120
+
121
+ <xs:complexType name="UriTable">
122
+ <xs:sequence>
123
+ <xs:element name="Uri" type="xs:string" minOccurs="0" maxOccurs="unbounded"></xs:element>
124
+ </xs:sequence>
125
+ </xs:complexType>
126
+
127
+ <xs:complexType name="ModelTableEntry">
128
+ <xs:sequence>
129
+ <xs:element name="RequiredModel" type="ModelTableEntry" minOccurs="0" maxOccurs="unbounded"></xs:element>
130
+ </xs:sequence>
131
+ <xs:attribute name="ModelUri" type="xs:string" use="optional"></xs:attribute>
132
+ <xs:attribute name="Version" type="xs:string" use="optional"></xs:attribute>
133
+ <xs:attribute name="PublicationDate" type="xs:dateTime" use="optional"></xs:attribute>
134
+ </xs:complexType>
135
+
136
+ <xs:complexType name="ModelTable">
137
+ <xs:sequence>
138
+ <xs:element name="Model" type="ModelTableEntry" minOccurs="0" maxOccurs="unbounded"></xs:element>
139
+ </xs:sequence>
140
+ </xs:complexType>
141
+
142
+ <xs:simpleType name="NodeId">
143
+ <xs:restriction base="xs:string"></xs:restriction>
144
+ </xs:simpleType>
145
+
146
+ <xs:simpleType name="QualifiedName">
147
+ <xs:restriction base="xs:string"></xs:restriction>
148
+ </xs:simpleType>
149
+
150
+ <xs:complexType name="NodeIdAlias">
151
+ <xs:simpleContent>
152
+ <xs:extension base="NodeId">
153
+ <xs:attribute name="Alias" type="xs:string"></xs:attribute>
154
+ </xs:extension>
155
+ </xs:simpleContent>
156
+ </xs:complexType>
157
+
158
+ <xs:complexType name="AliasTable">
159
+ <xs:sequence>
160
+ <xs:element name="Alias" type="NodeIdAlias" minOccurs="0" maxOccurs="unbounded"></xs:element>
161
+ </xs:sequence>
162
+ </xs:complexType>
163
+
164
+ <xs:simpleType name="Locale">
165
+ <xs:restriction base="xs:string"></xs:restriction>
166
+ </xs:simpleType>
167
+
168
+ <xs:complexType name="LocalizedText">
169
+ <xs:simpleContent>
170
+ <xs:extension base="xs:string">
171
+ <xs:attribute name="Locale" type="Locale" default=""></xs:attribute>
172
+ </xs:extension>
173
+ </xs:simpleContent>
174
+ </xs:complexType>
175
+
176
+ <xs:simpleType name="WriteMask">
177
+ <xs:restriction base="xs:unsignedInt"></xs:restriction>
178
+ </xs:simpleType>
179
+
180
+ <xs:simpleType name="EventNotifier">
181
+ <xs:restriction base="xs:unsignedByte"></xs:restriction>
182
+ </xs:simpleType>
183
+
184
+ <xs:simpleType name="ValueRank">
185
+ <xs:restriction base="xs:int"></xs:restriction>
186
+ </xs:simpleType>
187
+
188
+ <xs:simpleType name="ArrayDimensions">
189
+ <xs:list>
190
+ <xs:simpleType>
191
+ <xs:restriction base="xs:token">
192
+ <xs:pattern value="([0-9]*,|[0-9]*)*"></xs:pattern>
193
+ </xs:restriction>
194
+ </xs:simpleType>
195
+ </xs:list>
196
+ </xs:simpleType>
197
+
198
+ <xs:simpleType name="SymbolicName">
199
+ <xs:list>
200
+ <xs:simpleType>
201
+ <xs:restriction base="xs:string">
202
+ <xs:pattern value="(\p{L})(\p{L}|\p{N}|_)*"></xs:pattern>
203
+ </xs:restriction>
204
+ </xs:simpleType>
205
+ </xs:list>
206
+ </xs:simpleType>
207
+
208
+ <xs:simpleType name="CardinalityType">
209
+ <xs:list>
210
+ <xs:simpleType>
211
+ <xs:restriction base="xs:string">
212
+ <xs:pattern value="(\p{N})*|unbounded"></xs:pattern>
213
+ </xs:restriction>
214
+ </xs:simpleType>
215
+ </xs:list>
216
+ </xs:simpleType>
217
+
218
+ <xs:simpleType name="Duration">
219
+ <xs:restriction base="xs:double"></xs:restriction>
220
+ </xs:simpleType>
221
+
222
+ <xs:simpleType name="AccessLevel">
223
+ <xs:restriction base="xs:unsignedByte"></xs:restriction>
224
+ </xs:simpleType>
225
+
226
+ <xs:complexType name="Reference">
227
+ <xs:simpleContent>
228
+ <xs:extension base="NodeId">
229
+ <xs:attribute name="ReferenceType" type="NodeId" use="required"></xs:attribute>
230
+ <xs:attribute name="IsForward" type="xs:boolean" default="true"></xs:attribute>
231
+ </xs:extension>
232
+ </xs:simpleContent>
233
+ </xs:complexType>
234
+
235
+ <xs:complexType name="ListOfReferences">
236
+ <xs:sequence>
237
+ <xs:element name="Reference" type="Reference" minOccurs="0" maxOccurs="unbounded"></xs:element>
238
+ </xs:sequence>
239
+ </xs:complexType>
240
+
241
+ <xs:complexType name="ListOfExtensions">
242
+ <xs:sequence>
243
+ <xs:element name="Extension" minOccurs="0" maxOccurs="unbounded">
244
+ <xs:complexType>
245
+ <xs:sequence>
246
+ <xs:any minOccurs="0" processContents="lax" />
247
+ </xs:sequence>
248
+ </xs:complexType>
249
+ </xs:element>
250
+ </xs:sequence>
251
+ </xs:complexType>
252
+
253
+ <xs:complexType name="UANode">
254
+ <xs:sequence>
255
+ <xs:element name="DisplayName" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
256
+ <xs:element name="Description" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
257
+ <xs:element name="Category" type="xs:string" minOccurs="0" maxOccurs="unbounded"></xs:element>
258
+ <xs:element name="Documentation" type="xs:string" minOccurs="0" maxOccurs="1"></xs:element>
259
+ <xs:element name="References" type="ListOfReferences" minOccurs="0"></xs:element>
260
+ <xs:element name="Extensions" type="ListOfExtensions" minOccurs="0"></xs:element>
261
+ </xs:sequence>
262
+ <xs:attribute name="NodeId" type="NodeId" use="required"></xs:attribute>
263
+ <xs:attribute name="BrowseName" type="QualifiedName" use="required"></xs:attribute>
264
+ <xs:attribute name="WriteMask" type="WriteMask" default="0"></xs:attribute>
265
+ <xs:attribute name="UserWriteMask" type="WriteMask" default="0"></xs:attribute>
266
+ <xs:attribute name="SymbolicName" type="SymbolicName" use="optional"></xs:attribute>
267
+ </xs:complexType>
268
+
269
+ <xs:complexType name="UAInstance">
270
+ <xs:complexContent>
271
+ <xs:extension base="UANode">
272
+ <xs:attribute name="ParentNodeId" type="NodeId" use="optional"></xs:attribute>
273
+ </xs:extension>
274
+ </xs:complexContent>
275
+ </xs:complexType>
276
+
277
+ <xs:complexType name="UAObject">
278
+ <xs:complexContent>
279
+ <xs:extension base="UAInstance">
280
+ <xs:attribute name="EventNotifier" type="EventNotifier" default="0"></xs:attribute>
281
+ </xs:extension>
282
+ </xs:complexContent>
283
+ </xs:complexType>
284
+
285
+ <xs:complexType name="UAVariable">
286
+ <xs:complexContent>
287
+ <xs:extension base="UAInstance">
288
+ <xs:sequence>
289
+ <xs:element name="Value" minOccurs="0">
290
+ <xs:complexType>
291
+ <xs:sequence>
292
+ <xs:any minOccurs="0" processContents="lax" />
293
+ </xs:sequence>
294
+ </xs:complexType>
295
+ </xs:element>
296
+ <xs:element name="Translation" type="TranslationType" minOccurs="0" maxOccurs="unbounded"></xs:element>
297
+ </xs:sequence>
298
+ <xs:attribute name="DataType" type="NodeId" default="i=24"></xs:attribute>
299
+ <xs:attribute name="ValueRank" type="ValueRank" default="-1"></xs:attribute>
300
+ <xs:attribute name="ArrayDimensions" type="ArrayDimensions" default=""></xs:attribute>
301
+ <xs:attribute name="AccessLevel" type="AccessLevel" default="1"></xs:attribute>
302
+ <xs:attribute name="UserAccessLevel" type="AccessLevel" default="1"></xs:attribute>
303
+ <xs:attribute name="MinimumSamplingInterval" type="Duration" default="0"></xs:attribute>
304
+ <xs:attribute name="Historizing" type="xs:boolean" default="false"></xs:attribute>
305
+ </xs:extension>
306
+ </xs:complexContent>
307
+ </xs:complexType>
308
+
309
+ <xs:complexType name="UAMethod">
310
+ <xs:complexContent>
311
+ <xs:extension base="UAInstance">
312
+ <xs:attribute name="Executable" type="xs:boolean" default="true"></xs:attribute>
313
+ <xs:attribute name="UserExecutable" type="xs:boolean" default="true"></xs:attribute>
314
+ <xs:attribute name="MethodDeclarationId" type="NodeId" use="optional"></xs:attribute>
315
+ </xs:extension>
316
+ </xs:complexContent>
317
+ </xs:complexType>
318
+
319
+ <xs:complexType name="TranslationType">
320
+ <xs:choice minOccurs="0">
321
+ <xs:element name="Text" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
322
+ <xs:element name="Field" type="StructureTranslationType" minOccurs="0" maxOccurs="unbounded"></xs:element>
323
+ </xs:choice>
324
+ </xs:complexType>
325
+
326
+ <xs:complexType name="StructureTranslationType">
327
+ <xs:sequence>
328
+ <xs:element name="Text" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
329
+ </xs:sequence>
330
+ <xs:attribute name="Name" type="xs:string" use="required"></xs:attribute>
331
+ </xs:complexType>
332
+
333
+ <xs:complexType name="UAView">
334
+ <xs:complexContent>
335
+ <xs:extension base="UAInstance">
336
+ <xs:attribute name="ContainsNoLoops" type="xs:boolean" default="false"></xs:attribute>
337
+ <xs:attribute name="EventNotifier" type="EventNotifier" default="0"></xs:attribute>
338
+ </xs:extension>
339
+ </xs:complexContent>
340
+ </xs:complexType>
341
+
342
+ <xs:complexType name="UAType">
343
+ <xs:complexContent>
344
+ <xs:extension base="UANode">
345
+ <xs:attribute name="IsAbstract" type="xs:boolean" default="false"></xs:attribute>
346
+ </xs:extension>
347
+ </xs:complexContent>
348
+ </xs:complexType>
349
+
350
+ <xs:complexType name="UAObjectType">
351
+ <xs:complexContent>
352
+ <xs:extension base="UAType"></xs:extension>
353
+ </xs:complexContent>
354
+ </xs:complexType>
355
+
356
+ <xs:complexType name="UAVariableType">
357
+ <xs:complexContent>
358
+ <xs:extension base="UAType">
359
+ <xs:sequence>
360
+ <xs:element name="Value" minOccurs="0">
361
+ <xs:complexType>
362
+ <xs:sequence>
363
+ <xs:any minOccurs="0" processContents="lax" />
364
+ </xs:sequence>
365
+ </xs:complexType>
366
+ </xs:element>
367
+ </xs:sequence>
368
+ <xs:attribute name="DataType" type="NodeId" default="i=24"></xs:attribute>
369
+ <xs:attribute name="ValueRank" type="ValueRank" default="-1"></xs:attribute>
370
+ <xs:attribute name="ArrayDimensions" type="ArrayDimensions" default=""></xs:attribute>
371
+ </xs:extension>
372
+ </xs:complexContent>
373
+ </xs:complexType>
374
+
375
+ <xs:complexType name="UADataType">
376
+ <xs:complexContent>
377
+ <xs:extension base="UAType">
378
+ <xs:sequence>
379
+ <xs:element name="Definition" type="DataTypeDefinition" minOccurs="0"></xs:element>
380
+ </xs:sequence>
381
+ </xs:extension>
382
+ </xs:complexContent>
383
+ </xs:complexType>
384
+
385
+ <xs:complexType name="DataTypeDefinition">
386
+ <xs:sequence>
387
+ <xs:element name="Field" type="DataTypeField" minOccurs="0" maxOccurs="unbounded"></xs:element>
388
+ </xs:sequence>
389
+ <xs:attribute name="Name" type="QualifiedName" use="required"></xs:attribute>
390
+ <xs:attribute name="BaseType" type="QualifiedName" use="optional" default=""></xs:attribute>
391
+ <xs:attribute name="SymbolicName" type="SymbolicName" use="optional" default=""></xs:attribute>
392
+ <xs:attribute name="IsUnion" type="xs:boolean" use="optional" default="false"></xs:attribute>
393
+ </xs:complexType>
394
+
395
+ <xs:complexType name="DataTypeField">
396
+ <xs:sequence>
397
+ <xs:element name="Description" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
398
+ <xs:element name="Definition" type="DataTypeDefinition" minOccurs="0"></xs:element>
399
+ </xs:sequence>
400
+ <xs:attribute name="Name" type="xs:string" use="required"></xs:attribute>
401
+ <xs:attribute name="SymbolicName" type="SymbolicName" use="optional"></xs:attribute>
402
+ <xs:attribute name="DataType" type="NodeId" default="i=24"></xs:attribute>
403
+ <xs:attribute name="ValueRank" type="ValueRank" default="-1"></xs:attribute>
404
+ <xs:attribute name="Value" type="xs:int" default="-1"></xs:attribute>
405
+ <xs:attribute name="IsOptional" type="xs:boolean" use="optional" default="false"></xs:attribute>
406
+ </xs:complexType>
407
+
408
+ <xs:complexType name="UAReferenceType">
409
+ <xs:complexContent>
410
+ <xs:extension base="UAType">
411
+ <xs:sequence>
412
+ <xs:element name="InverseName" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
413
+ </xs:sequence>
414
+ <xs:attribute name="Symmetric" type="xs:boolean" default="false"></xs:attribute>
415
+ </xs:extension>
416
+ </xs:complexContent>
417
+ </xs:complexType>
418
+
419
+ </xs:schema>
420
+