[
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
|