|
[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: xml, xslt and namespaces
Tor Helland wrote: >>We see definitively that if there is no prefix in the name used in a >>step, then the null namespace is assigned, not the default namespace. >>That's why expressions like request/title do not return anything when >>those elements are in a non-null default namespace. > > > So, just to see if I get this right: A default namespace like this: > <?xml version="1.0" encoding="UTF-8"?> > <test xmlns="test"> > <container-abc> > ... > </container-abc> > </test> > > leaves the container-abc element only reachable by some non-abbreviated > syntax like: > //*[name()="container-abc"] > That would be local-name(), but it would work. If there could be elements of the same local name in different namespaces, you would have to test for the desired namespace as well. However, the usual thing one does is to declare a prefix for the namespace *in the stylesheet*, and then use that prefix in the xpath expressions. > but here: > > <?xml version="1.0" encoding="UTF-8"?> > <test xmlns="test" xmlns:t="test"> > <container-abc> > ... > </container-abc> > </test> > > I would get results with > //t:container-abc > > Is that right? > Not quite. As mentioned above, the namespace prefix that counts is the one declared in the stylesheet, not the one declared in the source document. In fact, the stylesheet processor will generally be unaware of what prefix was used in the source document, because the parsing of the source document does not have to keep the information about specific prefixes - of course, it does have to keep information about the namespaces themselves. Now if the source and stylesheet were rolled into one (in other words, using an "embedded" stylesheet), then yes, that would work. Remember, BTW, that unprefixed attributes are always in no namespace, not in the default namespace, so you always get them without any prefix. Cheers, Tom P -- Thomas B. Passin Explorer's Guide to the Semantic Web (Manning Books) http://www.manning.com/catalog/view.php?book=passin
|
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
|
|||||||||

Cart








