Subject: RE: [xsl] How do I change a XSL style sheet to group data together under one heading From: "kieters c" <kieters@xxxxxxxxxxx> Date: Thu, 17 May 2007 12:32:02 +0000 |
From: "Michael Kay" <mike@xxxxxxxxxxxx>
Reply-To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx
To: <xsl-list@xxxxxxxxxxxxxxxxxxxxxx>
Subject: RE: [xsl] How do I change a XSL style sheet to group data together under one heading
Date: Wed, 16 May 2007 21:58:16 +0100
Grouping problems are easier in XSLT 2.0 than in XSLT 1.0. In 2.0 there is a
special instruction for the purpose: xsl:for-each-group. In XSLT 1.0 there
are a number of techniques, all of them a little tricky until you get used
to them; you can find them described at
http://www.jenitennison.com/xslt/grouping
Michael Kay http://www.saxonica.com/
> -----Original Message----- > From: kieters c [mailto:kieters@xxxxxxxxxxx] > Sent: 16 May 2007 19:20 > To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx > Subject: [xsl] How do I change a XSL style sheet to group > data together under one heading > > Good day, > My knowledge of XML is next to none and I only have one XSL > code to use. > I also assume I may be using incorrect jargon and hope you > will understand what I need. > > I have an XSL style sheet to convert the XML flat file. I > need to change the style sheet so it groups certain data > together under one heading. I need to be able to do this as > the system I upload the file to do not accept the information > as presented and continuously gives me an error. What I am > trying to say is that the "result" information under "sample" > grouped together where the "sample" information is the same. > > Your assistance is much appreciated. > > Thank you. > > Hennie > > The format it requires is as follow: > > <sample sample_date_time="20070101" imis_cp_ext="2300" > cp_name="NEUTRA. > SUMP WTPE" dischg_sample_cd="20070101" sample_comment=""> > <result rpttime_name="DAILY" sis_imis_code="FTFLOW" parm_name="FLOW" > result_structure="SI" unit_abbrev="M3/D" rptas_abbrev="NOT APPL" > component_type="SM" result_value="170.000000" result_comment="" > imis_regulation_code_1="CA" imis_regulation_code_2="MC" /> > <result rpttime_name="DAILY" sis_imis_code="PH" parm_name="PH > (-LOG H+ CONCN)" result_structure="P3" unit_abbrev="NO DIM" > rptas_abbrev="NOT APPL" component_type="V1" > result_value="8.246000" result_comment="" > imis_regulation_code_1="MC" /> > <result rpttime_name="DAILY" sis_imis_code="PH" parm_name="PH > (-LOG H+ CONCN)" result_structure="P3" unit_abbrev="NO DIM" > rptas_abbrev="NOT APPL" component_type="T1" > result_value="08:00" result_comment="" > imis_regulation_code_1="MC" /> > <result rpttime_name="DAILY" sis_imis_code="PH" parm_name="PH > (-LOG H+ CONCN)" result_structure="P3" unit_abbrev="NO DIM" > rptas_abbrev="NOT APPL" component_type="V2" > result_value="8.233000" result_comment="" > imis_regulation_code_1="MC" /> > <result rpttime_name="DAILY" sis_imis_code="PH" parm_name="PH > (-LOG H+ CONCN)" result_structure="P3" unit_abbrev="NO DIM" > rptas_abbrev="NOT APPL" component_type="T2" > result_value="12:00" result_comment="" > imis_regulation_code_1="MC" /> > <result rpttime_name="DAILY" sis_imis_code="PH" parm_name="PH > (-LOG H+ CONCN)" result_structure="P3" unit_abbrev="NO DIM" > rptas_abbrev="NOT APPL" component_type="V3" > result_value="8.216000" result_comment="" > imis_regulation_code_1="MC" /> > <result rpttime_name="DAILY" sis_imis_code="PH" parm_name="PH > (-LOG H+ CONCN)" result_structure="P3" unit_abbrev="NO DIM" > rptas_abbrev="NOT APPL" component_type="T3" > result_value="16:00" result_comment="" > imis_regulation_code_1="MC" /> > <result rpttime_name="DAILY" sis_imis_code="RSP" > parm_name="RESIDUE,PARTICULATE" result_structure="SI" > unit_abbrev="MG/L" > rptas_abbrev="NOT APPL" component_type="SM" result_value="3.38" > result_comment="" imis_regulation_code_1="CA" > imis_regulation_code_2="MC" /> > </sample> > > The one generated by the XSL style sheet is as follow.: Only > a few records posted > > - <sample sample_date_time="20070101" imis_cp_ext="2300" > cp_name="Neutr. > Sump WTPE" dischg_sample_cd="" sample_comment=""> <result > rpttime_name="DAILY" sis_imis_code="FTFLOW" parm_name="Flow" > unit_abbrev="M3/D" rptas_abbrev="NOT APPL" result_structure="SI" > component_type="SM" result_value="168.2" remark_code_1="" > remark_code_2="" remark_code_3="" result_comment="" > imis_regulation_code_1="MC" imis_regulation_code_2="CA" /> </sample> > - <sample sample_date_time="20070101" imis_cp_ext="2300" > cp_name="Neutr. > Sump WTPE" dischg_sample_cd="" sample_comment=""> <result > rpttime_name="DAILY" sis_imis_code="PH" parm_name="pH (-log > H+ Concn)" unit_abbrev="NO DIM" rptas_abbrev="NOT APPL" > result_structure="P3" component_type="V1" result_value="8.2" > remark_code_1="" remark_code_2="" remark_code_3="" result_comment="" > imis_regulation_code_1="MC" imis_regulation_code_2="" /> </sample> > - <sample sample_date_time="20070101" imis_cp_ext="2300" > cp_name="Neutr. > Sump WTPE" dischg_sample_cd="" sample_comment=""> <result > rpttime_name="DAILY" sis_imis_code="PH" parm_name="pH (-log > H+ Concn)" unit_abbrev="NO DIM" rptas_abbrev="NOT APPL" > result_structure="P3" component_type="T1" result_value="08:00" > remark_code_1="" remark_code_2="" remark_code_3="" result_comment="" > imis_regulation_code_1="MC" imis_regulation_code_2="" /> </sample> > - <sample sample_date_time="20070101" imis_cp_ext="2300" > cp_name="Neutr. > Sump WTPE" dischg_sample_cd="" sample_comment=""> <result > rpttime_name="DAILY" sis_imis_code="PH" parm_name="pH (-log > H+ Concn)" unit_abbrev="NO DIM" rptas_abbrev="NOT APPL" > result_structure="P3" component_type="V2" result_value="8.17" > remark_code_1="" remark_code_2="" remark_code_3="" result_comment="" > imis_regulation_code_1="MC" imis_regulation_code_2="" /> </sample> > - <sample sample_date_time="20070101" imis_cp_ext="2300" > cp_name="Neutr. > Sump WTPE" dischg_sample_cd="" sample_comment=""> <result > rpttime_name="DAILY" sis_imis_code="PH" parm_name="pH (-log > H+ Concn)" unit_abbrev="NO DIM" rptas_abbrev="NOT APPL" > result_structure="P3" component_type="T2" result_value="12:00" > remark_code_1="" remark_code_2="" remark_code_3="" result_comment="" > imis_regulation_code_1="MC" imis_regulation_code_2="" /> > </sample> The style sheet is : > <?xml version="1.0" encoding="iso-8859-1" ?> > - <!-- > sample.xsl > --> > - <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" > version="1.0"> > <xsl:output method="xml" indent="yes" /> > - <xsl:variable name="UC"> > <xsl:text>abcdefghijklmnopqrstuvwxyz</xsl:text> > </xsl:variable> > - <xsl:variable name="lc"> > <xsl:text>abcdefghijklmnopqrstuvwxyz</xsl:text> > </xsl:variable> > - <xsl:template match="/"> > - <submission imis_company_code="0001843309" ws_name=" "> > <xsl:apply-templates /> </submission> </xsl:template> > - <xsl:template match="sample"> > - <sample sample_date_time="{sample_date_time}" > imis_cp_ext="{imis_cp_ext}" cp_name="{cp_name}" > dischg_sample_cd="{dischg_sample_cd}" > sample_comment="{sample_comment}"> > <result rpttime_name="{translate(rpttime_name,$lc,$UC)}" > sis_imis_code="{translate(sis_imis_code,$lc,$UC)}" > parm_name="{parm_name}" unit_abbrev="{Unit_abbrev}" > rptas_abbrev="{rptas_abbrev}" result_structure="{result_structure}" > component_type="{component_type}" result_value="{result_value}" > remark_code_1="{remark_code_1}" remark_code_2="{remark_code_2}" > remark_code_3="{remark_code_2}" result_comment="{result_comment}" > imis_regulation_code_1="{imis_regulation_code_1}" > imis_regulation_code_2="{imis_regulation_code_2}" /> > </sample> </xsl:template> </xsl:stylesheet> > > _________________________________________________________________ > Share folders without harming wildlife! > http://www.communicationevolved.com/en-za/
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] How do I change a XSL sty, Michael Kay | Thread | [xsl] adding namespace node to arbi, Benjamin Li |
RE: [xsl] Extract input filename, J. S. Rawat | Date | RE: [xsl] How do I change a XSL sty, kieters c |
Month |