annotate generator/merge.xsl @ 414:b2a803c73b89 default tip

Declare tabArray const.
author David Nadlinger <code@klickverbot.at>
date Fri, 06 May 2011 13:39:49 +0200
parents e78566595089
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
1
e78566595089 initial import
mandel
parents:
diff changeset
1 <?xml version="1.0"?>
e78566595089 initial import
mandel
parents:
diff changeset
2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
e78566595089 initial import
mandel
parents:
diff changeset
3 version="1.0">
e78566595089 initial import
mandel
parents:
diff changeset
4 <xsl:output method="xml" indent="yes"/>
e78566595089 initial import
mandel
parents:
diff changeset
5 <xsl:param name="lang" />
e78566595089 initial import
mandel
parents:
diff changeset
6 <xsl:param name="source" />
e78566595089 initial import
mandel
parents:
diff changeset
7
e78566595089 initial import
mandel
parents:
diff changeset
8 <xsl:template match="processing-instruction()" />
e78566595089 initial import
mandel
parents:
diff changeset
9
e78566595089 initial import
mandel
parents:
diff changeset
10 <xsl:template match="/typesystem">
e78566595089 initial import
mandel
parents:
diff changeset
11 <xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
12 <xsl:for-each select="@*">
e78566595089 initial import
mandel
parents:
diff changeset
13 <xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
14 <xsl:value-of select="." />
e78566595089 initial import
mandel
parents:
diff changeset
15 </xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
16 </xsl:for-each>
e78566595089 initial import
mandel
parents:
diff changeset
17
e78566595089 initial import
mandel
parents:
diff changeset
18 <xsl:for-each select="document($source)/typesystem/@*">
e78566595089 initial import
mandel
parents:
diff changeset
19 <xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
20 <xsl:value-of select="." />
e78566595089 initial import
mandel
parents:
diff changeset
21 </xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
22 </xsl:for-each>
e78566595089 initial import
mandel
parents:
diff changeset
23
e78566595089 initial import
mandel
parents:
diff changeset
24 <xsl:variable name="other" select="document($source)/typesystem/*[not(self::object-type | self::value-type | self::interface-type | self::namespace-type)]" />
e78566595089 initial import
mandel
parents:
diff changeset
25 <xsl:if test="$other">
e78566595089 initial import
mandel
parents:
diff changeset
26 <xsl:choose>
e78566595089 initial import
mandel
parents:
diff changeset
27 <xsl:when test="$lang != ''">
e78566595089 initial import
mandel
parents:
diff changeset
28 <xsl:element name="language">
e78566595089 initial import
mandel
parents:
diff changeset
29 <xsl:attribute name="name" ><xsl:value-of select="$lang" /></xsl:attribute>
e78566595089 initial import
mandel
parents:
diff changeset
30 <xsl:copy-of select="$other" />
e78566595089 initial import
mandel
parents:
diff changeset
31 </xsl:element>
e78566595089 initial import
mandel
parents:
diff changeset
32 </xsl:when>
e78566595089 initial import
mandel
parents:
diff changeset
33 <xsl:otherwise>
e78566595089 initial import
mandel
parents:
diff changeset
34 <xsl:copy-of select="$other" />
e78566595089 initial import
mandel
parents:
diff changeset
35 </xsl:otherwise>
e78566595089 initial import
mandel
parents:
diff changeset
36 </xsl:choose>
e78566595089 initial import
mandel
parents:
diff changeset
37 </xsl:if>
e78566595089 initial import
mandel
parents:
diff changeset
38
e78566595089 initial import
mandel
parents:
diff changeset
39 <xsl:apply-templates select="node()" />
e78566595089 initial import
mandel
parents:
diff changeset
40
e78566595089 initial import
mandel
parents:
diff changeset
41 </xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
42 </xsl:template>
e78566595089 initial import
mandel
parents:
diff changeset
43
e78566595089 initial import
mandel
parents:
diff changeset
44
e78566595089 initial import
mandel
parents:
diff changeset
45
e78566595089 initial import
mandel
parents:
diff changeset
46 <xsl:template match="/typesystem/*[self::object-type | self::value-type | self::interface-type | self::namespace-type]">
e78566595089 initial import
mandel
parents:
diff changeset
47 <xsl:variable name="name" select="name()" />
e78566595089 initial import
mandel
parents:
diff changeset
48 <xsl:variable name="other" select="document($source)/typesystem/*[name() = $name][@name = current()/@name]" />
e78566595089 initial import
mandel
parents:
diff changeset
49 <xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
50 <xsl:for-each select="@*">
e78566595089 initial import
mandel
parents:
diff changeset
51 <xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
52 <xsl:value-of select="." />
e78566595089 initial import
mandel
parents:
diff changeset
53 </xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
54 </xsl:for-each>
e78566595089 initial import
mandel
parents:
diff changeset
55 <xsl:for-each select="$other/@*">
e78566595089 initial import
mandel
parents:
diff changeset
56 <xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
57 <xsl:value-of select="." />
e78566595089 initial import
mandel
parents:
diff changeset
58 </xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
59 </xsl:for-each>
e78566595089 initial import
mandel
parents:
diff changeset
60
e78566595089 initial import
mandel
parents:
diff changeset
61 <xsl:apply-templates select="node()" />
e78566595089 initial import
mandel
parents:
diff changeset
62 <xsl:if test="$other">
e78566595089 initial import
mandel
parents:
diff changeset
63 <xsl:choose>
e78566595089 initial import
mandel
parents:
diff changeset
64 <xsl:when test="$lang != ''">
e78566595089 initial import
mandel
parents:
diff changeset
65 <xsl:element name="language">
e78566595089 initial import
mandel
parents:
diff changeset
66 <xsl:attribute name="name" ><xsl:value-of select="$lang" /></xsl:attribute>
e78566595089 initial import
mandel
parents:
diff changeset
67 <xsl:copy-of select="$other/node()" />
e78566595089 initial import
mandel
parents:
diff changeset
68 </xsl:element>
e78566595089 initial import
mandel
parents:
diff changeset
69 </xsl:when>
e78566595089 initial import
mandel
parents:
diff changeset
70 <xsl:otherwise>
e78566595089 initial import
mandel
parents:
diff changeset
71 <xsl:copy-of select="$other/node()" />
e78566595089 initial import
mandel
parents:
diff changeset
72 </xsl:otherwise>
e78566595089 initial import
mandel
parents:
diff changeset
73 </xsl:choose>
e78566595089 initial import
mandel
parents:
diff changeset
74 </xsl:if>
e78566595089 initial import
mandel
parents:
diff changeset
75 </xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
76 </xsl:template>
e78566595089 initial import
mandel
parents:
diff changeset
77
e78566595089 initial import
mandel
parents:
diff changeset
78 <!-- Plain identity transform. -->
e78566595089 initial import
mandel
parents:
diff changeset
79 <xsl:template match="@*|node()">
e78566595089 initial import
mandel
parents:
diff changeset
80 <xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
81 <xsl:apply-templates select="@*"/>
e78566595089 initial import
mandel
parents:
diff changeset
82 <xsl:apply-templates select="node()"/>
e78566595089 initial import
mandel
parents:
diff changeset
83 </xsl:copy>
e78566595089 initial import
mandel
parents:
diff changeset
84 </xsl:template>
e78566595089 initial import
mandel
parents:
diff changeset
85
e78566595089 initial import
mandel
parents:
diff changeset
86 </xsl:stylesheet>