home *** CD-ROM | disk | FTP | other *** search
/ Freelog 52 / Freelog052.iso / Dossier / OpenOffice / f_0372 / docbooktosoffheadings.xsl
Extensible Markup Language  |  2003-07-22  |  41KB  |  1,159 lines

  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3.  #  The Contents of this file are made available subject to the terms of
  4.  #  either of the following licenses
  5.  #
  6.  #         - GNU Lesser General Public License Version 2.1
  7.  #         - Sun Industry Standards Source License Version 1.1
  8.  #
  9.  #  Sun Microsystems Inc., October, 2000
  10.  #
  11.  #  GNU Lesser General Public License Version 2.1
  12.  #  =============================================
  13.  #  Copyright 2000 by Sun Microsystems, Inc.
  14.  #  901 San Antonio Road, Palo Alto, CA 94303, USA
  15.  #
  16.  #  This library is free software; you can redistribute it and/or
  17.  #  modify it under the terms of the GNU Lesser General Public
  18.  #  License version 2.1, as published by the Free Software Foundation.
  19.  #
  20.  #  This library is distributed in the hope that it will be useful,
  21.  #  but WITHOUT ANY WARRANTY; without even the implied warranty of
  22.  #  MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
  23.  #  Lesser General Public License for more details.
  24.  #
  25.  #  You should have received a copy of the GNU Lesser General Public
  26.  #  License along with this library; if not, write to the Free Software
  27.  #  Foundation, Inc., 59 Temple Place, Suite 330, Boston,
  28.  #  MA  02111-1307  USA
  29.  #
  30.  #
  31.  #  Sun Industry Standards Source License Version 1.1
  32.  #  =================================================
  33.  #  The contents of this file are subject to the Sun Industry Standards
  34.  #  Source License Version 1.1 (the "License"); You may not use this file
  35.  #  except in compliance with the License. You may obtain a copy of the
  36.  #  License at http://www.openoffice.org/license.html.
  37.  #
  38.  #  Software provided under this License is provided on an "AS IS" basis,
  39.  #  WITHOUT WARRANTY OF ANY KIND, EITHER EXPRESSED OR IMPLIED, INCLUDING,
  40.  #  WITHOUT LIMITATION, WARRANTIES THAT THE SOFTWARE IS FREE OF DEFECTS,
  41.  #  MERCHANTABLE, FIT FOR A PARTICULAR PURPOSE, OR NON-INFRINGING.
  42.  #  See the License for the specific provisions governing your rights and
  43.  #  obligations concerning the Software.
  44.  #
  45.  #  The Initial Developer of the Original Code is: Sun Microsystems, Inc.
  46.  #
  47.  #  Copyright: 2000 by Sun Microsystems, Inc.
  48.  #
  49.  #  All Rights Reserved.
  50.  #
  51.  #  Contributor(s): _______________________________________
  52.  #
  53.  #
  54.  -->
  55. <xsl:stylesheet version="1.0" xmlns:xsl="http://www.w3.org/1999/XSL/Transform" xmlns:fo="http://www.w3.org/1999/XSL/Format"
  56. xmlns:office="http://openoffice.org/2000/office" xmlns:style="http://openoffice.org/2000/style" xmlns:text="http://openoffice.org/2000/text" xmlns:table="http://openoffice.org/2000/table" xmlns:draw="http://openoffice.org/2000/drawing"  xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:meta="http://openoffice.org/2000/meta" xmlns:number="http://openoffice.org/2000/datastyle" xmlns:svg="http://www.w3.org/2000/svg" xmlns:chart="http://openoffice.org/2000/chart" xmlns:dr3d="http://openoffice.org/2000/dr3d" xmlns:math="http://www.w3.org/1998/Math/MathML" xmlns:form="http://openoffice.org/2000/form" xmlns:script="http://openoffice.org/2000/script" xmlns:config="http://openoffice.org/2001/config" office:class="text" office:version="1.0">
  57.     <xsl:decimal-format name="staff" digit="D" />
  58. <xsl:template match="/">
  59.     <xsl:element name="office:document">
  60.             <office:meta>
  61.         <meta:generator>StarOffice 6.1 (Solaris Sparc)</meta:generator>
  62.         <dc:title><xsl:value-of select="/article/articleinfo/title"/></dc:title>
  63.         <dc:description></dc:description>
  64.         <dc:subject></dc:subject>
  65.         <meta:creation-date>2002-07-15T12:38:53</meta:creation-date>
  66.         <dc:date><xsl:value-of select="article/articleinfo/pubdate"/></dc:date>
  67.         <dc:language><xsl:value-of select="article/@lang"/></dc:language>
  68.         <meta:editing-cycles>21</meta:editing-cycles>
  69.         <meta:editing-duration>P1DT0H11M54S</meta:editing-duration>
  70.         <meta:user-defined meta:name="Info 1"/>
  71.         <meta:user-defined meta:name="Info 2"/>
  72.         <meta:user-defined meta:name="Info 3"/>
  73.         <meta:user-defined meta:name="Info 4"/>
  74.         <meta:document-statistic meta:table-count="1" meta:image-count="0" meta:object-count="0" meta:page-count="1" meta:paragraph-count="42" meta:word-count="144" meta:character-count="820"/>
  75.     </office:meta>
  76.     <office:automatic-styles>
  77.         <style:style style:name="fr1" style:family="graphics" style:parent-style-name="Graphics" ><style:properties style:horizontal-pos="center" style:horizontal-rel="paragraph" style:mirror="none" fo:clip="rect(0cm 0cm 0cm 0cm)" draw:luminance="0%" draw:contrast="0%" draw:red="0%" draw:green="0%" draw:blue="0%" draw:gamma="1" draw:color-inversion="false" draw:transparency="-100%" draw:color-mode="standard" ></style:properties>
  78. </style:style>
  79.  
  80.         <style:style style:name="Table1" style:family="table">
  81.             <style:properties style:width="14.649cm" table:align="margins"/>
  82.         </style:style>
  83.         <style:style style:name="Table1.A" style:family="table-column">
  84.             <style:properties style:column-width="2.93cm" style:rel-column-width="13107*"/>
  85.         </style:style>
  86.         <style:style style:name="Table1.A1" style:family="table-cell">
  87.             <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="0.002cm solid #000000" fo:border-bottom="0.002cm solid #000000"/>
  88.         </style:style>
  89.         <style:style style:name="Table1.E1" style:family="table-cell">
  90.             <style:properties fo:padding="0.097cm" fo:border="0.002cm solid #000000"/>
  91.         </style:style>
  92.         <style:style style:name="Table1.A2" style:family="table-cell">
  93.             <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="none" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  94.         </style:style>
  95.         <style:style style:name="Table1.E2" style:family="table-cell">
  96.             <style:properties fo:padding="0.097cm" fo:border-left="0.002cm solid #000000" fo:border-right="0.002cm solid #000000" fo:border-top="none" fo:border-bottom="0.002cm solid #000000"/>
  97.         </style:style>
  98.         <style:style style:name="P1" style:family="paragraph" style:parent-style-name="Text body" style:list-style-name="Ordered List"/>
  99.         <style:style style:name="T1" style:family="text" style:parent-style-name="Source Text">
  100.             <style:properties fo:font-style="normal"/>
  101.         </style:style>
  102.         
  103.         <style:page-master style:name="pm1">
  104.             <style:properties fo:page-width="20.999cm" fo:page-height="29.699cm" style:num-format="1" style:print-orientation="portrait" fo:margin-top="2.54cm" fo:margin-bottom="2.54cm" fo:margin-left="3.175cm" fo:margin-right="3.175cm" style:writing-mode="lr-tb" style:footnote-max-height="0cm">
  105.                 <style:footnote-sep style:width="0.018cm" style:distance-before-sep="0.101cm" style:distance-after-sep="0.101cm" style:adjustment="left" style:rel-width="25%" style:color="#000000"/>
  106.             </style:properties>
  107.             <style:header-style/>
  108.             <style:footer-style/>
  109.         </style:page-master>
  110.     </office:automatic-styles>
  111.     <office:master-styles>
  112.         <style:master-page style:name="Standard" style:page-master-name="pm1"/>
  113.     </office:master-styles>
  114.             <office:body>                 
  115.                 <xsl:apply-templates/>
  116.             </office:body>
  117.     </xsl:element>
  118. </xsl:template>
  119.  
  120. <xsl:template match="subtitle">
  121. <xsl:choose>
  122.     <xsl:when test="parent::table">
  123.             <xsl:apply-templates/>
  124.     </xsl:when>
  125.     <xsl:when test="parent::informaltable">
  126.             <xsl:apply-templates/>
  127.     </xsl:when>
  128.     <xsl:otherwise>
  129.         <xsl:element name="text:p">                
  130.                     <xsl:attribute name="text:style-name">Section SubTitle</xsl:attribute>
  131.         </xsl:element>
  132.     </xsl:otherwise>
  133. </xsl:choose>
  134. </xsl:template>
  135.  
  136.  
  137.  
  138.  
  139. <xsl:template match="title">
  140. <xsl:choose>
  141.     <xsl:when test="parent::figure">
  142.     </xsl:when>
  143.     <xsl:when test="parent::table">
  144.     </xsl:when>
  145.     <xsl:when test="parent::sect1">
  146.     </xsl:when>
  147. <xsl:when test="parent::sect2">
  148.     </xsl:when>
  149. <xsl:when test="parent::sect3">
  150.     </xsl:when>
  151. <xsl:when test="parent::sect4">
  152.     </xsl:when>
  153. <xsl:when test="parent::sect5">
  154.     </xsl:when>
  155.     <xsl:when test="parent::informaltable">
  156.             <xsl:apply-templates/>
  157.     </xsl:when>
  158.     
  159.     <xsl:otherwise>
  160.         <xsl:element name="text:p">                
  161.             <xsl:choose>    
  162.                 
  163.                 <xsl:when test="parent::appendix">
  164.                                  <xsl:attribute name="text:style-name">Appendix Title</xsl:attribute>     
  165.                 </xsl:when>
  166.              </xsl:choose>
  167.             <xsl:apply-templates/>
  168.         </xsl:element>
  169.     </xsl:otherwise>
  170. </xsl:choose>
  171. </xsl:template>
  172.  
  173. <xsl:template match="articleinfo">
  174.     <xsl:element name="text:section">
  175.         <xsl:attribute name="text:style-name">ArticleInfo</xsl:attribute>
  176.         <xsl:attribute name="text:name">ArticleInfo</xsl:attribute>
  177.             <xsl:if test="/article/articleinfo/title !=''">
  178.                          <xsl:element name="text:p">
  179.                             <xsl:attribute name="text:style-name">Document Title</xsl:attribute>
  180.                             <xsl:value-of select="/article/articleinfo/title"/>
  181.                         </xsl:element>
  182.                         <xsl:if test="/article/articleinfo/subtitle !=''">
  183.                             <xsl:element name="text:p">
  184.                                 <xsl:attribute name="text:style-name">Document SubTitle</xsl:attribute>
  185.                                 <xsl:value-of select="/article/articleinfo/subtitle"/>
  186.                             </xsl:element>
  187.                         </xsl:if>
  188.                  </xsl:if>
  189.             <xsl:apply-templates/>
  190.     </xsl:element>
  191.     
  192. </xsl:template>
  193.  
  194. <xsl:template match="appendix">
  195.     <xsl:element name="text:section">
  196.         <xsl:attribute name="text:style-name">Appendix</xsl:attribute>
  197.         <xsl:attribute name="text:name">Appendix</xsl:attribute>
  198.             <xsl:apply-templates/>
  199.     </xsl:element>
  200.     
  201. </xsl:template>
  202.  
  203. <!--
  204. <xsl:template match="author">
  205.     <xsl:apply-templates/>
  206. </xsl:template>
  207.  
  208. <xsl:template match="firstname">
  209.      <xsl:element name="text:variable-set">
  210.          <xsl:attribute name="text:name">
  211.              <xsl:if test="ancestor::articleinfo/author">
  212.                  <xsl:text disable-output-escaping="yes">articleinfo.author</xsl:text><xsl:value-of select="count(parent::author[preceding-sibling::author])"/><xsl:text disable-output-escaping="yes">.firstname</xsl:text><xsl:value-of select="count(preceding-sibling::firstname)"/>
  213.              </xsl:if>
  214.         </xsl:attribute>
  215.         <xsl:apply-templates/>
  216.     </xsl:element>
  217.  
  218. </xsl:template>-->
  219.  
  220. <xsl:template match="articleinfo/title">
  221.     <!-- <xsl:element name="text:variable-decls">
  222.                  <xsl:element name="text:variable-decl">
  223.                      <xsl:attribute name="text:value-type">
  224.                          <xsl:text>string</xsl:text>    
  225.                      </xsl:attribute>
  226.                   <xsl:attribute name="text:name">
  227.                      <xsl:text disable-output-escaping="yes">articleinfo.title</xsl:text>
  228.                       </xsl:attribute>
  229.                    </xsl:element>
  230.                    
  231.           </xsl:element>
  232.           <xsl:element name="text:p">
  233.      <xsl:element name="text:variable-set">
  234.          <xsl:attribute name="text:value-type">
  235.                          <xsl:text>string</xsl:text>    
  236.                      </xsl:attribute>
  237.          <xsl:attribute name="text:name">
  238.              <xsl:text disable-output-escaping="yes">articleinfo.title</xsl:text>
  239.         </xsl:attribute>
  240.         <xsl:apply-templates/>
  241.     </xsl:element>    
  242.     </xsl:element>-->
  243. </xsl:template>
  244.  
  245. <xsl:template match="articleinfo/subtitle">
  246.      <xsl:element name="text:variable-decls">
  247.                  <xsl:element name="text:variable-decl">
  248.                      <xsl:attribute name="text:value-type">
  249.                          <xsl:text>string</xsl:text>    
  250.                      </xsl:attribute>
  251.                   <xsl:attribute name="text:name">
  252.                      <xsl:text disable-output-escaping="yes">articleinfo.subtitle</xsl:text>
  253.                       </xsl:attribute>
  254.                    </xsl:element>
  255.           </xsl:element>
  256.           <xsl:element name="text:p">
  257.      <xsl:element name="text:variable-set">
  258.          <xsl:attribute name="text:value-type">
  259.                          <xsl:text>string</xsl:text>    
  260.                      </xsl:attribute>
  261.          <xsl:attribute name="text:name">
  262.              <xsl:text disable-output-escaping="yes">articleinfo.subtitle</xsl:text>
  263.         </xsl:attribute>
  264.         <xsl:apply-templates/>
  265.     </xsl:element>
  266.     </xsl:element>
  267. </xsl:template>
  268.  
  269. <xsl:template match="articleinfo/edition">
  270.      <xsl:element name="text:variable-decls">
  271.                  <xsl:element name="text:variable-decl">
  272.                      <xsl:attribute name="text:value-type">
  273.                          <xsl:text>string</xsl:text>    
  274.                      </xsl:attribute>
  275.                   <xsl:attribute name="text:name">
  276.                      <xsl:text disable-output-escaping="yes">articleinfo.edition</xsl:text>
  277.                       </xsl:attribute>
  278.                    </xsl:element>
  279.           </xsl:element>
  280.           <xsl:element name="text:p">
  281.      <xsl:element name="text:variable-set">
  282.          <xsl:attribute name="text:value-type">
  283.                          <xsl:text>string</xsl:text>    
  284.                  </xsl:attribute>
  285.          <xsl:attribute name="text:name">
  286.              <xsl:text disable-output-escaping="yes">articleinfo.edition</xsl:text>
  287.         </xsl:attribute>
  288.         <xsl:apply-templates/>
  289.     </xsl:element>
  290.     </xsl:element>
  291. </xsl:template>
  292.  
  293. <xsl:template match="articleinfo/releaseinfo">
  294.       <xsl:element name="text:variable-decls">
  295.                  <xsl:element name="text:variable-decl">
  296.                      <xsl:attribute name="text:value-type">
  297.                          <xsl:text>string</xsl:text>    
  298.                      </xsl:attribute>
  299.                   <xsl:attribute name="text:name">
  300.                      <xsl:text disable-output-escaping="yes">articleinfo.releaseinfo_</xsl:text><xsl:value-of select="count(preceding-sibling::releaseinfo)"/>
  301.                       </xsl:attribute>
  302.                    </xsl:element>
  303.           </xsl:element>
  304.           <xsl:element name="text:p">
  305.      <xsl:element name="text:variable-set">
  306.          <xsl:attribute name="text:value-type">
  307.                          <xsl:text>string</xsl:text>    
  308.                 </xsl:attribute>
  309.          <xsl:attribute name="text:name">
  310.              <xsl:text disable-output-escaping="yes">articleinfo.releaseinfo_</xsl:text><xsl:value-of select="count(preceding-sibling::releaseinfo)"/>
  311.         </xsl:attribute>
  312.         <xsl:apply-templates/>
  313.     </xsl:element>
  314.     </xsl:element>
  315. </xsl:template>
  316.  
  317.  
  318. <xsl:template match="author/firstname">
  319.       <xsl:element name="text:variable-decls">
  320.                  <xsl:element name="text:variable-decl">
  321.                      <xsl:attribute name="text:value-type">
  322.                          <xsl:text>string</xsl:text>    
  323.                      </xsl:attribute>
  324.                     
  325.                   <xsl:attribute name="text:name">
  326.                       <xsl:if test="ancestor::articleinfo">
  327.                      <xsl:text disable-output-escaping="yes">articleinfo.author_</xsl:text><xsl:value-of select="count(parent::author[preceding-sibling::author])"/><xsl:text disable-output-escaping="yes">.firstname_</xsl:text><xsl:value-of select="count(preceding-sibling::firstname)"/>
  328.                  </xsl:if>
  329.                       </xsl:attribute>
  330.                    </xsl:element>
  331.           </xsl:element>
  332.           <xsl:element name="text:p">
  333.      <xsl:element name="text:variable-set">
  334.          <xsl:attribute name="text:value-type">
  335.                          <xsl:text>string</xsl:text>    
  336.                 </xsl:attribute>
  337.          <xsl:attribute name="text:name">
  338.              <xsl:if test="ancestor::articleinfo">
  339.                  <xsl:text disable-output-escaping="yes">articleinfo.author_</xsl:text><xsl:value-of select="count(parent::author[preceding-sibling::author])"/><xsl:text disable-output-escaping="yes">.firstname_</xsl:text><xsl:value-of select="count(preceding-sibling::firstname)"/>
  340.             </xsl:if>
  341.         </xsl:attribute>
  342.         <xsl:apply-templates/>
  343.     </xsl:element>
  344.     </xsl:element>
  345. </xsl:template>
  346.  
  347.  
  348.  
  349. <xsl:template match="articleinfo/copyright/year">
  350.       <xsl:element name="text:variable-decls">
  351.                  <xsl:element name="text:variable-decl">
  352.                      <xsl:attribute name="text:value-type">
  353.                          <xsl:text>string</xsl:text>    
  354.                      </xsl:attribute>
  355.                     
  356.                   <xsl:attribute name="text:name">
  357.                       <xsl:if test="ancestor::articleinfo/copyright">
  358.                      <xsl:text disable-output-escaping="yes">articleinfo.copyright_</xsl:text><xsl:value-of select="count(parent::copyright[preceding-sibling::copyright])"/><xsl:text disable-output-escaping="yes">.year_</xsl:text><xsl:value-of select="count(preceding-sibling::year)"/>
  359.                  </xsl:if>
  360.                       </xsl:attribute>
  361.                    </xsl:element>
  362.           </xsl:element>
  363.           <xsl:element name="text:p">
  364.      <xsl:element name="text:variable-set">
  365.          <xsl:attribute name="text:value-type">
  366.                          <xsl:text>string</xsl:text>    
  367.                 </xsl:attribute>
  368.          <xsl:attribute name="text:name">
  369.              <xsl:if test="ancestor::articleinfo/copyright">
  370.                      <xsl:text disable-output-escaping="yes">articleinfo.copyright_</xsl:text><xsl:value-of select="count(parent::copyright[preceding-sibling::copyright])"/><xsl:text disable-output-escaping="yes">.year_</xsl:text><xsl:value-of select="count(preceding-sibling::year)"/>
  371.                  </xsl:if>
  372.         </xsl:attribute>
  373.         <xsl:apply-templates/>
  374.     </xsl:element>
  375.     </xsl:element>
  376. </xsl:template>
  377.  
  378. <xsl:template match="authorgroup">
  379.     <xsl:apply-templates/>
  380. </xsl:template>
  381.  
  382. <xsl:template match="articleinfo/copyright/holder">
  383.       <xsl:element name="text:variable-decls">
  384.                  <xsl:element name="text:variable-decl">
  385.                      <xsl:attribute name="text:value-type">
  386.                          <xsl:text>string</xsl:text>    
  387.                      </xsl:attribute>
  388.                     
  389.                   <xsl:attribute name="text:name">
  390.                       <xsl:if test="ancestor::articleinfo/copyright">
  391.                      <xsl:text disable-output-escaping="yes">articleinfo.copyright_</xsl:text><xsl:value-of select="count(parent::copyright[preceding-sibling::copyright])"/><xsl:text disable-output-escaping="yes">.holder_</xsl:text><xsl:value-of select="count(preceding-sibling::holder)"/>
  392.                  </xsl:if>
  393.                       </xsl:attribute>
  394.                    </xsl:element>
  395.           </xsl:element>
  396.           <xsl:element name="text:p">
  397.      <xsl:element name="text:variable-set">
  398.          <xsl:attribute name="text:value-type">
  399.                          <xsl:text>string</xsl:text>    
  400.                 </xsl:attribute>
  401.          <xsl:attribute name="text:name">
  402.              <xsl:if test="ancestor::articleinfo/copyright">
  403.                      <xsl:text disable-output-escaping="yes">articleinfo.copyright_</xsl:text><xsl:value-of select="count(parent::copyright[preceding-sibling::copyright])"/><xsl:text disable-output-escaping="yes">.holder_</xsl:text><xsl:value-of select="count(preceding-sibling::holder)"/>
  404.                  </xsl:if>
  405.         </xsl:attribute>
  406.         <xsl:apply-templates/>
  407.     </xsl:element>
  408.     </xsl:element>
  409. </xsl:template>
  410.  
  411.  
  412.  
  413.  
  414. <xsl:template name="affiliation">
  415.     <xsl:apply-templates/>
  416. </xsl:template>
  417.  
  418. <xsl:template match="author/affiliation/address">
  419.       <xsl:element name="text:variable-decls">
  420.                  <xsl:element name="text:variable-decl">
  421.                      <xsl:attribute name="text:value-type">
  422.                          <xsl:text>string</xsl:text>    
  423.                      </xsl:attribute>
  424.                   <xsl:attribute name="text:name">
  425.                      <xsl:text disable-output-escaping="yes">articleinfo.author_</xsl:text><xsl:value-of select="count(ancestor::author[preceding-sibling::author])"/><xsl:text disable-output-escaping="yes">.affiliation_</xsl:text><xsl:value-of select="count(parent::affiliation[preceding-sibling::affiliation])"/><xsl:text disable-output-escaping="yes">.address_</xsl:text><xsl:value-of select="count(preceding-sibling::address)"/>
  426.                       </xsl:attribute>
  427.                    </xsl:element>
  428.           </xsl:element>
  429.           <xsl:element name="text:p">
  430.      <xsl:element name="text:variable-set">
  431.          <xsl:attribute name="text:value-type">
  432.                          <xsl:text>string</xsl:text>    
  433.                 </xsl:attribute>
  434.          <xsl:attribute name="text:name">
  435.              <xsl:text disable-output-escaping="yes">articleinfo.author_</xsl:text><xsl:value-of select="count(ancestor::author[preceding-sibling::author])"/><xsl:text disable-output-escaping="yes">.affiliation_</xsl:text><xsl:value-of select="count(parent::affiliation[preceding-sibling::affiliation])"/><xsl:text disable-output-escaping="yes">.address_</xsl:text><xsl:value-of select="count(preceding-sibling::address)"/>
  436.  
  437.         </xsl:attribute>
  438.         <xsl:apply-templates/>
  439.     </xsl:element>
  440.     </xsl:element>
  441. </xsl:template>
  442.  
  443. <xsl:template match="author/affiliation/orgname">
  444.       <xsl:element name="text:variable-decls">
  445.                  <xsl:element name="text:variable-decl">
  446.                      <xsl:attribute name="text:value-type">
  447.                          <xsl:text>string</xsl:text>    
  448.                      </xsl:attribute>
  449.                      <xsl:if test="ancestor::articleinfo">
  450.                   <xsl:attribute name="text:name">
  451.                      <xsl:text disable-output-escaping="yes">articleinfo.author_</xsl:text><xsl:value-of select="count(ancestor::author[preceding-sibling::author])"/><xsl:text disable-output-escaping="yes">.affiliation_</xsl:text><xsl:value-of select="count(parent::affiliation[preceding-sibling::affiliation])"/><xsl:text disable-output-escaping="yes">.orgname_</xsl:text><xsl:value-of select="count(preceding-sibling::orgname)"/>
  452.                       </xsl:attribute>
  453.                   </xsl:if>
  454.                    </xsl:element>
  455.           </xsl:element>
  456.           <xsl:element name="text:p">
  457.      <xsl:element name="text:variable-set">
  458.          <xsl:attribute name="text:value-type">
  459.                          <xsl:text>string</xsl:text>    
  460.                 </xsl:attribute>
  461.                  <xsl:if test="ancestor::articleinfo">
  462.          <xsl:attribute name="text:name">
  463.                  <xsl:text disable-output-escaping="yes">articleinfo.author_</xsl:text><xsl:value-of select="count(ancestor::author[preceding-sibling::author])"/><xsl:text disable-output-escaping="yes">.affiliation_</xsl:text><xsl:value-of select="count(parent::affiliation[preceding-sibling::affiliation])"/><xsl:text disable-output-escaping="yes">.orgname_</xsl:text><xsl:value-of select="count(preceding-sibling::orgname)"/>
  464.         </xsl:attribute>
  465.         </xsl:if>
  466.         <xsl:apply-templates/>        
  467.     </xsl:element>
  468.     </xsl:element>
  469. </xsl:template>
  470.  
  471.  
  472.  
  473. <xsl:template match="author/surname">
  474.       <xsl:element name="text:variable-decls">
  475.                  <xsl:element name="text:variable-decl">
  476.                      <xsl:attribute name="text:value-type">
  477.                          <xsl:text>string</xsl:text>    
  478.                      </xsl:attribute>
  479.                     
  480.                   <xsl:attribute name="text:name">
  481.                      <xsl:text disable-output-escaping="yes">articleinfo.author_</xsl:text><xsl:value-of select="count(parent::author[preceding-sibling::author])"/><xsl:text disable-output-escaping="yes">.surname_</xsl:text><xsl:value-of select="count(preceding-sibling::surname)"/>
  482.                       </xsl:attribute>
  483.                    </xsl:element>
  484.           </xsl:element>
  485.           <xsl:element name="text:p">
  486.      <xsl:element name="text:variable-set">
  487.         <xsl:attribute name="text:value-type">
  488.                          <xsl:text>string</xsl:text>    
  489.                 </xsl:attribute>
  490.          <xsl:attribute name="text:name">
  491.                  <xsl:text disable-output-escaping="yes">articleinfo.author_</xsl:text><xsl:value-of select="count(parent::author[preceding-sibling::author])"/><xsl:text disable-output-escaping="yes">.surname_</xsl:text><xsl:value-of select="count(preceding-sibling::surname)"/>
  492.  
  493.         
  494.         </xsl:attribute>
  495.         <xsl:apply-templates/>
  496.     </xsl:element>
  497.     </xsl:element>
  498. </xsl:template>
  499.  
  500.  
  501.  
  502.  
  503.  
  504. <xsl:template match="para">
  505. <xsl:choose>
  506. <xsl:when test="ancestor::varlistentry">
  507.         <xsl:element name="text:p">
  508.             <xsl:attribute name="text:style-name">VarList Term</xsl:attribute>
  509.             <xsl:apply-templates />
  510.         </xsl:element>
  511. </xsl:when>
  512. <xsl:otherwise>
  513.     <xsl:element name="text:p">
  514. <xsl:choose>
  515.     <xsl:when test="ancestor-or-self::footnote">
  516.          <xsl:attribute name= "text:style-name"><xsl:text>Footnote</xsl:text></xsl:attribute>
  517.     </xsl:when>
  518.     <xsl:when test="ancestor-or-self::listitem">
  519.          <xsl:attribute name= "text:style-name"><xsl:text>VarList Item</xsl:text></xsl:attribute>
  520.     </xsl:when>
  521.     <xsl:when test="ancestor-or-self::informaltable">
  522.         <xsl:if test="ancestor-or-self::informaltable">
  523.             <xsl:attribute name="text:style-name">Table Contents</xsl:attribute>
  524.         </xsl:if>
  525.         <xsl:if test="ancestor-or-self::thead ">
  526.             <xsl:attribute name="text:style-name">Table Heading</xsl:attribute>
  527.         </xsl:if>
  528.     </xsl:when>
  529.     <xsl:when test="ancestor-or-self::table">
  530.     <xsl:if test="ancestor-or-self::table">
  531.             <xsl:attribute name="text:style-name">Table Contents</xsl:attribute>
  532.         </xsl:if>
  533.         <xsl:if test="ancestor-or-self::thead ">
  534.             <xsl:attribute name="text:style-name">Table Heading</xsl:attribute>
  535.         </xsl:if>
  536.     </xsl:when>
  537.     <xsl:otherwise>
  538.             <xsl:attribute name="text:style-name">Text body</xsl:attribute>
  539.     </xsl:otherwise>
  540. </xsl:choose>
  541.         <xsl:apply-templates/>    
  542. </xsl:element>
  543.  
  544. </xsl:otherwise>
  545. </xsl:choose>
  546. </xsl:template>
  547.  
  548. <xsl:template match="section">
  549.     <xsl:element name="text:h">
  550.         <xsl:attribute name="text:level"><xsl:value-of select="count(ancestor-or-self::section) "/></xsl:attribute> 
  551.         <xsl:value-of select="child::title"/> 
  552.     </xsl:element>
  553.     <xsl:apply-templates/>
  554. </xsl:template>
  555.  
  556. <xsl:template match="abstract">
  557.     <xsl:element name="text:h">
  558.         <xsl:attribute name="text:level">1</xsl:attribute> 
  559.         <xsl:text>abstract</xsl:text>
  560.     </xsl:element>
  561.     <xsl:apply-templates/>
  562. </xsl:template>
  563.  
  564.  
  565. <xsl:template match="appendix">
  566.     <xsl:element name="text:h">
  567.         <xsl:attribute name="text:level">1</xsl:attribute> 
  568.         <xsl:text>appendix</xsl:text>
  569.     </xsl:element>
  570.     <xsl:apply-templates/>
  571. </xsl:template>
  572.  
  573. <xsl:template match="sect1">
  574.     <xsl:element name="text:h">
  575.         <xsl:attribute name="text:level">1</xsl:attribute>
  576.         <xsl:value-of select="child::title"/> 
  577.     </xsl:element>
  578.     <xsl:apply-templates/>
  579. </xsl:template>
  580.  
  581. <xsl:template match="sect2">
  582.     <xsl:element name="text:h">
  583.         <xsl:attribute name="text:level">2</xsl:attribute> 
  584.             <xsl:value-of select="child::title"/> 
  585.     </xsl:element>
  586.     <xsl:apply-templates/>
  587. </xsl:template>
  588.  
  589. <xsl:template match="sect3">
  590.     <xsl:element name="text:h">
  591.         <xsl:attribute name="text:level">3</xsl:attribute> 
  592.             <xsl:value-of select="child::title"/> 
  593.     </xsl:element>
  594.     <xsl:apply-templates/>
  595. </xsl:template>
  596.  
  597. <xsl:template match="sect4">
  598.     <xsl:element name="text:h">
  599.         <xsl:attribute name="text:level">4</xsl:attribute> 
  600.             <xsl:value-of select="child::title"/> 
  601.     </xsl:element>
  602.     <xsl:apply-templates/>
  603. </xsl:template>
  604.  
  605. <xsl:template match="sect5">
  606.     <xsl:element name="text:h">
  607.         <xsl:attribute name="text:level">5</xsl:attribute> 
  608.             <xsl:value-of select="child::title"/> 
  609.     </xsl:element>
  610.     <xsl:apply-templates/>
  611. </xsl:template>
  612.  
  613. <!--<xsl:template match="sect5">
  614.     <xsl:element name="text:section">
  615.         <xsl:attribute name="text:style-name">Sect1</xsl:attribute> 
  616.         <xsl:attribute name="text:name"><xsl:value-of select="@id"/></xsl:attribute>
  617.         <xsl:apply-templates/>
  618.     </xsl:element>
  619. </xsl:template>-->
  620.  
  621.  
  622. <xsl:template match="informaltable">
  623.     <xsl:element name="table:table">
  624.         <xsl:attribute name="table:name"></xsl:attribute>
  625.         <xsl:attribute name="table:style-name">Table1</xsl:attribute>
  626.         <xsl:attribute name="table:name"><xsl:value-of select="@id"/></xsl:attribute>
  627.         <xsl:apply-templates/>
  628.     </xsl:element>
  629. </xsl:template>
  630.  
  631.  
  632. <xsl:template match="table">
  633.     <xsl:variable name="tabletitle"><xsl:value-of select="title"/></xsl:variable>
  634.     <xsl:element name="table:table">
  635.         <xsl:attribute name="table:name"></xsl:attribute>
  636.         <xsl:attribute name="table:style-name">Table1</xsl:attribute>
  637.         <xsl:attribute name="table:name"><xsl:value-of select="@id"/></xsl:attribute>
  638.         <xsl:apply-templates/>
  639.     </xsl:element>
  640.     <xsl:if test="not($tabletitle='')">
  641.         <xsl:element name="text:p">
  642.             <xsl:attribute name="text:style-name">Table</xsl:attribute>
  643.                 <xsl:value-of select="$tabletitle"/>
  644.           </xsl:element>
  645.     </xsl:if>
  646. </xsl:template>
  647.  
  648. <xsl:template match="tgroup">
  649.     <xsl:element name="table:table-column">
  650.         <xsl:attribute name="table:style-name">Table1.A</xsl:attribute>
  651.         <xsl:choose>
  652.             <xsl:when test="@cols >0">
  653.                 <xsl:attribute name="table:number-columns-repeated"><xsl:value-of select="@cols"/></xsl:attribute>
  654.             </xsl:when>
  655.             <xsl:otherwise>
  656.                 <xsl:attribute name="table:number-columns-repeated"><xsl:value-of select="count(child::tbody/row/entry) div count(child::tbody/row) "/></xsl:attribute>
  657.             </xsl:otherwise>
  658.         </xsl:choose>
  659.     </xsl:element>
  660.     <xsl:apply-templates/>
  661. </xsl:template>
  662.  
  663.  
  664. <xsl:template match="indexterm">
  665. </xsl:template>
  666.  
  667. <xsl:template match="thead">
  668.     <xsl:element name="table:table-header-rows">
  669.         <xsl:apply-templates />
  670.     </xsl:element>
  671. </xsl:template>
  672.  
  673. <xsl:template match="tbody">
  674.         <xsl:apply-templates />
  675. </xsl:template>
  676.  
  677. <xsl:template match="row">
  678.     <xsl:element name="table:table-row">
  679.         <xsl:apply-templates/>
  680.     </xsl:element>
  681. </xsl:template>
  682.  
  683. <xsl:template match="entry">
  684.     <xsl:element name="table:table-cell">
  685.         <xsl:if test="ancestor-or-self::thead">
  686.             <xsl:attribute name="table:style-name">Table1.A1</xsl:attribute>
  687.         </xsl:if>
  688.         <xsl:if test="not(ancestor-or-self::thead)">
  689.             <xsl:attribute name="table:style-name">Table1.A2</xsl:attribute>
  690.         </xsl:if>
  691.         
  692.         <xsl:choose>
  693.             <xsl:when test="@spanname">
  694.         <!--<xsl:if test="@spanname">-->
  695.                 <xsl:variable name="sname" >
  696.                     <xsl:value-of select="@spanname"/>
  697.                 </xsl:variable>
  698.                 <xsl:attribute name="table:number-columns-spanned">
  699.                     <xsl:variable name="colnamestart">
  700.                         <xsl:value-of select="ancestor::tgroup/spanspec[@spanname=$sname]/@namest"/>
  701.                     </xsl:variable>
  702.                     <xsl:variable name="colnameend">
  703.                         <xsl:value-of select="ancestor::tgroup/spanspec[@spanname=$sname]/@nameend"/>
  704.                     </xsl:variable>
  705.                     <xsl:variable name="colnumstart">
  706.                         <xsl:value-of select="ancestor::tgroup/colspec[@colname=$colnamestart]/@colnum"/>
  707.                     </xsl:variable>
  708.                     <xsl:variable name="colnumend">
  709.                         <xsl:value-of select="ancestor::tgroup/colspec[@colname=$colnameend]/@colnum"/>
  710.                     </xsl:variable>
  711.                     <xsl:value-of select="$colnumend - $colnumstart + 1"/>
  712.                   </xsl:attribute >
  713.         </xsl:when>
  714.         <xsl:when  test="@namest and @nameend">
  715.         <!--<xsl:if test="@namest and @nameend">-->
  716.             <xsl:variable name="colnamestart">
  717.                     <xsl:value-of select="@namest"/>
  718.             </xsl:variable>
  719.             <xsl:variable name="colnameend">
  720.                     <xsl:value-of select="@nameend"/>
  721.             </xsl:variable>
  722.  
  723.             <xsl:attribute name="table:number-columns-spanned">
  724.             <xsl:variable name="colnumstart">
  725.                         <xsl:value-of select="ancestor::tgroup/colspec[@colname=$colnamestart]/@colnum"/>
  726.                     </xsl:variable>
  727.                     <xsl:variable name="colnumend">
  728.                         <xsl:value-of select="ancestor::tgroup/colspec[@colname=$colnameend]/@colnum"/>
  729.                     </xsl:variable>
  730.                     <xsl:value-of select="$colnumend - $colnumstart + 1"/>
  731.  
  732.             </xsl:attribute >
  733.         </xsl:when>
  734.         </xsl:choose>
  735.         <!--
  736.         <xsl:if test="not(@namest = '' ) ">
  737.              <xsl:attribute name="table:number-columns-spanned">
  738.                  <xsl:value-of select="(substring-after(@nameend,'c')-substring-after(@namest,'c'))+1"/>
  739.                  
  740.              </xsl:attribute>
  741.         </xsl:if>
  742.         -->
  743.         <xsl:choose>
  744.             <xsl:when test="not(child::para)">
  745.                 <xsl:element name="text:p">
  746.                         <xsl:if test="ancestor-or-self::thead">
  747.                             <xsl:attribute name="text:style-name">Table Heading</xsl:attribute>
  748.                         </xsl:if>
  749.                         <xsl:if test="ancestor-or-self::tbody">
  750.                             <xsl:attribute name="text:style-name">Table Contents</xsl:attribute>
  751.                         </xsl:if>
  752.                         <xsl:apply-templates/>
  753.                 </xsl:element>
  754.             </xsl:when>
  755.             <xsl:otherwise>
  756.                 <xsl:apply-templates/>
  757.             </xsl:otherwise>
  758.         </xsl:choose>
  759.     </xsl:element>
  760. </xsl:template>
  761.  
  762.  
  763.  
  764.  
  765.  
  766.  
  767. <xsl:template match="figure">
  768.     <xsl:apply-templates/>
  769. </xsl:template>
  770.  
  771. <!--  lists          Section                                          -->
  772.  
  773.  
  774.  
  775. <xsl:template match="itemizedlist">
  776.     <xsl:element name="text:unordered-list">
  777.     <xsl:attribute name="text:style-name">Itemized List</xsl:attribute>
  778.             <xsl:attribute name="text:continue-numbering">false</xsl:attribute>
  779.             <xsl:apply-templates/>
  780.     </xsl:element>
  781. </xsl:template>
  782.  
  783. <xsl:template match="variablelist">
  784.     <xsl:element name="text:unordered-list">
  785.         <xsl:attribute name="text:style-name">Var List</xsl:attribute>
  786.             <xsl:attribute name="text:continue-numbering">false</xsl:attribute>
  787.         <xsl:apply-templates />
  788.     </xsl:element>
  789. </xsl:template>
  790.  
  791. <xsl:template match="orderedlist">
  792. <xsl:element name="text:ordered-list">
  793.     <xsl:attribute name="text:style-name">Ordered List</xsl:attribute>
  794.     <xsl:attribute name="text:continue-numbering">false</xsl:attribute>
  795.     <xsl:apply-templates/>    
  796. </xsl:element>
  797. </xsl:template>
  798.  
  799. <xsl:template match="term">
  800.     <xsl:if test="parent::varlistentry">
  801.     <text:list-item>
  802.     <xsl:element name="text:p">
  803.         <xsl:attribute name="text:style-name">VarList Term</xsl:attribute>
  804.         <xsl:apply-templates />
  805.     </xsl:element>
  806.         </text:list-item>
  807.     </xsl:if>
  808. </xsl:template>
  809.  
  810.  
  811. <xsl:template match="listitem">
  812.     <xsl:choose>
  813.         <xsl:when test="parent::varlistentry">
  814.                     <text:list-item>
  815.                         <xsl:apply-templates/>
  816.                         </text:list-item>
  817.         </xsl:when>
  818.         <xsl:otherwise>
  819.                 <text:list-item>
  820.                         <xsl:apply-templates/>
  821.                 </text:list-item>
  822.         </xsl:otherwise>    
  823.     </xsl:choose>
  824. </xsl:template>
  825.  
  826.  
  827. <!--  end of lists-->
  828.  
  829. <xsl:template match="menuchoice">
  830.     <xsl:apply-templates/>
  831. </xsl:template>
  832.  
  833. <xsl:template match="guimenuitem">
  834.     <xsl:element name="text:span">
  835.             <xsl:attribute name="text:style-name">GuiMenuItem</xsl:attribute>
  836.             <xsl:apply-templates/>
  837.     </xsl:element>
  838. </xsl:template>
  839.  
  840. <xsl:template match="guibutton">
  841.     <xsl:element name="text:span">
  842.             <xsl:attribute name="text:style-name">GuiButton</xsl:attribute>
  843.             <xsl:apply-templates/>
  844.     </xsl:element>
  845. </xsl:template>
  846.  
  847. <xsl:template match="guisubmenu">
  848.     <xsl:element name="text:span">
  849.             <xsl:attribute name="text:style-name">GuiSubMenu</xsl:attribute>
  850.             <xsl:apply-templates/>
  851.     </xsl:element>
  852. </xsl:template>
  853.  
  854. <xsl:template match="emphasis">
  855.         <xsl:element name="text:span">
  856.             <xsl:attribute name="text:style-name">Emphasis</xsl:attribute>
  857.             <xsl:apply-templates/>
  858.     </xsl:element>
  859. </xsl:template>
  860.  
  861.  
  862. <xsl:template match="guimenu">
  863.         <xsl:element name="text:span">
  864.             <xsl:attribute name="text:style-name">GuiMenu</xsl:attribute>
  865.             <xsl:apply-templates/>
  866.     </xsl:element>
  867. </xsl:template>
  868.  
  869. <xsl:template match="guisubmenu">
  870.         <xsl:element name="text:span">
  871.             <xsl:attribute name="text:style-name">GuiSubMenu</xsl:attribute>
  872.             <xsl:apply-templates/>
  873.     </xsl:element>
  874. </xsl:template>
  875.  
  876.  
  877. <xsl:template match="guilabel">
  878.     <xsl:element name="text:span">
  879.             <xsl:attribute name="text:style-name">GuiLabel</xsl:attribute>
  880.             <xsl:apply-templates/>
  881.     </xsl:element>
  882. </xsl:template>
  883.  
  884. <xsl:template match="guibutton">
  885.     <xsl:element name="text:span">
  886.             <xsl:attribute name="text:style-name">GuiButton</xsl:attribute>
  887.             <xsl:apply-templates/>
  888.     </xsl:element>
  889. </xsl:template>
  890.  
  891. <xsl:template match="keycap">
  892.     <xsl:element name="text:span">
  893.         <xsl:attribute name="text:style-name">KeyCap</xsl:attribute>
  894.         <xsl:apply-templates/>
  895.     </xsl:element>
  896. </xsl:template>
  897.  
  898.  
  899. <xsl:template match="keysym">
  900.     <xsl:element name="text:span">
  901.         <xsl:attribute name="text:style-name">KeySym</xsl:attribute>
  902.         <xsl:apply-templates/>
  903.     </xsl:element>
  904. </xsl:template>
  905.  
  906.  
  907. <xsl:template match="keycombo">
  908.     <xsl:element name="text:span">
  909.         <xsl:attribute name="text:style-name">KeyCombo</xsl:attribute>
  910.         <xsl:apply-templates/>
  911.     </xsl:element>
  912. </xsl:template>
  913.  
  914. <xsl:template match="command">
  915.     <xsl:element name="text:span">
  916.         <xsl:attribute name="text:style-name">Command</xsl:attribute>
  917.         <xsl:apply-templates/>
  918.     </xsl:element>
  919. </xsl:template>
  920.  
  921. <xsl:template match="application">
  922.     <xsl:element name="text:span">
  923.         <xsl:attribute name="text:style-name">Application</xsl:attribute>
  924.         <xsl:apply-templates/>
  925.     </xsl:element>
  926. </xsl:template>
  927.  
  928. <xsl:template match="filename">
  929.     <xsl:element name="text:span">
  930.         <xsl:attribute name="text:style-name">FileName</xsl:attribute>
  931.         <xsl:apply-templates/>
  932.     </xsl:element>
  933. </xsl:template>
  934.  
  935. <xsl:template match="systemitem">
  936.     <xsl:element name="text:span">
  937.         <xsl:attribute name="text:style-name">SystemItem</xsl:attribute>
  938.         <xsl:apply-templates/>
  939.     </xsl:element>
  940. </xsl:template>
  941.  
  942. <xsl:template match="computeroutput">
  943.     <xsl:element name="text:span">
  944.         <xsl:attribute name="text:style-name">ComputerOutput</xsl:attribute>
  945.         <xsl:apply-templates/>
  946.     </xsl:element>
  947. </xsl:template>
  948.  
  949. <xsl:template match="inlinegraphic">
  950.     <xsl:element name="draw:image">
  951.         <xsl:attribute name="draw:style-name">
  952.             <xsl:text>fr1</xsl:text>
  953.         </xsl:attribute>
  954.         <xsl:attribute name="draw:name">
  955.         </xsl:attribute>
  956.         <xsl:attribute name="text:anchor-type">
  957.         </xsl:attribute>
  958.         <xsl:attribute name="draw:z-index">
  959.         </xsl:attribute>
  960.         <xsl:attribute name="xlink:href">
  961.             <xsl:value-of select="@fileref"/>
  962.         </xsl:attribute>
  963.         <xsl:attribute name="xlink:type">
  964.         </xsl:attribute>
  965.         <xsl:attribute name="svg:width">
  966.             <!--<xsl:value-of select="@width"/>-->
  967.             <xsl:text>1cm</xsl:text>
  968.         </xsl:attribute> 
  969.         <xsl:attribute name="svg:height">    
  970.             <xsl:text>1cm</xsl:text>
  971.         </xsl:attribute>
  972.         <xsl:attribute name="xlink:show">
  973.             <xsl:text>embed</xsl:text>
  974.         </xsl:attribute>
  975.         <xsl:attribute name="xlink:actuate">
  976.             <xsl:text>onLoad</xsl:text>
  977.         </xsl:attribute>
  978.         <xsl:attribute name="draw:filter-name">
  979.             <xsl:text disable-output-escaping="yes"><All formats></xsl:text>
  980.         </xsl:attribute>
  981. </xsl:element>
  982. </xsl:template> 
  983.  
  984.  
  985. <xsl:template match="footnote">
  986.     <xsl:element name="text:footnote">
  987.         <!--<xsl:element name="text:footnote-citation">Aidan</xsl:element>-->
  988.         <xsl:element name="text:footnote-body">
  989.                 <xsl:apply-templates/>
  990.         </xsl:element>
  991.     </xsl:element>
  992. </xsl:template>
  993.  
  994. <xsl:template match="highlight">
  995.     <xsl:element name="text:span">
  996.         <xsl:attribute name="text:style-name">
  997.             <xsl:text>Highlight</xsl:text>
  998.         </xsl:attribute>
  999.         <xsl:apply-templates/>
  1000.     </xsl:element>
  1001. </xsl:template>
  1002.  
  1003. <xsl:template match="ulink">
  1004.         <xsl:element name="text:a">
  1005.         <xsl:attribute name="xlink:type"><xsl:text>simple</xsl:text></xsl:attribute>
  1006.         <xsl:attribute name="xlink:href">
  1007.             <xsl:value-of select="@url"/>
  1008.         </xsl:attribute>
  1009.         <xsl:apply-templates/>
  1010.     </xsl:element>
  1011.  
  1012. </xsl:template>
  1013.  
  1014. <xsl:template match="link">
  1015.     <xsl:element name="text:a">
  1016.         <xsl:attribute name="xlink:type"><xsl:text>simple</xsl:text></xsl:attribute>
  1017.         <xsl:attribute name="xlink:href">
  1018.             <xsl:text>#</xsl:text>
  1019.                 <xsl:value-of select="@linkend"/>
  1020.             <xsl:text>%7Cregion</xsl:text>
  1021.         </xsl:attribute>
  1022.         <xsl:apply-templates/>
  1023.     </xsl:element>
  1024.  
  1025. </xsl:template>
  1026.  
  1027. <xsl:template match="olink">
  1028. <xsl:element name="text:a">
  1029.         <xsl:attribute name="xlink:type"><xsl:text>simple</xsl:text></xsl:attribute>
  1030.         <xsl:attribute name="xlink:href">
  1031.             <xsl:value-of select="@targetdocent"/>
  1032.         </xsl:attribute>
  1033.         <xsl:apply-templates/>
  1034.     </xsl:element>
  1035. </xsl:template>
  1036.  
  1037. <xsl:template match="note">
  1038.     <office:annotation>
  1039.         <text:p>
  1040.             <xsl:apply-templates/>
  1041.         </text:p>
  1042.     </office:annotation>
  1043. </xsl:template>
  1044.  
  1045. <xsl:template match="imageobject">
  1046.     <xsl:apply-templates/>
  1047. </xsl:template>
  1048.  
  1049. <xsl:template match="textobject">
  1050. </xsl:template>
  1051.  
  1052. <xsl:template match="caption">
  1053.     <xsl:apply-templates/>
  1054. </xsl:template>
  1055.  
  1056.  
  1057. <xsl:template match="imagedata">
  1058.     <xsl:element name="draw:image">
  1059.         <xsl:attribute name="draw:style-name">
  1060.             <xsl:text>fr1</xsl:text>
  1061.         </xsl:attribute>
  1062.         <xsl:attribute name="draw:name">
  1063.         </xsl:attribute>
  1064.         <xsl:attribute name="text:anchor-type">
  1065.         </xsl:attribute>
  1066.         <xsl:attribute name="draw:z-index">
  1067.         </xsl:attribute>
  1068.         <xsl:attribute name="xlink:href">
  1069.             <xsl:value-of select="@fileref"/>
  1070.         </xsl:attribute>
  1071.         <xsl:attribute name="xlink:type">
  1072.         </xsl:attribute>
  1073.         <xsl:attribute name="svg:width">
  1074.             <!--<xsl:value-of select="@width"/>-->
  1075.             <xsl:text>1cm</xsl:text>
  1076.         </xsl:attribute> 
  1077.         <xsl:attribute name="svg:height">    
  1078.             <xsl:text>1cm</xsl:text>
  1079.         </xsl:attribute>
  1080.         <xsl:attribute name="xlink:show">
  1081.             <xsl:text>embed</xsl:text>
  1082.         </xsl:attribute>
  1083.         <xsl:attribute name="xlink:actuate">
  1084.             <xsl:text>onLoad</xsl:text>
  1085.         </xsl:attribute>
  1086.         <xsl:attribute name="draw:filter-name">
  1087.             <xsl:text disable-output-escaping="yes"><All formats></xsl:text>
  1088.         </xsl:attribute>
  1089.     </xsl:element>
  1090. </xsl:template>
  1091.  
  1092. <xsl:template match="audioobject">
  1093.     <xsl:element name="draw:plugin">
  1094.         <xsl:attribute name="draw:style-name">
  1095.             <xsl:text>fr1</xsl:text>
  1096.         </xsl:attribute>
  1097.         <xsl:attribute name="draw:name">
  1098.         </xsl:attribute>
  1099.         <xsl:attribute name="text:anchor-type">
  1100.         </xsl:attribute>
  1101.         <xsl:attribute name="draw:z-index">
  1102.         </xsl:attribute>
  1103.         <xsl:attribute name="xlink:href">
  1104.             <xsl:value-of select="@fileref"/>
  1105.         </xsl:attribute>
  1106.         <xsl:attribute name="xlink:type">
  1107.         </xsl:attribute>
  1108.         <xsl:attribute name="svg:width">
  1109.             <!--<xsl:value-of select="@width"/>-->
  1110.             <xsl:text>1cm</xsl:text>
  1111.         </xsl:attribute> 
  1112.         <xsl:attribute name="svg:height">    
  1113.             <xsl:text>1cm</xsl:text>
  1114.         </xsl:attribute>
  1115.         <xsl:attribute name="xlink:show">
  1116.             <xsl:text>embed</xsl:text>
  1117.         </xsl:attribute>
  1118.         <xsl:attribute name="xlink:actuate">
  1119.             <xsl:text>onLoad</xsl:text>
  1120.         </xsl:attribute>
  1121.         <xsl:attribute name="draw:filter-name">
  1122.             <xsl:text disable-output-escaping="yes"><All formats></xsl:text>
  1123.         </xsl:attribute>
  1124.     </xsl:element>
  1125. </xsl:template>
  1126.  
  1127. <xsl:template match="remark">
  1128.     <xsl:apply-templates/>
  1129. </xsl:template>
  1130.  
  1131. <xsl:template match="mediaobject">
  1132.     <xsl:element name="text:p">
  1133.         <xsl:attribute name="text:style-name"><xsl:text>Mediaobject</xsl:text></xsl:attribute>
  1134.     <xsl:apply-templates/>
  1135.     </xsl:element>
  1136. </xsl:template>
  1137.  
  1138. <xsl:template match="superscript">
  1139.     <xsl:element name="text:span">
  1140.         <xsl:attribute name="text:style-name">
  1141.             <xsl:text>SuperScript</xsl:text>
  1142.         </xsl:attribute>
  1143.         <xsl:apply-templates/>
  1144.     </xsl:element>
  1145. </xsl:template>
  1146.  
  1147. <xsl:template match="subscript">
  1148.     <xsl:element name="text:span">
  1149.         <xsl:attribute name="text:style-name">
  1150.             <xsl:text>SubScript</xsl:text>
  1151.         </xsl:attribute>
  1152.         <xsl:apply-templates/>
  1153.     </xsl:element>
  1154. </xsl:template>
  1155.  
  1156.  
  1157.  
  1158. </xsl:stylesheet>
  1159.