Subject: Re: [xsl] Group consecutive elements based on child content From: "Dimitre Novatchev" <dnovatchev@xxxxxxxxx> Date: Fri, 7 Sep 2007 09:08:47 -0700 |
This is an example of not well defined problem. In > <duration> > <nights>11</nights> > <price>111</price> > <price>222</price> > <price>333</price> > <price>444</price> > <price>-</price> > </duration> > <duration> > <nights>14</nights> > <price>999</price> > <price>222</price> > <price>333</price> > <price>444</price> > <price>-</price> > </duration> will the two > <price>-</price> elements match the corresponding previous > <price>555</price> element, or will they match the vrresponding following > <price>456</price> element? In no way should both matchings be allowed, because then this "quality" is no longer an equivalence relation -- it will follow that 555 = 456 and in fact that any two numbers are "equal" The problem thus defined makes no sense. Cheers, Dimitre Novatchev On 7/20/07, Kevin Bird <kevin.bird@xxxxxxxxxxxxxxxxxxxxxxx> wrote: > Hi > > In the following structure I need to group consecutive <duration> > elements based on the concatenation of the <price> elements. The added > complication I have is that a price element can contain a number or > hyphen. The hyphen acts like a wildcard in that it can match the price > element in the preceding or following duration. A brief example of my > problem is below. > > ------- > INPUT > ------- > <holidays> > <duration> > <nights>7</nights> > <price>111</price> > <price>222</price> > <price>333</price> > <price>444</price> > <price>555</price> > </duration> > <duration> > <nights>10</nights> > <price>-</price> > <price>222</price> > <price>333</price> > <price>444</price> > <price>555</price> > </duration> > <duration> > <nights>11</nights> > <price>111</price> > <price>222</price> > <price>333</price> > <price>444</price> > <price>-</price> > </duration> > <duration> > <nights>14</nights> > <price>999</price> > <price>222</price> > <price>333</price> > <price>444</price> > <price>-</price> > </duration> > <duration> > <nights>21</nights> > <price>999</price> > <price>456</price> > <price>-</price> > <price>123</price> > <price>456</price> > </duration> > <duration> > <nights>28</nights> > <price>999</price> > <price>456</price> > <price>666</price> > <price>123</price> > <price>456</price> > </duration> > </holidays> > > -------------- > DESIRED OUTPUT > -------------- > <!-- <nights> text content is modified to reflect which durations have > been grouped --> > <holidays> > <duration> > <nights>7/10/11</nights> > <price>111</price> > <price>222</price> > <price>333</price> > <price>444</price> > <price>555</price> > </duration> > <duration> > <nights>14</nights> > <price>999</price> > <price>222</price> > <price>333</price> > <price>444</price> > <price>-</price> > </duration> > <duration> > <nights>21/28</nights> > <price>999</price> > <price>456</price> > <price>666</price> > <price>123</price> > <price>456</price> > </duration> > </holidays > > Any help would be appreciated. I am using XSLT 2.0. > > Thanks. > > -- > Kevin > > -- Cheers, Dimitre Novatchev --------------------------------------- Truly great madness cannot be achieved without significant intelligence. --------------------------------------- To invent, you need a good imagination and a pile of junk ------------------------------------- You've achieved success in your field when you don't know whether what you're doing is work or play
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] Identical entries in diff, Meyer, Roland 1. (NS | Thread | [xsl] a weird bug today, tree seems, bryan rasmussen |
RE: [xsl] Identical entries in diff, Michael Kay | Date | Re: [xsl] In Search of People Who K, Betty Harvey |
Month |