On Saturday, 06. September 2003 16:24, Robin Berjon wrote:
> Adam Turoff wrote:
> > On Sat, Sep 06, 2003 at 01:44:28PM +0700, Alex Sergeyev wrote:
> >>Can someone explain? Is that XSLT rule to use escaping?
> >
> > The { and } characters are used for attribute value templates, which are
> > XPath expressions that generate raw text.  Using curleys outside that
> > context is a syntax error.
> >
> > Consider the following:
> >
> >   <xsl:template match="a">
> >    <xsl:copy-of select="document('[EMAIL PROTECTED]')"/>
> >   </xsl:template>
>
> Actually, that's only true of attributes that are *not* excluded from
> Attribute Value Template interpolation. Attributes that contain an
> "expression", such as xsl:copy/@select, are all in the excluded set.
>
> In this case you are not allowed to use curlies because document expect a
> URI, and those characters are not allowed to appear unescaped in URIs, as
> can be seen in section 2.4.3 of RFC 2396.
>
> Alex, that's the document you want to read if you need to be up to date on
> that topic. Curlies are part of the "unwise" class:
>
>     unwise      = "{" | "}" | "|" | "\" | "^" | "[" | "]" | "`"

You can use EXSLT's encode-uri and decode-uri functions to convert from/to 
uri-escaped strings. libxslt supports both of them natively.

-- 
CU
  Joerg

PGP Public Key at http://ich.bin.kein.hoschi.de/~trouble/public_key.asc
PGP Key fingerprint = D34F 57C4 99D8 8F16 E16E  7779 CDDC 41A4 4C48 6F94


---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to