SourceCode/PROMS/fmtxml/TranslateDoc.XSL
Kathy f332618227 BGE: Handle {} around ro values
BGE: Added an x-Location of end message for a section
Use x-location of end message for a section; tab format for sequential tabs at 4th level; hls tab spaces; indent in transition format 9
BGE: Use x-location of end message for a section
BGE: support for top continue messages that contain tab for continued step
resolve {Step Text} token in transition; modify code that processes transition format to use collection matches rather than search for ‘{‘
support AllUnits ro flag
support ‘{‘ and ‘}’ around ro value
top continue message with tab; location of top continue message in both AER/RNO columns for dual column; support indent in transition format during print
support two top continue messages (aer/rno) that can have different text; fix bug in splitting procedure title text if it contains hard spaces
2014-04-29 13:12:10 +00:00

294 lines
9.9 KiB
Plaintext

<?xml version="1.0"?>
<xsl:stylesheet xmlns:xsl="http://www.w3.org/1999/XSL/Transform" version="1.0">
<xsl:output method="xml" omit-xml-declaration="yes" indent="yes"/>
<xsl:template match="/">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="DocStyles">
<DocStyles>
<xsl:apply-templates/>
</DocStyles>
</xsl:template>
<xsl:template match="DcStyles">
<xsl:apply-templates/>
</xsl:template>
<xsl:template match="DocStyle">
<DocStyle>
<xsl:apply-templates select="Name"/>
<xsl:apply-templates select="Index"/>
<xsl:apply-templates select="numberingsequence"/>
<xsl:apply-templates select="IndexOtherThanFirstPage"/>
<xsl:apply-templates select="IsStepSection"/>
<xsl:apply-templates select="UseCheckOffs"/>
<xsl:apply-templates select ="UseColSByLevel"/>
<xsl:apply-templates select="oldtonew"/>
<xsl:apply-templates select="CancelSectTitle"/>
<xsl:apply-templates select="SpecialStepsFoldout"/>
<xsl:apply-templates select="UndSpecialStepsFoldout"/>
<xsl:apply-templates select="ExtraLineHeader"/>
<xsl:apply-templates select="AlignHLSTabWithSect"/>
<xsl:apply-templates select="ComponentList"/>
<xsl:apply-templates select="pagestyle"/>
<xsl:apply-templates select="dstyle|DocStructStyle|TopMargin|ContStyle|EndStyle|FinalMsg|CenterLineX|CenterLineYTop|CenterLineYBottom|LandscapePageList|ShowSectionTitles"/>
</DocStyle>
</xsl:template>
<xsl:template match="numberingsequence">
<xsl:attribute name="NumberingSequence"><xsl:value-of select="."/></xsl:attribute>
</xsl:template>
<xsl:template match="IndexOtherThanFirstPage">
<xsl:if test=".!=0">
<xsl:attribute name="IndexOtherThanFirstPage">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CenterLineX">
<xsl:if test=".!=0">
<xsl:attribute name="CenterLineX">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CenterLineYTop">
<xsl:if test=".!=0">
<xsl:attribute name="CenterLineYTop">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="CenterLineYBottom">
<xsl:if test=".!=0">
<xsl:attribute name="CenterLineYBottom">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="LandscapePageList">
<xsl:if test=".!='false'">
<xsl:attribute name="LandscapePageList">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="ShowSectionTitles">
<xsl:if test=".!='false'">
<xsl:attribute name="ShowSectionTitles">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="IsStepSection">
<xsl:attribute name="IsStepSection"><xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="UseCheckOffs">
<xsl:attribute name="UseCheckOffs">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="UseColSByLevel">
<xsl:attribute name="UseColSByLevel">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="oldtonew">
<xsl:attribute name="OldToNew"><xsl:value-of select="."/></xsl:attribute>
</xsl:template>
<xsl:template match="CancelSectTitle">
<xsl:attribute name="CancelSectTitle">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="SpecialStepsFoldout">
<xsl:attribute name="SpecialStepsFoldout">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="UndSpecialStepsFoldout">
<xsl:attribute name="UndSpecialStepsFoldout">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="ExtraLineHeader">
<xsl:attribute name="ExtraLineHeader">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="AlignHLSTabWithSect">
<xsl:attribute name="AlignHLSTabWithSect">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:template>
<xsl:template match="ComponentList">
<xsl:if test=".!='false'">
<xsl:attribute name="ComponentList">
<xsl:value-of select="."/>
</xsl:attribute>
</xsl:if>
</xsl:template>
<xsl:template match="dstyle">
<xsl:if test="string-length(./FontFamily)+string-length(./FontSize)+string-length(./FontStyle)>0">
<Font>
<xsl:if test="FontFamily">
<xsl:attribute name="Family">
<xsl:value-of select="FontFamily"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="FontSize">
<xsl:attribute name="Size">
<xsl:value-of select="FontSize"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="FontStyle">
<xsl:attribute name="Style">
<xsl:value-of select="FontStyle"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="CPI">
<xsl:attribute name="CPI">
<xsl:value-of select="CPI"/>
</xsl:attribute>
</xsl:if>
</Font>
</xsl:if>
</xsl:template>
<xsl:template match="TopMargin">
<Layout>
<xsl:attribute name="TopMargin"><xsl:value-of select="."/></xsl:attribute>
<xsl:attribute name="FooterLength"><xsl:value-of select="..//FooterLen"/></xsl:attribute>
<xsl:attribute name="PageLength"><xsl:value-of select="..//PageLength"/></xsl:attribute>
<xsl:attribute name="PageWidth"><xsl:value-of select="..//PageWidth"/></xsl:attribute>
<xsl:attribute name="LeftMargin"><xsl:value-of select="..//LeftMargin"/></xsl:attribute>
<xsl:apply-templates/>
</Layout>
</xsl:template>
<xsl:template match="ContStyle">
<xsl:if test="string-length(..//ContTop)+string-length(..//ContBottom)>0">
<Continue>
<xsl:if test="string-length(./FontFamily)+string-length(./FontSize)+string-length(./FontStyle)>0">
<Font>
<xsl:if test="FontFamily">
<xsl:attribute name="Family">
<xsl:value-of select="FontFamily"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="FontSize">
<xsl:attribute name="Size">
<xsl:value-of select="FontSize"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="FontStyle">
<xsl:attribute name="Style">
<xsl:value-of select="FontStyle"/>
</xsl:attribute>
</xsl:if>
</Font>
</xsl:if>
<Top>
<xsl:if test="..//ContTop != 'empty'">
<xsl:attribute name="Message">
<xsl:value-of select="../ContTop"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="..//ContTopHLS != 'empty'">
<xsl:attribute name="HLS">
<xsl:value-of select="..//ContTopHLS"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="..//CTMargin != 'empty'">
<xsl:attribute name="Margin">
<xsl:value-of select="..//CTMargin"/>
</xsl:attribute>
</xsl:if>
</Top>
<Bottom>
<xsl:if test="..//ContBottom != 'empty'">
<xsl:attribute name="Message">
<xsl:value-of select="../ContBottom"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="..//CBMargin != 'empty'">
<xsl:attribute name="Margin">
<xsl:value-of select="..//CBMargin"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="..//CBMarginR != 0">
<xsl:attribute name="MarginR">
<xsl:value-of select="..//CBMarginR"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="..//CBLoc != 'empty'">
<xsl:attribute name="Location">
<xsl:value-of select="..//CBLoc"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="..//CBNoOverrideSpace != 'false'">
<xsl:attribute name="NoOverrideSpace">
<xsl:value-of select="..//CBNoOverrideSpace"/>
</xsl:attribute>
</xsl:if>
</Bottom>
</Continue>
</xsl:if>
</xsl:template>
<xsl:template match="EndStyle">
<xsl:if test="../EndString != 'empty'">
<End>
<xsl:if test="../EndFlag != 'empty'">
<xsl:attribute name="Flag">
<xsl:value-of select="../EndFlag"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="../EndMargin != 'empty'">
<xsl:attribute name="Margin">
<xsl:value-of select="../EndMargin"/>
</xsl:attribute>
</xsl:if>
<xsl:attribute name="Message">
<xsl:value-of select="../EndString"/>
</xsl:attribute>
<xsl:if test="string-length(./FontFamily)+string-length(./FontSize)+string-length(./FontStyle)>0">
<Font>
<xsl:if test="FontFamily">
<xsl:attribute name="Family">
<xsl:value-of select="FontFamily"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="FontSize">
<xsl:attribute name="Size">
<xsl:value-of select="FontSize"/>
</xsl:attribute>
</xsl:if>
<xsl:if test="FontStyle">
<xsl:attribute name="Style">
<xsl:value-of select="FontStyle"/>
</xsl:attribute>
</xsl:if>
</Font>
</xsl:if>
</End>
</xsl:if>
</xsl:template>
<xsl:template match="FinalMsg">
<Final>
<xsl:attribute name="Message"><xsl:value-of select="."/></xsl:attribute>
</Final>
</xsl:template>
<xsl:template match="DocStructStyle">
<StructureStyle>
<xsl:attribute name="Where"><xsl:value-of select="DocStyleUse"/></xsl:attribute>
<xsl:if test="DocStyle != 'None'"><xsl:attribute name="Style"><xsl:value-of select="DocStyle"/></xsl:attribute></xsl:if>
</StructureStyle>
</xsl:template>
<xsl:template match="Name">
<xsl:attribute name="Name"><xsl:value-of select="."/></xsl:attribute>
</xsl:template>
<xsl:template match="Index">
<xsl:attribute name="Index"><xsl:value-of select="."/></xsl:attribute>
</xsl:template>
<xsl:template match="pagestyle">
<xsl:attribute name="PageStyle"><xsl:value-of select="."/></xsl:attribute>
</xsl:template>
<xsl:template match="text()"/>
</xsl:stylesheet>