[XSL-LIST Mailing List Archive Home]
[By Thread]
[By Date]
Re: [xsl] How to filter nodes on attribute values
Subject: Re: [xsl] How to filter nodes on attribute values From: Ankit Jain <Ankit.Jain@xxxxxxxxxxx> Date: Tue, 11 Mar 2003 12:28:34 +0100 |
Thanks for the suggestion. Though your solution is elegant and easy one, I ll like to work out with the alternative that you have suggested as : <xsl:template match="Annotation[@type = 'interesting']"> <DIV style="background:Yellow"> <font face="Arial" color="RED"> <xsl:apply-imports/> </font> </DIV> </xsl:template> <xsl:template match="Annotation[@type = 'useless']"> <DIV style='background:PINK'> <font face="Arial" color='RED'> <xsl:apply-imports/> </font> </DIV> </xsl:template> I do this way because, I have no control over the XML file and the program doesnot know the structure of the XML file. Only thing that the program knows is that there are elements in the XML file(anywhere in the hierarchy) with name ANNOTATION and certain attributes. Depending upon the attributes I have to render the visibilty of the elements that are the children of the ANNOTATION element but also importing their original styles from the original stylesheet that is used in the XML doc. Thanks for the suggestions. Ankit XSLList a écrit : > <xsl:template match="Annotation[@type='boring']"> > > which will give you more granular control over formatting. > > Jeff > > <?xml version="1.0"?> > <xsl:stylesheet version="1.0" > xmlns:xsl='http://www.w3.org/1999/XSL/Transform' > > <xsl:output method="html"/> > > <xsl:template match="/"> > <html> > <style> > .interesting {color: red;} > .boring {color: green;} > </style> > <body> > <xsl:apply-templates/> > </body> > </html> > </xsl:template> > > <xsl:template match="Annotation"> > <p class="{@type}"> > <br/> > Author = <xsl:value-of select="book/author"/><br/> > Title = <xsl:value-of select="book/title"/><br/> > </p> > </xsl:template> > > </xsl:stylesheet> > > <?xml version="1.0"?> > <Annotations> > <Annotation type="interesting"> > <book id="bk106"> > <author>Randall, Cynthia</author> > <title>Lover Birds</title> > </book> > </Annotation> > <Annotation type="boring"> > <book id="bk102"> > <author>Ralls, Kim</author> > <title>Midnight Rain</title> > </book> > </Annotation> > <Annotation type="indifferent"> > <book id="bk102"> > <author>Ledbetter, James</author> > <title>Starving to Death on $200 Million</title> > </book> > </Annotation> > </Annotations> > > >Hello, > >I have another problem. > > > >I wish to apply formatting on a set of nodes which have a certain value > >in the attribute. > >I mean - > > <Annotation type="interesting"> > > <book id="bk106"> > > <author>Randall, Cynthia</author> > > <title>Lover Birds</title> > > </book> > ></Annotation> > ><Annotation type="boring"> > > <book id="bk102"> > > <author>Ralls, Kim</author> > > <title>Midnight Rain</title> > > </book> > ></Annotation> > >------------------- > >So that I can show all nodes ANNOTATION with > >type="interesting" with RED > >colored font and > >all nodes ANNOTAITON with type="boring" with GREEN colored font. > >Could somebody please guide me how to do this. > >I donot wish to use When or If because I have to use > >apply-imports which > >doesnot work with When and If. > > > >Thanks in advance > >Ankit > > XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list -- Groupe Raisonnement, Action et Acte de Langage IRIT-UMR-E.N.S.E.E.I.H.T. 2 rue Charles Camichel, Toulouse, France. Tel: +33 (0)5.61.58.82.00 extn : 8534 Fax: +33 (0)5.61.58.83.06 E-mail: Ankit.Jain@xxxxxxxxxxx http://www.enseeiht.fr/lima/ia/ XSL-List info and archive: http://www.mulberrytech.com/xsl/xsl-list
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] How to filter nodes on at, XSLList | Thread | [xsl] XPATH simple question, Oscar |
Re: [xsl] A proposal:xsl:result-doc, Jeni Tennison | Date | Re: [xsl] Re: How to filter nodes o, Ankit Jain |
Month |
Keywords