[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]
RE: [xml-dev] How to get processing-instruction's pseudo-attribute
- From: "Michael Kay" <mike@saxonica.com>
- To: "'Long JingJun'" <longjingjun@yahoo.com.cn>,<xml-dev@lists.xml.org>
- Date: Tue, 9 Jan 2007 08:46:20 -0000
> I have the following PI in the XML document:
>
> <?page page_number='1' width='2000'?>
>
> I want to retrieve the PI's pseudo-attribute in XSLT
> stylesheet. I tried:
>
> <xsl:template match="processing-instruction('page)">
> <xsl:value-of select="@page_number"> </xsl:template>
>
> This does NOT work. Because attributes are not really
> attributes in PI.
>
> I tried the following method:
> <xsl:template match="processing-instruction('page_start')">
> <xsl:variable name="page_number"
> select='substring-before(substring-after(.,
> "page_number='"), "'")'/> </xsl:template>
>
> Yes, this works. But this seems not the best way.
>
> So, my question is:
> Is there a standard way in XML/XSLT to retrieve PI's
> attribute? If not, is there any plan to handle this in
> XML/XSLT standard?
There's no standard way.
Saxon has an extension function:
http://www.saxonica.com/documentation/extensions/functions/getpseudoattribut
e.html
Because there's no standard for the internal structure of a processing
instruction, you're unlikely to get a standard way to access the internal
structure.
Michael Kay
http://www.saxonica.com/
[Date Prev]
| [Thread Prev]
| [Thread Next]
| [Date Next]
--
[Date Index]
| [Thread Index]