home *** CD-ROM | disk | FTP | other *** search
- <?xml version="1.0" encoding="UTF-8"?>
- <!--
- Copyright 1999-2004 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.
- -->
-
- <!-- =============== Cocoon Sitemap Working Draft ============================
-
- This document contains an example used as a working draft for
- Cocoon architects to test and understand the issues associated with
- sitemaps and XML publishing in general. It must be considered as a working
- draft and may be updated at any time.
-
- ============================================================================ -->
-
- <schema xmlns="http://www.w3.org/1999/XMLSchema"
- xmlns:map="http://apache.org/cocoon/sitemap/1.0"
- targetNamespace="http://apache.org/cocoon/sitemap/1.0">
-
- <complexType name="groupType">
- <!--
- Is it possible to have the type be an enumeration of the
- values of the children's type attribute?
- -->
- <attribute name="default" type="string" use="required"/>
- </complexType>
-
- <complexType name="componentType" base="string">
- <!-- Anything goes for parameter values... -->
- <any minOccurs="0" maxOccurs="unbounded"/>
- <attribute name="type" type="string" use="required"/>
- <attribute name="src" type="uriReference" use="required"/>
- <attribute name="label" type="string"/>
- </complexType>
-
- <complexType name="actionType">
- <attribute name="type" type="string" use="optional"/>
- <attribute name="src" type="uriReference" use="optional"/>
- </complexType>
-
- <complexType name="generateType">
- <element name="generate" minOccurs="1" maxOccurs="1" type="map:actionType"/>
- </complexType>
-
- <complexType name="actionTypes">
- <sequence>
- <element name="generate" minOccurs="1" maxOccurs="1" type="map:actionType"/>
- <element name="transform" minOccurs="0" maxOccurs="unbounded" type="map:actionType"/>
- <element name="serialize" minOccurs="1" maxOccurs="1">
- <complexType base="map:actionType">
- <attribute name="status-code" type="short"/>
- </complexType>
- </element>
- </sequence>
- </complexType>
-
- <complexType name="matchType">
- <attribute name="type" type="string" use="optional"/>
- <attribute name="pattern" type="string" use="required"/>
- </complexType>
-
- <element name="sitemap" minOccurs="1" maxOccurs="1">
- <complexType>
- <element name="components" minOccurs="1" maxOccurs="1">
- <complexType>
- <element name="generators" minOccurs="1" maxOccurs="1">
- <complexType base="map:groupType">
- <element name="generator" minOccurs="1" maxOccurs="unbounded" type="map:componentType"/>
- </complexType>
- </element>
- <element name="transformers" minOccurs="0" maxOccurs="1">
- <complexType base="map:groupType">
- <element name="transformer" minOccurs="1" maxOccurs="unbounded" type="map:componentType"/>
- </complexType>
- </element>
- <element name="serializers" minOccurs="1" maxOccurs="1">
- <complexType base="map:groupType">
- <element name="serializer" minOccurs="1" maxOccurs="unbounded">
- <complexType base="map:componentType">
- <attribute name="mime-type" type="string"/>
- </complexType>
- </element>
- </complexType>
- </element>
- <element name="choosers" minOccurs="0" maxOccurs="1">
- <complexType base="map:groupType">
- <element name="chooser" minOccurs="1" maxOccurs="unbounded" type="map:componentType"/>
- </complexType>
- </element>
- <element name="matchers" minOccurs="0" maxOccurs="1">
- <complexType base="map:groupType">
- <element name="matcher" minOccurs="1" maxOccurs="unbounded" type="map:componentType"/>
- </complexType>
- </element>
- </complexType>
- </element>
- <!-- end components -->
- <element name="views" minOccurs="0" maxOccurs="1">
- <complexType>
- <element name="view" minOccurs="1" maxOccurs="unbounded">
- <complexType>
- <element name="transform" minOccurs="0" maxOccurs="unbounded" type="map:actionType"/>
- <element name="serialize" minOccurs="1" maxOccurs="1" type="map:actionType"/>
- <attribute name="name" type="string" use="required"/>
- <attribute name="generate-from" type="string" use="required"/>
- </complexType>
- </element>
- </complexType>
- </element>
- <element name="resources" minOccurs="0" maxOccurs="1">
- <complexType>
- <element name="resource" minOccurs="1" maxOccurs="unbounded">
- <complexType base="map:actionTypes">
- <attribute name="name" type="string" use="required"/>
- </complexType>
- </element>
- </complexType>
- </element>
- <element name="pipelines" minOccurs="0" maxOccurs="1">
- <complexType>
- <element name="pipeline" minOccurs="1" maxOccurs="unbounded">
- <complexType>
- <element name="match" minOccurs="1" maxOccurs="unbounded">
- <complexType base="map:matchType"/>
- </element>
- </complexType>
- </element>
- </complexType>
- </element>
- </complexType>
- </element>
- </schema>
-