* made filename appear as CustomDeviceMode/@name
[rgd2midnam.git] / rgd2midnam.xsl
blob43ad304d868c8e20c2ef0778300ac9552b99d815
1 <?xml version="1.0" ?>
2 <xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform"
3 version="1.0">
5 <xsl:output method="xml" indent="yes"/>
7 <xsl:template match="/">
8 <MIDINameDocument>
9 <Author><xsl:value-of select="//librarian/@name"/></Author>
10 <MasterDeviceNames>
11 <Manufacturer>Rosegarden</Manufacturer>
12 <Model><xsl:value-of select="//device/@name"/></Model>
13 <CustomDeviceMode Name="{$filename}">
14 <ChannelNameSetAssignments>
15 <ChannelNameSetAssign Channel="1" NameSet="{$filename}" />
16 <ChannelNameSetAssign Channel="2" NameSet="{$filename}" />
17 <ChannelNameSetAssign Channel="3" NameSet="{$filename}" />
18 <ChannelNameSetAssign Channel="4" NameSet="{$filename}" />
19 <ChannelNameSetAssign Channel="5" NameSet="{$filename}" />
20 <ChannelNameSetAssign Channel="6" NameSet="{$filename}" />
21 <ChannelNameSetAssign Channel="7" NameSet="{$filename}" />
22 <ChannelNameSetAssign Channel="8" NameSet="{$filename}" />
23 <ChannelNameSetAssign Channel="9" NameSet="{$filename}" />
24 <ChannelNameSetAssign Channel="10" NameSet="{$filename}" />
25 <ChannelNameSetAssign Channel="11" NameSet="{$filename}" />
26 <ChannelNameSetAssign Channel="12" NameSet="{$filename}" />
27 <ChannelNameSetAssign Channel="13" NameSet="{$filename}" />
28 <ChannelNameSetAssign Channel="14" NameSet="{$filename}" />
29 <ChannelNameSetAssign Channel="15" NameSet="{$filename}" />
30 <ChannelNameSetAssign Channel="16" NameSet="{$filename}" />
31 </ChannelNameSetAssignments>
32 </CustomDeviceMode>
33 <ChannelNameSet Name="{$filename}" >
34 <AvailableForChannels>
35 <AvailableChannel Channel="1" Available="true" />
36 <AvailableChannel Channel="2" Available="true" />
37 <AvailableChannel Channel="3" Available="true" />
38 <AvailableChannel Channel="4" Available="true" />
39 <AvailableChannel Channel="5" Available="true" />
40 <AvailableChannel Channel="6" Available="true" />
41 <AvailableChannel Channel="7" Available="true" />
42 <AvailableChannel Channel="8" Available="true" />
43 <AvailableChannel Channel="9" Available="true" />
44 <AvailableChannel Channel="10" Available="true" />
45 <AvailableChannel Channel="11" Available="true" />
46 <AvailableChannel Channel="12" Available="true" />
47 <AvailableChannel Channel="13" Available="true" />
48 <AvailableChannel Channel="14" Available="true" />
49 <AvailableChannel Channel="15" Available="true" />
50 <AvailableChannel Channel="16" Available="true" />
51 </AvailableForChannels>
52 <xsl:apply-templates/>
53 </ChannelNameSet>
54 </MasterDeviceNames>
55 </MIDINameDocument>
56 </xsl:template>
58 <xsl:template match="bank">
59 <PatchBank Name="{@name}" >
60 <PatchNameList>
61 <xsl:apply-templates/>
62 </PatchNameList>
63 </PatchBank>
64 </xsl:template>
66 <xsl:template match="program">
67 <Patch Number="{@id}" Name="{@name}">
68 <PatchMIDICommands>
69 <ControlChange Control="0" Value="{../@msb}" />
70 <ControlChange Control="32" Value="{../@lsb}" />
71 <ProgramChange Number="{./@id}" />
72 </PatchMIDICommands>
73 </Patch>
74 </xsl:template>
75 </xsl:stylesheet>