SourceCode/PROMS/fmtxml/TranslateFMT.XSL
Kathy 013ff35102 Added wpb22 format & document styles & wpb20 document styles to improve Background document support
Added LimitWidToPageWid so that text does not go past pagewidth into right margin
Various background format improvements, i.e. headers, tabs, continue messages, and text xoffsets/widths
2014-03-18 12:11:22 +00:00

3230 lines
204 KiB
Plaintext

<?xml version="1.0" encoding="utf-16"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" encoding="utf-16" omit-xml-declaration="yes" indent="yes"/>
<xsl:preserve-space elements="BXURC BXHorz BXULC BXVert BXMLS BXMRS BXLRC BXLLC BXMID BXLHorz BXUMID BXLMID" />
<xsl:strip-space elements="*" />
<xsl:template match="/">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="FormatData">
<FormatData>
<xsl:apply-templates select="Name|PurchaseOptions|PSI|TPL|XtraFlags|FontData|Symbols"/>
<xsl:apply-templates select="EditData|PrintData|ProcData|SectData|StepData|BoxData|TransData|ROData"/>
</FormatData>
</xsl:template>
<xsl:template match="Name">
<xsl:attribute name="Name">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="PurchaseOptions">
<xsl:attribute name="PurchaseOptions">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="PSI">
<xsl:attribute name="PSI">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="TPL">
<xsl:attribute name="TPL">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="FontData">
<xsl:if test="string-length(./FontFamily)+string-length(./FontSize)+string-length(./FontStyle)>0">
<Font>
<xsl:if test="string-length(./FontFamily)">
<xsl:attribute name="Family">
<xsl:value-of select="./FontFamily"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./FontSize)">
<xsl:attribute name="Size">
<xsl:value-of select="./FontSize"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./FontStyle)">
<xsl:attribute name="Style">
<xsl:value-of select="./FontStyle"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./CPI)">
<xsl:attribute name="CPI">
<xsl:value-of select="./CPI"/>
</xsl:attribute>
</xsl:if>
</Font>
</xsl:if>
</xsl:template>
<xsl:template match="Symbols">
<Symbols>
<xsl:apply-templates select="Symbol"/>
</Symbols>
</xsl:template>
<xsl:template match="Symbol">
<Symbol>
<xsl:apply-templates select="Unicode|Desc"/>
</Symbol>
</xsl:template>
<xsl:template match="Unicode">
<xsl:attribute name="Unicode">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="Desc">
<xsl:attribute name="Desc">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="EditData">
<xsl:if test="string-length(./EMode)+PromptForCautionType!='null'">
<EditData>
<xsl:attribute name="EMode">
<xsl:value-of select="./EMode"/>
</xsl:attribute>
<xsl:if test="PromptForCautionType!='null'">
<xsl:attribute name="PromptForCautionType">
<xsl:value-of select="PromptForCautionType"/>
</xsl:attribute>
</xsl:if>
</EditData>
</xsl:if>
</xsl:template>
<xsl:template match="PrintData">
<PrintData>
<xsl:apply-templates select="DoPrnDrvrAdjusts|TopOfPageThing|DoRevDate|AlternateFoldoutPages|AlternateFloatingFoldout|SectionLevelFoldouts|RevDateWithForwardSlash|SpecialStepsFoldout|AccessoryDocsInDuplex|AllowDuplex|FoldoutsInDuplex|PagelistChangeIDsWithCommas|ProcDescrList|VersionIdText"/>
</PrintData>
</xsl:template>
<xsl:template match="DoPrnDrvrAdjusts">
<xsl:if test=".!=-12345">
<xsl:attribute name="DoPrnDrvrAdjusts">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TopOfPageThing">
<xsl:if test=".!='null'">
<xsl:attribute name="TopOfPageThing">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="DoRevDate">
<xsl:if test=".!='null'">
<xsl:attribute name="DoRevDate">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AlternateFoldoutPages">
<xsl:if test=".!='null'">
<xsl:attribute name="AlternateFoldoutPages">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AlternateFloatingFoldout">
<xsl:if test=".!='null'">
<xsl:attribute name="AlternateFloatingFoldout">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SectionLevelFoldouts">
<xsl:if test=".!='null'">
<xsl:attribute name="SectionLevelFoldouts">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="RevDateWithForwardSlash">
<xsl:if test=".!='null'">
<xsl:attribute name="RevDateWithForwardSlash">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SpecialStepsFoldout">
<xsl:if test=".!='null'">
<xsl:attribute name="SpecialStepsFoldout">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AccessoryDocsInDuplex">
<xsl:if test=".!='null'">
<xsl:attribute name="AccessoryDocsInDuplex">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AllowDuplex">
<xsl:if test=".!='null'">
<xsl:attribute name="AllowDuplex">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="FoldoutsInDuplex">
<xsl:if test=".!='null'">
<xsl:attribute name="FoldoutsInDuplex">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PagelistChangeIDsWithCommas">
<xsl:if test=".!='null'">
<xsl:attribute name="PagelistChangeIDsWithCommas">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ProcDescrList">
<ProcDescrList>
<xsl:apply-templates select="ProcDescr"/>
</ProcDescrList>
</xsl:template>
<xsl:template match="ProcDescr">
<ProcDescr>
<xsl:apply-templates select="MatchProcNumber|ProcDescr1|ProcDescr2"/>
</ProcDescr>
</xsl:template>
<xsl:template match="MatchProcNumber">
<xsl:if test="string-length()">
<xsl:attribute name="MatchProcNumber">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ProcDescr1">
<xsl:if test="string-length()">
<xsl:attribute name="ProcDescr1">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ProcDescr2">
<xsl:if test="string-length()">
<xsl:attribute name="ProcDescr2">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="VersionIdText">
<VersionIdText>
<xsl:apply-templates/>
</VersionIdText>
</xsl:template>
<xsl:template match="ProcData">
<ProcData>
<xsl:apply-templates select="TitleLength|CoverTitleLength|ProcForeColor|ProcBackColor|CapitalizeTitle|PSInfFile|ProcedureSuffixFlags"/>
<xsl:apply-templates select="ChangeStyleForEverySection|PrintNoTitle|CountFoldoutPages|ProcedureSuffix|NotesToFootnotes"/>
<xsl:apply-templates select="Psi|ChangeBarData|CheckOffData"/>
</ProcData>
</xsl:template>
<xsl:template match="NotesToFootnotes">
<xsl:if test=".!='null'">
<xsl:attribute name="NotesToFootnotes">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PSInfFile">
<xsl:if test=".!=-12345">
<xsl:attribute name="PSInfFile">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ProcedureSuffixFlags">
<xsl:if test=".!=-12345">
<xsl:attribute name="ProcedureSuffixFlags">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TitleLength">
<xsl:if test=".!=-12345">
<xsl:attribute name="TitleLength">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CoverTitleLength">
<xsl:if test=".!=-12345">
<xsl:attribute name="CoverTitleLength">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match ="ProcForeColor">
<xsl:if test="string-length()">
<xsl:attribute name="ForeColor">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match ="ProcBackColor">
<xsl:if test="string-length()">
<xsl:attribute name="BackColor">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CapitalizeTitle">
<xsl:if test=".!='null'">
<xsl:attribute name="CapitalizeTitle">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ChangeStyleForEverySection">
<xsl:if test=".!='null'">
<xsl:attribute name="ChangeStyleForEverySection">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PrintNoTitle">
<xsl:if test=".!='null'">
<xsl:attribute name="PrintNoTitle">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CountFoldoutPages">
<xsl:if test=".!='null'">
<xsl:attribute name="CountFoldoutPages">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ProcedureSuffix">
<ProcedureSuffix>
<xsl:apply-templates/>
</ProcedureSuffix>
</xsl:template>
<xsl:template match="Psi">
<xsl:if test="string-length(./Caption)">
<PSI>
<xsl:apply-templates select="x|y|Caption|ButtonsOnBottom|font|Labels|Fields"/>
</PSI>
</xsl:if>
</xsl:template>
<xsl:template match="x">
<xsl:if test=".!=-12345">
<xsl:attribute name="x">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="y">
<xsl:if test=".!=-12345">
<xsl:attribute name="y">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Caption">
<xsl:if test=".!='null'">
<xsl:attribute name="Caption">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ButtonsOnBottom">
<xsl:if test=".!='null'">
<xsl:attribute name="ButtonsOnBottom">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="font">
<xsl:if test=".!='null'">
<xsl:attribute name="font">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match ="Labels">
<xsl:apply-templates select="PsiLabel"/>
</xsl:template>
<xsl:template match ="Fields">
<xsl:apply-templates select="PsiField"/>
</xsl:template>
<xsl:template match="PsiLabel">
<xsl:if test ="string-length(./text)">
<Label>
<xsl:apply-templates select="text|Justify|x|y|width|height"/>
</Label>
</xsl:if>
</xsl:template>
<xsl:template match="PsiField">
<xsl:if test ="string-length(./name)">
<Field>
<xsl:apply-templates select="name|type|text|Length|x|y|width|height"/>
</Field>
</xsl:if>
</xsl:template>
<xsl:template match="name">
<xsl:attribute name="name">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="type">
<xsl:if test=".!=-12345">
<xsl:attribute name="type">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Length">
<xsl:if test=".!=-12345">
<xsl:attribute name="Length">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="width">
<xsl:if test=".!=-12345">
<xsl:attribute name="width">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="height">
<xsl:if test=".!=-12345">
<xsl:attribute name="height">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="text">
<xsl:if test=".!=-12345">
<xsl:attribute name="text">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Justify">
<xsl:if test=".!=-12345">
<xsl:attribute name="Justify">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ChangeBarData">
<ChangeBarData>
<xsl:apply-templates select="DefaultCBLoc|ChangeBarMessage|FixedChangeColumn|FixedAERChangeColumn|ChangeSummaryStyle|ChangeBarStyle|CondensedChangeBar|AbsoluteFixedChangeColumn|ContinuousChangeBars|ChgBarMessageFromEdit|MultipleChangeIds|ChangeBarToRNOSep|ChangeBarsOnLinkedText|SpecialChangeBar"/>
</ChangeBarData>
</xsl:template>
<xsl:template match="DefaultCBLoc">
<xsl:if test="string-length()">
<xsl:attribute name="DefaultCBLoc">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SpecialChangeBar">
<xsl:if test="string-length()">
<xsl:attribute name="SpecialChangeBar">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ChangeBarMessage">
<xsl:if test="string-length()">
<xsl:attribute name="ChangeBarMessage">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="FixedChangeColumn">
<xsl:if test=".!=-12345">
<xsl:attribute name="FixedChangeColumn">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="FixedAERChangeColumn">
<xsl:if test=".!=-12345">
<xsl:attribute name="FixedAERChangeColumn">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ChangeSummaryStyle">
<xsl:if test=".!=-12345">
<xsl:attribute name="ChangeSummaryStyle">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ChangeBarStyle">
<xsl:if test=".!=-12345">
<xsl:attribute name="ChangeBarStyle">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CondensedChangeBar">
<xsl:if test=".!='null'">
<xsl:attribute name="CondensedChangeBar">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AbsoluteFixedChangeColumn">
<xsl:if test=".!='null'">
<xsl:attribute name="AbsoluteFixedChangeColumn">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ContinuousChangeBars">
<xsl:if test=".!='null'">
<xsl:attribute name="ContinuousChangeBars">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ChgBarMessageFromEdit">
<xsl:if test=".!='null'">
<xsl:attribute name="ChgBarMessageFromEdit">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="MultipleChangeIds">
<xsl:if test=".!='null'">
<xsl:attribute name="MultipleChangeIds">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ChangeBarToRNOSep">
<xsl:if test=".!='null'">
<xsl:attribute name="ChangeBarToRNOSep">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ChangeBarsOnLinkedText">
<xsl:if test=".!='null'">
<xsl:attribute name="ChangeBarsOnLinkedText">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CheckOffData">
<CheckOffData>
<xsl:apply-templates select="Menu|AllowSectEdit|AllowStepEdit|UseCheckOffsIn|CheckOffAdjustment|XLocation|RelXLocation|DropCheckOff|CheckOffOnHLSOnly|SkipSpaces|LayoutList|CheckOffHeaderList|CheckOffList|CheckoffOnSubStepsOnly"/>
</CheckOffData>
</xsl:template>
<xsl:template match="Menu">
<xsl:if test=".!='null'">
<xsl:attribute name="Menu">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AllowSectEdit">
<xsl:if test=".!='null'">
<xsl:attribute name="AllowSectEdit">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AllowStepEdit">
<xsl:if test=".!='null'">
<xsl:attribute name="AllowStepEdit">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseCheckOffsIn">
<xsl:if test=".!=-12345">
<xsl:attribute name="UseCheckOffsIn">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CheckOffAdjustment">
<xsl:if test=".!=-12345">
<xsl:attribute name="CheckOffAdjustment">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="XLocation">
<xsl:if test=".!=-12345">
<xsl:attribute name="XLocation">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="RelXLocation">
<xsl:if test=".!='null'">
<xsl:attribute name="RelXLocation">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="DropCheckOff">
<xsl:if test=".!='null'">
<xsl:attribute name="DropCheckOff">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CheckOffOnHLSOnly">
<xsl:if test=".!='null'">
<xsl:attribute name="CheckOffOnHLSOnly">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SkipSpaces">
<xsl:if test=".!='null'">
<xsl:attribute name="SkipSpaces">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CheckoffOnSubStepsOnly">
<xsl:if test=".!='null'">
<xsl:attribute name="CheckoffOnSubStepsOnly">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LayoutList">
<LayoutList>
<xsl:apply-templates select="Absolute"/>
</LayoutList>
</xsl:template>
<xsl:template match="Absolute">
<xsl:if test="./Absolute!=-12345">
<Absolute>
<xsl:attribute name="RnoLevel">
<xsl:value-of select="./RnoLevel"/>
</xsl:attribute>
<xsl:attribute name="Column">
<xsl:value-of select="./Column"/>
</xsl:attribute>
</Absolute>
</xsl:if>
</xsl:template>
<xsl:template match="CheckOffHeaderList">
<CheckOffHeaderList>
<xsl:apply-templates select="CheckOffHeader"/>
</CheckOffHeaderList>
</xsl:template>
<xsl:template match="CheckOffHeader">
<CheckOffHeader>
<xsl:apply-templates select="CheckOffHeading"/>
</CheckOffHeader>
</xsl:template>
<xsl:template match="CheckOffHeading">
<xsl:if test="string-length()">
<xsl:attribute name="Index">
<xsl:value-of select="../Index"/>
</xsl:attribute>
<xsl:attribute name="CheckOffHeading">
<xsl:value-of select="."/>
</xsl:attribute>
<xsl:if test="string-length(../Font/FontFamily)+string-length(../Font/FontSize)+string-length(../Font/FontStyle)>0">
<Font>
<xsl:if test="string-length(../Font/FontFamily)">
<xsl:attribute name="Family">
<xsl:value-of select="../Font/FontFamily"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(../Font/FontSize)">
<xsl:attribute name="Size">
<xsl:value-of select="../Font/FontSize"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(../Font/FontStyle)">
<xsl:attribute name="Style">
<xsl:value-of select="../Font/FontStyle"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(../Font/CPI)">
<xsl:attribute name="CPI">
<xsl:value-of select="../Font/CPI"/>
</xsl:attribute>
</xsl:if>
</Font>
</xsl:if>
</xsl:if>
</xsl:template>
<xsl:template match="CheckOffList">
<CheckOffList>
<xsl:apply-templates select="CheckOff"/>
</CheckOffList>
</xsl:template>
<xsl:template match="CheckOff">
<xsl:if test="string-length(MenuItem)">
<CheckOff>
<xsl:attribute name="Index">
<xsl:value-of select="./Index"/>
</xsl:attribute>
<xsl:if test="UIMark!=123">
<xsl:attribute name="UIMark">
<xsl:value-of select="./UIMark"/>
</xsl:attribute>
</xsl:if>
<xsl:attribute name="MenuItem">
<xsl:value-of select="./MenuItem"/>
</xsl:attribute>
<xsl:if test ="string-length(ExcludeInSectMenu)">
<xsl:attribute name="ExcludeInSectMenu">
<xsl:value-of select="./ExcludeInSectMenu"/>
</xsl:attribute>
</xsl:if>
<xsl:if test ="string-length(NotOnEmpty)">
<xsl:attribute name="NotOnEmpty">
<xsl:value-of select="./NotOnEmpty"/>
</xsl:attribute>
</xsl:if>
<xsl:if test ="string-length(Macro)">
<xsl:attribute name="Macro">
<xsl:value-of select="./Macro"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="CheckOffWidAdjust!=-12345">
<xsl:attribute name="CheckOffWidAdjust">
<xsl:value-of select="./CheckOffWidAdjust"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="CheckOffXtraLines!=-12345">
<xsl:attribute name="CheckOffXtraLines">
<xsl:value-of select="./CheckOffXtraLines"/>
</xsl:attribute>
</xsl:if>
</CheckOff>
</xsl:if>
</xsl:template>
<xsl:template match="SectData">
<SectData>
<xsl:apply-templates select="SectionTitleLength|SectForeColor|SectBackColor|MetaSectEndMessage|ReadOnlyTypeInContMsg|ReplaceWordsInROs|UseMetaSections|NonEditableSteps|SearchAllReplaceWords|SecTitleContinue|ConvertCaretToDelta|TurnOffReplaceWords"/>
<xsl:apply-templates select="SectionNumber|SectionHeader|StepSectionData|AccSectionData|MetaSectionData|ReplaceStrData"/>
</SectData>
</xsl:template>
<xsl:template match="SectionTitleLength">
<xsl:if test=".!=-12345">
<xsl:attribute name="SectionTitleLength">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match ="SectForeColor">
<xsl:if test="string-length()">
<xsl:attribute name="ForeColor">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match ="SectBackColor">
<xsl:if test="string-length()">
<xsl:attribute name="BackColor">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="MetaSectEndMessage">
<xsl:if test=".!='null'">
<xsl:attribute name="MetaSectEndMessage">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ReadOnlyTypeInContMsg">
<xsl:if test=".!='null'">
<xsl:attribute name="ReadOnlyTypeInContMsg">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ReplaceWordsInROs">
<xsl:if test=".!='null'">
<xsl:attribute name="ReplaceWordsInROs">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseMetaSections">
<xsl:if test=".!='null'">
<xsl:attribute name="UseMetaSections">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NonEditableSteps">
<xsl:if test=".!='null'">
<xsl:attribute name="NonEditableSteps">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SearchAllReplaceWords">
<xsl:if test=".!='null'">
<xsl:attribute name="SearchAllReplaceWords">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SecTitleContinue">
<xsl:if test=".!='null'">
<xsl:attribute name="SecTitleContinue">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ConvertCaretToDelta">
<xsl:if test=".!='null'">
<xsl:attribute name="ConvertCaretToDelta">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TurnOffReplaceWords">
<xsl:if test=".!='null'">
<xsl:attribute name="TurnOffReplaceWords">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SectionNumber">
<SectionNumber>
<xsl:apply-templates select="Pos|Just|Font"/>
</SectionNumber>
</xsl:template>
<xsl:template match="SectionHeader">
<SectionHeader>
<xsl:apply-templates select="Pos|Just|Font"/>
</SectionHeader>
</xsl:template>
<xsl:template match="Pos">
<xsl:if test=".!=-12345">
<xsl:attribute name="Pos">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Just">
<xsl:if test=".!=-12345">
<xsl:attribute name="Just">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="StepSectionData">
<StepSectionData>
<!-- Attributes -->
<xsl:apply-templates select="TopRow|IndentToken|NumberOfHighLevelSteps|NumberOfSubStepTypes|IdentB|WolfCreekBackgroundFormat|WolfcreekCKLFormat|WolfcreekCKLBackgndFormat|FortranFormatNumbers|UseTopContinueMessageAtEnd|FloatingContinueMessage|WrapSameAsEdit|ContinueSectionHeader|CompressHPSub|CompressHPSuper|UndSpecialStepsFoldout|UnderlineAllMetaTitles|BoldOnlySectionZero|ImperfectStructure|ImperfectSubstep|ImperfectStructurePlus4|CountAllSubLevels|UseMultiLineSectionTitle|AdjustRNOCautionNoteWidth"/>
<!-- Elements -->
<xsl:apply-templates select="UnderlineTerminate|ObserveNCString1|ObserveNCString|StpSectLayData|StpSectEditData|StpSectPrtData|SequentialTabFormat"/>
</StepSectionData>
</xsl:template>
<xsl:template match="TopRow">
<xsl:if test=".!=-12345">
<xsl:attribute name="TopRow">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SeqStart">
<xsl:if test="string-length()">
<xsl:attribute name="SeqStart">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LeftJustSeqTab">
<xsl:attribute name="LeftJustSeqTab">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="HighSeqStart">
<xsl:if test=".!=-12345">
<xsl:attribute name="HighSeqStart">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="IndentToken">
<xsl:if test=".!=123">
<xsl:attribute name="IndentToken">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NumberOfHighLevelSteps">
<xsl:if test=".!=-12345">
<xsl:attribute name="NumberOfHighLevelSteps">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NumberOfSubStepTypes">
<xsl:if test=".!=-12345">
<xsl:attribute name="NumberOfSubStepTypes">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="IdentB">
<xsl:attribute name="IdentB">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="WolfCreekBackgroundFormat">
<xsl:if test=".!='null'">
<xsl:attribute name="WolfCreekBackgroundFormat">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="WolfcreekCKLFormat">
<xsl:if test=".!='null'">
<xsl:attribute name="WolfcreekCKLFormat">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="WolfcreekCKLBackgndFormat">
<xsl:if test=".!='null'">
<xsl:attribute name="WolfcreekCKLBackgndFormat">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="FortranFormatNumbers">
<xsl:if test=".!='null'">
<xsl:attribute name="FortranFormatNumbers">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseTopContinueMessageAtEnd">
<xsl:if test=".!='null'">
<xsl:attribute name="UseTopContinueMessageAtEnd">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="FloatingContinueMessage">
<xsl:if test=".!='null'">
<xsl:attribute name="FloatingContinueMessage">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="WrapSameAsEdit">
<xsl:if test=".!='null'">
<xsl:attribute name="WrapSameAsEdit">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ContinueSectionHeader">
<xsl:if test=".!='null'">
<xsl:attribute name="ContinueSectionHeader">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CompressHPSub">
<xsl:if test=".!='null'">
<xsl:attribute name="CompressHPSub">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CompressHPSuper">
<xsl:if test=".!='null'">
<xsl:attribute name="CompressHPSuper">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UndSpecialStepsFoldout">
<xsl:if test=".!='null'">
<xsl:attribute name="UndSpecialStepsFoldout">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UnderlineAllMetaTitles">
<xsl:if test=".!='null'">
<xsl:attribute name="UnderlineAllMetaTitles">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BoldOnlySectionZero">
<xsl:if test=".!='null'">
<xsl:attribute name="BoldOnlySectionZero">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ImperfectStructure">
<xsl:if test=".!='null'">
<xsl:attribute name="ImperfectStructure">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ImperfectSubstep">
<xsl:if test=".!='null'">
<xsl:attribute name="ImperfectSubstep">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ImperfectStructurePlus4">
<xsl:if test=".!='null'">
<xsl:attribute name="ImperfectStructurePlus4">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CountAllSubLevels">
<xsl:if test=".!='null'">
<xsl:attribute name="CountAllSubLevels">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseMultiLineSectionTitle">
<xsl:if test=".!='null'">
<xsl:attribute name="UseMultiLineSectionTitle">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AdjustRNOCautionNoteWidth">
<xsl:if test=".!='null'">
<xsl:attribute name="AdjustRNOCautionNoteWidth">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TextTypeValue">
<TextTypeValue>
<xsl:apply-templates/>
</TextTypeValue>
</xsl:template>
<xsl:template match="TextType">
<TextType>
<xsl:apply-templates/>
</TextType>
</xsl:template>
<xsl:template match="SeqTab">
<SeqTab>
<xsl:apply-templates/>
</SeqTab>
</xsl:template>
<xsl:template match="PreSeqTabEdit">
<PreSeqTabEdit>
<xsl:apply-templates/>
</PreSeqTabEdit>
</xsl:template>
<xsl:template match="PreSeqTabPrint">
<PreSeqTabPrint>
<xsl:apply-templates/>
</PreSeqTabPrint>
</xsl:template>
<xsl:template match="PostSeqTabEdit">
<PostSeqTabEdit>
<xsl:apply-templates/>
</PostSeqTabEdit>
</xsl:template>
<xsl:template match="PostSeqTabPrint">
<PostSeqTabPrint>
<xsl:apply-templates/>
</PostSeqTabPrint>
</xsl:template>
<xsl:template match="UnderlineTerminate">
<UnderlineTerminate>
<xsl:apply-templates/>
</UnderlineTerminate>
</xsl:template>
<xsl:template match="ObserveNCString1">
<ObserveNCString1>
<xsl:apply-templates/>
</ObserveNCString1>
</xsl:template>
<xsl:template match="ObserveNCString2">
<ObserveNCString2>
<xsl:apply-templates/>
</ObserveNCString2>
</xsl:template>
<xsl:template match="ReplaceStrData">
<ReplaceStrData>
<xsl:apply-templates/>
</ReplaceStrData>
</xsl:template>
<xsl:template match="ReplaceStr">
<xsl:if test="string-length(ReplaceWord)">
<ReplaceStr>
<xsl:attribute name="Flag">
<xsl:value-of select="./Flag"/>
</xsl:attribute>
<xsl:attribute name="ReplaceWord">
<xsl:value-of select="./ReplaceWord"/>
</xsl:attribute>
<xsl:attribute name="ReplaceWith">
<xsl:value-of select="./ReplaceWith"/>
</xsl:attribute>
</ReplaceStr>
</xsl:if>
</xsl:template>
<xsl:template match="SequentialTabFormat">
<SequentialTabFormat>
<xsl:apply-templates select="SeqTabFmt"/>
</SequentialTabFormat>
</xsl:template>
<xsl:template match="SeqTabFmt">
<xsl:if test="string-length(./TabFormat)">
<SeqTabFmt>
<xsl:attribute name="Index">
<xsl:value-of select ="./Index"/>
</xsl:attribute>
<xsl:if test ="string-length(./TabToken)">
<xsl:attribute name="TabToken">
<xsl:value-of select ="./TabToken"/>
</xsl:attribute>
</xsl:if>
<xsl:if test ="string-length(./TabFormat)">
<xsl:attribute name="TabFormat">
<xsl:value-of select ="./TabFormat"/>
</xsl:attribute>
</xsl:if>
<xsl:if test ="string-length(./PrintTabFormat)">
<xsl:attribute name="PrintTabFormat">
<xsl:value-of select ="./PrintTabFormat"/>
</xsl:attribute>
</xsl:if>
</SeqTabFmt>
</xsl:if>
</xsl:template>
<xsl:template match="StpSectLayData">
<StpSectLayData>
<xsl:apply-templates select="DevNoteOrCautionTabOffset|UseRNOParentIdent|BoxLeftAdj|RNOWidthAdj|RNOWidthSameAsHighParent|SingleColumnRNOIndent|LastLineToStartStep|LineDrawingOption|ColS|ColT|ColAbs|WidT|PMode|MaxRNO|MaxRNOTable|ColRTable|WidSTableEdit|WidSTablePrint|AdjRNOCol|EndMessagePos|RNOWidthAlt|HLSWidthOVRD|SubPaginationWght|TextTitleAdjustment|TableCenterPos"/>
<xsl:apply-templates select="Dev_Format|EnhancedShortFormDev|SpecialPageBreakFlag|PaginateOnFirstSubstep|PaginateOnFirstSubstep2X|UseHalfLines|TryToFillHalfOfPage|CompressSteps|DoSTExtraAtTop|KeepStepsOnPage|BreakOnSections|ShowSectionTitles|EndForSingle|PaginateOnFirstSubstep3X|PaginateOnLowerStepLevel|CustomSpacing|SplitStepInPrntStep|LineAboveUnderSection|PicaIgnoreFiveSixths|SpaceForNoSecNumb|PageBreakOnFirstBlankLine|PutOnPageByItself|PaginateAtHighestPaginLevel|UseSTExtraRealValue|DoSectionSeparatorLine|TieTabToLevel|HighLevelRNOBeforeAERSubsteps|UseStepTypeWidthOverride|UseStepTypeWidthOverrideEditPrint|PartialStepCompression|VirtualDotInHLSTab|OverrideEnhancedTabs|RNO|OnlySingleColumn"/>
<xsl:apply-templates select="VertStyle|TopOfPage|Separator|LowerLimitDivisor|NonLinkedCautNoteNumber|NonLinkedRNONumber|NonLinkedStepNumber|NullBox"/>
</StpSectLayData>
</xsl:template>
<xsl:template match="RNOWidthSameAsHighParent">
<xsl:if test=".!='null'">
<xsl:attribute name="RNOWidthSameAsHighParent">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SingleColumnRNOIndent">
<xsl:if test=".!='null'">
<xsl:attribute name="SingleColumnRNOIndent">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NullBox">
<xsl:if test=".!='null'">
<xsl:attribute name="NullBox">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NonLinkedStepNumber">
<xsl:if test="string-length()">
<xsl:attribute name="NonLinkedStepNumber">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NonLinkedRNONumber">
<xsl:if test="string-length()">
<xsl:attribute name="NonLinkedRNONumber">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NonLinkedCautNoteNumber">
<xsl:if test="string-length()">
<xsl:attribute name="NonLinkedCautNoteNumber">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LowerLimitDivisor">
<xsl:if test=".!=-12345">
<xsl:attribute name="LowerLimitDivisor">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LastLineToStartStep">
<xsl:if test=".!=-12345">
<xsl:attribute name="LastLineToStartStep">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LineDrawingOption">
<xsl:if test=".!=-12345">
<xsl:attribute name="LineDrawingOption">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ColS">
<xsl:if test=".!=-12345">
<xsl:attribute name="ColS">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ColT">
<xsl:if test=".!=-12345">
<xsl:attribute name="ColT">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ColAbs">
<xsl:if test=".!=-12345">
<xsl:attribute name="ColAbs">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="WidT">
<xsl:if test=".!=-12345">
<xsl:attribute name="WidT">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PMode">
<xsl:if test=".!=-12345">
<xsl:attribute name="PMode">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="MaxRNO">
<xsl:if test=".!=-12345">
<xsl:attribute name="MaxRNO">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="MaxRNOTable">
<xsl:attribute name="MaxRNOTable">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="ColRTable">
<xsl:attribute name="ColRTable">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="WidSTableEdit">
<xsl:attribute name="WidSTableEdit">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="WidSTablePrint">
<xsl:attribute name="WidSTablePrint">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="AdjRNOCol">
<xsl:if test=".!=-12345">
<xsl:attribute name="AdjRNOCol">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="EndMessagePos">
<xsl:if test=".!=-12345">
<xsl:attribute name="EndMessagePos">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="RNOWidthAlt">
<xsl:attribute name="RNOWidthAlt">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="RNOWidthAdj">
<xsl:attribute name="RNOWidthAdj">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="UseRNOParentIdent">
<xsl:attribute name="UseRNOParentIdent">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="DevNoteOrCautionTabOffset">
<xsl:attribute name="DevNoteOrCautionTabOffset">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="BoxLeftAdj">
<xsl:attribute name="BoxLeftAdj">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="HLSWidthOVRD">
<xsl:if test=".!=-12345">
<xsl:attribute name="HLSWidthOVRD">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SubPaginationWght">
<xsl:if test=".!=-12345">
<xsl:attribute name="SubPaginationWght">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TextTitleAdjustment">
<xsl:if test=".!=-12345">
<xsl:attribute name="TextTitleAdjustment">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="VertStyle">
<xsl:if test="string-length(./FontFamily)+string-length(./FontSize)+string-length(./FontStyle)>0">
<VertStyle>
<xsl:if test="string-length(./FontFamily)">
<xsl:attribute name="Family">
<xsl:value-of select="./FontFamily"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./FontSize)">
<xsl:attribute name="Size">
<xsl:value-of select="./FontSize"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./FontStyle)">
<xsl:attribute name="Style">
<xsl:value-of select="./FontStyle"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./CPI)">
<xsl:attribute name="CPI">
<xsl:value-of select="./CPI"/>
</xsl:attribute>
</xsl:if>
</VertStyle>
</xsl:if>
</xsl:template>
<xsl:template match="TableCenterPos">
<xsl:if test="string-length()">
<xsl:attribute name="TableCenterPos">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Dev_Format">
<xsl:if test=".!='null'">
<xsl:attribute name="Dev_Format">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Dev_Format">
<xsl:if test=".!='null'">
<xsl:attribute name="Dev_Format">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="EnhancedShortFormDev">
<xsl:if test=".!='null'">
<xsl:attribute name="EnhancedShortFormDev">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SpecialPageBreakFlag">
<xsl:if test=".!='null'">
<xsl:attribute name="SpecialPageBreakFlag">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PaginateOnFirstSubstep">
<xsl:if test=".!='null'">
<xsl:attribute name="PaginateOnFirstSubstep">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PaginateOnFirstSubstep2X">
<xsl:if test=".!='null'">
<xsl:attribute name="PaginateOnFirstSubstep2X">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseHalfLines">
<xsl:if test=".!='null'">
<xsl:attribute name="UseHalfLines">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TryToFillHalfOfPage">
<xsl:if test=".!='null'">
<xsl:attribute name="TryToFillHalfOfPage">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CompressSteps">
<xsl:if test=".!='null'">
<xsl:attribute name="CompressSteps">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="DoSTExtraAtTop">
<xsl:if test=".!='null'">
<xsl:attribute name="DoSTExtraAtTop">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="KeepStepsOnPage">
<xsl:if test=".!='null'">
<xsl:attribute name="KeepStepsOnPage">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BreakOnSections">
<xsl:if test=".!='null'">
<xsl:attribute name="BreakOnSections">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ShowSectionTitles">
<xsl:if test=".!='null'">
<xsl:attribute name="ShowSectionTitles">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="EndForSingle">
<xsl:if test=".!='null'">
<xsl:attribute name="EndForSingle">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PaginateOnFirstSubstep3X">
<xsl:if test=".!='null'">
<xsl:attribute name="PaginateOnFirstSubstep3X">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PaginateOnLowerStepLevel">
<xsl:if test=".!='null'">
<xsl:attribute name="PaginateOnLowerStepLevel">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CustomSpacing">
<xsl:if test=".!='null'">
<xsl:attribute name="CustomSpacing">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SplitStepInPrntStep">
<xsl:if test=".!='null'">
<xsl:attribute name="SplitStepInPrntStep">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LineAboveUnderSection">
<xsl:if test=".!='null'">
<xsl:attribute name="LineAboveUnderSection">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PicaIgnoreFiveSixths">
<xsl:if test=".!='null'">
<xsl:attribute name="PicaIgnoreFiveSixths">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SpaceForNoSecNumb">
<xsl:if test=".!='null'">
<xsl:attribute name="SpaceForNoSecNumb">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PageBreakOnFirstBlankLine">
<xsl:if test=".!='null'">
<xsl:attribute name="PageBreakOnFirstBlankLine">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PutOnPageByItself">
<xsl:if test=".!='null'">
<xsl:attribute name="PutOnPageByItself">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PaginateAtHighestPaginLevel">
<xsl:if test=".!='null'">
<xsl:attribute name="PaginateAtHighestPaginLevel">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseSTExtraRealValue">
<xsl:if test=".!='null'">
<xsl:attribute name="UseSTExtraRealValue">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="DoSectionSeparatorLine">
<xsl:if test=".!='null'">
<xsl:attribute name="DoSectionSeparatorLine">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TieTabToLevel">
<xsl:if test=".!='null'">
<xsl:attribute name="TieTabToLevel">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="HighLevelRNOBeforeAERSubsteps">
<xsl:if test=".!='null'">
<xsl:attribute name="HighLevelRNOBeforeAERSubsteps">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseStepTypeWidthOverride">
<xsl:if test=".!='null'">
<xsl:attribute name="UseStepTypeWidthOverride">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseStepTypeWidthOverrideEditPrint">
<xsl:if test=".!='null'">
<xsl:attribute name="UseStepTypeWidthOverrideEditPrint">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PartialStepCompression">
<xsl:if test=".!='null'">
<xsl:attribute name="PartialStepCompression">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="VirtualDotInHLSTab">
<xsl:if test=".!='null'">
<xsl:attribute name="VirtualDotInHLSTab">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="OverrideEnhancedTabs">
<xsl:if test=".!='null'">
<xsl:attribute name="OverrideEnhancedTabs">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="RNO">
<xsl:if test=".!='null'">
<xsl:attribute name="RNO">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="OnlySingleColumn">
<xsl:if test=".!='null'">
<xsl:attribute name="OnlySingleColumn">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TopOfPage">
<TopOfPage>
<xsl:apply-templates select="Row|Col|Font"></xsl:apply-templates>
</TopOfPage>
</xsl:template>
<xsl:template match="Row">
<xsl:if test=".!=-12345">
<xsl:attribute name="Row">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Col">
<xsl:if test=".!=-12345">
<xsl:attribute name="Col">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Separator">
<Separator>
<xsl:apply-templates select="SeparatorLocation|Font"></xsl:apply-templates>
</Separator>
</xsl:template>
<xsl:template match="SeparatorLocation">
<xsl:if test=".!=-12345">
<xsl:attribute name="Location">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="StpSectEditData">
<StpSectEditData>
<xsl:apply-templates select="ColSScreenAdj|ScrnAdjRNOText|ColRScreen"></xsl:apply-templates>
</StpSectEditData>
</xsl:template>
<xsl:template match="ColSScreenAdj">
<xsl:if test=".!=-12345">
<xsl:attribute name="ColSScreenAdj">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ScrnAdjRNOText">
<xsl:if test=".!=-12345">
<xsl:attribute name="ScrnAdjRNOText">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ColRScreen">
<xsl:attribute name="ColRScreen">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="StpSectPrtData">
<StpSectPrtData>
<xsl:apply-templates select="ImmStepHdrCol|DiffContActBox|SecColHdrforActPMode|RNOSepString|RNOSepLineLength|LowerCaseRevNum|UseXtraRevNumber|SpecialLandscapeMode|LimitWidToPageWid"/>
<xsl:apply-templates select="ImmStepHdrStyle|ModifiedTextStyle|ImmStepHdr|HLRNOStpSeparatorString|HLStpSeparatorString|LeftJustifyList"/>
</StpSectPrtData>
</xsl:template>
<xsl:template match="HLStpSeparatorString">
<xsl:if test="string-length()">
<xsl:attribute name="HLStpSeparatorString">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="HLRNOStpSeparatorString">
<xsl:if test="string-length()">
<xsl:attribute name="HLRNOStpSeparatorString">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ImmStepHdrCol">
<xsl:if test=".!=-12345">
<xsl:attribute name="ImmStepHdrCol">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="DiffContActBox">
<xsl:if test="string-length()">
<xsl:attribute name="DiffContActBox">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SecColHdrforActPMode">
<xsl:if test=".!=-12345">
<xsl:attribute name="SecColHdrforActPMode">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="RNOSepString">
<xsl:if test="string-length()">
<xsl:attribute name="RNOSepString">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="RNOSepLineLength">
<xsl:if test=".!=0">
<xsl:attribute name="RNOSepLineLength">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LowerCaseRevNum">
<xsl:if test=".!='null'">
<xsl:attribute name="LowerCaseRevNum">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseXtraRevNumber">
<xsl:if test=".!='null'">
<xsl:attribute name="UseXtraRevNumber">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SpecialLandscapeMode">
<xsl:if test=".!='null'">
<xsl:attribute name="SpecialLandscapeMode">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LimitWidToPageWid">
<xsl:if test=".!='null'">
<xsl:attribute name="LimitWidToPageWid">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ImmStepHdrStyle">
<xsl:if test="string-length(./FontFamily)+string-length(./FontSize)+string-length(./FontStyle)>0">
<ImmStepHdrStyle>
<xsl:if test="string-length(./FontFamily)">
<xsl:attribute name="Family">
<xsl:value-of select="./FontFamily"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./FontSize)">
<xsl:attribute name="Size">
<xsl:value-of select="./FontSize"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./FontStyle)">
<xsl:attribute name="Style">
<xsl:value-of select="./FontStyle"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./CPI)">
<xsl:attribute name="CPI">
<xsl:value-of select="./CPI"/>
</xsl:attribute>
</xsl:if>
</ImmStepHdrStyle>
</xsl:if>
</xsl:template>
<xsl:template match="ModifiedTextStyle">
<xsl:if test="string-length(./FontFamily)+string-length(./FontSize)+string-length(./FontStyle)>0">
<ModifiedTextStyle>
<xsl:if test="string-length(./FontFamily)">
<xsl:attribute name="Family">
<xsl:value-of select="./FontFamily"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./FontSize)">
<xsl:attribute name="Size">
<xsl:value-of select="./FontSize"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./FontStyle)">
<xsl:attribute name="Style">
<xsl:value-of select="./FontStyle"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./CPI)">
<xsl:attribute name="CPI">
<xsl:value-of select="./CPI"/>
</xsl:attribute>
</xsl:if>
</ModifiedTextStyle>
</xsl:if>
</xsl:template>
<xsl:template match="ImmStepHdr">
<ImmStepHdr>
<xsl:apply-templates/>
</ImmStepHdr>
</xsl:template>
<xsl:template match="LeftJustifyList">
<LeftJustifyList>
<xsl:apply-templates select="LeftJustify"/>
</LeftJustifyList>
</xsl:template>
<xsl:template match="LeftJustify">
<xsl:if test ="Size!=-12345">
<LeftJustify>
<xsl:attribute name="Index">
<xsl:value-of select="./Index"/>
</xsl:attribute>
<xsl:attribute name="Size">
<xsl:value-of select="./Size"/>
</xsl:attribute>
</LeftJustify>
</xsl:if>
</xsl:template>
<xsl:template match="AccSectionData">
<AccSectionData>
<xsl:apply-templates select="AutoContActSumSection|TableOfContentsData"></xsl:apply-templates>
</AccSectionData>
</xsl:template>
<xsl:template match="AutoContActSumSection">
<xsl:if test=".!=-12345">
<xsl:attribute name="AutoContActSumSection">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TableOfContentsData">
<TableOfContentsData>
<xsl:apply-templates select="TofCSecNumPos|TofCSecTitlePos|TofCSecTitleLen|TofCPageNumPos|TofCSpaceChar|TofCLineSpacing|Font"></xsl:apply-templates>
</TableOfContentsData>
</xsl:template>
<xsl:template match="TofCSecNumPos">
<xsl:if test=".!=-12345">
<xsl:attribute name="TofCSecNumPos">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TofCSecTitlePos">
<xsl:if test=".!=-12345">
<xsl:attribute name="TofCSecTitlePos">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TofCSecTitleLen">
<xsl:if test=".!=123">
<xsl:attribute name="TofCSecTitleLen">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TofCPageNumPos">
<xsl:if test=".!=-12345">
<xsl:attribute name="TofCPageNumPos">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TofCSpaceChar">
<xsl:if test=".!=123">
<xsl:attribute name="TofCSpaceChar">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TofCLineSpacing">
<xsl:if test=".!=123">
<xsl:attribute name="TofCLineSpacing">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="MetaSectionData">
<MetaSectionData>
<xsl:apply-templates select="MetaSection"></xsl:apply-templates>
</MetaSectionData>
</xsl:template>
<xsl:template match="MetaSection">
<xsl:if test="concat(SecNumPositionAdj,SecTitlePositionAdj,ColSByLevel,TofCPositionAdj,WidSAdjByLevel) != '-12345-12345-12345-12345-12345'">
<MetaSection>
<xsl:attribute name="Index">
<xsl:value-of select="./Index"/>
</xsl:attribute>
<xsl:apply-templates select="SecNumPositionAdj|SecTitlePositionAdj|ColSByLevel|TofCPositionAdj|WidSAdjByLevel"/>
</MetaSection>
</xsl:if>
</xsl:template>
<xsl:template match="SecNumPositionAdj">
<xsl:if test=".!=-12345">
<xsl:attribute name="SecNumPositionAdj">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SecTitlePositionAdj">
<xsl:if test=".!=-12345">
<xsl:attribute name="SecTitlePositionAdj">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ColSByLevel">
<xsl:if test=".!=-12345">
<xsl:attribute name="ColSByLevel">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TofCPositionAdj">
<xsl:if test=".!=-12345">
<xsl:attribute name="TofCPositionAdj">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="WidSAdjByLevel">
<xsl:if test=".!=-12345">
<xsl:attribute name="WidSAdjByLevel">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="StepData">
<StepData>
<xsl:apply-templates select="Step"/>
</StepData>
</xsl:template>
<xsl:template match="Step">
<Step>
<xsl:apply-templates select="Type|Index|ParentType|StepGroup|AllowTypeChange|AlternateName|Prefix|Suffix|UnderlineTheseChar|ReadOnly|Inactive|ColOverride|ColOverrideEdit|WidthOverride|WidthOverrideEdit|VertPos|Sep"/>
<xsl:apply-templates select="DoubleSpace|EnhancedStepNumFromPrev|UseSmartTemplate|AlwaysUseExtraLines|SeparateBox|SeparateBoxCautions|SpaceDouble|ReduceLineAfter|SameLevel|BoldHighLevel|OneLineBeforeTab|BoxIt|Boxed|XLines_StepFix|Rebox|SpcHdr|ContinueOnly|SepAfterAER|UseAlternateStepBox|UnderlineAfterDashSpace|SpaceIn|PageBreakOnStep|UseOldTemplate|AlignNullTabWSectHead|AlignHLSTabWithSectOvride|TextSubFollowsTextStyle|CautionOrNoteSubstepIndent|TreatAsSequential|MatchUpRNO|InPageList|CenterOneLineOnly|SubTableGetsUp1Level"/>
<xsl:apply-templates select="Remember|CenterOneLineAdjust|Break|BreakEquipmentList|BreakCautionsNotesOnSubstps|CenterTextWithinWidth|NewlineAfter|StartLineWithDash|BlankLineBeforeSubStep|AlwaysTab|MixCautionsAndNotes|NumberHighLevel|OffsetTab|AdjHighLevelTab|ChildIndent|LeftJustifyBorderless|StepNumIfOnlyOne|LJTabs|NumberSubs|Bullet|StepNumberForHighLevel|SameRowAsParent|CheckoffSameAsParent|AtLeastTwoDigits|UseInAcTable|Number|ThreeBlanksAbove|CheckOffs|Quoted|NoSpaceMultipleRNOs"/>
<xsl:apply-templates select="Font|StepLayoutData|StepEditData|StepPrintData|TabData"/>
</Step>
</xsl:template>
<xsl:template match="Sep">
<xsl:attribute name="Sep">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="Type">
<xsl:attribute name="Type">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="Index">
<xsl:attribute name="Index">
<xsl:value-of select="./Index"/>
</xsl:attribute>
</xsl:template>
<xsl:template match="StepGroup">
<xsl:attribute name="StepGroup">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="AllowTypeChange">
<xsl:attribute name="AllowTypeChange">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="ParentType">
<xsl:attribute name="ParentType">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="AlternateName">
<xsl:if test="string-length()">
<xsl:attribute name="AlternateName">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Prefix">
<xsl:if test="string-length()">
<xsl:attribute name="Prefix">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Suffix">
<xsl:if test="string-length()">
<xsl:attribute name="Suffix">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UnderlineTheseChar">
<xsl:if test="string-length()">
<xsl:attribute name="UnderlineTheseChar">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ReadOnly">
<xsl:if test="string-length()">
<xsl:attribute name="ReadOnly">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Inactive">
<xsl:if test="string-length()">
<xsl:attribute name="Inactive">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ColOverride">
<xsl:if test=".!=-12345">
<xsl:attribute name="ColOverride">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ColOverrideEdit">
<xsl:if test=".!=-12345">
<xsl:attribute name="ColOverrideEdit">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="WidthOverride">
<xsl:if test=".!=-12345">
<xsl:attribute name="WidthOverride">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="WidthOverrideEdit">
<xsl:if test=".!=-12345">
<xsl:attribute name="WidthOverrideEdit">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="VertPos">
<xsl:attribute name="VertPos">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="DoubleSpace">
<xsl:if test=".!='null'">
<xsl:attribute name="DoubleSpace">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="EnhancedStepNumFromPrev">
<xsl:if test=".!='null'">
<xsl:attribute name="EnhancedStepNumFromPrev">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseSmartTemplate">
<xsl:if test=".!='null'">
<xsl:attribute name="UseSmartTemplate">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AlwaysUseExtraLines">
<xsl:if test=".!='null'">
<xsl:attribute name="AlwaysUseExtraLines">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SeparateBox">
<xsl:if test=".!='null'">
<xsl:attribute name="SeparateBox">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SeparateBoxCautions">
<xsl:if test=".!='null'">
<xsl:attribute name="SeparateBoxCautions">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SpaceDouble">
<xsl:if test=".!='null'">
<xsl:attribute name="SpaceDouble">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ReduceLineAfter">
<xsl:if test=".!='null'">
<xsl:attribute name="ReduceLineAfter">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SameLevel">
<xsl:if test=".!='null'">
<xsl:attribute name="SameLevel">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BoldHighLevel">
<xsl:if test=".!='null'">
<xsl:attribute name="BoldHighLevel">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="OneLineBeforeTab">
<xsl:if test=".!='null'">
<xsl:attribute name="OneLineBeforeTab">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BoxIt">
<xsl:if test=".!='null'">
<xsl:attribute name="BoxIt">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Boxed">
<xsl:if test=".!='null'">
<xsl:attribute name="Boxed">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="XLines_StepFix">
<xsl:if test=".!='null'">
<xsl:attribute name="XLines_StepFix">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Rebox">
<xsl:if test=".!='null'">
<xsl:attribute name="Rebox">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SpcHdr">
<xsl:if test=".!='null'">
<xsl:attribute name="SpcHdr">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ContinueOnly">
<xsl:if test=".!='null'">
<xsl:attribute name="ContinueOnly">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SepAfterAER">
<xsl:if test=".!='null'">
<xsl:attribute name="SepAfterAER">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseAlternateStepBox">
<xsl:if test=".!='null'">
<xsl:attribute name="UseAlternateStepBox">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UnderlineAfterDashSpace">
<xsl:if test=".!='null'">
<xsl:attribute name="UnderlineAfterDashSpace">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SpaceIn">
<xsl:if test=".!='null'">
<xsl:attribute name="SpaceIn">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="PageBreakOnStep">
<xsl:if test=".!='null'">
<xsl:attribute name="PageBreakOnStep">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseOldTemplate">
<xsl:if test=".!='null'">
<xsl:attribute name="UseOldTemplate">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AlignNullTabWSectHead">
<xsl:if test=".!='null'">
<xsl:attribute name="AlignNullTabWSectHead">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AlignHLSTabWithSectOvride">
<xsl:if test=".!='null'">
<xsl:attribute name="AlignHLSTabWithSectOvride">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TextSubFollowsTextStyle">
<xsl:if test=".!='null'">
<xsl:attribute name="TextSubFollowsTextStyle">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CautionOrNoteSubstepIndent">
<xsl:if test=".!='null'">
<xsl:attribute name="CautionOrNoteSubstepIndent">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TreatAsSequential">
<xsl:if test=".!='null'">
<xsl:attribute name="TreatAsSequential">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="MatchUpRNO">
<xsl:if test=".!='null'">
<xsl:attribute name="MatchUpRNO">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="InPageList">
<xsl:if test=".!='null'">
<xsl:attribute name="InPageList">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CenterOneLineOnly">
<xsl:if test=".!='null'">
<xsl:attribute name="CenterOneLineOnly">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SubTableGetsUp1Level">
<xsl:if test=".!='null'">
<xsl:attribute name="SubTableGetsUp1Level">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Remember">
<xsl:if test=".!='null'">
<xsl:attribute name="Remember">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CenterOneLineAdjust">
<xsl:if test=".!='null'">
<xsl:attribute name="CenterOneLineAdjust">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Break">
<xsl:if test=".!='null'">
<xsl:attribute name="Break">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BreakEquipmentList">
<xsl:if test=".!='null'">
<xsl:attribute name="BreakEquipmentList">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BreakCautionsNotesOnSubstps">
<xsl:if test=".!='null'">
<xsl:attribute name="BreakCautionsNotesOnSubstps">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CenterTextWithinWidth">
<xsl:if test=".!='null'">
<xsl:attribute name="CenterTextWithinWidth">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NewlineAfter">
<xsl:if test=".!='null'">
<xsl:attribute name="NewlineAfter">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="StartLineWithDash">
<xsl:if test=".!='null'">
<xsl:attribute name="StartLineWithDash">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BlankLineBeforeSubStep">
<xsl:if test=".!='null'">
<xsl:attribute name="BlankLineBeforeSubStep">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AlwaysTab">
<xsl:if test=".!='null'">
<xsl:attribute name="AlwaysTab">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NoSpaceMultipleRNOs">
<xsl:if test=".='true'">
<xsl:attribute name="NoSpaceMultipleRNOs">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="MixCautionsAndNotes">
<xsl:if test=".!='null'">
<xsl:attribute name="MixCautionsAndNotes">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NumberHighLevel">
<xsl:if test=".!='null'">
<xsl:attribute name="NumberHighLevel">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="OffsetTab">
<xsl:if test=".!='null'">
<xsl:attribute name="OffsetTab">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AdjHighLevelTab">
<xsl:if test=".!='null'">
<xsl:attribute name="AdjHighLevelTab">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ChildIndent">
<xsl:if test=".!='null'">
<xsl:attribute name="ChildIndent">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LeftJustifyBorderless">
<xsl:if test=".!='null'">
<xsl:attribute name="LeftJustifyBorderless">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="StepNumIfOnlyOne">
<xsl:if test=".!='null'">
<xsl:attribute name="StepNumIfOnlyOne">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LJTabs">
<xsl:if test=".!='null'">
<xsl:attribute name="LJTabs">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NumberSubs">
<xsl:if test=".!='null'">
<xsl:attribute name="NumberSubs">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Bullet">
<Bullet>
<xsl:apply-templates select="Separate|Font"/>
</Bullet>
</xsl:template>
<xsl:template match="Separate">
<xsl:if test=".!='null'">
<xsl:attribute name="Separate">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BulletOnContinuous">
<xsl:if test=".!='null'">
<xsl:attribute name="BulletOnContinuous">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="StepNumberForHighLevel">
<xsl:if test=".!='null'">
<xsl:attribute name="StepNumberForHighLevel">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SameRowAsParent">
<xsl:if test=".!='null'">
<xsl:attribute name="SameRowAsParent">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CheckoffSameAsParent">
<xsl:if test=".!='null'">
<xsl:attribute name="CheckOffSameAsParent">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AtLeastTwoDigits">
<xsl:if test=".!='null'">
<xsl:attribute name="AtLeastTwoDigits">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseInAcTable">
<xsl:if test=".!='null'">
<xsl:attribute name="UseInAcTable">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Number">
<xsl:if test=".!='null'">
<xsl:attribute name="Number">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ThreeBlanksAbove">
<xsl:if test=".!='null'">
<xsl:attribute name="ThreeBlanksAbove">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CheckOffs">
<xsl:if test=".!='null'">
<xsl:attribute name="CheckOffs">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Quoted">
<xsl:if test=".!='null'">
<xsl:attribute name="Quoted">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Font">
<xsl:if test="string-length(./FontFamily)+string-length(./FontSize)+string-length(./FontStyle)>0">
<Font>
<xsl:if test="string-length(./FontFamily)">
<xsl:attribute name="Family">
<xsl:value-of select="./FontFamily"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./FontSize)">
<xsl:attribute name="Size">
<xsl:value-of select="./FontSize"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./FontStyle)">
<xsl:attribute name="Style">
<xsl:value-of select="./FontStyle"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(./CPI)">
<xsl:attribute name="CPI">
<xsl:value-of select="./CPI"/>
</xsl:attribute>
</xsl:if>
</Font>
</xsl:if>
</xsl:template>
<xsl:template match="StepLayoutData">
<StepLayoutData>
<xsl:if test="string-length(ForeColor)">
<xsl:attribute name="ForeColor">
<xsl:value-of select="./ForeColor"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(BackColor)">
<xsl:attribute name="BackColor">
<xsl:value-of select="./BackColor"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="STExtraSpace!=-12345">
<xsl:attribute name="STExtraSpace">
<xsl:value-of select="./STExtraSpace"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="STBoxindex!=-12345">
<xsl:attribute name="STBoxindex">
<xsl:value-of select="./STBoxindex"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="EveryNLines!=-12345">
<xsl:attribute name="EveryNLines">
<xsl:value-of select="./EveryNLines"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="SpaceBefore!=-12345">
<xsl:attribute name="SpaceBefore">
<xsl:value-of select="./SpaceBefore"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="SpaceAfter!=-12345">
<xsl:attribute name="SpaceAfter">
<xsl:value-of select="./SpaceAfter"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(AlwaysUpperCase)">
<xsl:attribute name="AlwaysUpperCase">
<xsl:value-of select="./AlwaysUpperCase"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="PageBreakAtTypeChange!=-12345">
<xsl:attribute name="PageBreakAtTypeChange">
<xsl:value-of select="./PageBreakAtTypeChange"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(AlignWithParentTab)">
<xsl:attribute name="AlignWithParentTab">
<xsl:value-of select="./AlignWithParentTab"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="RtCheckOffGroups!=-12345">
<xsl:attribute name="RtCheckOffGroups">
<xsl:value-of select="./RtCheckOffGroups"/>
</xsl:attribute>
</xsl:if>
</StepLayoutData>
</xsl:template>
<xsl:template match="StepEditData">
<StepEditData>
<xsl:if test="string-length(BackColor)">
<xsl:attribute name="BackColor">
<xsl:value-of select="./BackColor"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(ForeColor)">
<xsl:attribute name="ForeColor">
<xsl:value-of select="./ForeColor"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(AcTable)">
<xsl:attribute name="AcTable">
<xsl:value-of select="./AcTable"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(Searchable)">
<xsl:attribute name="Searchable">
<xsl:value-of select="./Searchable"/>
</xsl:attribute>
</xsl:if>
<xsl:apply-templates select="TypeMenu"/>
</StepEditData>
</xsl:template>
<xsl:template match="TypeMenu">
<TypeMenu>
<xsl:if test="string-length(InMenu)">
<xsl:attribute name="InMenu">
<xsl:value-of select="./InMenu"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(RnoInMenu)">
<xsl:attribute name="RnoInMenu">
<xsl:value-of select="./RnoInMenu"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(MenuItem)">
<xsl:attribute name="MenuItem">
<xsl:value-of select="./MenuItem"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(RnoMenuItem)">
<xsl:attribute name="RnoMenuItem">
<xsl:value-of select="./RnoMenuItem"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(NoChgReason)">
<xsl:attribute name="NoChgReason">
<xsl:value-of select="./NoChgReason"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(AlternateNameList)">
<xsl:attribute name="AlternateNameList">
<xsl:value-of select="./AlternateNameList"/>
</xsl:attribute>
</xsl:if>
</TypeMenu>
</xsl:template>
<xsl:template match="AlternateNames">
<AlternateNames>
<xsl:apply-templates select="AlternateNames"/>
</AlternateNames>
</xsl:template>
<xsl:template match="TransTypes">
<xsl:if test="string-length(TransFormat)">
<AlternateName>
<xsl:attribute name="Type">
<xsl:value-of select="./Type"/>
</xsl:attribute>
</AlternateName>
</xsl:if>
</xsl:template>
<xsl:template match="StepPrintData">
<StepPrintData>
<xsl:if test="string-length(ForeColor)">
<xsl:attribute name="ForeColor">
<xsl:value-of select="./ForeColor"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="PosAdjust!=-12345">
<xsl:attribute name="PosAdjust">
<xsl:value-of select="./PosAdjust"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(Justify)">
<xsl:attribute name="Justify">
<xsl:value-of select="./Justify"/>
</xsl:attribute>
</xsl:if>
</StepPrintData>
</xsl:template>
<xsl:template match="TabData">
<TabData>
<xsl:apply-templates select="MacroTabAdjust|RNOAdjustTabSize|IsTransition|RNOExcludeMacros|UsePreviousStyle|IdentEdit|IdentAltPrint|IdentEditWid|Ident|IdentWid|RNOIdentEdit|RNOIdentEditWid|RNOIdent|RNOIdentWid|Justify|NoTrim|Font|MacroList|Bullet"/>
</TabData>
</xsl:template>
<xsl:template match="MacroTabAdjust">
<xsl:if test=".!=0">
<xsl:attribute name="MacroTabAdjust">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="RNOAdjustTabSize">
<xsl:if test=".!=0">
<xsl:attribute name="RNOAdjustTabSize">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="IsTransition">
<xsl:if test=".!='false'">
<xsl:attribute name="IsTransition">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="RNOExcludeMacros">
<xsl:if test=".!='false'">
<xsl:attribute name="RNOExcludeMacros">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UsePreviousStyle">
<xsl:if test="string-length(.)">
<xsl:attribute name="UsePreviousStyle">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="IdentEdit">
<!--<xsl:if test="string-length(.)">-->
<xsl:attribute name="IdentEdit">
<xsl:value-of select="."/>
</xsl:attribute>
<!--</xsl:if>-->
</xsl:template>
<xsl:template match="IdentAltPrint">
<xsl:if test="string-length(.)">
<xsl:attribute name="IdentAltPrint">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="IdentEditWid">
<xsl:if test=".!=-12345">
<xsl:attribute name="IdentEditWid">
<xsl:value-of select="./IdentEditWid"/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Ident">
<!--<xsl:if test="string-length(.)">-->
<xsl:attribute name="Ident">
<xsl:value-of select="."/>
</xsl:attribute>
<!--</xsl:if>-->
</xsl:template>
<xsl:template match="IdentWid">
<xsl:if test=".!=-12345">
<xsl:attribute name="IdentWidth">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="RNOIdentEdit">
<!--<xsl:if test="string-length(.)">-->
<xsl:attribute name="RNOIdentEdit">
<xsl:value-of select="."/>
</xsl:attribute>
<!--</xsl:if>-->
</xsl:template>
<xsl:template match="RNOIdentEditWid">
<xsl:if test=".!=-12345">
<xsl:attribute name="RNOIdentEditWid">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="RNOIdent">
<!--<xsl:if test="string-length(.)">-->
<xsl:attribute name="RNOIdent">
<xsl:value-of select="."/>
</xsl:attribute>
<!--</xsl:if>-->
</xsl:template>
<xsl:template match="RNOIdentWid">
<xsl:if test=".!=-12345">
<xsl:attribute name="RNOIdentWid">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Justify">
<xsl:if test="string-length(.)">
<xsl:attribute name="Justify">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="NoTrim">
<xsl:if test="string-length(.)">
<xsl:attribute name="NoTrim">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="MacroList">
<MacroList>
<xsl:apply-templates select="COMacro"/>
</MacroList>
</xsl:template>
<xsl:template match="COMacro">
<Macro>
<xsl:if test="string-length(Name)">
<xsl:attribute name="Name">
<xsl:value-of select="Name"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(Macro)">
<xsl:attribute name="Macro">
<xsl:value-of select="Macro"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="Grouping!=-12345">
<xsl:attribute name="Grouping">
<xsl:value-of select="Grouping"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(NotInRNO)">
<xsl:attribute name="NotInRNO">
<xsl:value-of select="NotInRNO"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(LocWithXOff)">
<xsl:attribute name="LocWithXOff">
<xsl:value-of select="LocWithXOff"/>
</xsl:attribute>
</xsl:if>
</Macro>
</xsl:template>
<xsl:template match="BoxData">
<BoxData>
<xsl:apply-templates select="Box"/>
</BoxData>
</xsl:template>
<xsl:template match="Box">
<xsl:if test="BXULC!=-12345">
<Box>
<xsl:apply-templates select="Index|Start|End|TxtStart|TxtWidth|Height|TabPos|RtCheckOffGroups|TxtRowAdj"/>
<xsl:apply-templates select="BXURC|BXHorz|BXULC|BXVert|BXMLS|BXMRS|BXLRC|BXLLC|BXMID|BXLHorz|BXUMID|BXLMID|Font"/>
</Box>
</xsl:if>
</xsl:template>
<xsl:template match="Index">
<xsl:attribute name="Index">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="Start">
<xsl:if test=".!=-12345">
<xsl:attribute name="Start">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="End">
<xsl:if test=".!=-12345">
<xsl:attribute name="End">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TxtStart">
<xsl:if test=".!=-12345">
<xsl:attribute name="TxtStart">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TxtWidth">
<xsl:if test=".!=-12345">
<xsl:attribute name="TxtWidth">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Height">
<xsl:if test=".!=-12345">
<xsl:attribute name="Height">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TabPos">
<xsl:if test=".!=-12345">
<xsl:attribute name="TabPos">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TxtRowAdj">
<xsl:if test=".!=123">
<xsl:attribute name="TxtRowAdj">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXURC">
<xsl:if test="string-length()">
<xsl:attribute name="BXURC">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXHorz">
<xsl:if test="string-length()">
<xsl:attribute name="BXHorz">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXULC">
<xsl:if test="string-length()">
<xsl:attribute name="BXULC">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXVert">
<xsl:if test="string-length()">
<xsl:attribute name="BXVert">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXMLS">
<xsl:if test="string-length()">
<xsl:attribute name="BXMLS">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXMRS">
<xsl:if test="string-length()">
<xsl:attribute name="BXMRS">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXLRC">
<xsl:if test="string-length()">
<xsl:attribute name="BXLRC">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXLLC">
<xsl:if test="string-length()">
<xsl:attribute name="BXLLC">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXMID">
<xsl:if test="string-length()">
<xsl:attribute name="BXMID">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXLHorz">
<xsl:if test="string-length()">
<xsl:attribute name="BXLHorz">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXUMID">
<xsl:if test="string-length()">
<xsl:attribute name="BXUMID">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BXLMID">
<xsl:if test="string-length()">
<xsl:attribute name="BXLMID">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TransData">
<TransData>
<xsl:apply-templates select="DelimiterForTransitionTitle|StepSubstepDelimeter|ThroughString|SpecifiedSubstepsOnly|CapsTransitions|CapTranStep|Underline|TStepNoFlag|LowerCaseTranNumber|UpcaseTranAnd|SuppressAndInTran|Cap1stCharTrans|UseTransitionModifier|UseSecTitles|HardSpTranProcNumb|XchngTranSpForHard|AbsoluteTransitionUpdate|LowerCaseStepInTran|DoSectionTransitions|AdjustStepTransitionText|BoldTransitionExceptHLS|TransTypeData"/>
</TransData>
</xsl:template>
<xsl:template match="DelimiterForTransitionTitle">
<xsl:if test="string-length()">
<xsl:attribute name="DelimiterForTransitionTitle">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="StepSubstepDelimeter">
<xsl:if test="string-length()">
<xsl:attribute name="StepSubstepDelimeter">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ThroughString">
<xsl:if test="string-length()">
<xsl:attribute name="ThroughString">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SpecifiedSubstepsOnly">
<xsl:if test=".!='null'">
<xsl:attribute name="SpecifiedSubstepsOnly">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CapsTransitions">
<xsl:if test=".!='null'">
<xsl:attribute name="CapsTransitions">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CapTranStep">
<xsl:if test=".!='null'">
<xsl:attribute name="CapTranStep">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Underline">
<xsl:if test=".!='null'">
<xsl:attribute name="Underline">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TStepNoFlag">
<xsl:if test=".!='null'">
<xsl:attribute name="TStepNoFlag">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LowerCaseTranNumber">
<xsl:if test=".!='null'">
<xsl:attribute name="LowerCaseTranNumber">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UpcaseTranAnd">
<xsl:if test=".!='null'">
<xsl:attribute name="UpcaseTranAnd">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="SuppressAndInTran">
<xsl:if test=".!='null'">
<xsl:attribute name="SuppressAndInTran">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="Cap1stCharTrans">
<xsl:if test=".!='null'">
<xsl:attribute name="Cap1stCharTrans">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseTransitionModifier">
<xsl:if test=".!='null'">
<xsl:attribute name="UseTransitionModifier">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UseSecTitles">
<xsl:if test=".!='null'">
<xsl:attribute name="UseSecTitles">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="HardSpTranProcNumb">
<xsl:if test=".!='null'">
<xsl:attribute name="HardSpTranProcNumb">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="XchngTranSpForHard">
<xsl:if test=".!='null'">
<xsl:attribute name="XchngTranSpForHard">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AbsoluteTransitionUpdate">
<xsl:if test=".!='null'">
<xsl:attribute name="AbsoluteTransitionUpdate">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LowerCaseStepInTran">
<xsl:if test=".!='null'">
<xsl:attribute name="LowerCaseStepInTran">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="DoSectionTransitions">
<xsl:if test=".!='null'">
<xsl:attribute name="DoSectionTransitions">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="AdjustStepTransitionText">
<xsl:if test=".!='null'">
<xsl:attribute name="AdjustStepTransitionText">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="BoldTransitionExceptHLS">
<xsl:if test=".!='null'">
<xsl:attribute name="BoldTransitionExceptHLS">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="TransTypeData">
<TransTypeData>
<xsl:apply-templates select="TransTypes"/>
</TransTypeData>
</xsl:template>
<xsl:template match="TransTypes">
<xsl:if test="string-length(TransFormat)">
<TransTypes>
<xsl:attribute name="Index">
<xsl:value-of select="./Index"/>
</xsl:attribute>
<xsl:attribute name="TransType">
<xsl:value-of select="./TransType"/>
</xsl:attribute>
<xsl:attribute name="TransFormat">
<xsl:value-of select="./TransFormat"/>
</xsl:attribute>
<xsl:if test="string-length(TransMenu)">
<xsl:attribute name="TransMenu">
<xsl:value-of select="./TransMenu"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="string-length(TransUI)">
<xsl:attribute name="TransUI">
<xsl:value-of select="./TransUI"/>
</xsl:attribute>
</xsl:if>
</TransTypes>
</xsl:if>
</xsl:template>
<xsl:template match="ROData">
<ROData>
<xsl:apply-templates select="AllUnits|UpRoAftrDash|UpRoImmAftrDashSpace|UpcaseAllRoUnits|CapHighRo|CapRoIfLastLower|CapSPIfLastLower|UpRoIfPrevUpper|UnderlineRo|CapFirstLetterInHighRO"/>
</ROData>
</xsl:template>
<xsl:template match="AllUnits">
<xsl:if test=".!='null'">
<xsl:attribute name="AllUnits">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UpRoAftrDash">
<xsl:if test=".!='null'">
<xsl:attribute name="UpRoAftrDash">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UpRoImmAftrDashSpace">
<xsl:if test=".!='null'">
<xsl:attribute name="UpRoImmAftrDashSpace">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UpcaseAllRoUnits">
<xsl:if test=".!='null'">
<xsl:attribute name="UpcaseAllRoUnits">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CapHighRo">
<xsl:if test=".!='null'">
<xsl:attribute name="CapHighRo">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CapRoIfLastLower">
<xsl:if test=".!='null'">
<xsl:attribute name="CapRoIfLastLower">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CapSPIfLastLower">
<xsl:if test=".!='null'">
<xsl:attribute name="CapSPIfLastLower">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UpRoIfPrevUpper">
<xsl:if test=".!='null'">
<xsl:attribute name="UpRoIfPrevUpper">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="UnderlineRo">
<xsl:if test=".!='null'">
<xsl:attribute name="UnderlineRo">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CapFirstLetterInHighRO">
<xsl:if test=".!='null'">
<xsl:attribute name="CapFirstLetterInHighRO">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="string">
<xsl:if test="string-length()">
<string>
<xsl:apply-templates/>
</string>
</xsl:if>
</xsl:template>
<xsl:template match="short">
<xsl:if test=".!=-12345">
<short>
<xsl:apply-templates/>
</short>
</xsl:if>
</xsl:template>
<xsl:template match="int">
<xsl:if test=".!=-12345">
<int>
<xsl:apply-templates/>
</int>
</xsl:if>
</xsl:template>
</xsl:stylesheet>