<!-- 
RSS generated by JIRA (8.20.10#820010-sha1:ace47f9899e9ee25d7157d59aa17ab06aee30d3d) at Wed Feb 07 20:54:17 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-776] min-elements and max-elements are not enforced</title>
                <link>https://jira.opendaylight.org/browse/YANGTOOLS-776</link>
                <project id="10188" key="YANGTOOLS">yangtools</project>
                    <description>&lt;p&gt;Just tried carbon archetype with this model:&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;
module archcarbon {
    yang-version 1;
    namespace &lt;span class=&quot;code-quote&quot;&gt;&quot;urn:opendaylight:params:xml:ns:yang:archcarbon&quot;&lt;/span&gt;;
    prefix &lt;span class=&quot;code-quote&quot;&gt;&quot;archcarbon&quot;&lt;/span&gt;;

    revision &lt;span class=&quot;code-quote&quot;&gt;&quot;2015-01-05&quot;&lt;/span&gt; {
        description &lt;span class=&quot;code-quote&quot;&gt;&quot;Initial revision of archcarbon model&quot;&lt;/span&gt;;
    }

    container box {

        list object {
            key object-id;

            leaf object-id {
                type string;
            }

            leaf-list attributes {
                type string;
                min-elements 1;
                max-elements 2;
            }

        }

    }

}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;Then tried PUT http://&lt;tt&gt;controller&lt;/tt&gt;:8181/restconf/config/archcarbon:box/ with the bodies below:&lt;/p&gt;

&lt;p&gt;1) Skip attributes is not allowed -&amp;gt; OK&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;
{
  &lt;span class=&quot;code-quote&quot;&gt;&quot;box&quot;&lt;/span&gt;: {
    &lt;span class=&quot;code-quote&quot;&gt;&quot;object&quot;&lt;/span&gt;: [
      {
  	&lt;span class=&quot;code-quote&quot;&gt;&quot;object-id&quot;&lt;/span&gt;:1,
      }
    ]
  }
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;

&lt;p&gt;2) Less attributes than min-elements is allowed -&amp;gt; NOK&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;
{
  &lt;span class=&quot;code-quote&quot;&gt;&quot;box&quot;&lt;/span&gt;: {
    &lt;span class=&quot;code-quote&quot;&gt;&quot;object&quot;&lt;/span&gt;: [
      {
        &lt;span class=&quot;code-quote&quot;&gt;&quot;object-id&quot;&lt;/span&gt;:1,
  	   &lt;span class=&quot;code-quote&quot;&gt;&quot;attributes&quot;&lt;/span&gt;: []
      }
    ]
  }
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;
&lt;p&gt;3) More attributes than max-elements is allowed -&amp;gt; NOK&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;
{
  &lt;span class=&quot;code-quote&quot;&gt;&quot;box&quot;&lt;/span&gt;: {
  	&lt;span class=&quot;code-quote&quot;&gt;&quot;object&quot;&lt;/span&gt;: [
  	  {
  		&lt;span class=&quot;code-quote&quot;&gt;&quot;object-id&quot;&lt;/span&gt;:1,
  		&lt;span class=&quot;code-quote&quot;&gt;&quot;attributes&quot;&lt;/span&gt;: [
  		    &lt;span class=&quot;code-quote&quot;&gt;&quot;object1&quot;&lt;/span&gt;,
  		    &lt;span class=&quot;code-quote&quot;&gt;&quot;object2&quot;&lt;/span&gt;,
  		    &lt;span class=&quot;code-quote&quot;&gt;&quot;object3&quot;&lt;/span&gt;
  	]
      }
    ]
  }
}
&lt;/pre&gt;
&lt;/div&gt;&lt;/div&gt;</description>
                <environment>&lt;p&gt;Operating System: All&lt;br/&gt;
Platform: All&lt;/p&gt;</environment>
        <key id="23196">YANGTOOLS-776</key>
            <summary>min-elements and max-elements are not enforced</summary>
                <type id="10104" iconUrl="https://jira.opendaylight.org/secure/viewavatar?size=xsmall&amp;avatarId=10303&amp;avatarType=issuetype">Bug</type>
                                                <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="10000">Done</resolution>
                                        <assignee username="-1">Unassigned</assignee>
                                    <reporter username="ecelgp">Luis Gomez</reporter>
                        <labels>
                    </labels>
                <created>Wed, 17 May 2017 18:36:34 +0000</created>
                <updated>Sun, 10 Apr 2022 18:35:59 +0000</updated>
                            <resolved>Tue, 22 May 2018 13:41:25 +0000</resolved>
                                    <version>1.2.2</version>
                    <version>1.1.3</version>
                    <version>2.0.4</version>
                                    <fixVersion>2.0.5</fixVersion>
                                        <due></due>
                            <votes>0</votes>
                                    <watches>4</watches>
                                                                                                                <comments>
                            <comment id="62836" author="rovarga" created="Fri, 4 May 2018 17:00:07 +0000"  >&lt;p&gt;It looks like MinMaxValidation is missing proper verifyStructure() checks.&lt;/p&gt;</comment>
                            <comment id="62853" author="rovarga" created="Mon, 7 May 2018 10:48:29 +0000"  >&lt;p&gt;verifyStructure() is overly strict in what it does &#8211; combinations of an incomplete write() followed by a fixup end up being inconsistently enforced. At the end of the day, we need to catch this case in a uniform way, which seems to be when applyWrite() runs &#8211; it has the complete accurate view of what is about to be put into the tree.&lt;/p&gt;

&lt;p&gt;This has the downside of slowing down the commit thread, so it needs further analysis to see if there are cases we can offload to the user thread.&lt;/p&gt;</comment>
                            <comment id="62863" author="ecelgp" created="Mon, 7 May 2018 17:36:15 +0000"  >&lt;p&gt;I do not think this is a critical issue as we can always use the cohort API to enforce the same, so if you think this feature is going to impact the overall controller performance we can skip it. If I was to push for something, that would be &lt;a href=&quot;https://jira.opendaylight.org/browse/YANGTOOLS-834&quot; title=&quot;Duplicated list key in RESTCONF payload does not produce ERROR&quot; class=&quot;issue-link&quot; data-issue-key=&quot;YANGTOOLS-834&quot;&gt;YANGTOOLS-834&lt;/a&gt; as that cannot be enforced via cohort.&lt;/p&gt;</comment>
                            <comment id="63015" author="rovarga" created="Mon, 21 May 2018 17:10:12 +0000"  >&lt;p&gt;The initial stab was almost correct &#8211; all it needed is to be activated only on full structural validation.&lt;/p&gt;</comment>
                    </comments>
                    <attachments>
                    </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_10208" key="com.atlassian.jira.plugin.system.customfieldtypes:textfield">
                        <customfieldname>External issue ID</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>8496</customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                <customfield id="customfield_10201" key="com.atlassian.jira.plugin.system.customfieldtypes:url">
                        <customfieldname>External issue URL</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue><![CDATA[https://bugs.opendaylight.org/show_bug.cgi?id=8496]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                                                                                                                                                                                                                                                                                <customfield id="customfield_10204" key="com.atlassian.jira.plugin.system.customfieldtypes:select">
                        <customfieldname>ODL SR Target Milestone</customfieldname>
                        <customfieldvalues>
                                <customfieldvalue key="10384"><![CDATA[Carbon-SR3]]></customfieldvalue>

                        </customfieldvalues>
                    </customfield>
                                                                                                                                                    <customfield id="customfield_10000" key="com.pyxis.greenhopper.jira:gh-lexo-rank">
                        <customfieldname>Rank</customfieldname>
                        <customfieldvalues>
                            <customfieldvalue>0|i029bb:</customfieldvalue>

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