<?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>4622</bug_id>
          
          <creation_ts>2007-06-11 08:39:39 +0000</creation_ts>
          <short_desc>[XSLT 2.0] unparsed-entity-uri - absolute or relative?</short_desc>
          <delta_ts>2008-09-16 19:58:50 +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>Data Model 1.0</component>
          <version>Recommendation</version>
          <rep_platform>PC</rep_platform>
          <op_sys>Windows XP</op_sys>
          <bug_status>CLOSED</bug_status>
          <resolution>FIXED</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="Michael Kay">mike</reporter>
          <assigned_to name="Anders Berglund">alb.w3c</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>15346</commentid>
    <comment_count>0</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2007-06-11 08:39:39 +0000</bug_when>
    <thetext>I am raising this as an XSLT 2.0 issue, though it is really a data model issue in an area of XDM that only affects XSLT. It derives from bug 724 agains the XSLT test suite (member-only), which in turn relates to a thread on the xsl-list at mulberrytech.com entitled &quot;Problems with Entities&quot;, started by Jeff Sese, which took place on 31 Jan 2007:

http://www.biglist.com/lists/xsl-list/archives/200701/msg00750.html

In XSLT 1.0, it was stated in section 3.3: if the system identifier [of an unparsed entity] is a relative URI, it must be resolved into an absolute URI using the URI of the resource containing the entity declaration as the base URI. Thus, the unparsed-entity-uri() function would always return an absolute URI. 

This provision seems to have been lost in XSLT 2.0.

XSLT 2.0 defines unparsed-entity-uri() in terms of the dm:unparsed-entity-system-id accessor in XDM. XDM says of this accessor: &quot;Returns the system identifier of the specified unparsed entity or the empty sequence if no such entity exists.&quot; In building from an infoset, this property is derived from the [system identifier] of the [unparsed entities] information item, which is defined in Infoset as &quot;[system identifier] The system identifier of the entity, as it appears in the declaration of the entity, without any additional URI escaping applied by the processor.&quot;

I think the correct resolution of this is to change XDM to say (a) in defining the property, that it is an absolute URI, and (b) in constructing from an Infoset, that the value of the property is obtained by resolving the [system identifier] of the unparsed entity information item against the [declaration base URI] of the same item.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>15502</commentid>
    <comment_count>1</comment_count>
    <who name="Michael Kay">mike</who>
    <bug_when>2007-06-21 16:59:56 +0000</bug_when>
    <thetext>The XSL WG discussed this on 21 Jun 2007 and agreed to bring the proposal to the imminent joint F2F meeting under the Data Model agenda.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>15841</commentid>
    <comment_count>2</comment_count>
    <who name="Sharon Adler">sca.w3c</who>
    <bug_when>2007-07-17 16:48:17 +0000</bug_when>
    <thetext>For &quot;housekeeping&quot; the following is the snipped of Joint minutes on 4622:

J3.1.2 Bugzilla Bug 4622, [XSLT 2.0] unparsed-entity-uri - absolute or
relative?
http://www.w3.org/Bugs/Public/show_bug.cgi?id=4622

Suggested resolution has been accepted. Construction from PSVI may be affected. XSLT will be discussing it on Friday and editor to write a proposal.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>17129</commentid>
    <comment_count>3</comment_count>
    <who name="Sharon Adler">sca.w3c</who>
    <bug_when>2007-10-10 20:58:15 +0000</bug_when>
    <thetext>This was discussed at XSLT meeting at Microsoft on 10/10/07.  ALB took the action item to draft proposed text for the Data Model errata document based on the approach outlined in comment#0 by Mike Kay.    ETA for draft text is 18 October 2007.  Will be marked &quot;resolved&quot; when proposed text is finally accepted.</thetext>
  </long_desc><long_desc isprivate="0" >
    <commentid>17992</commentid>
    <comment_count>4</comment_count>
    <who name="Anders Berglund">alb.w3c</who>
    <bug_when>2007-12-06 19:28:21 +0000</bug_when>
    <thetext>The XSL WG approved 2007-12-06 the following text to add in 5.17.

The dm:unparsed-entity-system-id accessor returns the system identifier
of an unparsed external entity declared in the specified document.
(inserted text:)
The value is an absolute URI, and is obtained by resolving the [system
identifier] of the unparsed entity information item against the
[declaration base URI] of the same item.
(end of inserted text)
If no entity with the name specified in $entityname exists, or if the
entity is not an external unparsed entity, the empty sequence is
returned.</thetext>
  </long_desc>
      
      

    </bug>

</bugzilla>