[XSL-LIST Mailing List Archive Home] [By Thread] [By Date] [Recent Entries] [Reply To This Message] Merging of Files According To A List Using Collection
Hi,
I have a file that list of ids that is used to determine to order of merging of some file: id1 id2 id3 The files that need to merged has a structure like: <div id="id1"> <!-- some content --> </div> I'm merging them using the collection() function in this xsl file: <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="2.0" xmlns:saxon="http://saxon.sf.net/" xmlns:xs="http:// www.w3.org/2001/XMLSchema"> <xsl:param name="dir" as="xs:string" select="'file:///Users/jeffsese/ RND/Berichtigungsliste/Merging/Ostraka'"/> <xsl:template name="main" exclude-result-prefixes="#all"> <div type="Papyri"> <xsl:for-each select="for $x in collection(concat($dir,'? select=*.xml;recurse=yes;on-error=ignore')) return saxon:discard- document($x)"> <xsl:copy-of select="."/> </xsl:for-each> </div> </xsl:template> </xsl:stylesheet> How can I make the insertion follow the order that is indicated in my text file? I tried this but I can't get any output: <xsl:variable name="id" as="xs:string*" select="tokenize(unparsed-text ($pathOfTextFile, 'UTF-8'), '^[\r\n]')"/> <xsl:for-each select="$id"> <xsl:variable name="myId" as="xs:string" select="."/> <xsl:copy-of select="collection(concat($dir,'? select=*.xml;recurse=yes;on-error=ignore'))/div[@id=$myId]"/> </xsl:for-each> Thanks, -- Jeff
|
PURCHASE STYLUS STUDIO ONLINE TODAY!Purchasing Stylus Studio from our online shop is Easy, Secure and Value Priced! Download The World's Best XML IDE!Accelerate XML development with our award-winning XML IDE - Download a free trial today! Subscribe in XML format
|