[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: [XUS] An XML URN Scheme
Ronald Bourret wrote: > I finally found time to read this. thanks, as nobody react, i was thinking it was perfect ! > > Overall, this seems like a sensible thing to do, as it provides a way to > avoid having to register URN schemes. My only comment is that the xus > namespace is not needed and the xus prefix -- really a scheme name -- > should be registered. This is because (AFAIK) URNs require you to > register scheme names. sure; it's much better i will find a while to forward this proposal to ietf, one day > > If xus is not registered and used as a scheme name then you run into the > following problem. Suppose a processor understands both the XUS and ISBN > schemes. Now suppose I bind the prefix ISBN to the XUS namespace. There > is no way for the processor to determine if a URN starting with > URN:ISBN: is an XUS URN or an ISBN URN. While I admit this is a bad > idea, it shouldn't be possible. We both know a similar problem: the xml specification has been published before the namespace specification; in a certain way, the namespace specification is a patch to the xml specification Tools that implement core specifications (xml+namespace) always (often) provide a mean to be "namespace aware" or not, and react differently when a name contains ":" or not It is the same with an URN decoder, that could be "XUS aware" or not : if the feature "XUS aware" is set, the URN:ISBN will be a XUS URN if ISBN is bound to the XUS namespace, an ISBN URN otherwise if the feature "XUS aware" is not set, the URN:ISBN will be an ISBN URN anyway, I retain that registring the XUS scheme is the best way, and would avoid many confusion that we already know about xml+namespace > > -- Ron > > Philippe Poulard wrote: > >> I don't know if anybody already designed an URN scheme for XML; here >> is a proposal: I call it the "XML URN Scheme", or XUS. >> >> ========= >> >> URNs are logical names used to identify resources. XUS defines an URN >> Scheme for XML documents that works on a delegation model. >> As XUS (XML URN Scheme) is used exclusively for XML documents, it uses >> namespace URIs to identify this scheme and the delegate scheme. >> >> 1 Using XUS >> An URI that intends to follow the XML URN Scheme is called a XUS URN >> or a XUS URI. XUS URNs are working on a delegation model : when an URN >> is recognized to belong to the XML URN Scheme defined here, the last >> part of the URN is interpreted with a delegate scheme. >> The XUS scheme and the delegate scheme are both identified with a >> namespace URI, and expressed in a XUS URN with a related prefix, as >> explained below. >> >> * XUS syntax: >> The syntax of an URI is the following : >> scheme:scheme-specific-part#fragment >> where the characters : and # stands for themselves. >> The syntax of a XUS URI is the following : >> urn:xus-prefix:scheme-prefix:scheme-part#fragment >> where the characters : and # stands for themselves and: >> * urn is a string that stands for itslef and denotes that the URI >> is an URN >> * xus-prefix is a prefix bound to the XUS namespace URI : >> http://www.inria.fr/xml/xus/xml-urn-scheme. The usual prefix is xus, >> but any other prefix bound to the XUS namespace URI suits. >> * scheme-prefix is a prefix bound to the namespace URI of the >> delegate scheme. >> * scheme-part is the part scheme that depends on the delegate >> scheme identified by its namespace URI. >> >> 2 Namespace binding >> XML URN Schemes are found generally within XML documents inside which >> the appropriate namespace declarations can be found. In this case, >> theses declarations must be used if the XUS URN is in the scope of the >> declarations, as explained in the relevant specification. >> However, when used outside the scope of an XML document, a XUS >> interpreter may use a given map of prefixes linked to namespace URIs, >> or with a component that resolves prefixes, usually known as >> "namespace resolver". >> >> * Precautions >> A XUS URI may be used anywhere within an XML document with no >> particular precaution, except when used in the DOCTYPE declaration, in >> an external entity, or in the DTD internal subset. In fact, each time >> a reference is made with a XUS URI before reading the XML content may >> cause troubles. >> In this cases, the namespace binding must be provided in addition to >> the document. >> For this reasons, it is recommended to use XUS URIs within the XML >> content. >> >> * Namespace expansion >> A XUS URI may be resolved to a raw expanded URI for comparison >> purpose. The expansion consist on replacing the prefixes by their >> corresponding namespaces ; the expansion is completed by escaping the >> characters of the namespaces as specified in RFC 2396. >> >> 3 XUS interpretation >> A XUS interpreter is a program that decodes XUS URNs. >> A XUS interpreter used to decode a XUS URN fails to resolve such an >> URN when : >> * The xus-prefix prefix is not bound to the XUS namespace URI ; >> the XUS interpreter must report that the URN to resolve is not a XUS URN. >> * The scheme-prefix prefix is not bound to a namespace URI ; the >> XUS interpreter must report that the delegate scheme is missing. >> * The scheme-prefix prefix is bound to the XUS namespace URI ; the >> XUS interpreter must report that the delegate scheme is invalid. >> * The delegate scheme is not known by the interpreter ; the XUS >> interpreter must report that the delegate scheme is unknown. >> * The delegate scheme fails ; the XUS interpreter must report that >> the delegate scheme fails. >> A delegate scheme is known by the XUS interpreter if this scheme has >> itself an interpreter that can be invoked by the XUS interpreter. >> If the XUS interpreter succeed in decoding the URI, it returns the >> following components : >> scheme the string urn >> scheme-specific-part the string that follows urn: >> xus-prefix the prefix used for the XML URN Scheme >> xus-uri the XUS namespace URI >> http://www.inria.fr/xml/xus/xml-urn-scheme >> scheme-prefix the prefix used for the delegate scheme >> scheme-uri the namespace URI of the delegate scheme >> scheme-part the part scheme that follows scheme-prefix: >> scheme-components the components returned by the delegate scheme >> >> 4 Example >> <?xml version="1.0" encoding="iso-8859-1"?> >> <document >> xmlns:xus="http://www.inria.fr/xml/xus/xml-urn-scheme"> >> xmlns:msps="http://www.acme.org/my-special-purpose-scheme"> >> <content> >> <p><a href='urn:xus:msps:acme-fields-here'>My document</a></p> >> </content> >> </document> >> >> ========= >> >> is it usefull ? tomorrow, i'll post a delegate XUS scheme for a >> Document Management System >> > > > ----------------------------------------------------------------- > The xml-dev list is sponsored by XML.org <http://www.xml.org>, an > initiative of OASIS <http://www.oasis-open.org> > > The list archives are at http://lists.xml.org/archives/xml-dev/ > > To subscribe or unsubscribe from this list use the subscription > manager: <http://www.oasis-open.org/mlmanage/index.php> > -- Cordialement, /// (. .) -----ooO--(_)--Ooo----- | Philippe Poulard | -----------------------
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|