mirror of
https://github.com/OPCFoundation/UA-.NETStandard.git
synced 2026-10-24 02:58:36 +08:00
312 lines
12 KiB
XML
312 lines
12 KiB
XML
<?xml version="1.0" encoding="utf-8"?>
|
|
<xs:schema
|
|
targetNamespace="http://opcfoundation.org/UA/2011/03/UANodeSet.xsd"
|
|
elementFormDefault="qualified"
|
|
xmlns="http://opcfoundation.org/UA/2011/03/UANodeSet.xsd"
|
|
xmlns:xs="http://www.w3.org/2001/XMLSchema"
|
|
>
|
|
<xs:element name="UANodeSet">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:element name="NamespaceUris" type ="UriTable" minOccurs="0"></xs:element>
|
|
<xs:element name="ServerUris" type ="UriTable" minOccurs="0"></xs:element>
|
|
<xs:element name="Aliases" type ="AliasTable" minOccurs="0"></xs:element>
|
|
<xs:element name="Extensions" type="ListOfExtensions" minOccurs="0"></xs:element>
|
|
<xs:choice minOccurs="0" maxOccurs="unbounded">
|
|
<xs:element name="UAObject" type="UAObject"></xs:element>
|
|
<xs:element name="UAVariable" type="UAVariable"></xs:element>
|
|
<xs:element name="UAMethod" type="UAMethod"></xs:element>
|
|
<xs:element name="UAView" type="UAView"></xs:element>
|
|
<xs:element name="UAObjectType" type="UAObjectType"></xs:element>
|
|
<xs:element name="UAVariableType" type="UAVariableType"></xs:element>
|
|
<xs:element name="UADataType" type="UADataType"></xs:element>
|
|
<xs:element name="UAReferenceType" type="UAReferenceType"></xs:element>
|
|
</xs:choice>
|
|
</xs:sequence>
|
|
<xs:attribute name="Version" type="xs:string" use="optional"></xs:attribute>
|
|
<xs:attribute name="LastModified" type="xs:dateTime" use="optional"></xs:attribute>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
|
|
<xs:complexType name="UriTable">
|
|
<xs:sequence>
|
|
<xs:element name="Uri" type="xs:string" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:simpleType name="NodeId">
|
|
<xs:restriction base="xs:string"></xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="QualifiedName">
|
|
<xs:restriction base="xs:string"></xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:complexType name="NodeIdAlias">
|
|
<xs:simpleContent>
|
|
<xs:extension base="NodeId">
|
|
<xs:attribute name="Alias" type="xs:string"></xs:attribute>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="AliasTable">
|
|
<xs:sequence>
|
|
<xs:element name="Alias" type="NodeIdAlias" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:simpleType name="Locale">
|
|
<xs:restriction base="xs:string"></xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:complexType name="LocalizedText">
|
|
<xs:simpleContent>
|
|
<xs:extension base="xs:string">
|
|
<xs:attribute name="Locale" type="Locale" default=""></xs:attribute>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<xs:simpleType name="WriteMask">
|
|
<xs:restriction base="xs:unsignedInt"></xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="EventNotifier">
|
|
<xs:restriction base="xs:unsignedByte"></xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="ValueRank">
|
|
<xs:restriction base="xs:int"></xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="ArrayDimensions">
|
|
<xs:list>
|
|
<xs:simpleType>
|
|
<xs:restriction base="xs:token">
|
|
<xs:pattern value="([0-9]*,|[0-9]*)*"></xs:pattern>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
</xs:list>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="SymbolicName">
|
|
<xs:list>
|
|
<xs:simpleType>
|
|
<xs:restriction base="xs:string">
|
|
<xs:pattern value="(\p{L})(\p{L}|\p{N}|_)*"></xs:pattern>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
</xs:list>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="CardinalityType">
|
|
<xs:list>
|
|
<xs:simpleType>
|
|
<xs:restriction base="xs:string">
|
|
<xs:pattern value="(\p{N})*|unbounded"></xs:pattern>
|
|
</xs:restriction>
|
|
</xs:simpleType>
|
|
</xs:list>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="Duration">
|
|
<xs:restriction base="xs:double"></xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:simpleType name="AccessLevel">
|
|
<xs:restriction base="xs:unsignedByte"></xs:restriction>
|
|
</xs:simpleType>
|
|
|
|
<xs:complexType name="Reference">
|
|
<xs:simpleContent>
|
|
<xs:extension base="NodeId">
|
|
<xs:attribute name="ReferenceType" type="NodeId" use="required"></xs:attribute>
|
|
<xs:attribute name="IsForward" type="xs:boolean" default="true"></xs:attribute>
|
|
</xs:extension>
|
|
</xs:simpleContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="ListOfReferences">
|
|
<xs:sequence>
|
|
<xs:element name="Reference" type="Reference" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="ListOfExtensions">
|
|
<xs:sequence>
|
|
<xs:element name="Extension" minOccurs="0" maxOccurs="unbounded">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:any minOccurs="0" processContents="lax" />
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="UANode">
|
|
<xs:sequence>
|
|
<xs:element name="DisplayName" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
<xs:element name="Description" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
<xs:element name="References" type="ListOfReferences" minOccurs="0"></xs:element>
|
|
<xs:element name="Extensions" type="ListOfExtensions" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="NodeId" type="NodeId" use="required"></xs:attribute>
|
|
<xs:attribute name="BrowseName" type="QualifiedName" use="required"></xs:attribute>
|
|
<xs:attribute name="WriteMask" type="WriteMask" default="0"></xs:attribute>
|
|
<xs:attribute name="UserWriteMask" type="WriteMask" default="0"></xs:attribute>
|
|
<xs:attribute name="SymbolicName" type="SymbolicName" use="optional"></xs:attribute>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="UAInstance">
|
|
<xs:complexContent>
|
|
<xs:extension base="UANode">
|
|
<xs:attribute name="ParentNodeId" type="NodeId" use="optional"></xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="UAObject">
|
|
<xs:complexContent>
|
|
<xs:extension base="UAInstance">
|
|
<xs:attribute name="EventNotifier" type="EventNotifier" default="0"></xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="UAVariable">
|
|
<xs:complexContent>
|
|
<xs:extension base="UAInstance">
|
|
<xs:sequence>
|
|
<xs:element name="Value" minOccurs="0">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:any minOccurs="0" processContents="lax" />
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
<xs:element name="Translation" type="TranslationType" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="DataType" type="NodeId" default="i=24"></xs:attribute>
|
|
<xs:attribute name="ValueRank" type="ValueRank" default="-1"></xs:attribute>
|
|
<xs:attribute name="ArrayDimensions" type="ArrayDimensions" default=""></xs:attribute>
|
|
<xs:attribute name="AccessLevel" type="AccessLevel" default="1"></xs:attribute>
|
|
<xs:attribute name="UserAccessLevel" type="AccessLevel" default="1"></xs:attribute>
|
|
<xs:attribute name="MinimumSamplingInterval" type="Duration" default="0"></xs:attribute>
|
|
<xs:attribute name="Historizing" type="xs:boolean" default="false"></xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="UAMethod">
|
|
<xs:complexContent>
|
|
<xs:extension base="UAInstance">
|
|
<xs:attribute name="Executable" type="xs:boolean" default="true"></xs:attribute>
|
|
<xs:attribute name="UserExecutable" type="xs:boolean" default="true"></xs:attribute>
|
|
<xs:attribute name="MethodDeclarationId" type="NodeId" use="optional"></xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="TranslationType">
|
|
<xs:choice minOccurs="0">
|
|
<xs:element name="Text" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
<xs:element name="Field" type="StructureTranslationType" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
</xs:choice>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="StructureTranslationType">
|
|
<xs:sequence>
|
|
<xs:element name="Text" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="Name" type="xs:string" use="required"></xs:attribute>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="UAView">
|
|
<xs:complexContent>
|
|
<xs:extension base="UAInstance">
|
|
<xs:attribute name="ContainsNoLoops" type="xs:boolean" default="false"></xs:attribute>
|
|
<xs:attribute name="EventNotifier" type="EventNotifier" default="0"></xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="UAType">
|
|
<xs:complexContent>
|
|
<xs:extension base="UANode">
|
|
<xs:attribute name="IsAbstract" type="xs:boolean" default="false"></xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="UAObjectType">
|
|
<xs:complexContent>
|
|
<xs:extension base="UAType"></xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="UAVariableType">
|
|
<xs:complexContent>
|
|
<xs:extension base="UAType">
|
|
<xs:sequence>
|
|
<xs:element name="Value" minOccurs="0">
|
|
<xs:complexType>
|
|
<xs:sequence>
|
|
<xs:any minOccurs="0" processContents="lax" />
|
|
</xs:sequence>
|
|
</xs:complexType>
|
|
</xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="DataType" type="NodeId" default="i=24"></xs:attribute>
|
|
<xs:attribute name="ValueRank" type="ValueRank" default="-1"></xs:attribute>
|
|
<xs:attribute name="ArrayDimensions" type="ArrayDimensions" default=""></xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="UADataType">
|
|
<xs:complexContent>
|
|
<xs:extension base="UAType">
|
|
<xs:sequence>
|
|
<xs:element name="Definition" type="DataTypeDefinition" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="DataTypeDefinition">
|
|
<xs:sequence>
|
|
<xs:element name="Field" type="DataTypeField" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="Name" type="QualifiedName" use="required"></xs:attribute>
|
|
<xs:attribute name="BaseType" type="QualifiedName" use="optional" default=""></xs:attribute>
|
|
<xs:attribute name="SymbolicName" type="SymbolicName" use="optional" default=""></xs:attribute>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="DataTypeField">
|
|
<xs:sequence>
|
|
<xs:element name="Description" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
<xs:element name="Definition" type="DataTypeDefinition" minOccurs="0"></xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="Name" type="xs:string" use="required"></xs:attribute>
|
|
<xs:attribute name="SymbolicName" type="SymbolicName" use="optional"></xs:attribute>
|
|
<xs:attribute name="DataType" type="NodeId" default="i=24"></xs:attribute>
|
|
<xs:attribute name="ValueRank" type="ValueRank" default="-1"></xs:attribute>
|
|
<xs:attribute name="Value" type="xs:int" default="-1"></xs:attribute>
|
|
</xs:complexType>
|
|
|
|
<xs:complexType name="UAReferenceType">
|
|
<xs:complexContent>
|
|
<xs:extension base="UAType">
|
|
<xs:sequence>
|
|
<xs:element name="InverseName" type="LocalizedText" minOccurs="0" maxOccurs="unbounded"></xs:element>
|
|
</xs:sequence>
|
|
<xs:attribute name="Symmetric" type="xs:boolean" default="false"></xs:attribute>
|
|
</xs:extension>
|
|
</xs:complexContent>
|
|
</xs:complexType>
|
|
|
|
</xs:schema>
|
|
|