summaryrefslogtreecommitdiff
path: root/xsl/filter.xsl
blob: 03667f84bf9e8736e21cf08fa2819d82559543b1 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
<?xml version="1.0" ?>
<!DOCTYPE xsl:stylesheet [ <!ENTITY nbsp "&#160;"> ]>
<xsl:stylesheet 
    xmlns:xsl="http://www.w3.org/1999/XSL/Transform" 
    xmlns:rpm="http://linux.duke.edu/metadata/rpm"
    xmlns:patterns="http://novell.com/package/metadata/suse/pattern"
    xmlns="http://novell.com/package/metadata/suse/pattern"
    version="1.0">

    <xsl:output method="xml" indent="yes" name="xml"/>
    <xsl:param name="arch"/>

    <xsl:template match="/">
        <pattern>
            <xsl:apply-templates/>
        </pattern>
    </xsl:template>

    <xsl:template match="*">
        <name><xsl:value-of select="patterns:name"/></name>
        <summary><xsl:value-of select="patterns:summary"/></summary>
        <description><xsl:value-of select="patterns:description"/></description>
        <uservisible/>
        <category lang="en"><xsl:value-of select="patterns:category"/></category>
        <rpm:requires>
            <xsl:for-each select="rpm:requires/rpm:entry">
                <xsl:if test="@arch = $arch or not(@arch)">
                    <rpm:entry>
                        <xsl:attribute name="name">
                                <xsl:value-of select="@name"/>
                        </xsl:attribute>
                    </rpm:entry>
               </xsl:if>
            </xsl:for-each>
        </rpm:requires>
    </xsl:template>


</xsl:stylesheet>