<?xml version="1.0" encoding="UTF-8"?>
<!--
	PrintType	Description
	++++++++	+++++++++
	Brief		Basic parameters only; no analog out, thresholds or events
	Summary	Basic parameters and analog out
	Full			Basic parameters, analog out, thresholds and events
-->
<xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:xsi="http://www.w3.org/2000/10/XMLSchema-instance" xmlns:xsd="http://www.w3.org/2001/XMLSchema" xmlns:Locale="urn:Locale-namespace">
  <xsl:output method="xml" version="1.0" encoding="UTF-8" indent="yes"/>
  <xsl:include href="DefaultPrint-r102.xsl"/>
  <xsl:param name="printtype">Full</xsl:param>
  <xsl:variable name="NativePressureUnits">psi</xsl:variable>
  <xsl:variable name="TheSchema" select="document('AltusA10PDA-Method-r100.xsd')"></xsl:variable>
  <xsl:variable name="LanguageSubfolder" select="Locale:LanguageSubfolder()"/>
  <xsl:variable name="ResourceFile" select="concat($LanguageSubfolder,'\\AltusA10PDA-Resource-r100.xml')"/>
  <xsl:variable name="TheResources" select="document(string($ResourceFile))"></xsl:variable>
  <xsl:template match="WavelengthMode"/>

  <!-- Customize output of Detector Type -->
  <xsl:template match="DetectorType">
    <!--<xsl:call-template name="Emit-Field-Value-Prompt">
      <xsl:with-param name="InputVar" select="name()"/>
      <xsl:with-param name="InputType">String</xsl:with-param>
      <xsl:with-param name="InputPrecision">0</xsl:with-param>
      <xsl:with-param name="InputValue">
        <xsl:choose>
          <xsl:when test=". = 'DetectorType_0'">
            <xsl:value-of select="$TheResources//Enum[@id='DetectorType_0']/@value"/>
          </xsl:when>
          <xsl:when test=". = 'DetectorType_1'">
            <xsl:value-of select="$TheResources//Enum[@id='DetectorType_1']/@value"/>
          </xsl:when>
          <xsl:when test=". = 'DetectorType_2'">
            <xsl:value-of select="$TheResources//Enum[@id='DetectorType_2']/@value"/>
          </xsl:when>
          <xsl:otherwise>
            <xsl:value-of select="$TheResources//Enum[@id='DetectorType_3']/@value"/>
          </xsl:otherwise>
        </xsl:choose>
      </xsl:with-param>
      <xsl:with-param name="InputPrompt">
        <xsl:value-of select="$TheResources//Type[@name='tDetectorType']/@prompt"/>
      </xsl:with-param>
      <xsl:with-param name="InputUnits">None</xsl:with-param>
    </xsl:call-template>-->
  </xsl:template>

  <xsl:variable name="DataMode_Absorbance">
    <xsl:value-of select="$TheResources//Type[@name='tDataMode']/Enum[@id='DataModeAbsorbance_0']/@value"/>
  </xsl:variable>

  <xsl:variable name="DataMode_WaveCompAbsorbance">
    <xsl:value-of select="$TheResources//Type[@name='tDataMode']/Enum[@id='DataModeCompensatedAbsorb_7']/@value"/>
  </xsl:variable>

  <xsl:variable name="DataMode_ModBaselineAbsorbance">
    <xsl:value-of select="$TheResources//Type[@name='tDataMode']/Enum[@id='DataModeModBaselineAbsorb_8']/@value"/>
  </xsl:variable>

  <xsl:variable name="DataMode_Sum">
    <xsl:value-of select="$TheResources//Type[@name='tDataMode']/Enum[@id='DataModeSum_3']/@value"/>
  </xsl:variable>

  <xsl:variable name="DataMode_Difference">
    <xsl:value-of select="$TheResources//Type[@name='tDataMode']/Enum[@id='DataModeDifference_2']/@value"/>
  </xsl:variable>

  <xsl:variable name="DataMode_Ratio">
    <xsl:value-of select="$TheResources//Type[@name='tDataMode']/Enum[@id='DataModeRatio_4']/@value"/>
  </xsl:variable>

  <xsl:variable name="DataMode_Reference">
    <xsl:value-of select="$TheResources//Type[@name='tDataMode']/Enum[@id='DataModeReference_5']/@value"/>
  </xsl:variable>

  <xsl:variable name="DataMode_MaxPlot">
    <xsl:value-of select="$TheResources//Type[@name='tDataMode']/Enum[@id='DataModeMaxPlot_1']/@value"/>
  </xsl:variable>

  <xsl:variable name="WavelengthUnits">
    <xsl:value-of select="$TheResources//Type[@name='tWavelength']/@units"/>
  </xsl:variable>

  <!-- Don't emit 3D Channel Enable -->
  <xsl:template match="//SpectralChannel/Enable"/>

  <xsl:template match="SpectralChannel/Resolution">
    <xsl:call-template name="Emit"/>
  </xsl:template>

  <xsl:template match="EndWavelength"/>

  <xsl:template match="StartWavelength">
    <xsl:variable name="WavelengthRange">
      <xsl:value-of select="concat(.,' ',$WavelengthUnits,' - ',../EndWavelength,' ',$WavelengthUnits)"/>
    </xsl:variable>
    <xsl:call-template name="Emit-Field-Value-Prompt">
      <xsl:with-param name="InputVar" select="Range"/>
      <xsl:with-param name="InputType">String</xsl:with-param>
      <xsl:with-param name="InputPrecision">0</xsl:with-param>
      <xsl:with-param name="InputValue">
        <xsl:value-of select="$WavelengthRange"/>
      </xsl:with-param>
      <xsl:with-param name="InputPrompt">
        <xsl:value-of select="$TheResources//Type[@name='gGlueStrings']/Enum[@id='Range']/@value"/>
      </xsl:with-param>
      <xsl:with-param name="InputUnits">None</xsl:with-param>
    </xsl:call-template>
  </xsl:template>

  <!-- Emit 3D channel parameters only if enabled -->
  <xsl:template match="SpectralChannel">
    <xsl:if test="./Enable = 'true'">
      <xsl:text disable-output-escaping="yes">
				&lt;FieldList&gt;			
			</xsl:text>

      <xsl:element name="Title">
        <xsl:value-of  select="$TheResources//Type[@name='t3DChannel']/@prompt"/>
      </xsl:element>
      <xsl:apply-templates />

      <xsl:text disable-output-escaping="yes">
				&lt;/FieldList&gt;			
			</xsl:text>
    </xsl:if>
  </xsl:template>

  <!-- Don't emit 2D Channel Enable -->
  <xsl:template match="Channel1/Enable|Channel2/Enable|Channel3/Enable|Channel4/Enable|Channel5/Enable|Channel6/Enable|Channel7/Enable|Channel8/Enable"/>

  <xsl:template match="DataMode">
    <xsl:variable name="GlueAt">
      <xsl:value-of select="$TheResources//Type[@name='gGlueStrings']/Enum[@id='GlueAt']/@value"/>
    </xsl:variable>
    <xsl:variable name="GlueOfAUAt">
      <xsl:value-of select="$TheResources//Type[@name='gGlueStrings']/Enum[@id='GlueOfAUAt']/@value"/>
    </xsl:variable>
    <xsl:variable name="WavelengthMode">
      <xsl:choose>
        <xsl:when test=". = 'DataModeAbsorbance_0' or . = $DataMode_Absorbance">
          <xsl:value-of select="concat($DataMode_Absorbance,$GlueAt,../Wavelength1,' ',$WavelengthUnits)"/>
        </xsl:when>
        <xsl:when test=". = 'DataModeCompensatedAbsorb_7' or . = $DataMode_WaveCompAbsorbance">
          <xsl:value-of select="concat($DataMode_WaveCompAbsorbance,$GlueAt,../Wavelength1,' ',$WavelengthUnits)"/>
          <!--<xsl:text>    </xsl:text>
          <xsl:value-of select="$TheResources//Type[@name='tCompensationRef2DParms']/@prompt"/>
          <xsl:text>  </xsl:text>
          <xsl:value-of select="//CompensationRef2D/RefWavelengthStart"/>
          <xsl:text> - </xsl:text>
          <xsl:value-of select="//CompensationRef2D/RefWavelengthEnd"/>
          <xsl:value-of select="$TheResources//Type[@name='tWavelength']/@units"/>-->
        </xsl:when>
        <xsl:when test=". = 'DataModeModBaselineAbsorb_8' or . = $DataMode_ModBaselineAbsorbance">
          <xsl:value-of select="concat($DataMode_ModBaselineAbsorbance,$GlueAt,../Wavelength1,' ',$WavelengthUnits)"/>
        </xsl:when>
        <xsl:when test=". = 'DataModeSum_3' or . = $DataMode_Sum">
          <xsl:value-of select="concat($DataMode_Sum,$GlueOfAUAt,../Wavelength1,' ',$WavelengthUnits,' + ',../Wavelength2,' ',$WavelengthUnits)"/>
        </xsl:when>
        <xsl:when test=". = 'DataModeDifference_2' or . = $DataMode_Difference">
          <xsl:value-of select="concat($DataMode_Difference,$GlueOfAUAt,../Wavelength1,' ',$WavelengthUnits,' - ',../Wavelength2,' ',$WavelengthUnits)"/>
        </xsl:when>
        <xsl:when test=". = 'DataModeRatio_4' or . = $DataMode_Ratio">
          <xsl:value-of select="concat($DataMode_Ratio,$GlueOfAUAt,../Wavelength1,' ',$WavelengthUnits,' / ',../Wavelength2,' ',$WavelengthUnits)"/>
        </xsl:when>
        <xsl:when test=". = 'DataModeMaxPlot_1' or . = $DataMode_MaxPlot">
          <xsl:value-of select="$DataMode_MaxPlot"/>
        </xsl:when>
        <xsl:otherwise>
          <xsl:value-of select="."/>
        </xsl:otherwise>
      </xsl:choose>
    </xsl:variable>
    <xsl:call-template name="Emit-Field-Value-Prompt">
      <xsl:with-param name="InputVar" select="name()"/>
      <xsl:with-param name="InputType">String</xsl:with-param>
      <xsl:with-param name="InputPrecision">0</xsl:with-param>
      <xsl:with-param name="InputValue">
        <xsl:value-of select="$WavelengthMode"/>
      </xsl:with-param>
      <xsl:with-param name="InputPrompt">
        <xsl:value-of  select="$TheResources//Type[@name='tDataMode']/@prompt"/>
      </xsl:with-param>
      <xsl:with-param name="InputUnits">None</xsl:with-param>
    </xsl:call-template>
  </xsl:template>

  <!-- 2D Wavelength1 -->
  <xsl:template match="Wavelength1">
    <!--
		<xsl:if test="../DataMode = $DataMode_Absorbance or ../DataMode = $DataMode_Sum or ../DataMode = $DataMode_Difference or ../DataMode = $DataMode_Ratio">
			<xsl:call-template name="Emit"/>
		</xsl:if>
-->
  </xsl:template>

  <!-- 2D Wavelength2 -->
  <xsl:template match="Wavelength2">
    <!--
		<xsl:if test="../DataMode = $DataMode_Sum or ../DataMode = $DataMode_Difference or ../DataMode = $DataMode_Ratio">
			<xsl:call-template name="Emit"/>
		</xsl:if>
-->
  </xsl:template>

  <!-- 2D Wavelength1 -->
  <xsl:template match="Ratio2DMinimumAU">
    <xsl:if test="../DataMode = 'DataModeRatio_4' or ../DataMode = $DataMode_Ratio">
      <xsl:call-template name="Emit"/>
    </xsl:if>
  </xsl:template>

  <!-- 2D Wavelength1 -->
  <xsl:template match="Channel1/Resolution|Channel2/Resolution|Channel3/Resolution|Channel4/Resolution|Channel5/Resolution|Channel6/Resolution|Channel7/Resolution|Channel8/Resolution">
    <xsl:if test="../DataMode = 'DataModeAbsorbance_0' or ../DataMode = $DataMode_Absorbance">
      <xsl:call-template name="Emit"/>
    </xsl:if>
    <xsl:if test="../DataMode = 'DataModeModBaselineAbsorb_8' or ../DataMode = $DataMode_ModBaselineAbsorbance">
      <xsl:call-template name="Emit"/>
    </xsl:if>
    <!--    <xsl:if test="../DataMode = 'DataModeMaxPlot_1' or ../DataMode = $DataMode_MaxPlot">
      <xsl:call-template name="Emit"/>
    </xsl:if>-->

    <xsl:if test="../DataMode = 'DataModeCompensatedAbsorb_7' or ../DataMode = $DataMode_WaveCompAbsorbance">
      <xsl:call-template name="Emit"/>

      <!--  <xsl:call-template name="Emit-Field-Value-Prompt">
        <xsl:with-param name="InputVar">CompWavelength</xsl:with-param>
        <xsl:with-param name="InputType">Integer</xsl:with-param>
        <xsl:with-param name="InputPrecision">0</xsl:with-param>
        <xsl:with-param name="InputValue">
          <xsl:value-of select="//Advanced2D/CompWavelength"/>
        </xsl:with-param>
        <xsl:with-param name="InputPrompt">
          <xsl:value-of  select="$TheResources//Type[@name='tCompWavelengthUPLC']/@prompt"/>
        </xsl:with-param>
        <xsl:with-param name="InputUnits">
          <xsl:value-of select="$WavelengthUnits"/>
        </xsl:with-param>
      </xsl:call-template>

      <xsl:call-template name="Emit-Field-Value-Prompt">
        <xsl:with-param name="InputVar">CompResolution</xsl:with-param>
        <xsl:with-param name="InputType">Float</xsl:with-param>
        <xsl:with-param name="InputPrecision">1</xsl:with-param>
        <xsl:with-param name="InputValue">
          <xsl:value-of select="//Advanced2D/CompResolution"/>
        </xsl:with-param>
        <xsl:with-param name="InputPrompt">
          <xsl:value-of  select="$TheResources//Type[@name='tCompResolution']/@prompt"/>
        </xsl:with-param>
        <xsl:with-param name="InputUnits">
          <xsl:value-of select="$WavelengthUnits"/>
        </xsl:with-param>
      </xsl:call-template>-->
    </xsl:if>
  </xsl:template>

  <!-- Emit 2D channel parameters only if enabled -->
  <xsl:template match="Channel1|Channel2|Channel3|Channel4|Channel5|Channel6|Channel7|Channel8">
    <xsl:if test="./Enable = 'true'">
      <xsl:text disable-output-escaping="yes">
				&lt;FieldList&gt;			
			</xsl:text>

      <xsl:variable name="ChannelName">
        <xsl:value-of select="name()"/>
      </xsl:variable>
      <xsl:element name="Title">
        <xsl:value-of  select="$TheResources//Type[@name='tChannel']/Prompt[@id=$ChannelName]/@value"/>
      </xsl:element>
      <xsl:apply-templates />

      <xsl:text disable-output-escaping="yes">
				&lt;/FieldList&gt;			
			</xsl:text>
    </xsl:if>
  </xsl:template>

  <xsl:template match="RatioFS|UnitsFS">
    <xsl:variable name="DataMode">
      <xsl:choose>
        <xsl:when test="../ChannelID = '1'">
          <xsl:value-of select="//Channel1/DataMode"/>
        </xsl:when>
        <xsl:when test="../ChannelID = '2'">
          <xsl:value-of select="//Channel2/DataMode"/>
        </xsl:when>
        <xsl:when test="../ChannelID = '3'">
          <xsl:value-of select="//Channel3/DataMode"/>
        </xsl:when>
        <xsl:when test="../ChannelID = '4'">
          <xsl:value-of select="//Channel4/DataMode"/>
        </xsl:when>
        <xsl:when test="../ChannelID = '5'">
          <xsl:value-of select="//Channel5/DataMode"/>
        </xsl:when>
        <xsl:when test="../ChannelID = '6'">
          <xsl:value-of select="//Channel6/DataMode"/>
        </xsl:when>
        <xsl:when test="../ChannelID = '7'">
          <xsl:value-of select="//Channel7/DataMode"/>
        </xsl:when>
        <xsl:when test="../ChannelID = '8'">
          <xsl:value-of select="//Channel8/DataMode"/>
        </xsl:when>
      </xsl:choose>
    </xsl:variable>
    <xsl:choose>
      <xsl:when test="$DataMode = 'DataModeRatio_4' and name() = 'RatioFS'">
        <xsl:call-template name="Emit"/>
      </xsl:when>
      <xsl:when test="$DataMode != 'DataModeRatio_4' and name() = 'UnitsFS'">
        <xsl:call-template name="Emit"/>
      </xsl:when>
    </xsl:choose>
  </xsl:template>

  <!--   These parameters are emitted per channel.  See template above for DataMode.-->

<xsl:template match="CompensationRef2D">
    <xsl:text disable-output-escaping="yes">
				&lt;FieldList&gt;			
    </xsl:text>

      <xsl:element name="Title">
        <xsl:value-of  select="$TheResources//Type[@name='tCompensationRef2DParms']/@prompt"/>
      </xsl:element>
      <xsl:apply-templates />

      <xsl:text disable-output-escaping="yes">
				&lt;/FieldList&gt;			
			</xsl:text>
  </xsl:template>

  <!--  
  <xsl:template match="RefWavelengthEnd"/>

  <xsl:template match="RefWavelengthStart">
    <xsl:variable name="WavelengthRange">
      <xsl:value-of select="concat(.,' ',$WavelengthUnits,' - ',../RefWavelengthEnd,' ',$WavelengthUnits)"/>
    </xsl:variable>
    <xsl:call-template name="Emit-Field-Value-Prompt">
      <xsl:with-param name="InputVar" select="Range"/>
      <xsl:with-param name="InputType">String</xsl:with-param>
      <xsl:with-param name="InputPrecision">0</xsl:with-param>
      <xsl:with-param name="InputValue">
        <xsl:value-of select="$WavelengthRange"/>
      </xsl:with-param>
      <xsl:with-param name="InputPrompt">
        <xsl:value-of select="$TheResources//Type[@name='gGlueStrings']/Enum[@id='Range']/@value"/>
      </xsl:with-param>
      <xsl:with-param name="InputUnits">None</xsl:with-param>
    </xsl:call-template>
  </xsl:template>
-->

  <!-- Exclude analog channels from Brief -->
  <xsl:template match="Analog1|Analog2">
    <xsl:if test="$printtype != 'Brief' and ./ChannelID != '0'">
      <xsl:text disable-output-escaping="yes">
				&lt;FieldList&gt;			
			</xsl:text>

      <xsl:variable name="AnalogName">
        <xsl:value-of select="name()"/>
      </xsl:variable>
      <xsl:element name="Title">
        <xsl:value-of  select="$TheResources//Type[@name='tAnalog']/Prompt[@id=$AnalogName]/@value"/>
      </xsl:element>
      <xsl:apply-templates />

      <xsl:text disable-output-escaping="yes">
				&lt;/FieldList&gt;			
			</xsl:text>
    </xsl:if>
  </xsl:template>

  <xsl:template match="Level">
    <xsl:variable name="DataMode">
      <xsl:choose>
        <xsl:when test="../Channel = '1'">
          <xsl:value-of select="//Channel1/DataMode"/>
        </xsl:when>
        <xsl:when test="../Channel = '2'">
          <xsl:value-of select="//Channel2/DataMode"/>
        </xsl:when>
        <xsl:when test="../Channel = '3'">
          <xsl:value-of select="//Channel3/DataMode"/>
        </xsl:when>
        <xsl:when test="../Channel = '4'">
          <xsl:value-of select="//Channel4/DataMode"/>
        </xsl:when>
        <xsl:when test="../Channel = '5'">
          <xsl:value-of select="//Channel5/DataMode"/>
        </xsl:when>
        <xsl:when test="../Channel = '6'">
          <xsl:value-of select="//Channel6/DataMode"/>
        </xsl:when>
        <xsl:when test="../Channel = '7'">
          <xsl:value-of select="//Channel7/DataMode"/>
        </xsl:when>
        <xsl:when test="../Channel = '8'">
          <xsl:value-of select="//Channel8/DataMode"/>
        </xsl:when>
      </xsl:choose>
    </xsl:variable>

    <xsl:call-template name="Emit-Field-Value-Prompt">
      <xsl:with-param name="InputVar" select="name()"/>
      <xsl:with-param name="InputType">String</xsl:with-param>
      <xsl:with-param name="InputPrecision">0</xsl:with-param>
      <xsl:with-param name="InputValue" select="."/>
      <xsl:with-param name="InputPrompt">
        <xsl:value-of  select="$TheResources//Type[@name='tThresholdLevel']/@prompt"/>
      </xsl:with-param>
      <xsl:with-param name="InputUnits">
        <xsl:choose>
          <xsl:when test="$DataMode = $DataMode_Absorbance or $DataMode = $DataMode_Sum or $DataMode = $DataMode_Difference">
            <xsl:value-of select="$TheResources//Type[@name='tThresholdLevel']/Units[@id='AbsorbanceThreshold']/@value"/>
          </xsl:when>
          <xsl:when test="$DataMode = $DataMode_Reference">
            <xsl:value-of select="$TheResources//Type[@name='tThresholdLevel']/Units[@id='EnergyThreshold']/@value"/>
          </xsl:when>
        </xsl:choose>
      </xsl:with-param>
    </xsl:call-template>

  </xsl:template>

  <!-- Exclude thresholds unless printtype is Full and threshold is enabled -->
  <xsl:template match="Threshold1|Threshold2">
    <xsl:if test="($printtype = 'Full' or $printtype = 'Plain Text') and ./Channel != '0'">
      <xsl:text disable-output-escaping="yes">
				&lt;FieldList&gt;			
			</xsl:text>

      <xsl:variable name="ThresholdName">
        <xsl:value-of select="name()"/>
      </xsl:variable>
      <xsl:element name="Title">
        <xsl:value-of  select="$TheResources//Type[@name='tThreshold']/Prompt[@id=$ThresholdName]/@value"/>
      </xsl:element>

      <xsl:apply-templates/>

      <xsl:text disable-output-escaping="yes">
				&lt;/FieldList&gt;			
			</xsl:text>
    </xsl:if>
  </xsl:template>

  <xsl:template match="Interpolate656">
      <xsl:call-template name="Emit-Field-Value-Prompt">
        <xsl:with-param name="InputVar" select="name()"/>
        <xsl:with-param name="InputType">String</xsl:with-param>
        <xsl:with-param name="InputPrecision">0</xsl:with-param>
        <xsl:with-param name="InputValue">
          <xsl:choose>
            <xsl:when test=". = 'true'">
              <xsl:value-of select="$TheResources//Enum[@id='BooleanYes_1A']/@value"/>
            </xsl:when>
            <xsl:otherwise>
              <xsl:value-of select="$TheResources//Enum[@id='BooleanNo_0A']/@value"/>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:with-param>
        <xsl:with-param name="InputPrompt">
          <xsl:value-of select="$TheResources//Type[@name='tInterpolate656']/@prompt"/>
        </xsl:with-param>
        <xsl:with-param name="InputUnits">None</xsl:with-param>
      </xsl:call-template>
  </xsl:template>

  <xsl:template match="Interpolate370">
      <xsl:call-template name="Emit-Field-Value-Prompt">
        <xsl:with-param name="InputVar" select="name()"/>
        <xsl:with-param name="InputType">String</xsl:with-param>
        <xsl:with-param name="InputPrecision">0</xsl:with-param>
        <xsl:with-param name="InputValue">
          <xsl:choose>
            <xsl:when test=". = 'true'">
              <xsl:value-of  select="$TheResources//Enum[@id='BooleanYes_1A']/@value"/>
            </xsl:when>
            <xsl:otherwise>
              <xsl:value-of  select="$TheResources//Enum[@id='BooleanNo_0A']/@value"/>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:with-param>
        <xsl:with-param name="InputPrompt">
          <xsl:value-of  select="$TheResources//Type[@name='tInterpolate370']/@prompt"/>
        </xsl:with-param>
        <xsl:with-param name="InputUnits">None</xsl:with-param>
      </xsl:call-template>
  </xsl:template>

  <!-- Don't emit event table if brief or summary report is requested -->
  <xsl:template match="EventTable">
    <xsl:if test="$printtype = 'Full' or $printtype = 'Plain Text'">
      <xsl:if test="count(EventRow) > 0">
        <xsl:call-template name="Emit"/>
      </xsl:if>
    </xsl:if>
  </xsl:template>

  <!-- Customize text for boolean On/Off at end of FieldList -->
  <xsl:template match="Lamp">
    <xsl:call-template name="Emit-Field-Value-Prompt">
      <xsl:with-param name="InputVar" select="name()"/>
      <xsl:with-param name="InputType">String</xsl:with-param>
      <xsl:with-param name="InputPrecision">0</xsl:with-param>
      <xsl:with-param name="InputValue">
        <xsl:choose>
          <xsl:when test=". = 'true'">
            <xsl:value-of  select="$TheResources//Enum[@id='BooleanOn_1B']/@value"/>
          </xsl:when>
          <xsl:otherwise>
            <xsl:value-of  select="$TheResources//Enum[@id='BooleanOff_0B']/@value"/>
          </xsl:otherwise>
        </xsl:choose>
      </xsl:with-param>
      <xsl:with-param name="InputPrompt">
        <xsl:value-of  select="$TheResources//Type[@name='tLamp']/@prompt"/>
      </xsl:with-param>
      <xsl:with-param name="InputUnits">None</xsl:with-param>
    </xsl:call-template>
  </xsl:template>

  <!-- Do not expose filter type since Hamming is always used -->
  <xsl:template match="FilterType">
  </xsl:template>

  <!-- Customize text for boolean Yes/No before end of FieldList -->
  <xsl:template match="AutoZeroInjectStart">
    <xsl:call-template name="Emit-Field-Value-Prompt">
      <xsl:with-param name="InputVar" select="name()"/>
      <xsl:with-param name="InputType">String</xsl:with-param>
      <xsl:with-param name="InputPrecision">0</xsl:with-param>
      <xsl:with-param name="InputValue">
        <xsl:choose>
          <xsl:when test=". = 'true'">
            <xsl:value-of  select="$TheResources//Enum[@id='BooleanYes_1A']/@value"/>
          </xsl:when>
          <xsl:otherwise>
            <xsl:value-of  select="$TheResources//Enum[@id='BooleanNo_0A']/@value"/>
          </xsl:otherwise>
        </xsl:choose>
      </xsl:with-param>
      <xsl:with-param name="InputPrompt">
        <xsl:value-of  select="$TheResources//Type[@name='tAutoZeroInjectStart']/@prompt"/>
      </xsl:with-param>
      <xsl:with-param name="InputUnits">None</xsl:with-param>
    </xsl:call-template>
  </xsl:template>

  <!-- Customize text for boolean Yes/No before end of FieldList -->
  <xsl:template match="RunEvents">
    <xsl:if test="count(//EventTable/EventRow) > 0">
      <xsl:call-template name="Emit-Field-Value-Prompt">
        <xsl:with-param name="InputVar" select="name()"/>
        <xsl:with-param name="InputType">String</xsl:with-param>
        <xsl:with-param name="InputPrecision">0</xsl:with-param>
        <xsl:with-param name="InputValue">
          <xsl:choose>
            <xsl:when test=". = 'true'">
              <xsl:value-of  select="$TheResources//Enum[@id='BooleanYes_1A']/@value"/>
            </xsl:when>
            <xsl:otherwise>
              <xsl:value-of  select="$TheResources//Enum[@id='BooleanNo_0A']/@value"/>
            </xsl:otherwise>
          </xsl:choose>
        </xsl:with-param>
        <xsl:with-param name="InputPrompt">
          <xsl:value-of  select="$TheResources//Type[@name='tRunEvents']/@prompt"/>
        </xsl:with-param>
        <xsl:with-param name="InputUnits">None</xsl:with-param>
      </xsl:call-template>
    </xsl:if>
  </xsl:template>

  <!-- Customize text for boolean Yes/No before end of FieldList -->
  <xsl:template match="ChartMarkEnable">
    <xsl:call-template name="Emit-Field-Value-Prompt">
      <xsl:with-param name="InputVar" select="name()"/>
      <xsl:with-param name="InputType">String</xsl:with-param>
      <xsl:with-param name="InputPrecision">0</xsl:with-param>
      <xsl:with-param name="InputValue">
        <xsl:choose>
          <xsl:when test=". = 'true'">
            <xsl:value-of  select="$TheResources//Enum[@id='BooleanYes_1A']/@value"/>
          </xsl:when>
          <xsl:otherwise>
            <xsl:value-of  select="$TheResources//Enum[@id='BooleanNo_0A']/@value"/>
          </xsl:otherwise>
        </xsl:choose>
      </xsl:with-param>
      <xsl:with-param name="InputPrompt">
        <xsl:value-of  select="$TheResources//Type[@name='tChartMarkEnable']/@prompt"/>
      </xsl:with-param>
      <xsl:with-param name="InputUnits">None</xsl:with-param>
    </xsl:call-template>
  </xsl:template>

  <!-- Exclude absorbance offset from output -->
  <xsl:template match="AbsorbanceOffset">
  </xsl:template>

  <!-- Exclude autozero event or key  from output -->
  <xsl:template match="AutoZeroEventOrKey">
  </xsl:template>

  <xsl:template match="DataRate|TimeConstant|ExposureTime">
    <xsl:call-template name="Emit"/>
  </xsl:template>

  <xsl:template match="InitialSwitch1">
    <xsl:call-template name="Emit"/>
  </xsl:template>

  <xsl:template match="InitialSwitch2">
    <xsl:if test="//SupportsReducedIO = 'false'">
      <xsl:call-template name="Emit"/>
    </xsl:if>
  </xsl:template>

  <xsl:template match="Description">
    <xsl:if test="string-length(.) > 0">
      <xsl:call-template name="Emit"/>
    </xsl:if>
  </xsl:template>

  <xsl:template match="AltusA10PDAMethod">
    <xsl:element name="AltusA10PDAMethod">
      <xsl:apply-templates select="RunTime"/>
      <xsl:apply-templates select="Description"/>
      <xsl:apply-templates select="DetectorType"/>
      <xsl:apply-templates select="Lamp"/>
      <xsl:apply-templates select="DataRate"/>
      <xsl:apply-templates select="TimeConstant"/>
      <xsl:apply-templates select="ExposureTime"/>
      <xsl:apply-templates select="Interpolate656"/>
      <xsl:apply-templates select="Interpolate370"/>
      <xsl:apply-templates select="SpectralChannel"/>
      <xsl:apply-templates select="Channel1"/>
      <xsl:apply-templates select="Channel2"/>
      <xsl:apply-templates select="Channel3"/>
      <xsl:apply-templates select="Channel4"/>
      <xsl:apply-templates select="Channel5"/>
      <xsl:apply-templates select="Channel6"/>
      <xsl:apply-templates select="Channel7"/>
      <xsl:apply-templates select="Channel8"/>
      <xsl:apply-templates select="CompensationRef2D"/>
      <xsl:apply-templates select="Analog1"/>
      <xsl:apply-templates select="Analog2"/>
      <xsl:apply-templates select="InitialSwitch1"/>
      <xsl:apply-templates select="InitialSwitch2"/>
      <xsl:apply-templates select="Threshold1"/>
      <xsl:apply-templates select="Threshold2"/>
      <xsl:apply-templates select="RunEvents"/>
      <xsl:apply-templates select="EventTable"/>
    </xsl:element>
  </xsl:template>


</xsl:stylesheet>

