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

 


Help: OASIS Mailing Lists Help | MarkMail Help

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: XLink url factorisation



XLink allows for using XML Base to "factor out" URI bases.  See the 
following for more information:

XLink section on conformance relationship to XML Base:
   http://www.w3.org/TR/xlink/#N1022
XLink section on how its href attribute uses XML Base:
   http://www.w3.org/TR/xlink/#link-locators
XML Base spec:
   http://www.w3.org/TR/xmlbase

You can instead use XML entity references to shorten that portion of the 
URI, if you wish; it doesn't require understanding of XML Base, and works 
for all URIs (and all types of strings) regardless of whether XML Base has 
been referenced by the vocabulary-defining application in question (but has 
other restrictions that XML Base does not):

<!DOCTYPE doc [
<!ENTITY uribase1 "http://www.example.com/">
<!ENTITY uribase2 "http://www.example.org/">
]>
<doc>
   <randomElement
     randomAtt1="&uribase1;fileA.xml"
     randomAtt2="&uribase2;fileB.xml" />
</doc>

All your base are belong to us :-),

         Eve

At 12:20 PM 5/22/01 +0200, olivier.dameron@gmx.net wrote:
>    I want to describe relations between elements of two xml files in a third
>one, but I would prefer to define only once the url of each one.
>
>    For example:
>FileA.xml is a collection of <EltA ident="a0"/>...<EltA ident="an"/>
>FileB.xml is a collection of <EltB ident="b0"/>...<EltB ident="bm"/>
>
>    A simple solution would be like :
><description>
>   <refA href="...FileA.xml"/>
>   <refB href="...FileB.xml"/>
>   <relation>
>     <elemA refIdent="a0"/>
>     <elemB refIdent="b0"/>
>     <elemB refIdent="b1"/>
>     <elemB refIdent="b7"/>
>   </relation>
>   <relation>
>     ...
>   </relation>
></description>
>
>    However, I would rather use extended XLink. Then, each FileA or FileB
>element would be a locator :
><refElem ident="elemA0" xlink:type="locator" href="...FileA.xml#id(a0)"
><refElem ident="elemA1" xlink:type="locator" href="...FileA.xml#id(a1)"
>...
><refElem ident="elemBm" xlink:type="locator" href="...FileB.xml#id(bm)"
>And then I would just have to define the arcs elements.
>
>    What bothers me is the repetition for each locator of the whole URL of
>FileA.xml or FileB.xml Is there a smart way to avoid it ?
>    I thought of defining a simple XLink to each file, but I don't know how
>to perform the relative references within locators
>
>Any hint/suggestion are welcome
>
>Best Regards,
>Olivier Dameron
>
>--
>Sent through GMX FreeMail - http://www.gmx.net
>
>
>------------------------------------------------------------------
>The xml-dev list is sponsored by XML.org, an initiative of OASIS
><http://www.oasis-open.org>
>
>The list archives are at http://lists.xml.org/archives/xml-dev/
>
>To unsubscribe from this elist send a message with the single word
>"unsubscribe" in the body to: xml-dev-request@lists.xml.org

--
Eve Maler                                             +1 781 442 3190
Sun Microsystems XML Technology Development  eve.maler @ east.sun.com