[
Lists Home |
Date Index |
Thread Index
]
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 |
-----------------------
|