1 <?xml version="1.0" encoding="UTF-8"?>
2 <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
3 <xsl:output method="text"/>
5 <!-- we match from root, not to left anything to default template -->
6 <xsl:template match="/">
7 <xsl:apply-templates select="feature"/>
10 <xsl:template match="feature">
11 <!-- process provides -->
12 <xsl:if test="$mode = 'provides'">
13 <!-- include root tag of feature -->
14 <xsl:text>eclipse(</xsl:text>
15 <xsl:value-of select="@id"/>
16 <xsl:text>) = </xsl:text>
17 <xsl:value-of select="@version"/>
18 <xsl:text> </xsl:text>
20 <!-- is feature and plugin any way different? -->
21 <!-- process feature/plugin -->
22 <xsl:for-each select="plugin">
23 <xsl:text>eclipse(</xsl:text>
24 <xsl:value-of select="@id"/>
25 <xsl:text>) = </xsl:text>
26 <xsl:value-of select="@version"/>
27 <xsl:text> </xsl:text>
29 <!-- process feature/includes -->
30 <xsl:for-each select="includes">
31 <xsl:text>eclipse(</xsl:text>
32 <xsl:value-of select="@id"/>
33 <xsl:text>) = </xsl:text>
34 <xsl:value-of select="@version"/>
35 <xsl:text> </xsl:text>
39 <!-- process requires -->
40 <xsl:if test="$mode = 'requires'">
41 <xsl:for-each select="requires/import">
42 <xsl:text>eclipse(</xsl:text>
43 <!-- match plugin or feature -->
44 <xsl:if test="@plugin != ''">
45 <xsl:value-of select="@plugin"/>
47 <xsl:if test="@feature != ''">
48 <xsl:value-of select="@feature"/>
50 <xsl:text>)</xsl:text>
52 <!-- handle match="perfect" (probably means: same version as us) -->
53 <xsl:if test="@match = 'perfect'">
54 <xsl:text> = </xsl:text>
55 <xsl:value-of select="//feature/@version"/>
58 <xsl:if test="@match = 'compatible'">
59 <xsl:text> >= </xsl:text>
60 <xsl:value-of select="@version"/>
63 <!-- apparently: base ver or greater -->
64 <xsl:if test="@match = 'equivalent'">
65 <xsl:text> >= </xsl:text>
66 <xsl:value-of select="@version"/>
69 <!-- no qualifier, assume any? -->
70 <xsl:if test="@match = ''">
71 <xsl:text> >= </xsl:text>
72 <xsl:value-of select="@version"/>
75 <xsl:text> </xsl:text>