OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

 


 

   Re: [xml-dev] how to use xml:base and relative URLs with SAX/Java?

[ Lists Home | Date Index | Thread Index ]
  • To: xml-dev@lists.xml.org
  • Subject: Re: [xml-dev] how to use xml:base and relative URLs with SAX/Java?
  • From: Anil Philip <goodnewsforyou@yahoo.com>
  • Date: Sat, 10 Dec 2005 09:15:46 -0800 (PST)
  • Domainkey-signature: a=rsa-sha1; q=dns; c=nofws; s=s1024; d=yahoo.com; h=Message-ID:Received:Date:From:Subject:To:In-Reply-To:MIME-Version:Content-Type:Content-Transfer-Encoding; b=PB7BtLmChVGOdByo6ge2FbXvuJgOkGeNu2Y4/O8qjaRbCLDMSNuoeJkm1U37bpNRDKzA6Q3EL0qHAiFfx386iWGeFJErKAgHSmO1wEg/Y4vyFp9qsLUWPqKIc50zZ29YT4oO8C5THdAqm+YRRXa/o+o35oCOTeJN3kMLthWz2Wg= ;
  • In-reply-to: <20051210045416.GC8981@w3.org>

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@w3.org> 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 




 

News | XML in Industry | Calendar | XML Registry
Marketplace | Resources | MyXML.org | Sponsors | Privacy Statement

Copyright 2001 XML.org. This site is hosted by OASIS