You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.

fop-configuration.xsd 11KB

123456789101112131415161718192021222324252627282930313233343536373839404142434445464748495051525354555657585960616263646566676869707172737475767778798081828384858687888990919293949596979899100101102103104105106107108109110111112113114115116117118119120121122123124125126127128129130131132133134135136137138139140141142143144145146147148149150151152153154155156157158159160161162163164165166167168169170171172173174175176177178179180181182183184185186187188189190191192193194195196197198199200201202203204205206207208209210211212213214215216217218219220221222223224225226227228229230231232233234235236237238239240241242243244245246247248
  1. <?xml version="1.0" encoding="UTF-8"?>
  2. <!--
  3. Licensed to the Apache Software Foundation (ASF) under one or more
  4. contributor license agreements. See the NOTICE file distributed with
  5. this work for additional information regarding copyright ownership.
  6. The ASF licenses this file to You under the Apache License, Version 2.0
  7. (the "License"); you may not use this file except in compliance with
  8. the License. You may obtain a copy of the License at
  9. http://www.apache.org/licenses/LICENSE-2.0
  10. Unless required by applicable law or agreed to in writing, software
  11. distributed under the License is distributed on an "AS IS" BASIS,
  12. WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
  13. See the License for the specific language governing permissions and
  14. limitations under the License.
  15. -->
  16. <!-- $Id$ -->
  17. <xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
  18. elementFormDefault="qualified">
  19. <xsd:annotation>
  20. <xsd:documentation>This W3C schema document documents and validates the expected
  21. structure of a configuration file for FOP.</xsd:documentation>
  22. </xsd:annotation>
  23. <xsd:element name="fop">
  24. <xsd:complexType>
  25. <xsd:all>
  26. <xsd:element name="base" type="xsd:anyURI" minOccurs="0"></xsd:element>
  27. <xsd:element name="font-base" type="xsd:anyURI" minOccurs="0"></xsd:element>
  28. <xsd:element name="hyphenation-base" type="xsd:anyURI" minOccurs="0"></xsd:element>
  29. <xsd:element name="source-resolution"
  30. type="xsd:positiveInteger" minOccurs="0">
  31. </xsd:element>
  32. <xsd:element name="target-resolution"
  33. type="xsd:positiveInteger" minOccurs="0">
  34. </xsd:element>
  35. <xsd:element name="strict-validation" type="xsd:boolean" minOccurs="0"></xsd:element>
  36. <xsd:element name="strict-configuration" type="xsd:boolean" minOccurs="0"></xsd:element>
  37. <xsd:element name="break-indent-inheritance"
  38. type="xsd:boolean" minOccurs="0">
  39. </xsd:element>
  40. <xsd:element name="default-page-settings" minOccurs="0">
  41. <xsd:complexType>
  42. <xsd:attribute name="width" type="xsd:string"></xsd:attribute>
  43. <xsd:attribute name="height" type="xsd:string"></xsd:attribute>
  44. </xsd:complexType>
  45. </xsd:element>
  46. <xsd:element name="renderers" minOccurs="0">
  47. <xsd:complexType>
  48. <xsd:sequence>
  49. <xsd:element name="renderer" maxOccurs="unbounded"
  50. type="rendererType">
  51. </xsd:element>
  52. </xsd:sequence>
  53. </xsd:complexType>
  54. </xsd:element>
  55. </xsd:all>
  56. <xsd:attribute name="version" use="optional">
  57. <xsd:simpleType>
  58. <xsd:restriction base="xsd:string">
  59. <xsd:enumeration value="1.0"/>
  60. </xsd:restriction>
  61. </xsd:simpleType>
  62. </xsd:attribute>
  63. </xsd:complexType>
  64. </xsd:element>
  65. <xsd:complexType name="rendererType">
  66. <xsd:annotation>
  67. <xsd:documentation>This type is stricter than required by FOP, in that it imposes an
  68. order of the elements, which is not required by FOP.</xsd:documentation>
  69. </xsd:annotation>
  70. <xsd:sequence>
  71. <xsd:choice minOccurs="0">
  72. <xsd:sequence>
  73. <xsd:annotation>
  74. <xsd:documentation>Configuration elements used by the PDF renderer,
  75. MIME type application/pdf</xsd:documentation>
  76. </xsd:annotation>
  77. <xsd:element name="filterList" minOccurs="0" maxOccurs="unbounded">
  78. <xsd:annotation>
  79. <xsd:documentation>filterLists are used by the PDF renderer, MIME type
  80. application/pdf.</xsd:documentation>
  81. </xsd:annotation>
  82. <xsd:complexType>
  83. <xsd:sequence>
  84. <xsd:element name="value" type="xsd:string" maxOccurs="unbounded"/>
  85. </xsd:sequence>
  86. <xsd:attribute name="type" use="optional">
  87. <xsd:simpleType>
  88. <xsd:restriction base="xsd:string">
  89. <xsd:enumeration value="default"/>
  90. <xsd:enumeration value="content"/>
  91. <xsd:enumeration value="image"/>
  92. <xsd:enumeration value="jpeg"/>
  93. <xsd:enumeration value="tiff"/>
  94. <xsd:enumeration value="font"/>
  95. <xsd:enumeration value="metadata"/>
  96. <!-- Available values: see PDFFilterList.java -->
  97. </xsd:restriction>
  98. </xsd:simpleType>
  99. </xsd:attribute>
  100. </xsd:complexType>
  101. </xsd:element>
  102. <xsd:element name="output-profile" type="xsd:string" minOccurs="0">
  103. <xsd:annotation>
  104. <xsd:documentation>Output color profile used by the PDF renderer. Specifies a
  105. filename to an ICC file.</xsd:documentation>
  106. </xsd:annotation>
  107. </xsd:element>
  108. </xsd:sequence>
  109. <xsd:sequence>
  110. <xsd:annotation>
  111. <xsd:documentation>Configuration elements used by the PostScript renderer,
  112. MIME type application/postscript</xsd:documentation>
  113. </xsd:annotation>
  114. <xsd:element name="auto-rotate-landscape" type="xsd:boolean" default="false" minOccurs="0">
  115. <xsd:annotation>
  116. <xsd:documentation>When set to "true" a landscape page is automatically
  117. rotated and specified as a landscape page in PostScript.</xsd:documentation>
  118. </xsd:annotation>
  119. </xsd:element>
  120. <xsd:element name="language-level" default="3" minOccurs="0">
  121. <xsd:annotation>
  122. <xsd:documentation>Specifies the PostScript language level to use when
  123. generating PostScript code.
  124. language-level is used by the PostScript renderer,
  125. MIME type application/postscript.</xsd:documentation>
  126. </xsd:annotation>
  127. <xsd:simpleType>
  128. <xsd:restriction base="xsd:positiveInteger">
  129. <xsd:enumeration value="2"/>
  130. <xsd:enumeration value="3"/>
  131. </xsd:restriction>
  132. </xsd:simpleType>
  133. </xsd:element>
  134. <xsd:element name="optimize-resources" type="xsd:boolean" default="false" minOccurs="0">
  135. <xsd:annotation>
  136. <xsd:documentation>When set to "true" PostScript resources are optimized by making a
  137. second pass over the PostScript file (rewriting it). Optimized means that no duplicate
  138. images are written to the stream and only used fonts are added to the PostScript file.</xsd:documentation>
  139. </xsd:annotation>
  140. </xsd:element>
  141. </xsd:sequence>
  142. <xsd:sequence>
  143. <xsd:annotation>
  144. <xsd:documentation>rendering and text-rendering are used by the PCL renderer,
  145. MIME type application/vnd.hp-PCL</xsd:documentation>
  146. </xsd:annotation>
  147. <xsd:element name="rendering" minOccurs="0">
  148. <xsd:simpleType>
  149. <xsd:restriction base="xsd:string">
  150. <xsd:enumeration value="speed"/>
  151. <xsd:enumeration value="quality"/>
  152. </xsd:restriction>
  153. </xsd:simpleType>
  154. </xsd:element>
  155. <xsd:element name="text-rendering" minOccurs="0">
  156. <xsd:simpleType>
  157. <xsd:restriction base="xsd:string">
  158. <xsd:enumeration value="auto"/>
  159. <xsd:enumeration value="bitmap"/>
  160. </xsd:restriction>
  161. </xsd:simpleType>
  162. </xsd:element>
  163. </xsd:sequence>
  164. <xsd:sequence>
  165. <xsd:annotation>
  166. <xsd:documentation>The elements in this sequence apply only to the bitmap renderers (PNG and TIFF).</xsd:documentation>
  167. </xsd:annotation>
  168. <xsd:element name="transparent-page-background" type="xsd:boolean" default="false" minOccurs="0"/>
  169. </xsd:sequence>
  170. <xsd:sequence>
  171. <xsd:annotation>
  172. <xsd:documentation>The elements in this sequence apply only to the text renderer,
  173. MIME type text/plain.</xsd:documentation>
  174. </xsd:annotation>
  175. <xsd:element name="encoding" type="xsd:string" default="UTF-8" minOccurs="0"/>
  176. </xsd:sequence>
  177. </xsd:choice>
  178. <xsd:sequence>
  179. <xsd:annotation>
  180. <xsd:documentation>The elements in this sequence apply only to the TIFF renderer,
  181. MIME type image/tiff.</xsd:documentation>
  182. </xsd:annotation>
  183. <xsd:element name="compression" type="xsd:string" minOccurs="0"/>
  184. </xsd:sequence>
  185. <xsd:element name="fonts" minOccurs="0">
  186. <xsd:complexType>
  187. <xsd:sequence>
  188. <xsd:element name="font" type="fontType" maxOccurs="unbounded"/>
  189. </xsd:sequence>
  190. </xsd:complexType>
  191. </xsd:element>
  192. <xsd:element name="xml-handler" minOccurs="0" maxOccurs="unbounded">
  193. <xsd:complexType>
  194. <xsd:complexContent>
  195. <xsd:extension base="xsd:anyType"/>
  196. </xsd:complexContent>
  197. </xsd:complexType>
  198. </xsd:element>
  199. </xsd:sequence>
  200. <xsd:attribute name="mime" type="MimeConstants" use="required"/>
  201. </xsd:complexType>
  202. <xsd:complexType name="fontType">
  203. <xsd:sequence>
  204. <xsd:element name="font-triplet" type="fontTripletType" maxOccurs="unbounded"/>
  205. </xsd:sequence>
  206. <xsd:attribute name="metrics-url" type="xsd:anyURI" use="optional"/>
  207. <xsd:attribute name="embed-url" type="xsd:anyURI" use="optional"/>
  208. <xsd:attribute name="sub-font" type="xsd:string" use="optional"/>
  209. <xsd:attribute name="kerning" use="optional" default="no">
  210. <xsd:simpleType>
  211. <xsd:restriction base="xsd:string">
  212. <xsd:enumeration value="yes"/>
  213. <xsd:enumeration value="no"/>
  214. </xsd:restriction>
  215. </xsd:simpleType>
  216. </xsd:attribute>
  217. </xsd:complexType>
  218. <xsd:complexType name="fontTripletType">
  219. <xsd:attribute name="name" type="xsd:string" use="required"/>
  220. <xsd:attribute name="style" type="xsd:string" use="required"/>
  221. <xsd:attribute name="weight" type="xsd:string" use="required"/>
  222. </xsd:complexType>
  223. <xsd:simpleType name="MimeConstants">
  224. <xsd:restriction base="xsd:string">
  225. <xsd:enumeration value="application/pdf"/>
  226. <xsd:enumeration value="application/postscript"/>
  227. <xsd:enumeration value="application/x-pcl"/>
  228. <xsd:enumeration value="application/vnd.hp-PCL"/>
  229. <xsd:enumeration value="application/x-afp"/>
  230. <xsd:enumeration value="application/vnd.ibm.modcap"/>
  231. <xsd:enumeration value="text/plain"/>
  232. <xsd:enumeration value="application/rtf"/>
  233. <xsd:enumeration value="text/richtext"/>
  234. <xsd:enumeration value="text/rtf"/>
  235. <xsd:enumeration value="application/mif"/>
  236. <xsd:enumeration value="application/X-fop-awt-preview"/>
  237. <xsd:enumeration value="application/X-fop-print"/>
  238. <xsd:enumeration value="application/X-fop-areatree"/>
  239. <xsd:enumeration value="image/png"/>
  240. <xsd:enumeration value="image/tiff"/>
  241. </xsd:restriction>
  242. </xsd:simpleType>
  243. </xsd:schema>