--- /dev/null
+<?xml version="1.0" encoding="UTF-8"?>
+<!--
+ Copyright 2006 The Apache Software Foundation
+
+ Licensed 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
+
+ Unless required by applicable law or agreed to in writing, software
+ distributed under the License is distributed on an "AS IS" BASIS,
+ WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
+ See the License for the specific language governing permissions and
+ limitations under the License.
+-->
+<!-- $Id$ -->
+
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ elementFormDefault="qualified">
+
+ <xsd:annotation>
+ <xsd:documentation>This W3C schema document documents and validates the expected
+ structure of a configuration file for FOP.</xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:element name="fop">
+ <xsd:complexType>
+ <xsd:all>
+ <xsd:element name="base" type="xsd:anyURI" minOccurs="0"></xsd:element>
+ <xsd:element name="font-base" type="xsd:anyURI" minOccurs="0"></xsd:element>
+ <xsd:element name="hyphenation-base" type="xsd:anyURI" minOccurs="0"></xsd:element>
+ <xsd:element name="source-resolution"
+ type="xsd:positiveInteger" minOccurs="0">
+ </xsd:element>
+ <xsd:element name="target-resolution"
+ type="xsd:positiveInteger" minOccurs="0">
+ </xsd:element>
+ <xsd:element name="strict-validation" type="xsd:boolean" minOccurs="0"></xsd:element>
+ <xsd:element name="break-indent-inheritance"
+ type="xsd:boolean" minOccurs="0">
+ </xsd:element>
+ <xsd:element name="default-page-settings" minOccurs="0">
+ <xsd:complexType>
+ <xsd:attribute name="width" type="xsd:string"></xsd:attribute>
+ <xsd:attribute name="height" type="xsd:string"></xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="renderers" minOccurs="0">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="renderer" maxOccurs="unbounded"
+ type="rendererType">
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:all>
+ <xsd:attribute name="version" use="optional">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="1.0"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+
+ <xsd:complexType name="rendererType">
+ <xsd:annotation>
+ <xsd:documentation>This type is stricter than required by FOP, in that it imposes an
+ order of the elements, which is not required by FOP.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:choice minOccurs="0">
+ <xsd:element name="filterList" maxOccurs="2">
+ <xsd:annotation>
+ <xsd:documentation>filterLists are used by the PDF renderer, MIME type
+ application/pdf.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="value" type="xsd:string"
+ maxOccurs="unbounded">
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="type" use="optional">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="image"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+ </xsd:element>
+ <xsd:element name="auto-rotate-landscape">
+ <xsd:annotation>
+ <xsd:documentation>auto-rotate-landscape is used by the PostScript renderer,
+ MIME type application/postscript.</xsd:documentation>
+ </xsd:annotation>
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="false"></xsd:enumeration>
+ <xsd:enumeration value="true"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:element>
+ <xsd:sequence>
+ <xsd:annotation>
+ <xsd:documentation>rendering and text-rendering are used by the PCL renderer,
+ MIME type application/vnd.hp-PCL</xsd:documentation>
+ </xsd:annotation>
+ <xsd:element name="rendering" minOccurs="0">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="speed"></xsd:enumeration>
+ <xsd:enumeration value="quality"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:element>
+ <xsd:element name="text-rendering" minOccurs="0">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="auto"></xsd:enumeration>
+ <xsd:enumeration value="bitmap"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:choice>
+ <xsd:element name="fonts" minOccurs="0">
+ <xsd:complexType>
+ <xsd:sequence>
+ <xsd:element name="font" type="fontType"
+ maxOccurs="unbounded">
+ </xsd:element>
+ </xsd:sequence>
+ </xsd:complexType>
+ </xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="mime" type="MimeConstants" use="required"></xsd:attribute>
+ </xsd:complexType>
+
+ <xsd:complexType name="fontType">
+ <xsd:sequence>
+ <xsd:element name="font-triplet" type="fontTripletType" maxOccurs="unbounded"></xsd:element>
+ </xsd:sequence>
+ <xsd:attribute name="metrics-url" type="xsd:anyURI" use="required"></xsd:attribute>
+ <xsd:attribute name="embed-url" type="xsd:anyURI" use="optional"></xsd:attribute>
+ <xsd:attribute name="kerning" use="optional">
+ <xsd:simpleType>
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="yes"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+ </xsd:attribute>
+ </xsd:complexType>
+
+ <xsd:complexType name="fontTripletType">
+ <xsd:attribute name="name" type="xsd:string" use="required"></xsd:attribute>
+ <xsd:attribute name="style" type="xsd:string" use="required"></xsd:attribute>
+ <xsd:attribute name="weight" type="xsd:string" use="required"></xsd:attribute>
+ </xsd:complexType>
+
+ <xsd:simpleType name="MimeConstants">
+ <xsd:restriction base="xsd:string">
+ <xsd:enumeration value="application/pdf"></xsd:enumeration>
+ <xsd:enumeration value="application/postscript"></xsd:enumeration>
+ <xsd:enumeration value="application/x-pcl"></xsd:enumeration>
+ <xsd:enumeration value="application/vnd.hp-PCL"></xsd:enumeration>
+ <xsd:enumeration value="application/x-afp"></xsd:enumeration>
+ <xsd:enumeration value="application/vnd.ibm.modcap"></xsd:enumeration>
+ <xsd:enumeration value="text/plain"></xsd:enumeration>
+ <xsd:enumeration value="application/rtf"></xsd:enumeration>
+ <xsd:enumeration value="text/richtext"></xsd:enumeration>
+ <xsd:enumeration value="text/rtf"></xsd:enumeration>
+ <xsd:enumeration value="application/mif"></xsd:enumeration>
+ <xsd:enumeration value="application/X-fop-awt-preview"></xsd:enumeration>
+ <xsd:enumeration value="application/X-fop-print"></xsd:enumeration>
+ <xsd:enumeration value="application/X-fop-areatree"></xsd:enumeration>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+</xsd:schema>