git-svn-id: https://svn.apache.org/repos/asf/xmlgraphics/fop/trunk@1444631 13f79535-47bb-0310-9956-ffa450edef68pull/1/head
@@ -0,0 +1,7 @@ | |||
IMPORTANT! This is "WORK IN PROGRESS"! | |||
This directory contains the draft XML schema for a new intermediate format for Apache FOP. | |||
The design is described on the FOP Wiki at: | |||
http://wiki.apache.org/xmlgraphics-fop/AreaTreeIntermediateXml/NewDesign | |||
Help and feedback is welcome. |
@@ -0,0 +1,73 @@ | |||
<?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$ --> | |||
<document xmlns="http://xmlgraphics.apache.org/fop/intermediate" | |||
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" | |||
xsi:schemaLocation="http://xmlgraphics.apache.org/fop/intermediate fop-intermediate-format-ng.xsd" | |||
xmlns:xlink="http://www.w3.org/1999/xlink" | |||
xmlns:nav="http://xmlgraphics.apache.org/fop/intermediate/document-navigation"> | |||
<header> | |||
<x:xmpmeta xmlns:x="adobe:ns:meta/"> | |||
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> | |||
<rdf:Description rdf:about="" xmlns:dc="http://purl.org/dc/elements/1.1/"> | |||
<dc:title>New Intermediate Format Demo Document</dc:title> | |||
<dc:creator> | |||
<rdf:Seq> | |||
<rdf:li>Jeremias Märki</rdf:li> | |||
</rdf:Seq> | |||
</dc:creator> | |||
</rdf:Description> | |||
</rdf:RDF> | |||
</x:xmpmeta> | |||
<bookmark-tree> | |||
<bookmark internal-destination="toc"> | |||
<bookmark-title color="blue" font-weight="bold">Table of Contents</bookmark-title> | |||
</bookmark> | |||
<bookmark internal-destination="chapter1"> | |||
<bookmark-title>Chapter 1</bookmark-title> | |||
</bookmark> | |||
</bookmark-tree> | |||
</header> | |||
<page-sequence id="ps1"> | |||
<page index="0" name="1" width="595275" height="841889"> | |||
<page-header> | |||
<ps:ps-setup-code xmlns:ps="apache:fop:extensions:postscript">%FOPTestPSSetupCode: General | |||
setup code here!</ps:ps-setup-code> | |||
</page-header> | |||
<content> | |||
<!-- Note: this is not actual content that is supposed to make any sense. | |||
It is merely to give you an idea what the content can look like. --> | |||
<viewport transform="translate(5000, 6000)" width="18000" height="10000"> | |||
<font family="Helvetica" style="normal" weight="400" variant="normal" size="12000" | |||
color="black"/> | |||
<text x="1233" y="803">Hello</text> | |||
<rect x="1233" y="1200" width="20000" height="20000" fill="yellow"/> | |||
<viewport transform="translate(1233, 1200)" width="20000" height="20000" clip-rect="0 0 20000 20000"> | |||
<image xlink:href="myimage.svg" x="0" y="0" width="20000" height="20000"/> | |||
</viewport> | |||
</viewport> | |||
</content> | |||
<page-trailer> | |||
<nav:goto-xy id="toc" page-index="0" x="1233" y="803"/> | |||
<nav:goto-xy id="chapter1" page-index="0" x="1233" y="1200"/> | |||
</page-trailer> | |||
</page> | |||
</page-sequence> | |||
<trailer/> | |||
</document> |
@@ -0,0 +1,165 @@ | |||
<?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:attribute name="hyphenated" type="xs:boolean"/> | |||
</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:attributeGroup ref="mf:borderAtts"/> | |||
</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="inner-background-color" type="mf:colorType"/> | |||
<xs:attributeGroup ref="mf:borderAtts"/> | |||
</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="borderAtts"> | |||
<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: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> |
@@ -0,0 +1,124 @@ | |||
<?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:simpleType name="colorType"> | |||
<xs:restriction base="xs:string"/> | |||
</xs:simpleType> | |||
<xs:simpleType name="lengthType"> | |||
<xs:restriction base="xs:int"/> | |||
</xs:simpleType> | |||
<xs:simpleType name="fontStyleType"> | |||
<xs:restriction base="xs:string"> | |||
<xs:enumeration value="normal"/> | |||
<xs:enumeration value="italic"/> | |||
<xs:enumeration value="oblique"/> | |||
<xs:enumeration value="backslant"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
<xs:simpleType name="fontVariantType"> | |||
<xs:restriction base="xs:string"> | |||
<xs:enumeration value="normal"/> | |||
<xs:enumeration value="small-caps"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
<xs:simpleType name="fontWeightType"> | |||
<xs:restriction base="xs:positiveInteger"> | |||
<xs:enumeration value="100"/> | |||
<xs:enumeration value="200"/> | |||
<xs:enumeration value="300"/> | |||
<xs:enumeration value="400"/> | |||
<xs:enumeration value="500"/> | |||
<xs:enumeration value="600"/> | |||
<xs:enumeration value="700"/> | |||
<xs:enumeration value="800"/> | |||
<xs:enumeration value="900"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
<xs:simpleType name="fontStretchType"> | |||
<xs:restriction base="xs:string"> | |||
<xs:enumeration value="ultra-condensed"/> | |||
<xs:enumeration value="extra-condensed"/> | |||
<xs:enumeration value="condensed"/> | |||
<xs:enumeration value="semi-condensed"/> | |||
<xs:enumeration value="normal"/> | |||
<xs:enumeration value="semi-expanded"/> | |||
<xs:enumeration value="expanded"/> | |||
<xs:enumeration value="extra-expanded"/> | |||
<xs:enumeration value="ultra-expanded"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
<xs:simpleType name="borderStyle"> | |||
<xs:restriction base="xs:string"> | |||
<xs:enumeration value="solid"/> | |||
<xs:enumeration value="dotted"/> | |||
<xs:enumeration value="dashed"/> | |||
<xs:enumeration value="double"/> | |||
<xs:enumeration value="groove"/> | |||
<xs:enumeration value="ridge"/> | |||
<xs:enumeration value="inset"/> | |||
<xs:enumeration value="outset"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
<xs:simpleType name="ruleStyle"> | |||
<xs:restriction base="xs:string"> | |||
<xs:enumeration value="solid"/> | |||
<xs:enumeration value="dotted"/> | |||
<xs:enumeration value="dashed"/> | |||
<xs:enumeration value="double"/> | |||
<xs:enumeration value="groove"/> | |||
<xs:enumeration value="ridge"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
<xs:simpleType name="borderDef"> | |||
<xs:restriction base="xs:string"> | |||
<!-- TODO refine me: \w+ will not be good enough for CMYK color, for example | |||
<xs:pattern value="\((solid|dotted|dashed|double|groove|ridge|inset|outset),\w+,\d+(,collapse-(inner|outer))?"/> | |||
--> | |||
<xs:pattern value="\((solid|dotted|dashed|double|groove|ridge|inset|outset),.+\)"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
<xs:simpleType name="lengthListType"> | |||
<xs:list itemType="mf:lengthType"/> | |||
</xs:simpleType> | |||
<xs:simpleType name="rectangleType"> | |||
<xs:restriction base="mf:lengthListType"> | |||
<xs:length value="4"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
<xs:simpleType name="dpListType"> | |||
<xs:list itemType="mf:dpItemType"/> | |||
</xs:simpleType> | |||
<xs:simpleType name="dpItemType"> | |||
<xs:union> | |||
<xs:simpleType> | |||
<xs:restriction base="mf:lengthType"/> | |||
</xs:simpleType> | |||
<xs:simpleType> | |||
<xs:restriction base="mf:dpZeroesType"/> | |||
</xs:simpleType> | |||
</xs:union> | |||
</xs:simpleType> | |||
<xs:simpleType name="dpZeroesType"> | |||
<xs:restriction base="xs:string"> | |||
<xs:pattern value="Z(\d)+"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
</xs:schema> |
@@ -0,0 +1,124 @@ | |||
<?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/document-navigation" | |||
xmlns:nav="http://xmlgraphics.apache.org/fop/intermediate/document-navigation" | |||
xmlns:if="http://xmlgraphics.apache.org/fop/intermediate"> | |||
<xs:import schemaLocation="fop-intermediate-format-ng-datatypes.xsd" | |||
namespace="http://xmlgraphics.apache.org/fop/intermediate"/> | |||
<xs:element name="bookmark-tree"> | |||
<xs:complexType> | |||
<xs:sequence minOccurs="1" maxOccurs="unbounded"> | |||
<xs:element ref="nav:bookmark"/> | |||
</xs:sequence> | |||
</xs:complexType> | |||
</xs:element> | |||
<xs:element name="bookmark"> | |||
<xs:complexType> | |||
<xs:complexContent> | |||
<xs:extension base="nav:actionType"> | |||
<xs:sequence> | |||
<xs:element ref="nav:bookmark" maxOccurs="unbounded" minOccurs="0"/> | |||
</xs:sequence> | |||
<xs:attribute name="title" type="xs:string"/> | |||
<xs:attribute name="starting-state"> | |||
<xs:simpleType> | |||
<xs:restriction base="xs:string"> | |||
<xs:enumeration value="show"/> | |||
<xs:enumeration value="hide"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
</xs:attribute> | |||
<!-- Not yet implemented: | |||
<xs:attribute name="color" type="if:colorType"/> | |||
<xs:attribute name="font-style"> | |||
<xs:simpleType> | |||
<xs:restriction base="xs:string"> | |||
<xs:enumeration value="normal"/> | |||
<xs:enumeration value="italic"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
</xs:attribute> | |||
<xs:attribute name="font-weight"> | |||
<xs:simpleType> | |||
<xs:restriction base="xs:string"> | |||
<xs:enumeration value="normal"/> | |||
<xs:enumeration value="bold"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
</xs:attribute> | |||
--> | |||
</xs:extension> | |||
</xs:complexContent> | |||
</xs:complexType> | |||
</xs:element> | |||
<xs:element name="link"> | |||
<xs:complexType> | |||
<xs:complexContent> | |||
<xs:extension base="nav:actionType"> | |||
<xs:attribute name="rect" type="if:rectangleType"/> | |||
</xs:extension> | |||
</xs:complexContent> | |||
</xs:complexType> | |||
</xs:element> | |||
<xs:complexType name="actionType"> | |||
<xs:choice> | |||
<xs:element ref="nav:goto-uri"/> | |||
<xs:element ref="nav:goto-xy"/> | |||
</xs:choice> | |||
</xs:complexType> | |||
<xs:element name="goto-uri"> | |||
<xs:complexType> | |||
<xs:attributeGroup ref="nav:idAtts"/> | |||
<xs:attribute name="uri" type="xs:anyURI" use="required"/> | |||
<xs:attribute name="show-destination" use="optional" default="replace"> | |||
<xs:simpleType> | |||
<xs:restriction base="xs:string"> | |||
<xs:enumeration value="new"/> | |||
<xs:enumeration value="replace"/> | |||
</xs:restriction> | |||
</xs:simpleType> | |||
</xs:attribute> | |||
</xs:complexType> | |||
</xs:element> | |||
<xs:element name="goto-xy"> | |||
<xs:complexType> | |||
<xs:attributeGroup ref="nav:refDef"/> | |||
<xs:attribute name="page-index" type="xs:int"/> | |||
<xs:attributeGroup ref="nav:posAtts"/> | |||
</xs:complexType> | |||
</xs:element> | |||
<xs:attributeGroup name="posAtts"> | |||
<xs:attribute name="x" type="if:lengthType" default="0"/> | |||
<xs:attribute name="y" type="if:lengthType" default="0"/> | |||
</xs:attributeGroup> | |||
<xs:attributeGroup name="idAtts"> | |||
<xs:attribute name="id" type="xs:NCName"/> | |||
</xs:attributeGroup> | |||
<xs:attributeGroup name="refDef"> | |||
<xs:attributeGroup ref="nav:idAtts"/> | |||
<xs:attribute name="idref" type="xs:NCName"/> | |||
</xs:attributeGroup> | |||
</xs:schema> |
@@ -0,0 +1,102 @@ | |||
<?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" | |||
xmlns:nav="http://xmlgraphics.apache.org/fop/intermediate/document-navigation"> | |||
<xs:import namespace="http://xmlgraphics.apache.org/fop/intermediate/document-navigation" | |||
schemaLocation="fop-intermediate-format-ng-nav.xsd"/> | |||
<xs:import namespace="adobe:ns:meta/" schemaLocation="xmp-metadata.xsd"/> | |||
<xs:import namespace="http://xmlgraphics.apache.org/fop/intermediate/document-navigation" | |||
schemaLocation="fop-intermediate-format-ng-nav.xsd"/> | |||
<xs:include schemaLocation="fop-intermediate-format-ng-datatypes.xsd"/> | |||
<xs:include schemaLocation="fop-intermediate-format-ng-content.xsd"/> | |||
<xs:element name="document"> | |||
<xs:complexType> | |||
<xs:sequence> | |||
<xs:element ref="mf:header"/> | |||
<xs:element ref="mf:page-sequence" minOccurs="1" maxOccurs="unbounded"/> | |||
<xs:element ref="mf:trailer"/> | |||
</xs:sequence> | |||
<xs:attribute name="version" type="xs:string"/> | |||
</xs:complexType> | |||
</xs:element> | |||
<xs:element name="header"> | |||
<xs:complexType> | |||
<xs:sequence> | |||
<xs:element name="locale" minOccurs="0" maxOccurs="1"> | |||
<xs:complexType> | |||
<xs:attributeGroup ref="mf:foreignAtts"/> | |||
</xs:complexType> | |||
</xs:element> | |||
<xs:choice minOccurs="0" maxOccurs="unbounded"> | |||
<!--xs:element ref="x:xmpmeta" xmlns:x="adobe:ns:meta/"/--> | |||
<xs:any namespace="##other" processContents="lax"/> | |||
</xs:choice> | |||
</xs:sequence> | |||
</xs:complexType> | |||
</xs:element> | |||
<xs:element name="trailer"> | |||
<xs:complexType> | |||
<xs:choice minOccurs="0" maxOccurs="unbounded"> | |||
<!--xs:element ref="nav:bookmark-tree"/--> | |||
<xs:any namespace="##other" processContents="lax"/> | |||
</xs:choice> | |||
</xs:complexType> | |||
</xs:element> | |||
<xs:element name="page-sequence"> | |||
<xs:complexType> | |||
<xs:sequence> | |||
<xs:choice minOccurs="0" maxOccurs="unbounded"> | |||
<xs:any namespace="##other" processContents="lax"/> | |||
</xs:choice> | |||
<xs:element ref="mf:page" minOccurs="1" maxOccurs="unbounded"/> | |||
</xs:sequence> | |||
<xs:attribute name="id" type="xs:ID"/> | |||
<xs:attribute ref="mf:xmlSpace"/> | |||
<xs:attributeGroup ref="mf:foreignAtts"/> | |||
</xs:complexType> | |||
</xs:element> | |||
<xs:element name="page"> | |||
<xs:complexType> | |||
<xs:sequence> | |||
<xs:element name="page-header" type="mf:anyContent"/> | |||
<xs:element name="content" type="mf:contentType"/> | |||
<xs:element name="page-trailer" minOccurs="0"> | |||
<xs:complexType> | |||
<xs:choice minOccurs="0" maxOccurs="unbounded"> | |||
<xs:element ref="nav:link"/> | |||
<xs:element ref="nav:goto-xy"/> | |||
</xs:choice> | |||
</xs:complexType> | |||
</xs:element> | |||
</xs:sequence> | |||
<xs:attribute name="index" type="xs:nonNegativeInteger" use="required"/> | |||
<xs:attribute name="name" type="xs:string"/> | |||
<xs:attribute name="page-master-name" type="xs:string"/> | |||
<xs:attributeGroup ref="mf:sizeAtts"/> | |||
<xs:attributeGroup ref="mf:foreignAtts"/> | |||
</xs:complexType> | |||
</xs:element> | |||
<xs:complexType name="anyContent"> | |||
<xs:choice minOccurs="0" maxOccurs="unbounded"> | |||
<xs:any namespace="##other" processContents="lax"/> | |||
</xs:choice> | |||
</xs:complexType> | |||
</xs:schema> |
@@ -0,0 +1,35 @@ | |||
<?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="adobe:ns:meta/" | |||
xmlns:x="adobe:ns:meta/" | |||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> | |||
<xs:import namespace="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
schemaLocation="xmp-rdf-metadata.xsd"/> | |||
<!-- This defines the xmpmeta wrapper element for Adobe's XMP. | |||
See: http://www.adobe.com/devnet/xmp/ --> | |||
<xs:element name="xmpmeta"> | |||
<xs:complexType> | |||
<xs:sequence> | |||
<xs:element ref="rdf:RDF"/> | |||
</xs:sequence> | |||
</xs:complexType> | |||
</xs:element> | |||
</xs:schema> |
@@ -0,0 +1,36 @@ | |||
<?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://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"> | |||
<!-- | |||
Note: this is incomplete but intentionally so. It's impossible to | |||
write an XML Schema for XMP since it's heavily extensible and based on RDF. | |||
We just define some minimal stubs here. | |||
--> | |||
<xs:element name="RDF"> | |||
<xs:complexType> | |||
<xs:choice minOccurs="0" maxOccurs="unbounded"> | |||
<xs:any namespace="http://www.w3.org/1999/02/22-rdf-syntax-ns#" | |||
processContents="skip"/> | |||
</xs:choice> | |||
</xs:complexType> | |||
</xs:element> | |||
</xs:schema> |