<?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>2422</bug_id>
          
          <creation_ts>2005-10-28 00:50:48 +0000</creation_ts>
          <short_desc>unclear how to interpret empty attribute values in xsl:output declarations</short_desc>
          <delta_ts>2007-02-25 23:57:00 +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 2.0</component>
          <version>Working drafts</version>
          <rep_platform>All</rep_platform>
          <op_sys>All</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>INVALID</resolution>
          
          
          <bug_file_loc></bug_file_loc>
          <status_whiteboard></status_whiteboard>
          <keywords></keywords>
          <priority>P2</priority>
          <bug_severity>normal</bug_severity>
          <target_milestone>---</target_milestone>
          
          
          <everconfirmed>1</everconfirmed>
          <reporter name="Mike Brown">mike</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>6946</commentid>
    <comment_count>0</comment_count>
    <who name="Mike Brown">mike</who>
    <bug_when>2005-10-28 00:50:48 +0000</bug_when>
    <thetext>It is not clear in XSLT 2.0 (or 1.0) how a processor should handle empty
attribute values in xsl:output declarations. Is this something that could be
addressed in XSLT 2.0?

Basically, we have a case where a user wants to be able to have an importing
stylesheet suppress the generation of a DOCTYPE. Is this possible?

For example, what does doctype-system=&quot;&quot; mean? Is it supplying an &apos;explicit&apos;
value for doctype-system? What should the effect of such a declaration be, if it
is in an importing stylesheet, while doctype-system=&quot;foo&quot; is in the imported
stylesheet? Should the processor use &quot;foo&quot; or &quot;&quot; or should it &apos;undeclare&apos; the
doctype-system altogether and thus use a default value (unless there&apos;s another
value with a higher import precedence)?

How would other xsl:output attributes be affected by empty values? For example,
cdata-section-elements=&quot;&quot; in the importing stylesheet, and
cdata-section-elements=&quot;x y z&quot; in the imported stylesheet. Would the result be
as if there were one declaration, &quot;x y z&quot;, or would it be as if there were no
declaration? What if that first stylesheet were imported by a stylesheet
containing cdata-section-elements=&quot;w x y&quot;? Would the result be &quot;w x y z&quot; or &quot;w x y&quot;?

Thanks</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6954</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2005-10-28 18:31:13 +0000</bug_when>
    <thetext>It seems to me that the spec is pretty clear on what the permitted values of
each of the xsl:output attributes are. For example, the indent attribute must be
&quot;yes&quot; or &quot;no&quot; and an empty string is therefore an error. On the other hand,
doctype-public is simply a &quot;string&quot; and therefore the empty string is a
permitted value (although not a very useful one). For cdata-section-elements the
value is a list of QNames, and an empty list of QNames is perfectly well-defined.

Michael Kay (personal response)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6962</commentid>
    <comment_count>2</comment_count>
    <who name="Mike Brown">mike</who>
    <bug_when>2005-10-28 20:56:42 +0000</bug_when>
    <thetext>I am not asking what an empty string as the attribute value in isolation means.
I am asking about the interaction of explicit empty-string attribute values, in
attributes that allow such values, across import precedences. I think anything
else I could say to clarify would just be repeating the original inquiry. Does
doctype-system=&quot;&quot; override a lower-precedence doctype-system=&quot;foo&quot;? (My
colleagues and I think it should.) Does cdata-section-elements=&quot;&quot; override a
lower-precedence cdata-section-elements=&quot;x y z&quot;? (My colleagues and I think it
shouldn&apos;t, but but maybe it should?)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6963</commentid>
    <comment_count>3</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2005-10-28 22:46:02 +0000</bug_when>
    <thetext>The spec says &quot;... the output definition uses the value of that attribute from
the xsl:output declaration with the highest import precedence.&quot; Therefore if
doctype=&quot;&quot; has higher import precedence than doctype=&quot;abc&quot;, the effective value
of doctype is &quot;&quot;. There&apos;s nothing in the spec that says &quot;&quot; is handled
differently from any other value of the attribute: therefore it isn&apos;t handled
differently; it&apos;s an ordinary value like any other.

cdata-section-elements is different because it is cumulative: &quot;For the
cdata-section-elements attribute, the output definition uses the union of the
values from all the constituent xsl:output declarations.&quot; (The next draft
actually has slightly revised wording to clarify that it&apos;s the union of the
expanded QNames).

Sorry if I&apos;m being dense, but I can only see one way of reading the spec.

Michael Kay (personal response)</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>6964</commentid>
    <comment_count>4</comment_count>
    <who name="Mike Brown">mike</who>
    <bug_when>2005-10-28 23:27:04 +0000</bug_when>
    <thetext>It&apos;s good to hear there will be clearer language re: cdata-section-elements.

I am not satisfied overall, but you seem to feel there is nothing to clarify and
that I am calling you dense (or perhaps you are calling me dense), so never
mind; I withdraw the request.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>14182</commentid>
    <comment_count>5</comment_count>
    <who name="Jim Melton">jim.melton</who>
    <bug_when>2007-02-25 23:57:00 +0000</bug_when>
    <thetext>Closing bug because commenter has not objected to the resolution posted and more than two weeks have passed.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>