| <?xml version="1.0"?> |
| <!-- |
| 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. |
| --> |
| <project name="validate" default="default" basedir="."> |
| |
| |
| <property name="doc.xsd" location="xml/doc.xsd"/> |
| <property name="doc-in-ns.xsd" location="xml/doc-in-ns.xsd"/> |
| <property name="namespace" value="http://apache.org/ant/doc/" /> |
| |
| <property name="endpiece-ns-no-location.xml" |
| location="xml/endpiece-ns-no-location.xml"/> |
| |
| <target name="testNoNamespace"> |
| <schemavalidate |
| noNamespaceFile="${doc.xsd}" |
| file="xml/endpiece-noSchema.xml"> |
| </schemavalidate> |
| </target> |
| |
| <target name="testNSMapping"> |
| <schemavalidate |
| file="${endpiece-ns-no-location.xml}"> |
| <schema namespace="${namespace}" file="${doc-in-ns.xsd}" /> |
| <schema namespace="http://apache.org/ant/2" |
| url="http://ant.apache.org/" /> |
| </schemavalidate> |
| </target> |
| |
| <target name="testNoEmptySchemaNamespace"> |
| <schemavalidate |
| file="${endpiece-ns-no-location.xml}"> |
| <schema namespace="" file="${doc-in-ns.xsd}" /> |
| </schemavalidate> |
| </target> |
| |
| <target name="testNoEmptySchemaLocation"> |
| <schemavalidate |
| file="${endpiece-ns-no-location.xml}"> |
| <schema namespace="${namespace}" /> |
| </schemavalidate> |
| </target> |
| |
| <target name="testNoFile"> |
| <schemavalidate |
| file="${endpiece-ns-no-location.xml}"> |
| <schema namespace="${namespace}" file="${namespace}" /> |
| </schemavalidate> |
| </target> |
| |
| <target name="testNoDoubleSchemaLocation"> |
| <schemavalidate |
| file="${endpiece-ns-no-location.xml}"> |
| <schema namespace="${namespace}" file="${doc-in-ns.xsd}" url="${namespace}"/> |
| </schemavalidate> |
| </target> |
| |
| <target name="testNoDuplicateSchema"> |
| <schemavalidate |
| file="${endpiece-ns-no-location.xml}"> |
| <schema namespace="${namespace}" file="${doc-in-ns.xsd}" /> |
| <schema namespace="${namespace}" |
| url="http://ant.apache.org/" /> |
| </schemavalidate> |
| </target> |
| |
| <target name="testEqualsSchemasOK"> |
| <schemavalidate |
| file="${endpiece-ns-no-location.xml}"> |
| <schema namespace="${namespace}" file="${doc-in-ns.xsd}" /> |
| <schema namespace="${namespace}" file="${doc-in-ns.xsd}" /> |
| </schemavalidate> |
| </target> |
| |
| <target name="testFileset"> |
| <schemavalidate noNamespaceFile="${doc.xsd}" |
| > |
| <schema namespace="${namespace}" file="${doc-in-ns.xsd}" /> |
| <fileset dir="xml" |
| includes="endpiece.xml, endpiece-ns-no-location.xml, endpiece-no-schema.xml" /> |
| </schemavalidate> |
| </target> |
| |
| |
| <target name="default" depends="testNoNamespace,testNSMapping" /> |
| </project> |