【发布时间】:2018-04-23 14:07:10
【问题描述】:
我正在做一个项目来根据规范构建一个 opc ua 服务器,
我在实现上已经走得够远了,目前正在处理写请求,我已经在服务器地址空间中有几个节点。
似乎有这么多节点,实际上这么多。几乎不可能创建 并一一添加节点。
无论如何,我已经从 opc Foundation 下载了一个 xml 文件,其中包含地址空间中所有节点的架构 Here is a link to the xml file
从 xml 文件创建节点的最有效方法是什么?我正在写一个 c95 编译器。
以下是节点集 Xml 文件中如何表示节点的快速视图,
<Nodes>
<Node i:type="DataTypeNode">
<NodeId>
<Identifier>i=1</Identifier>
</NodeId>
<NodeClass>DataType_64</NodeClass>
<BrowseName>
<NamespaceIndex>0</NamespaceIndex>
<Name>Boolean</Name>
</BrowseName>
<DisplayName>
<Locale></Locale>
<Text>Boolean</Text>
</DisplayName>
<Description>
<Locale></Locale>
<Text>Describes a value that is either TRUE or FALSE.</Text>
</Description>
<WriteMask>0</WriteMask>
<UserWriteMask>0</UserWriteMask>
<RolePermissions />
<UserRolePermissions />
<AccessRestrictions>0</AccessRestrictions>
<References>
<ReferenceNode>
<ReferenceTypeId>
<Identifier>i=45</Identifier>
</ReferenceTypeId>
<IsInverse>true</IsInverse>
<TargetId>
<Identifier>i=24</Identifier>
</TargetId>
</ReferenceNode>
</References>
<IsAbstract>false</IsAbstract>
<DataTypeDefinition i:nil="true" />
</Node>
【问题讨论】: