<?xml version="1.0" encoding="UTF-8" standalone="yes" ?>
<!DOCTYPE bugzilla SYSTEM "https://www.w3.org/Bugs/Public/page.cgi?id=bugzilla.dtd">

<bugzilla version="5.0.4"
          urlbase="https://www.w3.org/Bugs/Public/"
          
          maintainer="sysbot+bugzilla@w3.org"
>

    <bug>
          <bug_id>5781</bug_id>
          
          <creation_ts>2008-06-22 14:18:17 +0000</creation_ts>
          <short_desc>identity constrailnt rules refer to &apos;node sets&apos; - should be &apos;node sequences&apos;</short_desc>
          <delta_ts>2009-04-20 22:07:13 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>XML Schema</product>
          <component>Structures: XSD Part 1</component>
          <version>1.1 only</version>
          <rep_platform>Macintosh</rep_platform>
          <op_sys>Mac System 9.x</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords>resolved</keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>CR</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="C. M. Sperberg-McQueen">cmsmcq</reporter>
          <assigned_to name="C. M. Sperberg-McQueen">cmsmcq</assigned_to>
          <cc>cmsmcq</cc>
    
    <cc>David_E3</cc>
          
          <qa_contact name="XML Schema comments list">www-xml-schema-comments</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>20724</commentid>
    <comment_count>0</comment_count>
    <who name="C. M. Sperberg-McQueen">cmsmcq</who>
    <bug_when>2008-06-22 14:18:17 +0000</bug_when>
    <thetext>The Validation Rule: Identity-Constraint Satisfied refers several times to
&apos;node sets&apos;.  This phrasing is inherited from XSD 1.0, but makes no sense
in an XPath 2.0 context.  The rule should be revised to eliminate use of the
term.  (It might usefully be recast for clarity in addition.)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>24667</commentid>
    <comment_count>1</comment_count>
    <who name="C. M. Sperberg-McQueen">cmsmcq</who>
    <bug_when>2009-04-13 00:26:59 +0000</bug_when>
    <thetext>A wording proposal intended to resolve this issue is at 
 
  http://www.w3.org/XML/Group/2004/06/xmlschema-1/structures.b5781.html
  (member-only link)

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>24683</commentid>
    <comment_count>2</comment_count>
    <who name="Sandy Gao">sandygao</who>
    <bug_when>2009-04-13 15:57:25 +0000</bug_when>
    <thetext>I continue to believe that we should not use &quot;sequence&quot; in identity constraint discussions.

I think the differences between &quot;set&quot; and &quot;sequence&quot; (no ordering; no duplicate) match better with identity constraints.

XPath 2.0 moved to sequence for its own reasons. Have we examined that those reasons apply to identity constraints?

Do we know that identity constraint works as expected if the &quot;qualified node sequence&quot; or &quot;target node sequence&quot; contains duplicates? (May not be possible given the current IDC xpath subset, but is that what we want to assume here?) Seems &quot;unique&quot; and &quot;key&quot; rules will always return &quot;invalid&quot; for duplicate items.

The only change we really need seems to be from &quot;all the {fields} evaluate to a node-set&quot; to &quot;all the {fields} evaluate to a node sequence&quot;.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>24690</commentid>
    <comment_count>3</comment_count>
    <who name="Dave Peterson">davep</who>
    <bug_when>2009-04-13 16:29:21 +0000</bug_when>
    <thetext>(In reply to comment #0)
&gt; The Validation Rule: Identity-Constraint Satisfied refers several times to
&gt; &apos;node sets&apos;.  This phrasing is inherited from XSD 1.0, but makes no sense
&gt; in an XPath 2.0 context.

(In reply to comment #2)
&gt; I continue to believe that we should not use &quot;sequence&quot; in identity constraint
&gt; discussions.

&gt; The only change we really need seems to be from &quot;all the {fields} evaluate to a
&gt; node-set&quot; to &quot;all the {fields} evaluate to a node sequence&quot;.

As far as I can tell, this is the minimal change required for compatibility with XPath 2.0 .  We do carefully acknowledge that XPath produces sequences, and then explicitly extract the set of terms/values/whatever-you-call-them in the sequence, so our definitions of assorted &quot;sets&quot; do not conflict.

It would be better to recast the definition for clarity to eliminate the &quot;is called&quot;, using the &quot;the xxx is yyy&quot; format as is used in the other three added or deleted definitions.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>24696</commentid>
    <comment_count>4</comment_count>
    <who name="Dave Peterson">davep</who>
    <bug_when>2009-04-13 17:23:26 +0000</bug_when>
    <thetext>(In reply to comment #3)

&gt; It would be better to recast the definition for clarity to eliminate the &quot;is
&gt; called&quot;, using the &quot;the xxx is yyy&quot; format as is used in the other three added
&gt; or deleted definitions.

Assuming Sandy&apos;s objection is upheld, I suggest that the definition of qualified node set be:

&quot;[Definition:]  The qualified node set is that subset of the ·target node set· for which all the {fields} evaluate to a node sequence one of whose members is an element or attribute node with a ·non-absent· [schema actual value].&quot;
</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>24804</commentid>
    <comment_count>5</comment_count>
    <who name="David Ezell">David_E3</who>
    <bug_when>2009-04-17 16:54:41 +0000</bug_when>
    <thetext>5781: identity constraint rules refer to &apos;node sets&apos; - should be
&apos;node sequences&apos;

http://www.w3.org/XML/Group/2004/06/xmlschema-1/structures.b5781.html

Summary: issue requests that we align our terminology with QT&apos;s
by saying &apos;sequence&apos; not &apos;set&apos;.

There has been discussion; SG opposes most of the change.

MSM&apos;s recommendation:  fairly quick.

   - Amend the proposal by substituting &apos;set&apos; for &apos;sequence&apos;
     passim, EXCEPT in the phrase &quot;nodes for which all the
     {fields} evaluate to a node sequence&quot;.  Note that for the
     most part, this amounts to reverting the proposal. (It turns
     into a proposal for changing one instance of &apos;set&apos; to
     &apos;sequence&apos; and rephrasing a definition.)

   - Adopt as amended.

</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>24868</commentid>
    <comment_count>6</comment_count>
    <who name="Sandy Gao">sandygao</who>
    <bug_when>2009-04-20 21:23:46 +0000</bug_when>
    <thetext>During its 2009-04-17 telecon, the schema WG adopted the proposal in comment #5 to address this issue.

With this change, the WG believes that the issue raised in this bug report is addressed. I&apos;m marking this RESOLVED accordingly.

Michael, if you would indicate your concurrence with or dissent from the WG&apos;s disposition of the comment by closing or reopening the issue, we&apos;ll be grateful. If we don&apos;t hear from you in the next two weeks, we&apos;ll assume that silence implies consent.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>