View Issue Details

IDProjectCategoryView StatusLast Update
000669230120: IO-LinkImplementation Bugpublic2023-02-14 15:30
ReporterAlberto Medina Assigned ToMartin Lang  
PriorityhighSeveritymajorReproducibilityalways
Status resolvedResolutionfixed 
Target VersionV1.01 
Summary0006692: Nodeset files missing uax namespace prefix for default values.
Description

Both the nodeset files are missing the uax namespace for UAVariables default values.

See ns1;i=6069, ns1;i=6070 for Opc.Ua.IOLink.NodeSet2.xml
Or ns1;i=6001 to 6005 for Opc.Ua.IOLinkIODD.NodeSet2.xml

See attached files for proposed corrections.

TagsNo tags attached.
Attached Files
Opc.Ua.IOLinkIODD.NodeSet2.xml (7,512 bytes)   
<?xml version="1.0" encoding="utf-8" ?>
<!--
 * Copyright (c) 2005-2020 The OPC Foundation, Inc. All rights reserved.
 *
 * OPC Foundation MIT License 1.00
 * 
 * Permission is hereby granted, free of charge, to any person
 * obtaining a copy of this software and associated documentation
 * files (the "Software"), to deal in the Software without
 * restriction, including without limitation the rights to use,
 * copy, modify, merge, publish, distribute, sublicense, and/or sell
 * copies of the Software, and to permit persons to whom the
 * Software is furnished to do so, subject to the following
 * conditions:
 * 
 * The above copyright notice and this permission notice shall be
 * included in all copies or substantial portions of the Software.
 * THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND,
 * EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES
 * OF MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND
 * NONINFRINGEMENT. IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT
 * HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER LIABILITY,
 * WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING
 * FROM, OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR
 * OTHER DEALINGS IN THE SOFTWARE.
 *
 * The complete license agreement can be found here:
 * http://opcfoundation.org/License/MIT/1.00/
-->

<UANodeSet xmlns="http://opcfoundation.org/UA/2011/03/UANodeSet.xsd">
    <NamespaceUris>
        <Uri>http://opcfoundation.org/UA/IOLink/IODD/</Uri>
    </NamespaceUris>
    <Models>
        <Model ModelUri="http://opcfoundation.org/UA/IOLink/IODD/" PublicationDate="2018-12-01T00:00:00Z" Version="1.0">
            <RequiredModel ModelUri="http://opcfoundation.org/UA/" PublicationDate="2018-11-15T00:00:00Z" Version="1.04"/>
        </Model>
    </Models>
    <Aliases>
        <Alias Alias="Boolean">i=1</Alias>
        <Alias Alias="String">i=12</Alias>
        <Alias Alias="DateTime">i=13</Alias>
        <Alias Alias="HasTypeDefinition">i=40</Alias>
        <Alias Alias="HasProperty">i=46</Alias>
        <Alias Alias="HasComponent">i=47</Alias>
        <Alias Alias="IdType">i=256</Alias>
        <Alias Alias="NumericRange">i=291</Alias>
    </Aliases>
    <UAObject SymbolicName="http___opcfoundation_org_UA_IOLink_IODD_" NodeId="ns=1;i=5001" BrowseName="1:http://opcfoundation.org/UA/IOLink/IODD/">
        <DisplayName>http://opcfoundation.org/UA/IOLink/IODD/</DisplayName>
        <Description>Provides the metadata for a namespace used by the server.</Description>
        <References>
            <Reference ReferenceType="HasProperty">ns=1;i=6001</Reference>
            <Reference ReferenceType="HasComponent" IsForward="false">i=11715</Reference>
            <Reference ReferenceType="HasTypeDefinition">i=11616</Reference>
            <Reference ReferenceType="HasProperty">ns=1;i=6002</Reference>
            <Reference ReferenceType="HasProperty">ns=1;i=6003</Reference>
            <Reference ReferenceType="HasProperty">ns=1;i=6004</Reference>
            <Reference ReferenceType="HasProperty">ns=1;i=6005</Reference>
            <Reference ReferenceType="HasProperty">ns=1;i=6006</Reference>
            <Reference ReferenceType="HasProperty">ns=1;i=6007</Reference>
        </References>
    </UAObject>
    <UAVariable DataType="Boolean" ParentNodeId="ns=1;i=5001" NodeId="ns=1;i=6001" BrowseName="IsNamespaceSubset">
        <DisplayName>IsNamespaceSubset</DisplayName>
        <Description>If TRUE then the server only supports a subset of the namespace.</Description>
        <References>
            <Reference ReferenceType="HasProperty" IsForward="false">ns=1;i=5001</Reference>
            <Reference ReferenceType="HasTypeDefinition">i=68</Reference>
        </References>
        <Value>
            <uax:Boolean>false</uax:Boolean>
        </Value>
    </UAVariable>
    <UAVariable DataType="DateTime" ParentNodeId="ns=1;i=5001" NodeId="ns=1;i=6002" BrowseName="NamespacePublicationDate">
        <DisplayName>NamespacePublicationDate</DisplayName>
        <Description>The publication date for the namespace.</Description>
        <References>
            <Reference ReferenceType="HasProperty" IsForward="false">ns=1;i=5001</Reference>
            <Reference ReferenceType="HasTypeDefinition">i=68</Reference>
        </References>
        <Value>
            <uax:DateTime>2018-12-01T00:00:00Z</uax:DateTime>
        </Value>
    </UAVariable>
    <UAVariable DataType="String" ParentNodeId="ns=1;i=5001" NodeId="ns=1;i=6003" BrowseName="NamespaceUri">
        <DisplayName>NamespaceUri</DisplayName>
        <Description>The URI of the namespace.</Description>
        <References>
            <Reference ReferenceType="HasProperty" IsForward="false">ns=1;i=5001</Reference>
            <Reference ReferenceType="HasTypeDefinition">i=68</Reference>
        </References>
        <Value>
            <uax:String>http://opcfoundation.org/UA/IOLink/IODD/</uax:String>
        </Value>
    </UAVariable>
    <UAVariable DataType="String" ParentNodeId="ns=1;i=5001" NodeId="ns=1;i=6004" BrowseName="NamespaceVersion">
        <DisplayName>NamespaceVersion</DisplayName>
        <Description>The human readable string representing version of the namespace.</Description>
        <References>
            <Reference ReferenceType="HasProperty" IsForward="false">ns=1;i=5001</Reference>
            <Reference ReferenceType="HasTypeDefinition">i=68</Reference>
        </References>
        <Value>
            <uax:String>1.0</uax:String>
        </Value>
    </UAVariable>
    <UAVariable DataType="IdType" ParentNodeId="ns=1;i=5001" ValueRank="1" NodeId="ns=1;i=6005" BrowseName="StaticNodeIdTypes">
        <DisplayName>StaticNodeIdTypes</DisplayName>
        <Description>A list of IdTypes for nodes which are the same in every server that exposes them.</Description>
        <References>
            <Reference ReferenceType="HasTypeDefinition">i=68</Reference>
            <Reference ReferenceType="HasProperty" IsForward="false">ns=1;i=5001</Reference>
        </References>
        <Value>
            <uax:ListOfInt32>
                <uax:Int32>0</uax:Int32>
                <uax:Int32>1</uax:Int32>
            </uax:ListOfInt32>
        </Value>
    </UAVariable>
    <UAVariable DataType="NumericRange" ParentNodeId="ns=1;i=5001" ValueRank="1" NodeId="ns=1;i=6006" BrowseName="StaticNumericNodeIdRange">
        <DisplayName>StaticNumericNodeIdRange</DisplayName>
        <Description>A list of ranges for numeric node ids which are the same in every server that exposes them.</Description>
        <References>
            <Reference ReferenceType="HasTypeDefinition">i=68</Reference>
            <Reference ReferenceType="HasProperty" IsForward="false">ns=1;i=5001</Reference>
        </References>
    </UAVariable>
    <UAVariable DataType="String" ParentNodeId="ns=1;i=5001" NodeId="ns=1;i=6007" BrowseName="StaticStringNodeIdPattern">
        <DisplayName>StaticStringNodeIdPattern</DisplayName>
        <Description>A regular expression which matches string node ids are the same in every server that exposes them.</Description>
        <References>
            <Reference ReferenceType="HasTypeDefinition">i=68</Reference>
            <Reference ReferenceType="HasProperty" IsForward="false">ns=1;i=5001</Reference>
        </References>
    </UAVariable>
</UANodeSet>
Opc.Ua.IOLinkIODD.NodeSet2.xml (7,512 bytes)   

Activities

Herbert Oppmann

2022-01-31 07:41

reporter   ~0015896

This could maybe be prevented by improving the UANodeSet.xsd schema:
On both the Extension and the Value element, where xs:any allows any valid XML constructs, the attribute namespace="##other" could be added, which forces to content to be in a different XML namespace than what UANodeSet.xsd defines. This would not necessarily lead to the correct namespace, but at least it would force people to think about it.

Martin Lang

2023-02-14 15:30

manager   ~0018711

Latest Github versions checked https://github.com/OPCFoundation/UA-Nodeset/tree/latest/IOLink. Already solved.
Nodeset file from sharepoint also updated already.

Issue History

Date Modified Username Field Change
2021-03-23 08:19 Alberto Medina New Issue
2021-03-23 08:19 Alberto Medina File Added: Opc.Ua.IOLink.NodeSet2.xml
2021-03-23 08:19 Alberto Medina File Added: Opc.Ua.IOLinkIODD.NodeSet2.xml
2022-01-31 07:41 Herbert Oppmann Note Added: 0015896
2023-02-10 14:15 Martin Lang Assigned To => Martin Lang
2023-02-10 14:15 Martin Lang Status new => assigned
2023-02-10 18:45 Martin Lang Target Version => V1.01
2023-02-10 18:45 Martin Lang Description Updated
2023-02-14 15:30 Martin Lang Note Added: 0018711
2023-02-14 15:30 Martin Lang Status assigned => resolved
2023-02-14 15:30 Martin Lang Resolution open => fixed