[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: Basic namespace question
hi, namespace URIs are used to disambiguish names used in elements (and sometimes in attributes) ; the idea is to consider that a name has 2 parts, an ID and a local name ; 2 elements that have the same local name are distinct when the ID you choose is not the same than mine ; now what would happenned if unfortunately we have both choosen the same ID ? we would have a clash ; the solution would be : 1) to disambiguish again our elements by considering that a name has 3 parts (an ID, another ID and a local name) ; now loop again if we choose again the same IDs 2) to choose a better ID so we must ensure that when you choose an ID, it is not the same than mine ; the idea is to use a "universal ID", an ID that is unique all over the world candidates : -URIs ("http://foo.com/myNs" or "urn:isbn:9-780201-770049") -GUIDs (they are also expressible with URN : "urn:guid:etc...") -à la Java ("com.foo.myNs") -... URIs win avoid using "that text document" : even if XML processors won't complain because it's not an URI string, it is not a unique string so, the kind of URI you could use could be something like this : "http://lle.rochester.edu/myProject/myNs" or "tag:dgresh@l...:2006-07-17:myNs" or any other, as long as it is unique Daniel Gresh wrote: > I have a basic question about XML Namespaces, as I just cannot seem to > fully grasp the concept. > > I know how to set up a namespace, and I know how they are used in the > document and such; my question is mainly about the URI associated with a > namespace. Let's use this as an example: > > |<x xmlns:edi='http://ecommerce.org/schema'> > <!-- the 'price' element's namespace is http://ecommerce.org/schema --> > <edi:price units='Euro'>32.18</edi:price> > </x>|| > > Now I'm not too sure how to phrase this question, but here goes: do I > have to associate a URI with a namespace? In the above example, what > would be the case if there was no xmlns declaration and the ns "edi" was > used? I suppose what I am asking is: what is the benefit of declaring an > xmlns in the manner xmlns:prefix='URI'? Is information from that URI > being used in the XML document somehow? It's all very confusing to me. > > Also, let's say I have a simple text document located somewhere on my > hard drive, like C:\document.txt. If I wanted to define a namespace for > that document, such as xmlns:doc='that text document', how exactly > would I do so? Is it even needed? > > Thanks in advance, > Dan > | > > ----------------------------------------------------------------- > 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 | ----------------------------- http://reflex.gforge.inria.fr/ Have the RefleX !
|
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
|