Subject: Re: [xsl] How do you get Attributes in Processing Instructions using IE6 From: Jeni Tennison <jeni@xxxxxxxxxxxxxxxx> Date: Tue, 30 Apr 2002 16:55:31 +0100 |
Hi Lori, > I have the following processing instructions throughout my xml file: > <?FRAME LABEL='Introduction to IADS' SHOWNO='N'?> > > I need to be able to get the value of the LABEL attribute > (Introduction to IADS). I am using IE 6.0. I can match the > processing instruction, but I can't seem to get the individual > attribute values. I have tried <xsl:value-of select="@label"/>, but > this doesn't seem to work. The "attributes" in processing instructions aren't actually attributes -- they just look like them. Noramally people refer to these kinds of "attributes" as "pseudo-attributes" to emphasise that fact. As far as the XPath data model is concerned, the only information you can get about a processing instruction is its target (or name -- 'FRAME' in this case), its value ("LABEL='Introduction to IADS' SHOWNO='N'") and its location in the node tree. Pulling the pseudo-attributes out of the processing instruction, then, involves the same kind of code as you'd use to parse any structured string. To get the value of the LABEL pseudo-attribute, for example, you could use: <xsl:template match="pi('FRAME')"> <A name='{substring-before( substring-after(., "LABEL='"), "'")}"> <xsl:value-of select="." /> </A> </xsl:template> (This assumes that you're using apostrophes rather than double-quotes around the values of the pseudo-attribute.) Cheers, Jeni --- Jeni Tennison http://www.jenitennison.com/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
[xsl] How do you get Attributes in, Bolen, Lori Contrac | Thread | RE: [xsl] How do you get Attribute, Michael Kay |
Re: [xsl] problem w/ namespaces, David N Bertoni/Camb | Date | Re: [xsl] Embedding javascript code, Greg Faron |
Month |