<?xml version="1.0"?>
<!-- (c) Copyright 2001 Apt Software Avenues Pvt Ltd, CF 313 Sector I, Salt Lake, Kolkata 700 010, India. All rights reserved. The information in the file may be freely used for any purpose without any kind of warranties, explicit or implited.  -->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform">
<xsl:output 	method="xml" 
		encoding="ISO-8859-1"
		indent="yes" 
		doctype-system="ibis.dtd"/>
<xsl:strip-space elements="*"/>

<xsl:template match="/">
<Ibis_file>
<xsl:apply-templates select="Ibis_file" />
</Ibis_file>
</xsl:template>

<xsl:template match="Ibis_file">
<xsl:apply-templates select="Comment"/>
<xsl:apply-templates select="File_header_section"/>
<xsl:apply-templates select="Comment_char_section"/>
<xsl:apply-templates select="Component_section"/>
<xsl:for-each select="Model_section">	
<xsl:apply-templates  select="."/><xsl:text>
</xsl:text>
</xsl:for-each>
<xsl:apply-templates select="Submodel_section"/>
<xsl:apply-templates select="End_section"/>
</xsl:template>

<xsl:template match="End_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[End]</keyword></keysection>
</xsl:template>

<xsl:template match="Comment">
<comment>
<comment_char><xsl:value-of select="Comment_char"/></comment_char>
<comment_line><xsl:value-of select="Comment_line"/></comment_line>
</comment>
<xsl:apply-templates select="Comment"/>
</xsl:template>

<xsl:template match="Comment_char_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[Comment_char]</keyword>
<keydata_section>
<keydata><xsl:value-of select="Comment_char"/></keydata>
</keydata_section>
</keysection>
</xsl:template>

<xsl:template match="File_header_section">
<xsl:apply-templates select="Comment"/>
<xsl:apply-templates select="Ibis_ver_section"/>
<xsl:apply-templates select="Comment_char_section"/>
<xsl:apply-templates select="File_name_section"/>
<xsl:apply-templates select="File_rev_section"/>
<xsl:apply-templates select="Date_section"/>
<xsl:apply-templates select="Source_section"/>
<xsl:apply-templates select="Notes_section"/>
<xsl:apply-templates select="Disclaimer_section"/>
<xsl:apply-templates select="Copyright_section"/>
</xsl:template>

<xsl:template match="Ibis_ver_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[IBIS ver]</keyword>
<keydata_section>
<keydata><xsl:value-of select="Ibis_ver"/></keydata>
</keydata_section>
</keysection>
</xsl:template>

<xsl:template match="File_name_section">
<xsl:apply-templates select="File_name"/>
</xsl:template>

<xsl:template match="File_name">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[File name]</keyword>
<keydata_section>
<keydata><xsl:value-of select="File_name_name"/><xsl:value-of select="File_name_extension/@Value"/></keydata>      
</keydata_section>
</keysection>
</xsl:template>

<xsl:template match="File_rev_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[File Rev]</keyword>
<keydata_section>
<keydata><xsl:value-of select="File_rev"/></keydata>       	
</keydata_section>
</keysection>
</xsl:template>

<xsl:template match="Date_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[Date]</keyword>
<keydata_section>
<keydata><xsl:value-of select="Date"/></keydata>      	
</keydata_section>
</keysection>
</xsl:template>

<xsl:template match="Source_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[Source]</keyword>&#xa;
<keydata_section>
<xsl:for-each select="Source">	
<xsl:call-template name ="wordwrap">
<xsl:with-param name="sentence" select="."/>
</xsl:call-template>
</xsl:for-each>
</keydata_section>
</keysection>
</xsl:template>

<xsl:template match="Notes_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[Notes]</keyword>
<keydata_section>
<xsl:for-each select="Notes">
<xsl:call-template name ="wordwrap">
<xsl:with-param name="sentence" select="."/>
</xsl:call-template>
</xsl:for-each>
</keydata_section>
</keysection>
</xsl:template>

<xsl:template match="Disclaimer_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[Disclaimer]</keyword>
<keydata_section>
<xsl:for-each select="Disclaimer">
<xsl:call-template name ="wordwrap">
<xsl:with-param name="sentence" select="."/>
</xsl:call-template>
</xsl:for-each>
</keydata_section>
</keysection>
</xsl:template>

<xsl:template name="wordwrap">
<xsl:param name="sentence" />
<xsl:variable name="len" select="string-length($sentence)"/>
<xsl:variable name="sentance" select="normalize-space($sentence)"/>
<xsl:if test="$len + 20 &gt; 80">
<xsl:call-template name ="chksp">
<xsl:with-param name="N">1</xsl:with-param>
<xsl:with-param name="MAX"><xsl:value-of select="$len"/></xsl:with-param>
<xsl:with-param name="line"><xsl:value-of select="$sentance"/></xsl:with-param>
</xsl:call-template>
</xsl:if>
<xsl:if test="$len + 20 &lt; 80">
<keydata><xsl:value-of select="$sentence"/></keydata>
</xsl:if>
</xsl:template>

<xsl:template name="chksp">
<xsl:param name="N" />
<xsl:param name="MAX" />
<xsl:param name="line" />
<xsl:if test="substring($line,$MAX,$N) != ' '">
<xsl:call-template name ="chksp">
<xsl:with-param name="N">1</xsl:with-param>
<xsl:with-param name="MAX"><xsl:value-of select="$MAX - 1"/></xsl:with-param>
<xsl:with-param name="line"><xsl:value-of select="$line"/></xsl:with-param>
</xsl:call-template>
</xsl:if>
<xsl:if test="substring($line,$MAX,$N) = ' '">
<xsl:variable name="str" select="substring($line,1,$MAX)"/>
<keydata><xsl:value-of select="$str"/></keydata>
<keydata><xsl:value-of select="substring($line,$MAX + 1)"/></keydata>
</xsl:if>
</xsl:template>


<xsl:template match="Copyright_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[Copyright]</keyword>
<keydata_section>
<xsl:for-each select="Copyright">
<xsl:call-template name ="wordwrap">
<xsl:with-param name="sentence" select="."/>
</xsl:call-template>
</xsl:for-each>
</keydata_section>
</keysection>
</xsl:template>
           	
<xsl:template match="Component_section">
<keysection>
<xsl:apply-templates select="Comment"/>
</keysection>
<xsl:apply-templates select="Comment_char_section"/>
<xsl:apply-templates select="Component_header_section"/>
<xsl:apply-templates select="Comment_char_section"/>
<xsl:apply-templates select="Pin_section"/>
<xsl:apply-templates select="Comment_char_section"/>
<xsl:apply-templates select="Package_model_section"/>
<xsl:apply-templates select="Series_switch_group_section"/>
<xsl:apply-templates select="Comment_char_section"/>
<xsl:apply-templates select="Pin_mapping_section"/>
<xsl:apply-templates select="Comment_char_section"/>
<xsl:apply-templates select="Diff_pin_section"/>
<xsl:apply-templates select="Comment_char_section"/>
<xsl:apply-templates select="Series_pin_mapping_section"/>
<xsl:apply-templates select="Comment_char_section"/>
</xsl:template>

<xsl:template match="Component_header_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[Component]</keyword>
<keydata_section>
<keydata><xsl:value-of select="Component_name"/></keydata>       	
</keydata_section>
</keysection>
<xsl:apply-templates select="Comment_char_section"/>
<xsl:apply-templates select="Location_section"/>
<keysection>
<keyword>[Manufacturer]</keyword>
<keydata_section>
<keydata><xsl:value-of select="Manufacturer"/></keydata>
</keydata_section>
</keysection>
<xsl:apply-templates select="Comment_char_section"/>	
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[Package]</keyword>
<table>
<xsl:apply-templates select="Package"/>
</table>
</keysection>
</xsl:template>

<xsl:template match="Location_section">
<xsl:apply-templates select="Si_location_section"/>
<xsl:apply-templates select="Timing_location_section"/>	
</xsl:template>

<xsl:template match="Si_location_section">
<xsl:apply-templates select="Comment"/>
<subkeyword>Si_location</subkeyword>
<subdata><xsl:value-of select="Si_location"/></subdata>
</xsl:template>

<xsl:template match="Timing_location_section">
<xsl:apply-templates select="Comment"/>
<subkeyword>Timing_location</subkeyword>
<subdata><xsl:value-of select="Timing_location"/></subdata>
</xsl:template>

<xsl:template match="Package">
<xsl:apply-templates select="Comment"/>
<xsl:call-template name="comment_typ_min_max"/>
<rowdata><xsl:apply-templates  select="R_pkg"/></rowdata>	
<rowdata><xsl:apply-templates  select="L_pkg"/></rowdata>
<rowdata><xsl:apply-templates  select="C_pkg"/></rowdata>	
</xsl:template>


<xsl:template match="R_pkg">
<column width="9"><subkeyword>R_pkg</subkeyword></column>
<column width="5"><xsl:value-of select="typ/Number"/></column>       	
<xsl:apply-templates select="min"/>
<xsl:apply-templates select="max"/> 	
<column><xsl:apply-templates select="Comment"/></column>
</xsl:template>

<xsl:template match="L_pkg">
<column width="9"><subkeyword>L_pkg</subkeyword></column>
<column width="5"><xsl:value-of select="typ/Number"/></column>       	
<xsl:apply-templates select="min"/>
<xsl:apply-templates select="max"/>	
<column><xsl:apply-templates select="Comment"/></column>
</xsl:template>

<xsl:template match="C_pkg">
<column width="9"><subkeyword>C_pkg</subkeyword></column>
<column width="5"><xsl:value-of select="typ/Number"/></column>       	
<xsl:apply-templates select="min"/>
<xsl:apply-templates select="max"/> 	
<column><xsl:apply-templates select="Comment"/></column>
</xsl:template>

<xsl:template match="Pin_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<table>
<header>
<column width="5"><keyword>[Pin]</keyword></column>
<column width="20"><keyword>signal_name</keyword></column>       	
<column width="20"><keyword>model_name</keyword></column>       	
<column width="9"><keyword>R_pin</keyword> </column>      	
<column width="9"><keyword>L_pin</keyword></column>       	
<column width="9"><keyword>C_pin</keyword> </column>
</header>
<xsl:for-each select="Pin">	
<rowdata><xsl:apply-templates  select="."/></rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>

<xsl:template match="Pin">
<column width="5"><xsl:value-of select="Pin_name_section/Pin_name"/></column>
<column width="20"><xsl:value-of select="Signal_name_section/Signal_name"/></column>
<column width="20"><xsl:apply-templates select="Pin_model_name_section"/></column>
<xsl:apply-templates select="Pin_package_info_section"/>
</xsl:template>

<xsl:template match="Pin_model_name_section">
<xsl:if test="*[local-name() = 'Reserved_model_name']">
	<xsl:value-of select="Reserved_model_name/@Value"/>
</xsl:if>
<xsl:if test="*[local-name() = 'Model_name']">
	<xsl:value-of select="."/>
</xsl:if>
</xsl:template>


<xsl:template match="Pin_package_info_section">
<xsl:apply-templates  select="R_pin_section/R_pin"/>
<xsl:apply-templates  select="L_pin_section/L_pin"/>
<xsl:apply-templates  select="C_pin_section/C_pin"/>
</xsl:template>

<xsl:template match="R_pin|L_pin|C_pin">
<xsl:if test="*[local-name() = 'NAelement']">
	<column width="9"><xsl:value-of select="NAelement/@VALUE"/></column>
</xsl:if>
<xsl:if test="*[local-name() = 'Number']">
	<column width="9"><xsl:value-of select="."/></column>
</xsl:if>
</xsl:template>

<xsl:template match="min|max|Tdelay_typ|Tdelay_min|Tdelay_max">
<xsl:if test="*[local-name() = 'NAelement']">
	<column width="5"><xsl:value-of select="NAelement/@VALUE"/></column>
</xsl:if>
<xsl:if test="*[local-name() = 'Number']">
	<column width="5"><xsl:value-of select="."/></column>
</xsl:if>
</xsl:template>

<xsl:template match="Package_model_section">
<keysection>
<keyword>[Package Model]</keyword>
<keydata><xsl:value-of  select="Package_model"/></keydata> 
</keysection>
</xsl:template>

<xsl:template match="Series_switch_group_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[Series Switch Groups]</keyword>
<table><xsl:for-each select="Series_switch_group">	
<rowdata><xsl:apply-templates  select="."/></rowdata>
</xsl:for-each></table>
</keysection>
</xsl:template>

<xsl:template match="Series_switch_group">
<column width="3"><xsl:value-of select="Group_state_section/Group_state/@Value"/></column>
<xsl:for-each select="Group_names_section">
<column width="2"><xsl:value-of select="Group_name"/></column>
</xsl:for-each>
<column width="2">&#47;</column>
<column><xsl:apply-templates  select="Comment"/></column>
</xsl:template>

<xsl:template match="Series_pin_mapping_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<table>
<header>
<column width="22"><keyword>[Series Pin Mapping]</keyword></column>
<column width="6"><subkeyword>pin_2</subkeyword></column>
<column width="20"><subkeyword>model_name</subkeyword></column>
<column width="20"><subkeyword>function_table_group</subkeyword></column>
</header>
<xsl:for-each select="Series_pin_mapping">
<rowdata><xsl:apply-templates select="."/></rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>


<xsl:template match="Series_pin_mapping">	
<column width="22"><xsl:value-of select="Pin_name_section/Pin_name"/></column>
<column width="6"><xsl:value-of select="Pin_2_section/Pin_name"/></column>
<column width="20"><xsl:value-of select="Model_name_section/Model_name"/></column>
<column width="20"><xsl:value-of select="Function_table_group_section/Function_table_group"/></column>
<column><xsl:apply-templates  select="Comment"/></column>
</xsl:template>

<xsl:template match="Pin_mapping_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<table>
<header>
<column width="12"><keyword>[Pin Mapping]</keyword></column>
<column width="15"><subkeyword>pulldown_ref</subkeyword></column>       	
<column width="15"><subkeyword>pullup_ref</subkeyword></column>       	
<column width="15"><subkeyword>gnd_clamp_ref</subkeyword></column>       	
<column width="15"><subkeyword>power_clamp_ref</subkeyword></column>
</header>
<xsl:for-each select="Pin_mapping">
<rowdata><xsl:apply-templates select="."/></rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>

<xsl:template match="Pin_mapping">
<column width="5"><xsl:value-of select="Pin_name_section/Pin_name"/></column>
<xsl:apply-templates select="Ref_section"/>
<xsl:apply-templates  select="Clamp_section"/>
</xsl:template>

<xsl:template match="Ref_section">
<xsl:apply-templates select="Comment"/><xsl:text/>
<column width="15"><xsl:apply-templates select="Pulldown_ref_section/Pulldown_ref"/></column>	
<column width="15"><xsl:apply-templates  select="Pullup_ref_section/Pullup_ref"/></column>
</xsl:template>

<xsl:template match="Clamp_section">
<xsl:apply-templates select="Comment"/><xsl:text/>
<column width="15"><xsl:apply-templates select="Gnd_clamp_ref_section/Gnd_clamp_ref"/></column>
<column width="15"><xsl:apply-templates  select="Power_clamp_ref_section/Power_clamp_ref"/></column>
</xsl:template>

<xsl:template match="Pulldown_ref|Pullup_ref|Gnd_clamp_ref|Power_clamp_ref">
<xsl:if test="*[local-name() = 'NCelement']">
	<comment><xsl:value-of select="."/></comment>
</xsl:if>
<xsl:if test="*[local-name() = 'Bus_name']">
	<comment><xsl:value-of select="."/></comment>
</xsl:if>
</xsl:template>

<xsl:template match="Diff_pin_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<table>
<header>
<column width="10"><keyword>[Diff Pin]</keyword></column>
<column width="7"><subkeyword>inv_pin</subkeyword></column>
<column width="5"><subkeyword>vdiff</subkeyword></column>
<column width="10"><subkeyword>tdelay_typ</subkeyword></column>
<column width="10"><subkeyword>tdelay_min</subkeyword></column>
<column width="10"><subkeyword>tdelay_max</subkeyword></column>
</header>
<xsl:for-each select="Diff_pin">
<rowdata><xsl:apply-templates select="."/></rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>

<xsl:template match="Diff_pin">
<xsl:apply-templates select="Comment"/>
<column width="5"><xsl:value-of select="Non_inv_pin_section/Pin_name"/></column>	
<column width="5"><xsl:value-of select="Inv_pin_section/Pin_name"/></column>	
<column width="9"><xsl:apply-templates select="Vdiff_section/Vdiff"/></column>		
<column width="9"><xsl:apply-templates select="Tdelay_typ_section/Tdelay_typ"/></column>	
<column width="9"><xsl:apply-templates select="Tdelay_min_max_section"/></column>
</xsl:template>

<xsl:template match="Model_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
</keysection>
<xsl:apply-templates select="Model_header_section"/>
<xsl:apply-templates select="Model_spec_section/Model_spec"/>
<xsl:apply-templates select="Add_submodel_section"/>
<xsl:apply-templates select="Driver_schedule_section"/>
<xsl:apply-templates select="Temperature_range_section/Temperature_range"/>
<xsl:apply-templates select="Reference_section"/>
<xsl:apply-templates select="TTpower_section"/> 
<xsl:apply-templates select="Pulldown_section"/>
<xsl:apply-templates select="Pullup_section"/>
<xsl:apply-templates select="Gnd_clamp_section"/>
<xsl:apply-templates select="Power_clamp_section"/>
<xsl:apply-templates select="Rgnd_section"/>
<xsl:apply-templates select="Rpower_section"/>
<xsl:apply-templates select="Rac_section"/>
<xsl:apply-templates select="Cac_section"/>
<xsl:apply-templates select="On_state_section"/>
<xsl:apply-templates select="Off_state_section"/>
<xsl:apply-templates select="Ramp_section"/>
<xsl:apply-templates select ="Rising_waveform_section"/>
<xsl:apply-templates select="Falling_waveform_section"/>
</xsl:template>

<xsl:template match="Model_header_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
</keysection>
<keysection>
<keyword>[Model]</keyword>
<keydata_section>
<keydata><xsl:value-of select="Model_name_section/Model_name"/></keydata>       	
</keydata_section>
</keysection>
<keysection>
<subkeyword>Model_type</subkeyword>
<subdata><xsl:value-of select="../@Model_type"/></subdata>
</keysection>
<keysection>
<xsl:apply-templates select="Polarity_section"/>
</keysection>
<keysection>
<xsl:apply-templates select="Enable_section"/>
</keysection>
<keysection>
<xsl:apply-templates select="Model_vinl_section/Model_vinl"/>
</keysection>
<keysection>
<xsl:apply-templates select="Model_vinh_section/Model_vinh"/>
</keysection>
<keysection>
<xsl:apply-templates select="Model_vmeas_section/Model_vmeas"/>
</keysection>
<keysection>
<xsl:apply-templates select="Cref_section/Cref"/>
</keysection>
<keysection>
<xsl:apply-templates select="Vref_section/Vref"/>
</keysection>
<keysection>
<xsl:apply-templates select="Rref_section/Rref"/>
</keysection>
<keysection>
<xsl:apply-templates select="C_comp_section"/>
</keysection>
</xsl:template>

<xsl:template match="Polarity_section|Enable_section">
<subkeyword><xsl:value-of select="name(node())"/></subkeyword>
<subdata><xsl:value-of select="node()/@Value"/></subdata>	
</xsl:template>

<xsl:template match="Model_vinl">
<subkeyword>Vinl</subkeyword>
<xsl:if test="name(node()) = 'Number'">
	 <subdata>= <xsl:value-of select="."/></subdata>
</xsl:if>
<xsl:if test="name(node()) = 'NAelement'">
	<subdata>= <xsl:value-of select="."/></subdata>
</xsl:if>
</xsl:template>

<xsl:template match="Model_vinh">
<subkeyword>Vinh</subkeyword>
<xsl:if test="name(node()) = 'Number'">
	<subdata>= <xsl:value-of select="."/></subdata>
</xsl:if>
<xsl:if test="name(node()) = 'NAelement'">
	<subdata> = <xsl:value-of select="."/></subdata>
</xsl:if>
</xsl:template>

<xsl:template match="Model_vmeas">
<subkeyword>Vmeas</subkeyword>
<xsl:if test="name(node()) = 'Number'">
	<subdata>= <xsl:value-of select="."/></subdata>
</xsl:if>
<xsl:if test="name(node()) = 'NAelement'">
	<subdata>= <xsl:value-of select="."/></subdata>
</xsl:if>
</xsl:template>

<xsl:template match="Cref|Vref|Rref">
<subkeyword><xsl:value-of select="name(.)"/></subkeyword>
<xsl:if test="name(node()) = 'Number'">
	<subdata>= <xsl:value-of select="."/></subdata>
</xsl:if>
<xsl:if test="name(node()) = 'NAelement'">
	<subdata>= <xsl:value-of select="."/></subdata>
</xsl:if>
</xsl:template>

<xsl:template match="C_comp_section">
<xsl:apply-templates  select="Comment"/>
<table>
<xsl:call-template name="comment_typ_min_max"/>
<rowdata>
<column width="9"><subkeyword>C_comp</subkeyword></column>
<column width="5"><xsl:value-of select="typ/Number"/></column>
<xsl:apply-templates  select="min"/>
<xsl:apply-templates  select="max"/>
</rowdata></table>
</xsl:template>

<xsl:template match="Model_spec">
<keyword>[Model Spec]</keyword>
<table>
<xsl:call-template name="comment_typ_min_max"/>
<xsl:apply-templates select="Threshold_section"/>
<xsl:apply-templates select="Hysteresis_threshold_section"/>
<xsl:apply-templates select="Overshoot_section"/>
<xsl:apply-templates select="Pulse_section"/>
<xsl:apply-templates select="Timing_threshold_section"/>
</table>
</xsl:template>

<xsl:template match="Threshold_section">
<xsl:apply-templates select="Comment"/>
<xsl:apply-templates select="Vinl_section"/>
<xsl:apply-templates select="Vinh_section"/>
</xsl:template>

<xsl:template match="Vinl_section|Vinh_section|Vinh_plus_section|
Vinh_minus_section|Vinl_plus_section|Vinl_minus_section
|Vmeas_section|S_overshoot_high|S_overshoot_low|D_overshoot_low|
D_overshoot_high|Pulse_high|Pulse_low|Pulse_time">
<rowdata>
<column><xsl:value-of select="name(node())"/></column>
<column><xsl:value-of    select="typ/Number"/></column>
<column><xsl:apply-templates   select="min"/></column>
<column><xsl:apply-templates  select="max"/></column>
<column><xsl:apply-templates  select="Comment"/></column>
</rowdata>
</xsl:template>


<xsl:template match="Hysteresis_threshold_section">
<xsl:apply-templates select="Comment"/>
<xsl:apply-templates select="Vinh_plus_section"/>
<xsl:apply-templates select="Vinh_minus_section"/>
<xsl:apply-templates select="Vinl_plus_section"/>
<xsl:apply-templates select="Vinl_minus_section"/>
<xsl:apply-templates select="Comment"/>
</xsl:template>

<xsl:template match="Overshoot_section">
<xsl:apply-templates select="Comment"/>
<xsl:apply-templates select="Static_overshoot_section"/>
<xsl:apply-templates select="Dynamic_overshoot_section"/>
<xsl:apply-templates  select="Comment"/>
</xsl:template>

<xsl:template match="Static_overshoot_section">
<xsl:apply-templates select="Comment"/>
<xsl:apply-templates select="S_overshoot_high_section/S_overshoot_high"/>
<xsl:apply-templates select="S_overshoot_low_section/S_overshoot_low"/>
<xsl:apply-templates  select="Comment"/>
</xsl:template>

<xsl:template match="Dynamic_overshoot_section">
<xsl:apply-templates select="Comment"/>
<xsl:apply-templates select="D_overshoot_low"/>
<xsl:apply-templates select="D_overshoot_low"/>
<xsl:apply-templates  select="Comment"/>
</xsl:template>

<xsl:template match="Pulse_section">
<xsl:apply-templates select="Comment"/>
<xsl:apply-templates select="Pulse_high"/>
<xsl:apply-templates select="Pulse_low"/>
<xsl:apply-templates select="Pulse_time"/>
<xsl:apply-templates  select="Comment"/>
</xsl:template>
<xsl:template match="Timing_threshold_section">
<xsl:apply-templates select="Comment"/>
<xsl:apply-templates select="Vmeas_section"/>
</xsl:template>


<xsl:template match="Add_submodel_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[Add Submodel]</keyword>
<table>
<header>
<column><xsl:value-of select="Comment/Comment_char"/></column>
<column width="12">submodel_name</column>
<column width="5">mode</column>
</header>
<rowdata>
<column width="12"><xsl:value-of select="Model_name_section/Model_name"/></column>       	
<column width="5"><xsl:value-of select="Mode/@Value"/></column>
</rowdata>
</table>
</keysection>
</xsl:template>

<xsl:template match="Driver_schedule_section">
<keysection>
<xsl:apply-templates select="Comment"/>
<keyword>[Driver Schedule]</keyword>
<table>
<xsl:apply-templates select="Comment"/>
<header>
<column><xsl:value-of select="Comment/Comment_char"/></column>
<column width="20">Model_name</column>
<column width="10">Rise_on_dly</column>
<column width="10">Rise_off_dly</column>
<column width="10">Fall_on_dly</column>
<column width="10">Fall_off_dly</column>
</header>
<xsl:for-each select="Driver_schedule">
<rowdata><xsl:apply-templates select="."/></rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>

<xsl:template match="Driver_schedule">
<column width="20"><xsl:value-of select="Model_name_section/Model_name"/></column>
<xsl:apply-templates select="Rise_on_delay_section/Rise_on_delay"/>
<xsl:apply-templates select="Rise_off_delay_section/Rise_off_delay"/>
<xsl:apply-templates select="Fall_on_delay_section/Fall_on_delay"/>
<xsl:apply-templates select="Fall_off_delay_section/Fall_off_delay"/>
</xsl:template>

<xsl:template match="Rise_on_delay|Rise_off_delay|Fall_on_delay|Fall_off_delay">
<xsl:if test="name(node()) = 'Number'">
	<column width="10"><xsl:value-of select="."/></column>
</xsl:if>
<xsl:if test="name(node()) = 'NAelement'">
	<column width="10"><xsl:value-of select="NAelement/@VALUE"/></column>
</xsl:if>
</xsl:template>



<xsl:template match="Reference_section">
<xsl:apply-templates select="Voltage_range"/>
<xsl:apply-templates select="Separate_references_section"/>
<xsl:apply-templates select="All_references_section"/>
<xsl:apply-templates  select="Comment"/>
</xsl:template>

<xsl:template match="All_references_section">
<xsl:apply-templates select="Voltage_range"/>
<xsl:apply-templates select="Separate_references_section"/>
</xsl:template>



<xsl:template match="Separate_references_section">
<xsl:apply-templates select="Pullup_reference"/>
<xsl:apply-templates select="Pulldown_reference"/>
<xsl:apply-templates select="Gnd_clamp_reference"/>
<xsl:apply-templates select="Power_clamp_reference"/>
<xsl:apply-templates  select="Comment"/>
</xsl:template>


<xsl:template match="Gnd_clamp_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[GND Clamp]</keyword>
<table>
<xsl:call-template name="comment_voltage_typ_min_max"/>
<xsl:for-each select="Gnd_clamp">
<rowdata><xsl:apply-templates select="."/></rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>

<xsl:template match="Power_clamp_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[POWER Clamp]</keyword>
<table>
<xsl:call-template name="comment_voltage_typ_min_max"/>
<xsl:for-each select="Power_clamp">
<rowdata><xsl:apply-templates select="."/></rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>

<xsl:template match="Temperature_range|Voltage_range|Pullup_reference|Pulldown_reference|Gnd_clamp_reference|Power_clamp_reference|TTgnd_section|TTpower_section|Rgnd_section|Rpower_section|Rac_section|Cac_section">
<keysection>
<table>
<xsl:apply-templates  select="Comment"/>
<xsl:call-template name="comment_typ_min_max"/>
<rowdata>
<column width="17"><keyword>[<xsl:value-of select="name()"/>]</keyword></column>
<column width="9"><xsl:value-of    select="typ/Number"/></column>
<xsl:apply-templates   select="min"/>
<xsl:apply-templates  select="max"/>
</rowdata>
</table>
</keysection>
</xsl:template>

<xsl:template match="TTgnd_section|TTpower_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<table>
<xsl:call-template name="comment_TT_typ_min_max"/>
<rowdata>
<column><keyword><xsl:value-of select="name(node())"/></keyword></column>
<column><xsl:value-of    select="typ/Number"/></column>
<xsl:apply-templates   select="min"/>
<xsl:apply-templates  select="max"/>
<column><xsl:apply-templates  select="Comment"/></column>
</rowdata>
</table>
</keysection>
</xsl:template>

<xsl:template match="Rgnd_section|Rpower_section|Rac_section|Cac_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<table>
<xsl:call-template name="comment_r_typ_min_max"/>
<rowdata>
<column><keyword><xsl:value-of select="name(node())"/></keyword></column>
<column><xsl:value-of    select="typ/Number"/></column>
<xsl:apply-templates   select="min"/>
<xsl:apply-templates  select="max"/>
<column><xsl:apply-templates  select="Comment"/></column>
</rowdata>
</table>
</keysection>
</xsl:template>

<xsl:template match="Cac_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<table>
<xsl:call-template name="comment_c_typ_min_max"/>
<rowdata>
<column><keyword><xsl:value-of select="name(node())"/></keyword></column>
<column><xsl:value-of    select="typ/Number"/></column>
<xsl:apply-templates   select="min"/>
<xsl:apply-templates  select="max"/>
<column><xsl:apply-templates  select="Comment"/></column>
</rowdata>
</table>
</keysection>
</xsl:template>

<xsl:template match="Pulldown_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[Pulldown]</keyword>
<table>
<xsl:call-template name="comment_voltage_typ_min_max"/>
<xsl:for-each select="Pulldown">
<rowdata><xsl:apply-templates select ="."/></rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>

<xsl:template match="Pullup_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[Pullup]</keyword>
<table>
<xsl:call-template name="comment_voltage_typ_min_max"/>
<xsl:for-each select="Pullup">
<rowdata><xsl:apply-templates select ="."/></rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>

<xsl:template match="Pulldown|Pullup|Gnd_clamp|Power_clamp">
<column width="12"><xsl:value-of  select="voltage/Number"/></column>
<column width="10"><xsl:value-of  select="typ/Number"/></column>
<xsl:apply-templates   select="min"/>
<xsl:apply-templates  select="max"/>
<column><xsl:apply-templates  select="Comment"/></column>
</xsl:template>


<xsl:template name="comment_typ_min_max">
<header>
<column><xsl:value-of select="Comment/Comment_char"/></column>
<column width="9">variable</column>
<column width="5">typ</column>
<column width="5">min</column>
<column width="5">max</column>
</header>
</xsl:template>

<xsl:template name="comment_voltage_typ_min_max">
<header>
<column><xsl:value-of select="Comment/Comment_char"/></column>
<column width="11">Voltage</column>
<column width="9">I(typ)</column>
<column width="9">I(min)</column>
<column width="9">I(max)</column>
</header>
</xsl:template>

<xsl:template name="comment_TT_typ_min_max">
<header>
<column><xsl:value-of select="Comment/Comment_char"/></column>
<column width="9">variable</column>
<column width="5">TT(typ)</column>
<column width="5">TT(min)</column>
<column width="5">TT(max)</column>
<column><xsl:apply-templates  select="Comment"/></column>
</header>
</xsl:template>

<xsl:template name="comment_r_typ_min_max">
<header>
<column><xsl:value-of select="Comment/Comment_char"/></column>
<column width="9">variable</column>
<column width="5">R(typ)</column>
<column width="5">R(min)</column>
<column width="5">R(max)</column>
<column><xsl:apply-templates  select="Comment"/></column>
</header>
</xsl:template>

<xsl:template name="comment_c_typ_min_max">
<header>
<column><xsl:value-of select="Comment/Comment_char"/></column>
<column width="9">variable</column>
<column width="5">C(typ)</column>
<column width="5">C(min)</column>
<column width="5">C(max)</column>
</header>
</xsl:template>

<xsl:template name="comment_L_typ_min_max">
<header>
<column><xsl:value-of select="Comment/Comment_char"/></column>
<column width="9">variable</column>
<column width="5">L(typ)</column>
<column width="5">L(min)</column>
<column width="5">L(max)</column>
</header>
</xsl:template>

<xsl:template match="On_state_section">
<xsl:apply-templates  select="Comment"/>
<keyword>[On]</keyword>
<xsl:apply-templates select="Resistive_path"/>
<xsl:apply-templates select="Inductive_path"/>
<xsl:apply-templates select="Capacitive_path"/>
<xsl:apply-templates select="Series_current_section"/>
<xsl:apply-templates select="Series_mosfet_section"/>
</xsl:template>

<xsl:template match="Off_state_section">
<xsl:apply-templates  select="Comment"/>
<xsl:apply-templates select="Resistive_path"/>
<xsl:apply-templates select="Inductive_path"/>
<xsl:apply-templates select="Capacitive_path"/>
<xsl:apply-templates select="Series_current_section"/>
</xsl:template>

<xsl:template match="Resistive_path">
<keysection>
<xsl:apply-templates  select="Comment"/>
<table>
<xsl:call-template name="comment_r_typ_min_max"/>
<rowdata>
<column width="10"><keyword>[R Series]</keyword></column>
<column width="5"><xsl:value-of    select="R_series/typ/Number"/></column>
<xsl:apply-templates    select="R_series/min"/>
<xsl:apply-templates  select="R_series/max"/>	
<column><xsl:apply-templates  select="R_series/Comment"/></column>	
</rowdata>
</table></keysection>
</xsl:template>

<xsl:template match="Inductive_path">
<xsl:apply-templates  select="Comment"/>
<xsl:apply-templates select="L_series"/>
<xsl:apply-templates select="Rl_series"/>
</xsl:template>


<xsl:template match="L_series">
<keysection><xsl:apply-templates  select="Comment"/>
<table>
<xsl:call-template name="comment_L_typ_min_max"/>
<rowdata>
<column width="11"><keyword>[L Series]</keyword></column>
<column width="5"><xsl:value-of select="typ/Number"/></column>
<xsl:apply-templates    select="min"/>
<xsl:apply-templates  select="max"/>	
<column><xsl:apply-templates  select="Comment"/></column>	
</rowdata>
</table></keysection>
</xsl:template>

<xsl:template match="Rl_series">
<keysection><xsl:apply-templates  select="Comment"/>
<table>
<xsl:call-template name="comment_r_typ_min_max"/>
<rowdata>
<column width="11"><keyword>[Rl Series]</keyword></column>
<column width="5"><xsl:value-of    select="typ/Number"/></column>
<xsl:apply-templates   select="min"/>
<xsl:apply-templates  select="max"/>	
<column><xsl:apply-templates  select="Comment"/></column>	
</rowdata>
</table></keysection>
</xsl:template>

<xsl:template match="Capacitive_path">
<xsl:apply-templates  select="Comment"/>
<xsl:apply-templates select="C_series"/>
<xsl:apply-templates select="Lc_series"/>
<xsl:apply-templates select="Rc_series"/>
</xsl:template>

<xsl:template match="C_series">
<keysection><xsl:apply-templates  select="Comment"/>
<table>
<xsl:call-template name="comment_c_typ_min_max"/>
<rowdata>
<column width="11"><keyword>[C Series]</keyword></column>
<column width="5"><xsl:value-of    select="typ/Number"/></column>
<xsl:apply-templates    select="min"/>
<xsl:apply-templates  select="max"/>	
<column><xsl:apply-templates  select="Comment"/></column>	
</rowdata>
</table></keysection>
</xsl:template>

<xsl:template match="Lc_series">
<keysection><xsl:apply-templates  select="Comment"/>
<table>
<xsl:call-template name="comment_L_typ_min_max"/>
<rowdata>
<column width="11"><keyword>[Lc Series]</keyword></column>
<column width="5"><xsl:value-of    select="typ/Number"/></column>
<xsl:apply-templates    select="min"/>
<xsl:apply-templates  select="max"/>	
<column><xsl:apply-templates  select="Comment"/></column>	
</rowdata>
</table></keysection>
</xsl:template>

<xsl:template match="Rc_series">
<keysection><xsl:apply-templates  select="Comment"/>
<table>
<xsl:call-template name="comment_r_typ_min_max"/>
<rowdata>
<column width="11"><keyword>[Rc Series]</keyword></column>
<column width="5"><xsl:value-of    select="typ/Number"/></column>
<xsl:apply-templates    select="min"/>
<xsl:apply-templates  select="max"/>	
<column><xsl:apply-templates  select="Comment"/></column>	
</rowdata>
</table></keysection>
</xsl:template>


<xsl:template match="Series_current_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[Series Current]</keyword>
<table><xsl:call-template name="comment_voltage_typ_min_max"/>
<xsl:for-each select="Series_current">
<rowdata>
<column width="5"><xsl:value-of    select="voltage/Number"/></column>
<column width="5"><xsl:value-of    select="typ/Number"/></column>
<xsl:apply-templates    select="min"/>
<xsl:apply-templates  select="max"/>
<column><xsl:apply-templates  select="Comment"/></column>	
</rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>

<xsl:template match="Series_mosfet_section">
<xsl:apply-templates  select="Comment"/>
<keyword>[Series MOSFET]</keyword>
<table>
<xsl:apply-templates  select="Series_mosfet"/>
</table>
</xsl:template>

<xsl:template match="Series_mosfet">
<subkeyword>Vds</subkeyword>
<subdata><xsl:value-of  select="Vds_section/Vds/Number"/></subdata>
<xsl:call-template name="comment_voltage_typ_min_max"/>
<xsl:for-each select="IVTable">	
<rowdata><xsl:apply-templates  select="."/></rowdata>
</xsl:for-each>
</xsl:template>

<xsl:template match="IVTable">
<column width="5"><xsl:value-of    select="voltage/Number"/></column>
<column width="5"><xsl:value-of    select="typ/Number"/></column>
<xsl:apply-templates    select="min"/>
<xsl:apply-templates  select="max"/>	
<column><xsl:apply-templates  select="Comment"/></column>
</xsl:template>

<xsl:template match="Ramp_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[Ramp]</keyword>
<table>
<xsl:call-template name="comment_typ_min_max"/>
<rowdata>
<column width="8"><subkeyword>dV/dt_r</subkeyword></column>
<xsl:apply-templates  select="dV_dt_r"/>
</rowdata>
<rowdata>
<column width="8"><subkeyword>dV/dt_f</subkeyword></column>
<xsl:apply-templates select="dV_dt_f"/>
</rowdata>
<rowdata>
<column width="8"><subkeyword>R_load</subkeyword></column>
<xsl:apply-templates  select="R_load_section"/>
</rowdata>
</table>
</keysection>
</xsl:template>

<xsl:template match="dV_dt_r">
<xsl:apply-templates select="dV_dt_r_typ"/>
<xsl:apply-templates  select="dV_dt_r_min"/>
<xsl:apply-templates  select="dV_dt_r_max"/>	
<column><xsl:apply-templates  select="Comment"/></column>	
</xsl:template>


<xsl:template match="dV_dt_r_typ">
<column width="20"><xsl:value-of select="dV_r_typ/Number"/>/<xsl:value-of select="dt_r_typ/Number"/></column>
</xsl:template>

<xsl:template match="dV_dt_r_min">
<xsl:if test="name(node())='dV_r_min'">	
<column width="20"><xsl:value-of select="dV_r_min/Number"/>/<xsl:value-of select="dt_r_min/Number"/></column>
</xsl:if>
<xsl:if test="name(node())='NAelement'">	
<column width="20"><xsl:value-of select="NAelement/@VALUE"/></column>
</xsl:if>
</xsl:template>

<xsl:template match="dV_r_max|dV_f_min|dV_f_max">
<xsl:if test="name(node())='Number'">	
<xsl:value-of select="."/>
</xsl:if>
</xsl:template>

<xsl:template match="dV_dt_r_max">
<xsl:if test="name(node())='dV_r_max'">	
<column width="20"><xsl:value-of select="dV_r_max/Number"/>/<xsl:value-of select="dt_r_max/Number"/></column>
</xsl:if>
<xsl:if test="name(node())='NAelement'">	
<column width="20"><xsl:value-of select="NAelement/@VALUE"/></column>
</xsl:if>
</xsl:template>

<xsl:template match="dV_dt_f">
<xsl:apply-templates select="dV_dt_f_typ"/>
<xsl:apply-templates  select="dV_dt_f_min"/>
<xsl:apply-templates  select="dV_dt_f_max"/>	
<column><xsl:apply-templates  select="Comment"/></column>
</xsl:template>

<xsl:template match="dV_dt_f_typ">
<column width="20"><xsl:value-of select="dV_f_typ"/>/<xsl:value-of select="dt_f_typ"/></column>
</xsl:template>

<xsl:template match="dV_dt_f_min">
<xsl:if test="name(node())='dV_f_min'">	
<column width="20"><xsl:value-of select="dV_f_min/Number"/>/<xsl:value-of select="dt_f_min/Number"/></column>
</xsl:if>
<xsl:if test="name(node())='NAelement'">	
<column width="20"><xsl:value-of select="NAelement/@VALUE"/></column>
</xsl:if>
</xsl:template>

<xsl:template match="dV_dt_f_max">
<xsl:if test="name(node())='dV_f_max'">	
<column width="20"><xsl:value-of select="dV_f_max/Number"/>/<xsl:value-of select="dt_f_max/Number"/></column>
</xsl:if>
<xsl:if test="name(node())='NAelement'">	
<column width="20"><xsl:value-of select="NAelement/@VALUE"/></column>
</xsl:if>
</xsl:template>


<xsl:template match="R_load_section">
<column width="8">= <xsl:value-of    select="R_load"/></column>
<column> <xsl:apply-templates  select="Comment"/></column>
</xsl:template>

<xsl:template match="Rising_waveform_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[Rising Waveform]</keyword>
<table>
<xsl:apply-templates select="Test_fixture"/>
</table>
</keysection>
<keysection>
<table>
<xsl:if test="child::Time_plot">
<xsl:call-template name="time_vs_vol_typ_min_max"/>
<xsl:for-each select="Time_plot">	
<rowdata><xsl:apply-templates select="."/></rowdata>
</xsl:for-each>
</xsl:if>
</table>
</keysection>
</xsl:template>


<xsl:template match="Falling_waveform_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[Falling Waveform]</keyword>
<table>
<xsl:apply-templates select="Test_fixture"/>
</table>
</keysection>
<keysection>
<table>
<xsl:if test="child::Time_plot">
<xsl:call-template name="time_vs_vol_typ_min_max"/>
<xsl:for-each select="Time_plot">	
<rowdata><xsl:apply-templates select="."/></rowdata>
</xsl:for-each>
</xsl:if>
</table>
</keysection>
</xsl:template>

<xsl:template match="R_dut_section|L_dut_section|C_dut_section">
<subkeyword><xsl:value-of select="name(.)"/></subkeyword>
<subdata><xsl:value-of select="."/></subdata>
<xsl:apply-templates  select="Comment"/>
</xsl:template>

<xsl:template match="Test_fixture">
<xsl:apply-templates  select="Comment"/>
<xsl:apply-templates select="R_fixture_section/R_fixture"/>
<xsl:apply-templates select="V_fixture_section/V_fixture"/>	
<xsl:apply-templates select="V_fixture_min_section/V_fixture_min"/>
<xsl:apply-templates select="V_fixture_max_section/V_fixture_max"/>
<xsl:apply-templates select="C_fixture_section/C_fixture"/>
<xsl:apply-templates select="L_fixture_section/L_fixture"/>
</xsl:template>

<xsl:template match="R_fixture|V_fixture|V_fixture_min|V_fixture_max|C_fixture|L_fixture">
<rowdata>
<column><subkeyword><xsl:value-of select="name()"/></subkeyword></column>
<column>= <xsl:value-of select="."/></column>
</rowdata>
</xsl:template>

<xsl:template match="Model_selector_section">
<keysection>
<keyword>[Model Selector]</keyword>
<table>
<xsl:for-each select="Model_selector">
<xsl:apply-templates select="."/><xsl:text>
</xsl:text></xsl:for-each>
</table>
</keysection>
</xsl:template>

<xsl:template match="Model_selector">
<rowdata>
<column width="20"><xsl:value-of  select="Model_name_section/Model_name"/></column>
<column width="20"><xsl:value-of  select="Model_selector_desc_section/Model_selector_description"/></column>
</rowdata>
</xsl:template>

<xsl:template match="Submodel_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[Submodel]</keyword>
<keydata_section>
<keydata><xsl:value-of select="Model_name_section/Model_name"/></keydata>
</keydata_section>
</keysection>
<keysection>
<subkeyword>Submodel_type</subkeyword>
<subdata><xsl:value-of select="./@Type"/></subdata>
</keysection>
<xsl:apply-templates select="Dynamic_clamp_section"/>
<xsl:apply-templates select="Bus_hold_section"/>
</xsl:template>

<xsl:template match="Dynamic_clamp_section">
<xsl:apply-templates select="Comment"/>
<xsl:apply-templates select="Submodel_spec_dc_r"/>
<xsl:apply-templates select="Dynamic_clamp_power_tables"/>
<xsl:apply-templates select="Submodel_spec_dc_f"/>
<xsl:apply-templates select="Dynamic_clamp_gnd_tables"/>
<xsl:apply-templates select="Submodel_spec_dc"/>
</xsl:template>

<xsl:template match="Bus_hold_section">
<keysection>
<keyword>[Submodel Spec]</keyword>
<table>
<xsl:apply-templates select="Submodel_spec_bh"/>
</table>
</keysection>
<xsl:apply-templates select="Bus_hold_pullup_pulldown"/>
<xsl:apply-templates select="Ramp_section"/>
<xsl:apply-templates select="Rising_waveform_section"/>
<xsl:apply-templates select="Falling_waveform_section"/>
</xsl:template>

<xsl:template match="Submodel_spec_bh">
<xsl:apply-templates select="V_trigger_r"/>
<xsl:apply-templates select="V_trigger_f"/>
<xsl:apply-templates select="Off_delay"/>
</xsl:template>

<xsl:template match="Submodel_spec_dc_r|Submodel_spec_dc|Submodel_spec_dc_f">
<keysection>
<keyword>[Submodel Spec]</keyword>
<table>
<xsl:apply-templates select="V_trigger_r"/>
<xsl:apply-templates select="V_trigger_f"/>
</table>
</keysection>
</xsl:template>

<xsl:template match="V_trigger_r|V_trigger_f|Off_delay">
<rowdata>
<column width="12"><xsl:value-of select="name(.)"/></column>
<column width="9"><xsl:value-of select="typ/Number"/></column>
<xsl:apply-templates  select="min"/>
<xsl:apply-templates  select="max"/>
<column><xsl:apply-templates  select="Comment"/></column>
</rowdata>
</xsl:template>

<xsl:template match="Bus_hold_pullup_pulldown">
<xsl:apply-templates  select="Pullup_section"/>
<xsl:apply-templates  select="Pulldown_section"/>
</xsl:template>

<xsl:template match="Dynamic_clamp_power_tables">
<xsl:apply-templates  select="Power_clamp_section"/>
<xsl:apply-templates  select="Power_pulse_section"/>
</xsl:template>

<xsl:template match="Dynamic_clamp_gnd_tables">
<xsl:apply-templates  select="Gnd_clamp_section"/>
<xsl:apply-templates  select="Gnd_pulse_section"/>
</xsl:template>

<xsl:template match="Gnd_pulse_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[GND Pulse Table]</keyword>
<table>
<xsl:call-template name="time_typ_min_max"/>
<xsl:for-each select="Time_plot">
<rowdata><xsl:apply-templates  select="."/></rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>


<xsl:template match="Power_pulse_section">
<keysection>
<xsl:apply-templates  select="Comment"/>
<keyword>[POWER Pulse Table]</keyword>
<table>
<xsl:call-template name="time_typ_min_max"/>
<xsl:for-each select="Time_plot">
<rowdata><xsl:apply-templates  select="."/></rowdata>
</xsl:for-each>
</table>
</keysection>
</xsl:template>

<xsl:template match="Time_plot">
<column width="11"><xsl:value-of select="time/Number"/></column>
<column width="11"><xsl:value-of select="typ/Number"/></column>
<xsl:apply-templates select="min"/>
<xsl:apply-templates select="max"/>
<column><xsl:value-of select="Comment"/></column>
</xsl:template>

<xsl:template name="time_vs_vol_typ_min_max">
<header>
<column><xsl:value-of select="Comment/Comment_char"/></column>
<column width="9">Time</column>
<column width="5">V(typ)</column>
<column width="5">V(min)</column>
<column width="5">V(max)</column>
</header>
</xsl:template>

<xsl:template name="time_typ_min_max">
<header>
<column><xsl:value-of select="Comment/Comment_char"/></column>
<column width="9">time</column>
<column width="5">typ</column>
<column width="5">min</column>
<column width="5">max</column>
</header>
</xsl:template>


</xsl:stylesheet>
