<?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>29920</bug_id>
          
          <creation_ts>2016-10-06 22:51:57 +0000</creation_ts>
          <short_desc>[XSLT30] (editorial) What does &quot;target attribute&quot; mean?</short_desc>
          <delta_ts>2016-10-13 19:40:28 +0000</delta_ts>
          <reporter_accessible>1</reporter_accessible>
          <cclist_accessible>1</cclist_accessible>
          <classification_id>1</classification_id>
          <classification>Unclassified</classification>
          <product>XPath / XQuery / XSLT</product>
          <component>XSLT 3.0</component>
          <version>Candidate Recommendation</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows NT</op_sys>
          <bug_status>RESOLVED</bug_status>
          <resolution>FIXED</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>editorial</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Abel Braaksma">abel.braaksma</reporter>
          <assigned_to name="Michael Kay">mike</assigned_to>
          
          
          <qa_contact name="Mailing list for public feedback on specs from XSL and XML Query WGs">public-qt-comments</qa_contact>

      

      

      

          <comment_sort_order>oldest_to_newest</comment_sort_order>  
          <long_desc isprivate="0" >
    <commentid>127679</commentid>
    <comment_count>0</comment_count>
    <who name="Abel Braaksma">abel.braaksma</who>
    <bug_when>2016-10-06 22:51:57 +0000</bug_when>
    <thetext>The meaning of the term &quot;target attribute&quot; can be inferred from its context, however, it is not immediately clear. I propose to create a definition for it.

Its first usage is in the following sentence: &quot;The shadow attribute has a name that is the same as the name of the target attribute...&quot;.

The term is not explained there. I propose something like:

A *target attribute* is a no-namespace attribute on an element in the XSLT namespace with the same name as its shadow attribute after its leading underscore is removed from the name.

(I&apos;m sure someone else can do better)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127761</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2016-10-13 14:58:02 +0000</bug_when>
    <thetext>Yes, &quot;target&quot; is one of those words that can easily slip into a spec because it looks precise when actually it has no definition. Unfortunately, when we try to define it more formally we hit another problem, which is that the target attribute may or may not exist (and it&apos;s hard to speak rigorously when referring to a node that doesn&apos;t exist).

Perhaps:

Wherever a no-namespace attribute name N is permitted to appear on an element in the XSLT namespace (provided that N does not start with an underscore), then a value V can be supplied for N in one of two ways:

1. The conventional way is for an attribute node with name N and value V to appear in the XDM representation of the element node in the stylesheet tree.

2. As an alternative, a shadow attribute may be supplied allowing the value V to be statically computed during the preprocessing phase. The shadow attribute has a name  that is the same as the name N prefixed with an underscore, and the value of the shadow attribute is a value template in which all expressions enclosed between curly braces must be static expressions. The value V is the result of evaluating the value template. If a shadow attribute is present, then any attribute node with name N on its parent element is ignored.

Then move the sentence &quot;If a shadow attribute and its corresponding target attribute are both present in the stylesheet, the non-shadow attribute is ignored.&quot; into the following Note, where we are allowed to use less formal language.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>127771</commentid>
    <comment_count>2</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2016-10-13 19:40:28 +0000</bug_when>
    <thetext>The change was agreed and has been applied.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>