<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:56:16 UTC 2024

It is possible to restrict the fields that are returned in this document by specifying the 'field' parameter in your request.
For example, to request only the issue key and summary append 'field=key&field=summary' to the URL of your request.
-->
<rss version="0.92" >
<channel>
    <title>OpenDaylight JIRA</title>
    <link>https://jira.opendaylight.org</link>
    <description>This file is an XML representation of an issue</description>
    <language>en-us</language>    <build-info>
        <version>8.20.10</version>
        <build-number>820010</build-number>
        <build-date>22-06-2022</build-date>
    </build-info>


<item>
            <title>[YANGTOOLS-1478] USE statement not recognised</title>
                <link>https://jira.opendaylight.org/browse/YANGTOOLS-1478</link>
                <project id="10188" key="YANGTOOLS">yangtools</project>
                    <description>&lt;p&gt;Using Version 6.0.x of yang tools, we are able to parse the attached model &apos;owb-msa22.zip&apos; with the following data and it gives no error:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
{
&#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;openroadm-devices&quot;&lt;/span&gt;:{
&#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;openroadm-device&quot;&lt;/span&gt;:[
&#160; &#160; &#160; {
&#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;device-id&quot;&lt;/span&gt;:&lt;span class=&quot;code-quote&quot;&gt;&quot;C201-7-1A&quot;&lt;/span&gt;,
&#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;ne-state&quot;&lt;/span&gt;:&lt;span class=&quot;code-quote&quot;&gt;&quot;inservice&quot;&lt;/span&gt;,
&#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;commission-date-time&quot;&lt;/span&gt;:&lt;span class=&quot;code-quote&quot;&gt;&quot;2022-11-06T14:12:23.260487-06:00&quot;&lt;/span&gt;,
&#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;org-openroadm-device&quot;&lt;/span&gt;:{
&#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;degree&quot;&lt;/span&gt;:[
&#160; &#160; &#160; &#160; &#160; &#160; {
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;degree-number&quot;&lt;/span&gt;:1,
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;max-wavelengths&quot;&lt;/span&gt;:128,
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;circuit-packs&quot;&lt;/span&gt;:[
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; {
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;index&quot;&lt;/span&gt;:1,
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;circuit-pack-name&quot;&lt;/span&gt;:&lt;span class=&quot;code-quote&quot;&gt;&quot;1/0&quot;&lt;/span&gt;
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; }
&#160; &#160; &#160; &#160; &#160; &#160; &#160; ],
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;connection-ports&quot;&lt;/span&gt;:[
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; {
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;index&quot;&lt;/span&gt;:1,
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;circuit-pack-name&quot;&lt;/span&gt;:&lt;span class=&quot;code-quote&quot;&gt;&quot;2/0/0&quot;&lt;/span&gt;
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; }
&#160; &#160; &#160; &#160; &#160; &#160; &#160; ]
&#160; &#160; &#160; &#160; &#160; &#160; }
&#160; &#160; &#160; &#160; &#160; ]
&#160; &#160; &#160; &#160; },
&#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;status&quot;&lt;/span&gt;:&lt;span class=&quot;code-quote&quot;&gt;&quot;success&quot;&lt;/span&gt;
&#160; &#160; &#160; }
&#160; &#160; ]
&#160; }
 &lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;The key node &apos;circuit-pack-name&apos; was augmented via the &apos;use&apos; statement and has a typeLeafRef and given path.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Upgrading to version 8.0.6, the parser returns with &apos;Data tree child org-openroadm-device not found in openroadm-device module&apos; when using the same data and model as above. However, using the following data (without the use of circuit pack name) the parser accepts it:&lt;/p&gt;
&lt;div class=&quot;code panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;codeContent panelContent&quot;&gt;
&lt;pre class=&quot;code-java&quot;&gt;
{
&#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;openroadm-devices&quot;&lt;/span&gt;:{
&#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;openroadm-device&quot;&lt;/span&gt;:[
&#160; &#160; &#160; {
&#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;device-id&quot;&lt;/span&gt;:&lt;span class=&quot;code-quote&quot;&gt;&quot;C201-7-1A&quot;&lt;/span&gt;,
&#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;ne-state&quot;&lt;/span&gt;:&lt;span class=&quot;code-quote&quot;&gt;&quot;inservice&quot;&lt;/span&gt;,
&#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;commission-date-time&quot;&lt;/span&gt;:&lt;span class=&quot;code-quote&quot;&gt;&quot;2022-11-06T14:12:23.260487-06:00&quot;&lt;/span&gt;,
&#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;org-openroadm-device&quot;&lt;/span&gt;:{
&#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;degree&quot;&lt;/span&gt;:[
&#160; &#160; &#160; &#160; &#160; &#160; {
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;degree-number&quot;&lt;/span&gt;:1,
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;max-wavelengths&quot;&lt;/span&gt;:128,
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;circuit-packs&quot;&lt;/span&gt;:[
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; {
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;index&quot;&lt;/span&gt;:1
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; }
&#160; &#160; &#160; &#160; &#160; &#160; &#160; ],
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;connection-ports&quot;&lt;/span&gt;:[
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; {
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;index&quot;&lt;/span&gt;:1
&#160; &#160; &#160; &#160; &#160; &#160; &#160; &#160; }
&#160; &#160; &#160; &#160; &#160; &#160; &#160; ]
&#160; &#160; &#160; &#160; &#160; &#160; }
&#160; &#160; &#160; &#160; &#160; ]
&#160; &#160; &#160; &#160; },
&#160; &#160; &#160; &#160; &lt;span class=&quot;code-quote&quot;&gt;&quot;status&quot;&lt;/span&gt;:&lt;span class=&quot;code-quote&quot;&gt;&quot;success&quot;&lt;/span&gt;
&#160; &#160; &#160; }
&#160; &#160; ]
&#160; }
} &lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;Please see the unit test analysis that we have used in our code to show this:&lt;/p&gt;

&lt;p&gt;&lt;a href=&quot;https://gerrit.onap.org/r/c/cps/+/132864&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://gerrit.onap.org/r/c/cps/+/132864&lt;/a&gt;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</description>
                <environment></environment>
        <key id="36616">YANGTOOLS-1478</key>
            <summary>USE statement not recognised</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                            <priority id="2" iconUrl="https://jira.opendaylight.org/images/icons/priorities/critical.svg">High</priority>
                        <status id="5" iconUrl="https://jira.opendaylight.org/images/icons/statuses/resolved.png" description="A resolution has been taken, and it is awaiting verification by reporter. From here issues are either reopened, or are closed.">Resolved</status>
                    <statusCategory id="3" key="done" colorName="green"/>
                                    <resolution id="10001">Won&apos;t Do</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="emaclee">Lee Anjella Macabuhay</reporter>
                        <labels>
                    </labels>
                <created>Wed, 18 Jan 2023 10:11:45 +0000</created>
                <updated>Fri, 27 Jan 2023 10:54:31 +0000</updated>
                            <resolved>Thu, 26 Jan 2023 12:43:18 +0000</resolved>
                                                    <fixVersion>8.0.6</fixVersion>
                                    <component>parser</component>
                        <due></due>
                            <votes>0</votes>
                                    <watches>2</watches>
                                                                                                                <comments>
                            <comment id="71943" author="rovarga" created="Thu, 26 Jan 2023 12:41:25 +0000"  >&lt;p&gt;This looks like an issue with base models, org-openroadm-device defines:&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;
&lt;div class=&quot;preformatted panel&quot; style=&quot;border-width: 1px;&quot;&gt;&lt;div class=&quot;preformattedContent panelContent&quot;&gt;
&lt;pre&gt; &#160;grouping circuit-pack-name {
 &#160;&#160;&#160;leaf circuit-pack-name {
 &#160;&#160;&#160;&#160;&#160;type leafref {
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;path &quot;/org-openroadm-device/circuit-packs/circuit-pack-name&quot;;
 &#160;&#160;&#160;&#160;&#160;}

 &#160;&#160;&#160;&#160;&#160;description
 &#160;&#160;&#160;&#160;&#160;&#160;&#160;&quot;Circuit-Pack identifier. Unique within the context of a device.&quot;;
 &#160;&#160;&#160;}
 &#160;}

&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;note the leafref is using unqualified names.&lt;/p&gt;

&lt;p&gt;This is then used in openroadm-devices-inventory-v2 via uses. Based on &lt;a href=&quot;https://www.rfc-editor.org/rfc/rfc7950#section-9.9.2&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://www.rfc-editor.org/rfc/rfc7950#section-9.9.2&lt;/a&gt; , the &quot;context node&quot; is the node created via uses in openroadm-devices-inventory-v2, which means the default namespace is that module, not org-openroadm-device &#8211; and therefore the path does not bind, and therefore it cannot be interpreted. This has also been fixed in &lt;a href=&quot;https://jira.opendaylight.org/browse/MDSAL-677&quot; title=&quot;ietf-topology contains invalid leafrefs&quot; class=&quot;issue-link&quot; data-issue-key=&quot;MDSAL-677&quot;&gt;&lt;del&gt;MDSAL-677&lt;/del&gt;&lt;/a&gt; (&lt;a href=&quot;https://git.opendaylight.org/gerrit/c/mdsal/+/96976),&quot; class=&quot;external-link&quot; target=&quot;_blank&quot; rel=&quot;nofollow noopener&quot;&gt;https://git.opendaylight.org/gerrit/c/mdsal/+/96976),&lt;/a&gt; although there the RFC7950 guidance is much clearer.&lt;/p&gt;

&lt;p&gt;&#160;&lt;/p&gt;</comment>
                            <comment id="71944" author="rovarga" created="Thu, 26 Jan 2023 12:43:18 +0000"  >&lt;p&gt;I believe our behaviour complies to RFC7950 and the problem lies with how openroadm defines an absolute path in a grouping without using qualified names.&lt;/p&gt;</comment>
                            <comment id="71945" author="rovarga" created="Thu, 26 Jan 2023 12:47:53 +0000"  >&lt;p&gt;Alternatively, openroadm-devices-inventory-v2 would need to match the layout expected by circuit-pack-name&apos;s path, i.e. so that &apos;openroadm-devices-inventory-v2:org-openroadm-device&apos; is a valid reference&lt;/p&gt;</comment>
                            <comment id="71948" author="JIRAUSER15904" created="Fri, 27 Jan 2023 10:54:04 +0000"  >&lt;p&gt;Thanks for your reply Robert (&lt;a href=&quot;https://jira.opendaylight.org/secure/ViewProfile.jspa?name=rovarga&quot; class=&quot;user-hover&quot; rel=&quot;rovarga&quot;&gt;rovarga&lt;/a&gt; )&lt;/p&gt;

&lt;p&gt;Wondered then how come the old yang parser (version 6.0.x) was able to parse the following data. What has changed since then that affected this?&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                            <attachment id="18503" name="owb-msa221.zip" size="140649" author="emaclee" created="Wed, 18 Jan 2023 10:02:32 +0000"/>
                            <attachment id="18502" name="sized-down-files.zip" size="24158" author="emaclee" created="Wed, 18 Jan 2023 10:02:45 +0000"/>
                    </attachments>
                <subtasks>
                    </subtasks>
                <customfields>
                                                                            <customfield id="customfield_11400" key="com.atlassian.jira.plugins.jira-development-integration-plugin:devsummary">
                        <customfieldname>Development</customfieldname>
                        <customfieldvalues>
                            
                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i04413:</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                </customfields>
    </item>
</channel>
</rss>