OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] XLink, XInclude, and xml:base

[ Lists Home | Date Index | Thread Index ]

Magnus Henriksson (MO/EAB) wrote:
> If run document.xml through an XInclude processor, I get the
> following result:
> 
> <?xml version="1.0"?>
> <document xmlbase="http://example.com";
>           xmlns:xi="http://www.w3.org/2001/XInclude"; >
>   <paragraph>How to handle customers:</paragraph>
>   <list xmlns:xlink="http://www.w3.org/1999/xlink";
>         xml:base="common/policy.xml">
>     <item xml:id="item1">The customer is always right.</item>
>     <item>When the customer is wrong, see <link xlink:type="simple"
>                                                 xlink:href="#item1"/>.</item>
>     <graphic xlink:type="simple"
>              xlink:actuate="onLoad"
>              xlink:show="embed"
>              xlink:href="../images/happy-customer.gif"/>
>   </list>
> </document> 
>
> My problem is that the link points to
> http://example.com/common/policy.xml#item1, but I really want it to
> point to #item1 in the XIncluded result.

Those two things are the same in this case. Let me quote the relevant 
part from http://www.apps.ietf.org/rfc/rfc3986.html#sec-4.4

"When a URI reference refers to a URI that is, aside from its fragment 
component (if any), identical to the base URI (Section 5.1), that 
reference is called a "same-document" reference. The most frequent 
examples of same-document references are relative references that are 
empty or include only the number sign ("#") separator followed by a 
fragment identifier.

When a same-document reference is dereferenced for a retrieval action, 
the target of that reference is defined to be within the same entity 
(representation, document, or message) as the reference; therefore, a 
dereference should not result in a new retrieval action."

Because http://example.com/common/policy.xml is the base URI, 
http://example.com/common/policy.xml#item1 is a same-document reference, 
and therefore "points" to the XIncluded result.

-- 
Sjoerd Visscher
http://w3future.com/weblog/




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS