| <?xml version="1.0" encoding="UTF-8"?> |
| <!-- |
| 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 |
| |
| 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$ --> |
| <xs:schema xmlns:xs="http://www.w3.org/2001/XMLSchema" elementFormDefault="qualified" |
| targetNamespace="http://xmlgraphics.apache.org/fop/intermediate" |
| xmlns:mf="http://xmlgraphics.apache.org/fop/intermediate"> |
| <xs:include schemaLocation="fop-intermediate-format-ng-datatypes.xsd"/> |
| <xs:complexType name="contentType"> |
| <xs:choice maxOccurs="unbounded" minOccurs="0"> |
| <xs:element name="viewport"> |
| <xs:complexType> |
| <xs:complexContent> |
| <xs:extension base="mf:contentType"> |
| <xs:attribute name="transform" type="xs:string"/> |
| <xs:attributeGroup ref="mf:sizeAtts"/> |
| <xs:attribute name="clip-rect" type="mf:rectangleType"/> |
| </xs:extension> |
| </xs:complexContent> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="g"> |
| <xs:complexType> |
| <xs:complexContent> |
| <xs:extension base="mf:contentType"> |
| <xs:attribute name="transform" type="xs:string"/> |
| </xs:extension> |
| </xs:complexContent> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="id"> |
| <xs:complexType> |
| <xs:attribute name="name" use="required" type="xs:string"/> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="font"> |
| <xs:complexType> |
| <xs:attribute name="family" type="xs:string"/> |
| <xs:attribute name="style" type="mf:fontStyleType"/> |
| <xs:attribute name="variant" type="mf:fontVariantType"/> |
| <xs:attribute name="weight" type="mf:fontWeightType"/> |
| <xs:attribute name="stretch" type="mf:fontStretchType"/> |
| <xs:attribute name="size" type="mf:lengthType"/> |
| <xs:attribute name="color" type="mf:colorType"/> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="text"> |
| <xs:complexType> |
| <xs:simpleContent> |
| <xs:extension base="xs:string"> |
| <xs:attribute name="x" use="required" type="mf:lengthType"/> |
| <xs:attribute name="y" use="required" type="mf:lengthType"/> |
| <xs:attribute name="letter-spacing" type="mf:lengthType"/> |
| <xs:attribute name="word-spacing" type="mf:lengthType"/> |
| <xs:attribute name="dx" type="mf:lengthListType"/> |
| <xs:attribute name="dp" type="mf:dpListType"/> |
| </xs:extension> |
| </xs:simpleContent> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="clip-rect"> |
| <xs:complexType> |
| <xs:attributeGroup ref="mf:rectAtts"/> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="rect"> |
| <xs:complexType> |
| <xs:attributeGroup ref="mf:rectAtts"/> |
| <xs:attributeGroup ref="mf:fillAtts"/> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="line"> |
| <xs:complexType> |
| <xs:attribute name="x1" use="required" type="mf:lengthType"/> |
| <xs:attribute name="y1" use="required" type="mf:lengthType"/> |
| <xs:attribute name="x2" use="required" type="mf:lengthType"/> |
| <xs:attribute name="y2" use="required" type="mf:lengthType"/> |
| <xs:attribute name="color" use="required" type="mf:colorType"/> |
| <xs:attribute name="stroke-width" use="required" type="mf:lengthType"/> |
| <xs:attribute name="style" use="required" type="mf:ruleStyle"/> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="border-rect"> |
| <xs:complexType> |
| <xs:attributeGroup ref="mf:rectAtts"/> |
| <xs:attribute name="left" type="mf:borderDef"/> |
| <xs:attribute name="right" type="mf:borderDef"/> |
| <xs:attribute name="top" type="mf:borderDef"/> |
| <xs:attribute name="bottom" type="mf:borderDef"/> |
| </xs:complexType> |
| </xs:element> |
| <xs:element name="image"> |
| <xs:complexType> |
| <xs:complexContent> |
| <xs:extension base="xs:anyType"> |
| <!-- Either use element content with any namespace or xlink:href --> |
| <xs:attributeGroup ref="mf:rectAtts"/> |
| <xs:attributeGroup ref="mf:foreignAtts"/> |
| </xs:extension> |
| </xs:complexContent> |
| </xs:complexType> |
| </xs:element> |
| </xs:choice> |
| </xs:complexType> |
| <xs:attributeGroup name="sizeAtts"> |
| <xs:attribute name="width" type="mf:lengthType" use="required"/> |
| <xs:attribute name="height" type="mf:lengthType" use="required"/> |
| </xs:attributeGroup> |
| <xs:attributeGroup name="posAtts"> |
| <xs:attribute name="x" type="mf:lengthType" default="0"/> |
| <xs:attribute name="y" type="mf:lengthType" default="0"/> |
| </xs:attributeGroup> |
| <xs:attributeGroup name="rectAtts"> |
| <xs:attributeGroup ref="mf:posAtts"/> |
| <xs:attributeGroup ref="mf:sizeAtts"/> |
| </xs:attributeGroup> |
| <xs:attributeGroup name="fillAtts"> |
| <xs:attribute name="fill" type="xs:string" default="none"/> |
| </xs:attributeGroup> |
| <!--xs:attributeGroup name="fillStrokeAtts"> |
| <xs:attribute name="fill" type="xs:string" default="none"/> |
| <xs:attribute name="stroke" type="xs:string" default="none"/> |
| </xs:attributeGroup--> |
| <xs:attributeGroup name="foreignAtts"> |
| <xs:anyAttribute namespace="##other" processContents="lax"/> |
| </xs:attributeGroup> |
| <xs:attribute name="xmlSpace"> |
| <!-- |
| This is a copy of the definition of the xml:space attribute, from the schema for the XML |
| namespace. That schema can be found at http://www.w3.org/2001/xml.xsd. |
| |
| Ideally we would want to re-use that schema. However, we don’t want to refer to it using an |
| import statement is it causes too many connections to the W3C website. Neither can we store a |
| local copy and ship it with FOP as its license is the W3C Document License and so far we are not |
| allowed to redistribute files under such a license. |
| See also https://issues.apache.org/jira/browse/LEGAL-111 |
| --> |
| <xs:simpleType> |
| <xs:restriction base="xs:NCName"> |
| <xs:enumeration value="default"/> |
| <xs:enumeration value="preserve"/> |
| </xs:restriction> |
| </xs:simpleType> |
| </xs:attribute> |
| </xs:schema> |