2019-04-15 02:23:03 +00:00
< ? xml version = "1.0" encoding = "UTF-8" ? >
< ! - -
2021-06-23 02:26:22 +00:00
* This file is part of the LibreOffice project .
*
* This Source Code Form is subject to the terms of the Mozilla Public
* License , v . 2.0 . If a copy of the MPL was not distributed with this
* file , You can obtain one at http : //mozilla.org/MPL/2.0/.
*
* This file incorporates work covered by the following license notice :
*
* Licensed to the Apache Software Foundation ( ASF ) under one or more
* contributor license agreements . See the NOTICE file distributed
* with this work for additional information regarding copyright
* ownership . The ASF licenses this file to you under the Apache
* License , Version 2.0 ( the "License" ) ; you may not use this file
* except in compliance with the License . You may obtain a copy of
* the License at http : //www.apache.org/licenses/LICENSE-2.0 .
- - >
< ! - -
For further documentation and updates visit http : //xml.openoffice.org/odf2xhtml
2019-04-15 02:23:03 +00:00
- - >
< xsl : stylesheet version = "1.0"
2021-06-23 02:26:22 +00:00
xmlns : xsl = "http://www.w3.org/1999/XSL/Transform"
xmlns : chart = "urn:oasis:names:tc:opendocument:xmlns:chart:1.0"
xmlns : config = "urn:oasis:names:tc:opendocument:xmlns:config:1.0"
xmlns : dc = "http://purl.org/dc/elements/1.1/"
xmlns : dom = "http://www.w3.org/2001/xml-events"
xmlns : dr3d = "urn:oasis:names:tc:opendocument:xmlns:dr3d:1.0"
xmlns : draw = "urn:oasis:names:tc:opendocument:xmlns:drawing:1.0"
xmlns : fo = "urn:oasis:names:tc:opendocument:xmlns:xsl-fo-compatible:1.0"
xmlns : form = "urn:oasis:names:tc:opendocument:xmlns:form:1.0"
xmlns : math = "http://www.w3.org/1998/Math/MathML"
xmlns : meta = "urn:oasis:names:tc:opendocument:xmlns:meta:1.0"
xmlns : number = "urn:oasis:names:tc:opendocument:xmlns:datastyle:1.0"
xmlns : office = "urn:oasis:names:tc:opendocument:xmlns:office:1.0"
xmlns : ooo = "http://openoffice.org/2004/office"
xmlns : oooc = "http://openoffice.org/2004/calc"
xmlns : ooow = "http://openoffice.org/2004/writer"
xmlns : script = "urn:oasis:names:tc:opendocument:xmlns:script:1.0"
xmlns : style = "urn:oasis:names:tc:opendocument:xmlns:style:1.0"
xmlns : svg = "urn:oasis:names:tc:opendocument:xmlns:svg-compatible:1.0"
xmlns : table = "urn:oasis:names:tc:opendocument:xmlns:table:1.0"
xmlns : text = "urn:oasis:names:tc:opendocument:xmlns:text:1.0"
xmlns : xforms = "http://www.w3.org/2002/xforms"
xmlns : xlink = "http://www.w3.org/1999/xlink"
xmlns : xsd = "http://www.w3.org/2001/XMLSchema"
xmlns : xsi = "http://www.w3.org/2001/XMLSchema-instance"
exclude - result - prefixes = "chart config dc dom dr3d draw fo form math meta number office ooo oooc ooow script style svg table text xforms xlink xsd xsi xforms xsd xsi"
xmlns = "http://www.w3.org/1999/xhtml" >
< ! - - + + + + + INCLUDED XSL MODULES + + + + + - - >
< ! - - inheritance of office style properties is resolved into absolute styles . Office properties gathered as elements - - >
< xsl : include href = "../common/styles/style_collector.xsl" / >
< ! - - mapping rules of office style properties to CSS / HTML properties - - >
< xsl : include href = "../common/styles/style_mapping_css.xsl" / >
< ! - - office header element handling especially for XHTML - - >
< xsl : include href = "header.xsl" / >
< ! - - office body element handling especially for XHTML - - >
< xsl : include href = "body.xsl" / >
< xsl : output method = "xml"
encoding = "UTF-8"
media - type = "application/xhtml+xml"
indent = "no"
omit - xml - declaration = "no"
doctype - public = "-//W3C//DTD XHTML 1.1 plus MathML 2.0//EN"
doctype - system = "http://www.w3.org/Math/DTD/mathml2/xhtml-math11-f.dtd" / >
< xsl : variable name = "namespace" select = "'http://www.w3.org/1999/xhtml'" / >
< ! - - + + + + + PARAMETER SECTION + + + + + - - >
< ! - - OPTIONAL : if the document content is provided in a directory structure . Opposite to a single flat XML stream - - >
< xsl : param name = "isPackageFormat" / >
< ! - - OPTIONAL : ( MANDATORY : for all input document with relative external links ) : parameter is an absolute file URL to the target directory .
Relative links from the office document ( e . g . to external graphics ) will get this parameter as a prefix - - >
< xsl : param name = "targetBaseURL" select = "'./'" / >
< ! - - OPTIONAL : ( MANDATORY : for all input document with content table ) : parameter is an absolute file URL to the target document .
Relative links to this office document ( e . g . to internal anchor ) will get this parameter as a prefix - - >
< xsl : param name = "targetURL" select = "'./'" / >
< ! - - OPTIONAL : ( MANDATORY : for input document with relative internal links )
To access contents of an office file ( content like the meta . xml , styles . xml file or graphics ) a URL could be chosen .
This could be even a JAR URL . The sourceBase of the content URL "jar:file:/C:/temp/Test.sxw!/content.xml" would be
"jar:file:/C:/temp/Test.sxw!/" for example .
When working with OpenOffice API a Package - URL encoded over HTTP can be used to access the jared contents of the jared document . - - >
< xsl : param name = "sourceBaseURL" select = "'./'" / >
< ! - - OPTIONAL : ( MANDATORY : for session management by URL rewriting )
Useful for WebApplications : if a HTTP session is not cookie based , URL rewriting is being used ( the session is appended to the URL ) .
This URL session is used for example when links to graphics are created by XSLT . Otherwise the user have to log again in for every graphic he likes to see . - - >
< xsl : param name = "optionalURLSuffix" / >
< ! - - OPTIONAL : URL to office meta file ( flat xml use the URL to the input file ) - - >
< xsl : param name = "metaFileURL" / >
< ! - - OPTIONAL : URL to office meta file ( flat xml use the URL to the input file ) - - >
< xsl : param name = "stylesFileURL" / >
< ! - - OPTIONAL : DPI ( dots per inch ) the standard resolution of given pictures ( necessary for the conversion of ' cm ' into ' pixel ' ) - - >
< ! - - Although many pictures have a 96 dpi resolution , a higher resolution give better results for common browsers - - >
< ! - - Cp . measure_conversion . xsl :
< xsl : param name = "dpi" select = "111" / > - - >
< ! - - OPTIONAL : in case of using a different processor than a JAVA XSLT , you can unable the Java functionality
( e . g . encoding chapter names for the content - table as href and anchors ) - - >
< xsl : param name = "java" select = "true()" / >
< xsl : param name = "javaEnabled" select = "boolean($java)" / >
< ! - - OPTIONAL : for activating the debug mode set the variable here to ' true ( ) ' or give any value from outside - - >
< xsl : param name = "debug" select = "false()" / >
< xsl : param name = "debugEnabled" select = "boolean($debug)" / >
< xsl : param name = "onlyStyleOutput" select = "false()" / >
< xsl : param name = "onlyStyleOutputEnabled" select = "boolean($onlyStyleOutput)" / >
< ! - - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - - >
< ! - - * * * build the appropriate HTML file * * * - - >
< ! - - * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * - - >
< xsl : template match = "/" >
< ! - - debug output of parameter value set - - >
< xsl : if test = "$debugEnabled" >
< xsl : call - template name = "debug-check-parameter" / >
< / xsl : if >
< ! - - gathers style properties and
returns them as globalData parameter to the ' start - main ' template - - >
< xsl : call - template name = "collect-global-odf-properties" / >
< / xsl : template >
< ! - - * * * * * * * * * * * * * * * * * * * * * * * * * * * - - >
< ! - - * * * Built up XHTML file * * * - - >
< ! - - * * * * * * * * * * * * * * * * * * * * * * * * * * * - - >
< xsl : template name = "start-main" >
< xsl : param name = "globalData" / >
< xsl : element name = "html" >
< xsl : comment > This file was converted to xhtml by LibreOffice - see https : //cgit.freedesktop.org/libreoffice/core/tree/filter/source/xslt for the code.</xsl:comment>
< xsl : call - template name = ' create - header ' >
< xsl : with - param name = "globalData" select = "$globalData" / >
< / xsl : call - template >
< xsl : call - template name = ' create - body ' >
< xsl : with - param name = "globalData" select = "$globalData" / >
< / xsl : call - template >
< / xsl : element >
< / xsl : template >
< ! - - debug purpose only :
verbose checking of the parameters of this template - - >
< xsl : template name = "debug-check-parameter" >
< xsl : message > Parameter dpi : < xsl : value - of select = "$dpi" / > < / xsl : message >
< xsl : message > Parameter metaFileURL : < xsl : value - of select = "$metaFileURL" / > < / xsl : message >
< xsl : message > Parameter stylesFileURL : < xsl : value - of select = "$stylesFileURL" / > < / xsl : message >
< xsl : message > Parameter sourceBaseURL : < xsl : value - of select = "$sourceBaseURL" / > < / xsl : message >
< xsl : message > Parameter targetBaseURL : < xsl : value - of select = "$targetBaseURL" / > < / xsl : message >
< xsl : message > Parameter onlyStyleOutputEnabled : < xsl : value - of select = "$onlyStyleOutputEnabled" / > < / xsl : message >
< xsl : message > Parameter debugEnabled : < xsl : value - of select = "$debugEnabled" / > < / xsl : message >
< xsl : message > Parameter java : < xsl : value - of select = "$java" / > < / xsl : message >
< xsl : message > Parameter javaEnabled : < xsl : value - of select = "$javaEnabled" / > < / xsl : message >
< / xsl : template >
2019-04-15 02:23:03 +00:00
< / xsl : stylesheet >