Subject: RE: [xsl] sort with different files From: "Josh Canfield" <Josh.Canfield@xxxxxxxxxxxx> Date: Thu, 22 Apr 2004 11:03:31 -0700 |
You are only retrieving the last name from one file. Your XPath: document(./url/@path)/lastname\ seems to be coming from the context of pers_data, in which case there will only be one url loaded. You could try something like this: <xsl:template match="/root"> <xsl:apply-templates/> </xsl:template> <xsl:template match="node"> <!-- Load all the pers_data urls into a variable for access --> <xsl:variable name="data" select="document(pers_data/url/@path)"/> <xsl:for-each select="pers_data[@status='active']"> <xsl:sort select="$data/pers_data[@id = current()/@id]/lastname"/> <lastname> <xsl:value-of select="$data/pers_data[@id = current()/@id]/lastname"/> </lastname> </xsl:for-each> </xsl:template> Josh -----Original Message----- From: Markus Hanel [mailto:markus.hanel@xxxxxx] Sent: Thursday, April 22, 2004 4:27 AM To: xsl-list@xxxxxxxxxxxxxxxxxxxxxx Subject: RE: [xsl] sort with different files I have tried it with the document, but the problem is that i work with the file students.xml where the pers_data nodes included. But the pers_datas are destaged with a url. Which document must I select by the xsl element sort? > you can do a sort using the document function if thats what you mean > > -----Original Message----- > From: Markus Hanel [mailto:markus.hanel@xxxxxx] > Sent: 22 April 2004 12:16 > To: xsl mailinglist > Subject: [xsl] sort with different files > > > > Hello, > i have a table, where I want to list some students given by there > pers_data > in the file students.xml. Therefore I made a file a_format.xml to generate > columns automaticaly which are given as child of the node interviewer. In > the file students.xml the pers_data is destaged with a url. > My problem is now to sort the students by their lastname. The difficult is > that there are different files! > I hope someone can help me. > Many thanks > markus > > file a_format.xml > <format> > ... > <interviewer> > <show>id</show> > <show>lastname</show> > <show>surname</show> > <show>userid</show> > <show>sex</show> > <show>birth</show> > <show>class</show> > </interviewer> > ... > </format> > > file students.xml > <root> > ... > <node type="interviewee" status="active"> > <pers_data status="active" task="interviewee" id="3"> > <url path="/qpers_data/3.xml" proto="file"> > </url> > </pers_data> > <pers_data status="active" task="interviewee" id="4"> > <url path="/qpers_data/4.xml" proto="file"> > </url> > </pers_data> > </node> > ... > </root> > > file 3.xml > > <pers_data task="interviewee" id="3" status="active"> > <proto>file</proto> > <type>interviewee</type> > <surname>name</surname> > <lastname>name</lastname> > ... > </pers_data> > > xsl stylesheet: > > <table> > <tr> > <!--generate columns automaticaly which are given in a_format.xml --> > <xsl:for-each > select="document('/qxml/a_format.xml')/format/interviewer/child::*"> > <xsl:variable name="show_node" select="." /> > <th><xsl:value-of > select="../../style_body/style_display/translation/*[name()=concat('trans_', > $show_node)]" > /></th> > </xsl:for-each> > </tr> > <!-- list the pers_data of the file students.xml --> > <xsl:for-each select="$self_node/pers_data[attribute::status='active']"> > <!-- sort ???????? --> > <xsl:sort select="document(./url/@path)/lastname" /> > <xsl:variable name="pers_data_file" select="document(./url/@path)" /> > <xsl:variable name="pos" select="position()" /> > <tr> > <xsl:for-each > select="document('/qxml/a_format.xml')/format/interviewer/child::*"> > <xsl:variable name="show" select="." /> > <td> > <xsl:value-of > select="$self_node/pers_data[$pos]/*[name()=$show] > | $pers_data_file/pers_data/*[name()=$show]" /> > </td> > </xsl:for-each> > </tr> > </xsl:for-each> > </table>
Current Thread |
---|
|
<- Previous | Index | Next -> |
---|---|---|
RE: [xsl] sort with different files, Markus Hanel | Thread | RE: [xsl] sort with different files, Markus Hanel |
RE: [xsl] XML Group with XSL, Andreas L. Delmelle | Date | [xsl] xslt problem, Priya Ghate |
Month |