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.
- -->
- <!DOCTYPE document PUBLIC "-//APACHE//DTD Documentation V1.0//EN" "document-v10.dtd">
-
- <document>
- <header>
- <title>XML Validation Facilities</title>
- <subtitle>Conducting build-time and run-time validation</subtitle>
- <version>0.2</version>
- <type>Technical document</type>
- <authors>
- <person name="David Crossley" email="crossley@apache.org"/>
- <person name="Colin Adams" email="colin@colina.demon.co.uk"/>
- </authors>
- </header>
-
- <body>
- <s1 title="Goal">
- <p>
- ###
- </p>
- </s1>
-
- <anchor id="overview"/>
- <s1 title="Overview">
- <note>This document is under development.</note>
- <p>You really should validate documents in your editing environment.
- It is not the concern of Cocoon. However there are some facilities.
- </p>
- </s1>
-
- <s1 title="Warning: Validation facilities are under development">
- <p>
- The validation facilities are under development in the head CVS.
- The RELAX NG grammars for each document type are basic (and some of them are
- just generated from old DTDs). The RNG with embedded Schematron rules
- (e.g. sitemap.rng) are minimal tests only and utilises Schematron Basic.
- Everything is experimental.
- </p>
-
- <p>
- With that said, the validation system does work and is waiting for your help
- to extend it.
- </p>
- </s1>
-
- <s1 title="Operation">
- <p>
- There are three validation targets in build.xml (see some internal notes).
- If you do not want validation to happen automatically during the build,
- then you can switch it off in
- <code>./properties.xml</code>
- </p>
-
- <s2 title="Build target validate-config">
- <p>
- 2.1-dev and 2.0.5
- </p>
- <p>
- <code>./build.sh validate-config</code>
- </p>
- <p>
- Called automatically during the build (only 2.1) and can also be called
- from the command-line.
- </p>
- <p>
- Validation of some core configuration files using RELAX NG. Currently doing:
- cocoon.roles, *.xsl, **/sitemap.xmap,
- and treeprocessor-builtins.xml (using DTD).
- </p>
- </s2>
-
- <s2 title="Build target validate-schematron">
- <p>
- 2.1-dev
- </p>
- <p>
- <code>./build.sh validate-schematron</code>
- </p>
- <p>
- Can only be called from the command-line.
- </p>
- <p>
- Validation of all sitemap.xmap using Schematron rules embedded in
- RELAX NG grammars. (Very experimental.)
- </p>
- </s2>
-
- <s2 title="Build target validate-xdocs">
- <p>
- 2.1-dev
- </p>
- <p>
- <code>./build.sh validate-xdocs</code>
- </p>
- <p>
- Called automatically during the build, and can also be called from the
- command-line.
- </p>
- <p>
- Validation of all core documentation/xdocs Currently doing:
- book.xml (using RELAX NG), *.xml (using DTD).
- </p>
- </s2>
-
- </s1>
-
- <s1 title="To Do">
- <ul>
- <li>Is the validate-config stuff properly integrated in the build.xml ?
- Is it being called from all of the appropriate places? e.g. should it also be
- called from the default target "all"?</li>
- <li>Integrate this build-time validation into 2.0.5 (currently standalone
- targets).</li>
- <li>All of the RELAX NG grammars are basic and need enhancement.</li>
- <li>The validate-schematron targets are particularly experimental.</li>
- <li>After this build-time validation is settled, then perhaps we can also do
- run-time validation when sitemap changes are effected.</li>
- </ul>
- </s1>
-
- <s1 title="Stuff">
- <p>
- See
- <link href="http://cvs.apache.org/viewcvs.cgi/xml-forrest/src/resources/schema/relaxng/README.txt?rev=HEAD&content-type=text/vnd.viewcvs-markup">xml-forrest/src/resources/schema/relaxng/README.txt</link>
- </p>
-
- <p>
- See
- <link href="http://cvs.apache.org/viewcvs.cgi/cocoon-2.1/tools/src/schematron/README.txt?rev=HEAD&content-type=text/vnd.viewcvs-markup">cocoon-2.1/tools/src/schematron/README.txt</link>
- </p>
-
- <p>
- See notes in the top of
- cocoon-2.1/src/webapp/WEB-INF/entities/sitemap-v06.rng
- </p>
-
- </s1>
-
- <anchor id="info"/>
- <s1 title="Further information">
- <ul>
- <li>Organization for the Advancement of Structured Information Standards
- (<link href="http://www.oasis-open.org/">OASIS</link>)
- </li>
- <li>Document Schema Definition Languages
- (<link href="http://www.dsdl.org/">DSDL</link>) -
- ISO/IEC 19757 - DSDL
- </li>
- </ul>
- </s1>
-
- </body>
- </document>
-