stanowiska_nazwy_gen.xsl 2.7 KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
  3. xmlns:xs="http://www.w3.org/2001/XMLSchema"
  4. xmlns:exslt="http://exslt.org/common"
  5. exclude-result-prefixes="xs"
  6. version="2.0">
  7. <xsl:output omit-xml-declaration="no" indent="yes" method="xml" encoding="UTF-8" version="1.0"/>
  8. <xsl:strip-space elements="*"/>
  9. <xsl:key name="zasob" match="/root/lane/ID_ZASOB" use="." />
  10. <!-- <xsl:key name="ID_ZASOB" match="ID" use="." /> -->
  11. <xsl:variable name="zasoby_cache" select="document('CRM_LISTA_ZASOBOW.xml')/data/items/item"/>
  12. <!--
  13. <xsl:template name="get_zasob_desc">
  14. <xsl:param name="id_zasob"/>
  15. <xsl:for-each select="document('CRM_LISTA_ZASOBOW.xml')/data/items/item[ID=$id_zasob and TYPE='STANOWISKO']">
  16. <xsl:element name="zasoby">
  17. <xsl:element name="ID_ZASOB">
  18. <xsl:value-of select="$id_zasob"/>
  19. </xsl:element>
  20. <xsl:element name="DESC">
  21. <xsl:value-of select="DESC"/>
  22. </xsl:element>
  23. <xsl:element name="TYPE">
  24. <xsl:value-of select="TYPE"/>
  25. </xsl:element>
  26. <xsl:element name="PATH">
  27. <xsl:value-of select="path"/>
  28. </xsl:element>
  29. </xsl:element>
  30. </xsl:for-each>
  31. </xsl:template>
  32. -->
  33. <!-- [generate-id()=generate-id(key('ID_ZASOB',.)[1])] -->
  34. <xsl:template name="get_zasob_desc_cached">
  35. <xsl:param name="id_zasob"/>
  36. <xsl:for-each select="$zasoby_cache[ID=$id_zasob]">
  37. <xsl:element name="lane">
  38. <xsl:element name="ID_ZASOB">
  39. <xsl:value-of select="$id_zasob"/>
  40. </xsl:element>
  41. <xsl:element name="DESC">
  42. <xsl:value-of select="DESC"/>
  43. </xsl:element>
  44. <xsl:element name="TYPE">
  45. <xsl:value-of select="TYPE"/>
  46. </xsl:element>
  47. <xsl:element name="PATH">
  48. <xsl:value-of select="path"/>
  49. </xsl:element>
  50. </xsl:element>
  51. </xsl:for-each>
  52. </xsl:template>
  53. <xsl:template name="stanowiska_nazwy_gen">
  54. <xsl:element name="lanes_descriptions">
  55. <xsl:for-each select="/root/lane/ID_ZASOB[generate-id() = generate-id(key('zasob',.)[1])]">
  56. <xsl:sort select="."/>
  57. <xsl:call-template name="get_zasob_desc_cached">
  58. <xsl:with-param name="id_zasob" select="."/>
  59. </xsl:call-template>
  60. </xsl:for-each>
  61. </xsl:element>
  62. </xsl:template>
  63. </xsl:stylesheet>