Re: @xml:base with @rendition (and maybe other pointers)

Hugh Cayless <[email protected]> Wed, 3 May 2017 18:20:45 -0400
Newsgroups gmane.text.tei.general
Message-ID <CAObhq+ce0XdEgfuUGGf=vMHj4JtPtAGwoe9BgL_Hxqc_Hz1vFg@mail.gmail.com>
--94eb2c083c7a57e1ab054ea61123
Content-Type: text/plain; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

No. This clarifies the expected behavior when (e.g.) you have
@xml:base=3D"#frag". It says nothing whatever about <p rendition=3D"#foo">.=
 I
don't think these specifications interact in the way you're positing. Quite
the opposite.

On Wed, May 3, 2017 at 6:13 PM, John P. McCaskey <[email protected]>
wrote:

> The special behavior of same-document references in RFC 3986 is disavowed
> by W3C:
>
> 4.4 Interpretation of same-document references
>
> RFC 3986 defines certain relative URI references, in particular the empty
> string and those of the form #fragment, as same-document references.
> Dereferencing of same-document references is handled specially. However,
> their use as the value of an *xml:base attribute does not* *involve *dere=
ferencing,
> and XML Base processors should resolve them in the usual way. In
> particular, xml:base=3D"" does not reset the base URI to that of the
> containing document.
>
> Note:
>
> Some existing processors do treat these xml:base values as resetting the
> base URI to that of the containing document, so the use of such values is
> strongly discouraged.
>
> This says:
>
> RFC 3986 defines special =E2=80=9Cdereferencing=E2=80=9D of empty strings=
 and #fragments.
> But over here in XML-land, we don=E2=80=99t do =E2=80=9Cdereferencing.=E2=
=80=9C That=E2=80=99s not a word
> we use here. Ignore that stuff about same-document references. Just resol=
ve
> empty strings and #fragments as specified in the W3C Recommendation above=
.
> And those of you who did carry that stuff over from 3986 to XML-land, sha=
me
> on you. You messed things up for the rest of us.
>
>
> A note has:
>
> 5. The meanings of xml:base=3D"" and xml:base=3D"#frag" have been clarifi=
ed;
>
> This says:
>
> In this second version of this recommendation, we added paragraph 4.4
> specifically to get you 3986 people to stop polluting our W3C with your
> special cases. Stop doing that.
>
> No?
>
> -- John
>
>
>
>
>
>
> On 5/3/2017 5:09 PM, Hugh Cayless wrote:
>
> That's exactly what it does. It's just that the behavior of same-document
> references is prescribed in such a way that they end up resolving to the
> current document regardless of the value of the @xml:base.
>
> Put another way, @xml:base has an influence on what the client
> application will retrieve when it dereferences a URI and retrieves the
> referenced document, but in the case of same-document references no such
> retrieval is expected to occur=E2=80=94it's assumed the client already ha=
s the
> document.
>
> On Wed, May 3, 2017 at 4:29 PM, John P. McCaskey <[email protected]=
m
> > wrote:
>
>> Oh. I thought it obvious they all resolved the same.
>>
>> I think the same about this one. You think otherwise?
>>
>> <div xml:base=3D"http://www.myteiproject.com/" <http://www.myteiproject.=
com/>
>>   <div xml:base=3D"images/">
>>     <div>
>>       <graphic url=3D"logo.jpg">
>>     </div>
>>     <div xml:base=3D"http://www.dictionary.com/words/">
>>       <p xml:base=3D"a.html">
>>         <ref target=3D"#apple">apple</ref>
>>       </p>
>>     </div>
>>   </div>
>> </div>
>>
>> I didn=E2=80=99t think xml:base had any necessary relation to the curren=
t
>> document. I thought in XML (not HTML), it just sets a path for URIs belo=
w
>> it.
>>
>> --
>> On 5/3/2017 3:42 PM, Hugh Cayless wrote:
>>
>> Well, we don't know about the third one, except that it points to
>> whatever element *in the same document* has the @xml:id "apple". When an
>> application attempts to dereference it, it should make the URI in @ref
>> absolute and check it against the base (http://www.dictionary.com/wor
>> ds/a.html), discover they are identical, decide it doesn't need to fetch
>> anything, and go looking in the current document for the element with th=
e
>> id "apple".
>> On Wed, May 3, 2017 at 3:27 PM, John P. McCaskey <
>> [email protected]> wrote:
>>>
>>> Are people proposing that these targets do not all resolve
>>> to the same http://www.dictionary.com/words/a.html#apple?
>>> <div xml:base=3D"http://www.dictionary.com/" <http://www.dictionary.com=
/>>
>>>     <p xml:base=3D"words/">
>>>         <ref target=3D"a.html#apple">apple</ref>
>>>     </p>
>>> </div>
>>>
>>> <div xml:base=3D"http://www.dictionary.com/words/" <http://www.dictiona=
ry.com/words/>>
>>>     <p xml:base=3D"a.html">
>>>         <ref target=3D"#apple">apple</ref>
>>>     </p>
>>> </div>
>>>
>>> <div xml:base=3D"http://www.dictionary.com/words/a.html" <http://www.di=
ctionary.com/words/a.html>>
>>>     <p>
>>>         <ref target=3D"#apple">apple</ref>
>>>     </p>
>>> </div>
>>>
>>> <div xml:base=3D"http://www.dictionary.com/" <http://www.dictionary.com=
/>>
>>>     <p>
>>>         <ref target=3D"words/a.html#apple">apple</ref>
>>>     </p>
>>> </div>
>>> --
>>>
>>>

--94eb2c083c7a57e1ab054ea61123
Content-Type: text/html; charset=UTF-8
Content-Transfer-Encoding: quoted-printable

<div dir=3D"ltr">No. This clarifies the expected behavior when (e.g.) you h=
ave @xml:base=3D&quot;#frag&quot;. It says nothing whatever about &lt;p ren=
dition=3D&quot;#foo&quot;&gt;. I don&#39;t think these specifications inter=
act in the way you&#39;re positing. Quite the opposite.</div><div class=3D"=
gmail_extra"><br><div class=3D"gmail_quote">On Wed, May 3, 2017 at 6:13 PM,=
 John P. McCaskey <span dir=3D"ltr">&lt;<a href=3D"mailto:mailbox@johnmccas=
key.com" target=3D"_blank">[email protected]</a>&gt;</span> wrote:<b=
r><blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:=
1px #ccc solid;padding-left:1ex">
 =20
   =20
 =20
  <div bgcolor=3D"#FFFFFF" text=3D"#000000">
    <p>The special behavior of same-document references in RFC 3986 is
      disavowed by W3C: <br>
    </p><span class=3D"">
    <blockquote>
      <p><font size=3D"-2">4.4 Interpretation of same-document references<b=
r>
          <br>
          RFC 3986 defines certain relative URI references, in
          particular the empty string and those of the form #fragment,
          as same-document references. Dereferencing of same-document
          references is handled specially. However, their use as the
          value of an <b><a class=3D"m_-3680229684002831364moz-txt-link-fre=
etext">xml:base</a> attribute does not</b> <b>involve </b>dereferencing,
          and XML Base processors should resolve them in the usual way.
          In particular, <a class=3D"m_-3680229684002831364moz-txt-link-fre=
etext">xml:base=3D</a>&quot;&quot; does not reset the base URI to that
          of the containing document.<br>
          <br>
          Note:<br>
          <br>
          Some existing processors do treat these <a class=3D"m_-3680229684=
002831364moz-txt-link-freetext">xml:base</a> values as
          resetting the base URI to that of the containing document, so
          the use of such values is strongly discouraged.</font><br>
      </p>
    </blockquote></span>
    This says:<br>
    <blockquote>RFC 3986 defines special =E2=80=9Cdereferencing=E2=80=9D of=
 empty
      strings and #fragments. But over here in XML-land, we don=E2=80=99t d=
o
      =E2=80=9Cdereferencing.=E2=80=9C That=E2=80=99s not a word we use her=
e. Ignore that stuff
      about same-document references. Just resolve empty strings and
      #fragments as specified in the W3C Recommendation above. And those
      of you who did carry that stuff over from 3986 to XML-land, shame
      on you. You messed things up for the rest of us. <br>
    </blockquote>
    <br>
    A note has:<br>
    <blockquote><font size=3D"-2">5. The meanings of <a class=3D"m_-3680229=
684002831364moz-txt-link-freetext">xml:base=3D</a>&quot;&quot; and
        <a class=3D"m_-3680229684002831364moz-txt-link-freetext">xml:base=
=3D</a>&quot;#frag&quot; have been clarified;</font><br>
    </blockquote>
    This says: <br>
    <blockquote>In this second version of this recommendation, we added
      paragraph 4.4 specifically to get you 3986 people to stop
      polluting our W3C with your special cases. Stop doing that.<br>
    </blockquote>
    No?<span class=3D"HOEnZb"><font color=3D"#888888"><br>
    <br>
    -- John</font></span><div><div class=3D"h5"><br>
    <br>
    <br>
    <br>
    <br>
    <br>
    <div class=3D"m_-3680229684002831364moz-cite-prefix">On 5/3/2017 5:09 P=
M, Hugh Cayless
      wrote:<br>
    </div>
    <blockquote type=3D"cite">
      <div dir=3D"ltr">That&#39;s exactly what it does. It&#39;s just that =
the
        behavior of same-document references is prescribed in such a way
        that they end up resolving to the current document regardless of
        the value of the @<a class=3D"m_-3680229684002831364moz-txt-link-fr=
eetext">xml:base</a>.
        <div><br>
        </div>
        <div>Put another way, @<a class=3D"m_-3680229684002831364moz-txt-li=
nk-freetext">xml:base</a> has an influence on what the
          client application will retrieve when it dereferences a URI
          and retrieves the referenced document, but in the case of
          same-document references no such retrieval is expected to
          occur=E2=80=94it&#39;s assumed the client already has the documen=
t.</div>
      </div>
      <div class=3D"gmail_extra"><br>
        <div class=3D"gmail_quote">On Wed, May 3, 2017 at 4:29 PM, John P.
          McCaskey <span dir=3D"ltr">&lt;<a href=3D"mailto:mailbox@johnmcca=
skey.com" target=3D"_blank">[email protected]</a>&gt;</span>
          wrote:<br>
          <blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;bord=
er-left:1px #ccc solid;padding-left:1ex">
            <div bgcolor=3D"#FFFFFF" text=3D"#000000">
              <p><font size=3D"-1">Oh. I thought it obvious they all
                  resolved the same. <br>
                </font></p>
              <p><font size=3D"-1">I think the same about this one. You
                  think otherwise?<br>
                </font></p>
              <pre><font size=3D"-1">&lt;div <a class=3D"m_-368022968400283=
1364m_-7516606003097729134moz-txt-link-freetext">xml:base=3D</a><a class=3D=
"m_-3680229684002831364m_-7516606003097729134moz-txt-link-rfc2396E" href=3D=
"http://www.myteiproject.com/" target=3D"_blank">&quot;http://www.myteiproj=
<wbr>ect.com/&quot;</a>
  &lt;div <a class=3D"m_-3680229684002831364m_-7516606003097729134moz-txt-l=
ink-freetext">xml:base=3D</a>&quot;images/&quot;&gt;
    &lt;div&gt;
      &lt;graphic url=3D&quot;logo.jpg&quot;&gt;
    &lt;/div&gt;
    &lt;div <a class=3D"m_-3680229684002831364m_-7516606003097729134m_-1417=
418399130310658moz-txt-link-freetext">xml:base=3D</a><span class=3D"m_-3680=
229684002831364m_-7516606003097729134m_-1417418399130310658moz-txt-link-rfc=
2396E">&quot;<a class=3D"m_-3680229684002831364m_-7516606003097729134moz-tx=
t-link-freetext" href=3D"http://www" target=3D"_blank">http://www</a>.<a hr=
ef=3D"http://dictionary.com/words/" target=3D"_blank">dictionar<wbr>y.com/w=
ords/</a>&quot;</span>&gt;
      &lt;p <a class=3D"m_-3680229684002831364m_-7516606003097729134m_-1417=
418399130310658moz-txt-link-freetext">xml:base=3D</a>&quot;a.html&quot;&gt;
        &lt;ref target=3D&quot;#apple&quot;&gt;apple&lt;/ref&gt;
      &lt;/p&gt;
    &lt;/div&gt;
  &lt;/div&gt;
&lt;/div&gt;=20
</font></pre><p><font size=3D"-1">I didn=E2=80=99t think <a class=3D"m_-368=
0229684002831364m_-7516606003097729134moz-txt-link-freetext">xml:base</a> h=
ad any necessary relation to the current document. I thought in XML (not HT=
ML), it just sets a path for URIs below it.</font></p><p><font size=3D"-1">=
--
</font></p><div><div class=3D"m_-3680229684002831364h5">
<div class=3D"m_-3680229684002831364m_-7516606003097729134moz-cite-prefix">=
On 5/3/2017 3:42 PM, Hugh Cayless wrote:
</div><blockquote type=3D"cite"><div dir=3D"ltr">Well, we don&#39;t know ab=
out the third one, except that it points to whatever element *in the same d=
ocument* has the @<a class=3D"m_-3680229684002831364m_-7516606003097729134m=
oz-txt-link-freetext">xml:id</a> &quot;apple&quot;. When an application att=
empts to dereference it, it should make the URI in @ref absolute and check =
it against the base (<a class=3D"m_-3680229684002831364m_-75166060030977291=
34gmail-m_-1417418399130310658moz-txt-link-rfc2396E" href=3D"http://www.dic=
tionary.com/words/a.html" style=3D"white-space:pre-wrap" target=3D"_blank">=
http://www.dictionary.com/wor<wbr>ds/a.html</a>), discover they are identic=
al, decide it doesn&#39;t need to fetch anything, and go looking in the cur=
rent document for the element with the id &quot;apple&quot;.</div><div clas=
s=3D"gmail_extra">
<div class=3D"gmail_quote">On Wed, May 3, 2017 at 3:27 PM, John P. McCaskey=
 <span dir=3D"ltr">&lt;<a href=3D"mailto:[email protected]" target=
=3D"_blank">[email protected]</a>&gt;</span> wrote:
<blockquote class=3D"gmail_quote" style=3D"margin:0 0 0 .8ex;border-left:1p=
x #ccc solid;padding-left:1ex">
 =20
   =20
 =20
  <div bgcolor=3D"#FFFFFF" text=3D"#000000">
    <pre><font size=3D"-1">Are people proposing that these targets do not a=
ll resolve=20
to the same <a class=3D"m_-3680229684002831364m_-7516606003097729134m_-1417=
418399130310658moz-txt-link-freetext" href=3D"http://www.dictionary.com/wor=
ds/a.html#apple" target=3D"_blank">http://www.dictionary.com/word<wbr>s/a.h=
tml#apple</a>?

</font><font size=3D"-1">&lt;div <a class=3D"m_-3680229684002831364m_-75166=
06003097729134m_-1417418399130310658moz-txt-link-freetext">xml:base=3D</a><=
a class=3D"m_-3680229684002831364m_-7516606003097729134m_-14174183991303106=
58moz-txt-link-rfc2396E" href=3D"http://www.dictionary.com/" target=3D"_bla=
nk">&quot;http://www.dictionar<wbr>y.com/&quot;</a>&gt;
    &lt;p <a class=3D"m_-3680229684002831364m_-7516606003097729134m_-141741=
8399130310658moz-txt-link-freetext">xml:base=3D</a>&quot;words/&quot;&gt;
        &lt;ref target=3D&quot;a.html#apple&quot;&gt;apple&lt;/r<wbr>ef&gt;
    &lt;/p&gt;
&lt;/div&gt;

&lt;div <a class=3D"m_-3680229684002831364m_-7516606003097729134m_-14174183=
99130310658moz-txt-link-freetext">xml:base=3D</a><a class=3D"m_-36802296840=
02831364m_-7516606003097729134m_-1417418399130310658moz-txt-link-rfc2396E" =
href=3D"http://www.dictionary.com/words/" target=3D"_blank">&quot;http://ww=
w.dictionar<wbr>y.com/words/&quot;</a>&gt;
    &lt;p <a class=3D"m_-3680229684002831364m_-7516606003097729134m_-141741=
8399130310658moz-txt-link-freetext">xml:base=3D</a>&quot;a.html&quot;&gt;
        &lt;ref target=3D&quot;#apple&quot;&gt;apple&lt;/ref&gt;
    &lt;/p&gt;
&lt;/div&gt;

&lt;div <a class=3D"m_-3680229684002831364m_-7516606003097729134m_-14174183=
99130310658moz-txt-link-freetext">xml:base=3D</a><a class=3D"m_-36802296840=
02831364m_-7516606003097729134m_-1417418399130310658moz-txt-link-rfc2396E" =
href=3D"http://www.dictionary.com/words/a.html" target=3D"_blank">&quot;htt=
p://www.dictionar<wbr>y.com/words/a.html&quot;</a>&gt;
    &lt;p&gt;
        &lt;ref target=3D&quot;#apple&quot;&gt;apple&lt;/ref&gt;
    &lt;/p&gt;
&lt;/div&gt;

&lt;div <a class=3D"m_-3680229684002831364m_-7516606003097729134m_-14174183=
99130310658moz-txt-link-freetext">xml:base=3D</a><a class=3D"m_-36802296840=
02831364m_-7516606003097729134m_-1417418399130310658moz-txt-link-rfc2396E" =
href=3D"http://www.dictionary.com/" target=3D"_blank">&quot;http://www.dict=
ionar<wbr>y.com/&quot;</a>&gt;
    &lt;p&gt;
        &lt;ref target=3D&quot;words/a.html#apple&quot;&gt;ap<wbr>ple&lt;/r=
ef&gt;
    &lt;/p&gt;
&lt;/div&gt;</font><span class=3D"m_-3680229684002831364m_-7516606003097729=
134HOEnZb"><font color=3D"#888888">
<font size=3D"-1">
--=20
</font></font></span></pre>
  </div>

</blockquote></div>
</div>



</blockquote>
</div></div></div></blockquote></div>
</div>



</blockquote>
</div></div></div></blockquote></div><br></div>

--94eb2c083c7a57e1ab054ea61123--