[XML-DEV Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Re: how to use xml:base and relative URLs with SAX/Java?
1) Thank you for replying. I tried your fix - it doesnt work. The problem is not with the faulty url (it treats it as a string so spaces are ok - actually I have fixed the url in other data). I am opening the schema file in XML Spy and also the xml file. When I make the modification and try to Save, I get the validation error again. So the problem is *not* at runtime. 2) I wanted to use XML base because some of the clips may be stored locally but others may be on a server. thanks, Anil --- Liam Quin <liam@w...> wrote: > On Fri, Dec 09, 2005 at 08:34:42PM -0800, Anil > Philip wrote: > > In the xml schema, I have defined: > > <xs:element name="audioClip" type="xs:anyURI"/> > > So, your audioClip elmeent's contents must be a URI > (or IRI). > > > <audioClip xml:base = "My Music\Sample Music\" > > xlink:href = "Highway Blues.wma" xlink:type = > "simple" > > xmlns:xlink="http://www.w3.org/1999/xlink" /> > > Some of your slashes go the wrong way and you have > tried to > put a space an a URI. > > Try: > > <audioClip xml:base = > "file:///C|/My%20Music/Sample%20Music/" > xlink:href="Highway%20Blues.wma" > xlink:type="simple" > xmlns:xlink="http://www.w3.org/1999/xlink" /> > > > 1. However, I get validation error: "Element > audioClip > > is based on a simple type. Attribute 'xml:base' is > not > > defined in the schema instance namespace (xsi)." > > The idea of xml:base is really to say where an > entity (e.g > a file) come from. You can use it on individual > elements, but > you might as well just use > href="file:...." > instead as far as I can tell. > > In general, though, it's better to use relative uRIs > if you > want your document to be portable. > > > 2. Also how would I access the URL from my code > during > > SAX parsing? as an attribute of the > > audioClip? atts.getValue("", "base"); > > I don't know if the SAX processor you are using has > any special > support for xml:base, but if it does, no, there > would be a call > to get the current base, since it is inherited. If > not, you > would have to keep a stack of the xml:base property > for each > element, defaulting to the URI of the containing > resource (file). > > Liam > > -- > Liam Quin, W3C XML Activity Lead, > http://www.w3.org/People/Quin/ > http://www.holoweb.net/~liam/ > __________________________________________________ Do You Yahoo!? Tired of spam? Yahoo! Mail has the best spam protection around http://mail.yahoo.com
|
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
|