8a79414e33454e006b191250d02a4f326e38c30d
[senf.git] / senfscons / xrefxtract.xslt
1 <?xml version="1.0" encoding="utf-8"?>\r
2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"\r
3                 version="1.0">\r
4 \r
5   <xsl:output method="xml" omit-xml-declaration="yes"/>\r
6   <xsl:param name="module" select="''"/>\r
7   <xsl:param name="type" select="'todo'"/>\r
8   <xsl:strip-space elements="*"/>\r
9 \r
10   <xsl:template match="variablelist">\r
11     <xsl:if test="string(preceding::variablelist[1]/varlistentry/term/ref/@refid)!=string(varlistentry/term/ref/@refid)">\r
12       <xsl:element name="compound">\r
13         <xsl:attribute name="id">\r
14           <xsl:value-of select="varlistentry/term/ref/@refid"/>\r
15         </xsl:attribute>\r
16         <xsl:attribute name="name">\r
17           <xsl:value-of select="string(varlistentry/term)"/>\r
18         </xsl:attribute>\r
19         <xsl:text>&#xA;</xsl:text>\r
20         <xsl:variable name="curid" select="varlistentry/term/ref[1]/@refid"/>\r
21         <xsl:apply-templates \r
22           select="//variablelist[varlistentry/term/ref[1]/@refid=$curid]"\r
23           mode="inlist"/>\r
24       </xsl:element>\r
25       <xsl:text>&#xA;</xsl:text>\r
26     </xsl:if>\r
27   </xsl:template>\r
28   \r
29   <xsl:template match="variablelist" mode="inlist">\r
30     <item>\r
31       <xsl:value-of select="string(listitem)"/>\r
32     </item>\r
33     <xsl:text>&#xA;</xsl:text>\r
34   </xsl:template>\r
35 \r
36   <xsl:template match="/">\r
37     <xsl:element name="xreflist">\r
38       <xsl:attribute name="type">\r
39         <xsl:value-of select="$type"/>\r
40       </xsl:attribute>\r
41       <xsl:attribute name="module">\r
42         <xsl:value-of select="$module"/>\r
43       </xsl:attribute>\r
44       <xsl:text>&#xA;</xsl:text>\r
45       <xsl:apply-templates/>\r
46     </xsl:element>\r
47   </xsl:template>\r
48 \r
49   <xsl:template match="compoundname"/>\r
50   <xsl:template match="title"/>\r
51   <xsl:template match="anchor"/>\r
52 \r
53 </xsl:stylesheet>\r