| 123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118 |
- <?xml version="1.0" encoding="UTF-8"?>
- <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
- xmlns:xs="http://www.w3.org/2001/XMLSchema"
- xmlns:p5dkp="http://biuro.biall-net.pl/xmlschema_procesy5/WPS_Functions/dita_kosztorys_projektowy/p5dkp.xsd"
- xmlns:p5ant-interface="http://biuro.biall-net.pl/xmlschema_procesy5/WPS_Functions/ant_interface/ant_interface.xsd"
- exclude-result-prefixes="xs"
- version="2.0">
- <xsl:output indent="yes"/>
- <xsl:strip-space elements="*"/>
- <xsl:param name="p5dkp:ditafiles.wordindex.xml.thread.count" required="yes"/> <!-- ilosc rownoleglych zapodan -->
- <xsl:param name="p5dkp:ditafiles.wordindex.xml.thread.no" required="yes"/> <!-- numer procesu -->
- <xsl:param name="p5dkp:ditafiles.wordindex.xml.thread.no.foreign" required="yes"/>
-
-
- <xsl:param name="p5dkp:ditafiles.wordindex.xml.thread.no.merge.count" required="yes"/> <!-- ilosc rownoleglych zapodan merge -->
- <xsl:param name="p5dkp:ditafiles.wordindex.xml.thread.no.merge.no" required="yes"/> <!-- numer procesu merge -->
- <xsl:param name="p5dkp.ditafiles.wordindex.merged.ditafiles.index.dir" required="yes"/> <!-- indeksownae nazwy -->
- <xsl:template mode="p5dkp:ditafiles.wordindex.merged.ditafiles.xml" match="p5dkp:ditafiles.wordindex.strings.merge.xml">
- <p5dkp:ditafiles.wordindex.merged.ditafiles.xml>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.xml.thread.count" select="$p5dkp:ditafiles.wordindex.xml.thread.count"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.xml.thread.no" select="$p5dkp:ditafiles.wordindex.xml.thread.no"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.xml.thread.no.foreign" select="$p5dkp:ditafiles.wordindex.xml.thread.no.foreign"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.xml.thread.no.merge.count" select="$p5dkp:ditafiles.wordindex.xml.thread.no.merge.count"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.xml.thread.no.merge.no" select="$p5dkp:ditafiles.wordindex.xml.thread.no.merge.no"/>
- <xsl:attribute name="TEST28">TEST2259</xsl:attribute>
- <xsl:copy-of select="@*"/>
- <xsl:apply-templates mode="#current"/>
-
- <xsl:call-template name="p5dkp:ditafiles.wordindex.merged.ditafiles.index.dir">
- <xsl:with-param name="p5dkp:ditafiles.wordindex.strings.merge.xml" select="."/>
- </xsl:call-template>
- </p5dkp:ditafiles.wordindex.merged.ditafiles.xml>
- </xsl:template>
-
- <xsl:function name="p5dkp:ditafiles.index">
- <xsl:param name="HIT.s.text"/>
- <xsl:value-of select="concat($p5dkp.ditafiles.wordindex.merged.ditafiles.index.dir,'/',$HIT.s.text,',',$p5dkp:ditafiles.wordindex.xml.thread.no,'.',$p5dkp:ditafiles.wordindex.xml.thread.no.foreign,',',$p5dkp:ditafiles.wordindex.xml.thread.no.merge.no,'.xml')"/>
- </xsl:function>
-
- <xsl:template name="p5dkp:ditafiles.wordindex.merged.ditafiles.index.dir">
- <xsl:param name="p5dkp:ditafiles.wordindex.strings.merge.xml" required="yes"/>
-
- <p5dkp:ditafiles.wordindex.merged.ditafiles.index.dir>
- <xsl:for-each-group select="$p5dkp:ditafiles.wordindex.strings.merge.xml/ditafiles.wordindex.merge/HIT/HIT.s" group-by="text()">
- <xsl:variable name="p5dkp:ditafiles.index">
- <p5dkp:ditafiles.index>
- <xsl:attribute name="text" select="text()"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.count" select="count(current-group())"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.s.sum.text.len" select="sum(current-group()/string-length(text()))"/>
- <xsl:attribute name="generate_id_53" select=" concat('generate_id_53_',$p5dkp:ditafiles.wordindex.xml.thread.no,'_',$p5dkp:ditafiles.wordindex.xml.thread.no.merge.no,'_',$p5dkp:ditafiles.wordindex.xml.thread.no.foreign,'_',generate-id())"/>
- <xsl:for-each-group select="current-group()/ancestor-or-self::p5dkp:ditafiles.wordindex.merge" group-by="@p5ant-interface:dir.filename">
- <p5ant-interface:dir.filename>
- <xsl:attribute name="generate_id_55" select=" concat('generate_id_55_',$p5dkp:ditafiles.wordindex.xml.thread.no,'_',$p5dkp:ditafiles.wordindex.xml.thread.no.merge.no,'_',$p5dkp:ditafiles.wordindex.xml.thread.no.foreign,'_',generate-id())"/>
- <xsl:attribute name="p5ant-interface:dir.filename" select="@p5ant-interface:dir.filename"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.count" select="count(current-group())"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.s.sum.text.len" select="sum(current-group()/string-length(text()))"/>
- <xsl:copy-of select="p5dkp:ditafiles.wordindex.audience" copy-namespaces="no"/>
- <xsl:copy-of select="p5dkp:ditafiles.wordindex.audience.map.path" copy-namespaces="no"/>
- </p5ant-interface:dir.filename>
- </xsl:for-each-group>
- </p5dkp:ditafiles.index>
- </xsl:variable>
- <xsl:copy-of select="$p5dkp:ditafiles.index"/>
- <xsl:result-document href="{p5dkp:ditafiles.index(HIT.s/text())}" >
- <xsl:copy-of select="$p5dkp:ditafiles.index"></xsl:copy-of>
- </xsl:result-document>
- </xsl:for-each-group>
- </p5dkp:ditafiles.wordindex.merged.ditafiles.index.dir>
- </xsl:template>
-
-
- <xsl:template name="p5dkp:ditafiles.wordindex.index">
- <xsl:param name="HIT" required="yes"/>
- <HIT>
- <xsl:attribute name="generate_id_76" select=" concat('generate_id_76_',$p5dkp:ditafiles.wordindex.xml.thread.no,'_',$p5dkp:ditafiles.wordindex.xml.thread.no.merge.no,'_',$p5dkp:ditafiles.wordindex.xml.thread.no.foreign,'_',generate-id())"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.count" select="count(current-group())"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.s.sum.text.len" select="sum(current-group()/HIT.s/string-length(text()))"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.s.text" select="HIT.s/text()"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.s.texts"><xsl:for-each select="HIT.s/text()"><xsl:value-of select="."/><xsl:text> </xsl:text></xsl:for-each></xsl:attribute>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.ss.len.sum" select="sum(current-group()/HIT.ss/number(@len))"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.ss.len.max" select="max(current-group()/HIT.ss/number(@len))"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.ss.len.avg" select="avg(current-group()/HIT.ss/number(@len))"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.t.p.len.sum" select="sum(current-group()/HIT.t.p/number(@len))"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.t.p.len.max" select="max(current-group()/HIT.t.p/number(@len))"/>
- <xsl:attribute name="p5dkp:ditafiles.wordindex.merge.ditafiles.hit.t.p.len.avg" select="avg(current-group()/HIT.t.p/number(@len))"/>
- <xsl:attribute name="p5ant-interface:dir.filename.remote" select="@p5ant-interface:dir.filename.remote"/>
- <!--<xsl:copy-of select="$HIT/preceding-sibling::p5dkp:ditafiles.wordindex.audience.map.path[1]"/>-->
- <!--<xsl:copy-of select="$HIT/preceding-sibling::p5dkp:ditafiles.wordindex.audience[1]"/>-->
- </HIT>
- </xsl:template>
-
- <xsl:template mode="p5dkp:ditafiles.wordindex.merged.ditafiles.xml" match="p5dkp:ditafiles.wordindex.merge[HIT]">
- <p5dkp:ditafiles.wordindex.merge.ditafiles>
- <xsl:copy-of select="@p5ant-interface:dir.filename"/>
- <xsl:attribute name="generate_id_96" select=" concat('generate_id_96_',$p5dkp:ditafiles.wordindex.xml.thread.no,'_',$p5dkp:ditafiles.wordindex.xml.thread.no.merge.no,'_',$p5dkp:ditafiles.wordindex.xml.thread.no.foreign,'_',generate-id())"/>
- <xsl:for-each-group select="HIT" group-by="@p5ant-interface:dir.filename.remote">
- <xsl:copy-of select="../p5dkp:ditafiles.wordindex.audience.map.path[1]" copy-namespaces="no"/>
- <xsl:copy-of select="../p5dkp:ditafiles.wordindex.audience[1]" copy-namespaces="no"/>
- <xsl:call-template name="p5dkp:ditafiles.wordindex.index">
- <xsl:with-param name="HIT" select="."/>
- </xsl:call-template>
- </xsl:for-each-group>
- </p5dkp:ditafiles.wordindex.merge.ditafiles>
- </xsl:template>
-
- <xsl:template mode="p5dkp:ditafiles.wordindex.merged.ditafiles.xml" match="p5dkp:ditafiles.wordindex.audience|p5dkp:ditafiles.wordindex.audience.map.path">
- <xsl:copy-of select="."/>
- </xsl:template>
-
- <xsl:template mode="p5dkp:ditafiles.wordindex.merged.ditafiles.xml" match="comment()|text()"/>
-
- <xsl:template mode="p5dkp:ditafiles.wordindex.merged.ditafiles.xml" match="*"/>
-
-
- </xsl:stylesheet>
|