STRUCTURE.dependency.analys.xsl 4.0 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758596061626364656667686970717273747576777879808182838485868788
  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. exclude-result-prefixes="xs"
  5. xmlns:default_db__x3A__NEURO_MIND_INPUT_TEXT="https://biuro.biall-net.pl/wfs/default_db/table/NEURO_MIND_INPUT_TEXT.xsd"
  6. xmlns:default_db__x3A__STRUCTURE="https://biuro.biall-net.pl/wfs/default_db/table/STRUCTURE.xsd"
  7. version="2.0">
  8. <!--<xsl:import href="STRUCTURE.init.type.xsl"/>-->
  9. <!-- 2019 tylko zloz podstwowwe zaleznosci aby moc po nich podazac -->
  10. <xsl:import href="STRUCTURE.dependency.context.xsl"/>
  11. <xsl:import href="STRUCTURE.dependency.subject.xsl"/>
  12. <xsl:output indent="yes"/>
  13. <xsl:strip-space elements="*"/>
  14. <xsl:template mode="default_db__x3A__STRUCTURE:dependency.analys" match="default_db__x3A__STRUCTURE:dependency__begin">
  15. <default_db__x3A__STRUCTURE:dependency.analys>
  16. <xsl:copy-of select="descendant-or-self::*/namespace::*"/>
  17. <xsl:attribute name="debug"> 2019 tylko zloz podstwowwe zaleznosci aby moc po nich podaza. Jak dobrze zamarkujesz elementy na mode dependency - to pojdzie gladko.c</xsl:attribute>
  18. <xsl:apply-templates mode="#current" select="@*"/>
  19. <xsl:for-each-group select="descendant-or-self::default_db__x3A__STRUCTURE:dependency" group-by="concat(@targetNamespace,@document-uri)">
  20. <xsl:apply-templates mode="#current"/>
  21. </xsl:for-each-group>
  22. </default_db__x3A__STRUCTURE:dependency.analys>
  23. </xsl:template>
  24. <xsl:template match="xs:import" mode="default_db__x3A__STRUCTURE:dependency.analys">
  25. <xsl:apply-templates mode="#current"/>
  26. </xsl:template>
  27. <xsl:template mode="default_db__x3A__STRUCTURE:dependency.analys" match="xs:documentation|xs:annotation|xs:sequence|xs:restriction|xs:complexContent|xs:unique|xs:selector|xs:field">
  28. <xsl:apply-templates mode="#current"/>
  29. </xsl:template>
  30. <xsl:template mode="default_db__x3A__STRUCTURE:dependency.analys" match="*">
  31. <xsl:param name="generate-id"/>
  32. <!--<xsl:copy>-->
  33. <!-- <xsl:apply-templates mode="#current" select="@*"/>-->
  34. <xsl:choose>
  35. <xsl:when test="$generate-id = generate-id()">
  36. <xsl:apply-imports>
  37. <xsl:with-param name="generate-id" select="generate-id()"/>
  38. </xsl:apply-imports>
  39. </xsl:when>
  40. <xsl:otherwise>
  41. <xsl:element name="{name()}">
  42. <xsl:attribute name="count" select="count(current-group())"/>
  43. <xsl:attribute name="document-uri" select="default_db__x3A__STRUCTURE:document-uri.filename(@document-uri)"/>
  44. <xsl:copy-of select="@name"/>
  45. <xsl:copy-of select="@ref"/>
  46. <xsl:copy-of select="@base"/>
  47. <xsl:copy-of select="@local.model.relation"/>
  48. <xsl:attribute name="id" select="generate-id()"/>
  49. <!-- <xsl:attribute name="old-generate-id-param" select="$generate-id"/>
  50. <xsl:attribute name="cur-generate-id" select="generate-id()"/>-->
  51. <xsl:apply-imports>
  52. <xsl:with-param name="generate-id" select="generate-id()"/>
  53. </xsl:apply-imports>
  54. <!--<xsl:apply-templates mode="#current"/>-->
  55. </xsl:element>
  56. </xsl:otherwise>
  57. </xsl:choose>
  58. <!--</xsl:copy>-->
  59. </xsl:template>
  60. <xsl:template mode="default_db__x3A__STRUCTURE:dependency.analys" match="@default_db__x3A__STRUCTURE:generate-id|@default_db__x3A__STRUCTURE:loop.path__x3A__FLAG"/>
  61. <xsl:template mode="default_db__x3A__STRUCTURE:dependency.analys" match="@*">
  62. <xsl:copy-of select="."/>
  63. <!--<xsl:apply-imports/>-->
  64. </xsl:template>
  65. <xsl:template mode="default_db__x3A__STRUCTURE:dependency.analys" match="text()"/>
  66. </xsl:stylesheet>