You are viewing a plain text version of this content. The canonical link for it is here.
Posted to woden-dev@ws.apache.org by jk...@apache.org on 2007/08/23 13:01:35 UTC

svn commit: r568932 [25/36] - in /incubator/woden/trunk/java/src/org/apache/woden: ./ ant/ internal/ internal/resolver/ internal/schema/ internal/util/ internal/util/dom/ internal/util/om/ internal/wsdl20/ internal/wsdl20/extensions/ internal/wsdl20/ex...

Modified: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/QNameListOrTokenAnyAttrImpl.java
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/src/org/apache/woden/internal/xml/QNameListOrTokenAnyAttrImpl.java?rev=568932&r1=568931&r2=568932&view=diff
==============================================================================
--- incubator/woden/trunk/java/src/org/apache/woden/internal/xml/QNameListOrTokenAnyAttrImpl.java (original)
+++ incubator/woden/trunk/java/src/org/apache/woden/internal/xml/QNameListOrTokenAnyAttrImpl.java Thu Aug 23 04:01:23 2007
@@ -1,152 +1,152 @@
-/**
+/**
  * 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.
- */
-package org.apache.woden.internal.xml;
-
-import java.util.Iterator;
-import java.util.List;
-import java.util.Vector;
-
-import javax.xml.namespace.QName;
-
-import org.apache.woden.ErrorReporter;
-import org.apache.woden.WSDLException;
-import org.apache.woden.XMLElement;
-import org.apache.woden.internal.ErrorLocatorImpl;
-import org.apache.woden.internal.util.StringUtils;
-import org.apache.woden.xml.QNameListOrTokenAttr;
-
-/**
- * This class represents XML attribute information items of type
- * <code>Union of list of QName or xs:token #any</code>.
- * For example, the wsoap:subcodes extension attribute of binding fault.
- * 
- * @author jkaputin@apache.org
- */
-public class QNameListOrTokenAnyAttrImpl extends XMLAttrImpl 
-                                         implements QNameListOrTokenAttr 
-{
-    public QNameListOrTokenAnyAttrImpl(XMLElement ownerEl, QName attrType, 
-            String attrValue, ErrorReporter errRpt) throws WSDLException
-    {
-        super(ownerEl, attrType, attrValue, errRpt);
-    }
-    
-    /* ************************************************************
-     *  QNameListOrTokenAttr interface declared methods 
-     * ************************************************************/
-
-    /* (non-Javadoc)
-     * @see org.apache.woden.xml.QNameListOrTokenAttr#isQNameList()
-     */
-    public boolean isQNameList() 
-    {
-        return getContent() instanceof QName[];
-    }
-
-    /* (non-Javadoc)
-     * @see org.apache.woden.xml.QNameListOrTokenAttr#isToken()
-     */
-    public boolean isToken() 
-    {
-        return !isQNameList() && isValid();
-    }
-
-    /* (non-Javadoc)
-     * @see org.apache.woden.xml.QNameListOrTokenAttr#getQNames()
-     */
-    public QName[] getQNames() 
-    {
-        if(isQNameList()) {
-            return (QName[])getContent();
-        } else {
-            return null;
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.apache.woden.xml.QNameListOrTokenAttr#getToken()
-     */
-    public String getToken() 
-    {
-        if(!isQNameList() && isValid()) {
-            return (String)getContent();
-        } else {
-            return null;
-        }
-    }
-
-    /* ************************************************************
-     *  Non-API implementation methods 
-     * ************************************************************/
-    
-    /* (non-Javadoc)
-     * @see org.apache.woden.internal.xml.XMLAttrImpl#convert(org.w3c.dom.Element, java.lang.String)
-     *
-     * Convert a string of type "Union of list of xs:QName or xs:token #any" to a 
-     * java.xml.namespace.QName array or a String.
-     * A null argument will return a null value.
-     * Any conversion error will be reported and a null value will be returned.
-     */
-    protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException
-    {
-        //First, check if the attribute contains the xs:token '#any'.
-        if("#any".equals(attrValue)) return attrValue;
-        
-        //Second, assume the attribute contains a list of xs:QName.
-        if(attrValue == null || "".equals(attrValue))
-        {
-            setValid(false);
-            getErrorReporter().reportError(
-                    new ErrorLocatorImpl(),  //TODO line&col nos.
-                    "WSDL509", 
-                    new Object[] {attrValue}, 
-                    ErrorReporter.SEVERITY_ERROR);
-            return null;
-        }
-        
-        List qnStrings = StringUtils.parseNMTokens(attrValue);
-        Iterator i = qnStrings.iterator();
-        String qnString;
-        QName qname;
-        List qnames = new Vector();
-        
-        while(i.hasNext())
-        {
-            qnString = (String)i.next();
-            try
-            {
-                qname = ownerEl.getQName(qnString);
-            } 
-            catch (WSDLException e) 
-            {
-                setValid(false);
-                getErrorReporter().reportError(
-                        new ErrorLocatorImpl(),  //TODO line&col nos.
-                        "WSDL510", 
-                        new Object[] {qnString, attrValue}, 
-                        ErrorReporter.SEVERITY_ERROR, 
-                        e);
-                continue;
-            }
-            qnames.add(qname);
-        }
-        QName[] qnArray = new QName[qnames.size()];
-        qnames.toArray(qnArray);
-        return qnArray;    
-    }
-    
-}
+ * 
+ *     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.
+ */
+package org.apache.woden.internal.xml;
+
+import java.util.Iterator;
+import java.util.List;
+import java.util.Vector;
+
+import javax.xml.namespace.QName;
+
+import org.apache.woden.ErrorReporter;
+import org.apache.woden.WSDLException;
+import org.apache.woden.XMLElement;
+import org.apache.woden.internal.ErrorLocatorImpl;
+import org.apache.woden.internal.util.StringUtils;
+import org.apache.woden.xml.QNameListOrTokenAttr;
+
+/**
+ * This class represents XML attribute information items of type
+ * <code>Union of list of QName or xs:token #any</code>.
+ * For example, the wsoap:subcodes extension attribute of binding fault.
+ * 
+ * @author jkaputin@apache.org
+ */
+public class QNameListOrTokenAnyAttrImpl extends XMLAttrImpl 
+                                         implements QNameListOrTokenAttr 
+{
+    public QNameListOrTokenAnyAttrImpl(XMLElement ownerEl, QName attrType, 
+            String attrValue, ErrorReporter errRpt) throws WSDLException
+    {
+        super(ownerEl, attrType, attrValue, errRpt);
+    }
+    
+    /* ************************************************************
+     *  QNameListOrTokenAttr interface declared methods 
+     * ************************************************************/
+
+    /* (non-Javadoc)
+     * @see org.apache.woden.xml.QNameListOrTokenAttr#isQNameList()
+     */
+    public boolean isQNameList() 
+    {
+        return getContent() instanceof QName[];
+    }
+
+    /* (non-Javadoc)
+     * @see org.apache.woden.xml.QNameListOrTokenAttr#isToken()
+     */
+    public boolean isToken() 
+    {
+        return !isQNameList() && isValid();
+    }
+
+    /* (non-Javadoc)
+     * @see org.apache.woden.xml.QNameListOrTokenAttr#getQNames()
+     */
+    public QName[] getQNames() 
+    {
+        if(isQNameList()) {
+            return (QName[])getContent();
+        } else {
+            return null;
+        }
+    }
+
+    /* (non-Javadoc)
+     * @see org.apache.woden.xml.QNameListOrTokenAttr#getToken()
+     */
+    public String getToken() 
+    {
+        if(!isQNameList() && isValid()) {
+            return (String)getContent();
+        } else {
+            return null;
+        }
+    }
+
+    /* ************************************************************
+     *  Non-API implementation methods 
+     * ************************************************************/
+    
+    /* (non-Javadoc)
+     * @see org.apache.woden.internal.xml.XMLAttrImpl#convert(org.w3c.dom.Element, java.lang.String)
+     *
+     * Convert a string of type "Union of list of xs:QName or xs:token #any" to a 
+     * java.xml.namespace.QName array or a String.
+     * A null argument will return a null value.
+     * Any conversion error will be reported and a null value will be returned.
+     */
+    protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException
+    {
+        //First, check if the attribute contains the xs:token '#any'.
+        if("#any".equals(attrValue)) return attrValue;
+        
+        //Second, assume the attribute contains a list of xs:QName.
+        if(attrValue == null || "".equals(attrValue))
+        {
+            setValid(false);
+            getErrorReporter().reportError(
+                    new ErrorLocatorImpl(),  //TODO line&col nos.
+                    "WSDL509", 
+                    new Object[] {attrValue}, 
+                    ErrorReporter.SEVERITY_ERROR);
+            return null;
+        }
+        
+        List qnStrings = StringUtils.parseNMTokens(attrValue);
+        Iterator i = qnStrings.iterator();
+        String qnString;
+        QName qname;
+        List qnames = new Vector();
+        
+        while(i.hasNext())
+        {
+            qnString = (String)i.next();
+            try
+            {
+                qname = ownerEl.getQName(qnString);
+            } 
+            catch (WSDLException e) 
+            {
+                setValid(false);
+                getErrorReporter().reportError(
+                        new ErrorLocatorImpl(),  //TODO line&col nos.
+                        "WSDL510", 
+                        new Object[] {qnString, attrValue}, 
+                        ErrorReporter.SEVERITY_ERROR, 
+                        e);
+                continue;
+            }
+            qnames.add(qname);
+        }
+        QName[] qnArray = new QName[qnames.size()];
+        qnames.toArray(qnArray);
+        return qnArray;    
+    }
+    
+}

Propchange: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/QNameListOrTokenAnyAttrImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/QNameOrTokenAnyAttrImpl.java
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/src/org/apache/woden/internal/xml/QNameOrTokenAnyAttrImpl.java?rev=568932&r1=568931&r2=568932&view=diff
==============================================================================
--- incubator/woden/trunk/java/src/org/apache/woden/internal/xml/QNameOrTokenAnyAttrImpl.java (original)
+++ incubator/woden/trunk/java/src/org/apache/woden/internal/xml/QNameOrTokenAnyAttrImpl.java Thu Aug 23 04:01:23 2007
@@ -1,134 +1,134 @@
-/**
+/**
  * 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.
- */
-package org.apache.woden.internal.xml;
-
-import javax.xml.namespace.QName;
-
-import org.apache.woden.ErrorReporter;
-import org.apache.woden.WSDLException;
-import org.apache.woden.XMLElement;
-import org.apache.woden.internal.ErrorLocatorImpl;
-import org.apache.woden.xml.QNameOrTokenAttr;
-
-/**
- * This class represents XML attribute information items of type
- * <code>Union of QName or xs:token #any</code>.
- * For example, the wsoap:code extension attribute of binding fault.
- * 
- * @author jkaputin@apache.org
- */
-public class QNameOrTokenAnyAttrImpl extends XMLAttrImpl 
-                                     implements QNameOrTokenAttr 
-{
-    public QNameOrTokenAnyAttrImpl(XMLElement ownerEl, QName attrType, 
-            String attrValue, ErrorReporter errRpt) throws WSDLException
-    {
-        super(ownerEl, attrType, attrValue, errRpt);
-    }
-    
-    /* ************************************************************
-     *  QNameOrTokenAttr interface declared methods 
-     * ************************************************************/
-
-    /* (non-Javadoc)
-     * @see org.apache.woden.xml.QNameOrTokenAttr#isQName()
-     */
-    public boolean isQName() 
-    {
-        return getContent() instanceof QName;
-    }
-
-    /* (non-Javadoc)
-     * @see org.apache.woden.xml.QNameOrTokenAttr#isToken()
-     */
-    public boolean isToken() 
-    {
-        if(!isQName() && isValid()) {
-            return true;
-        } else {
-            return false;
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.apache.woden.xml.QNameOrTokenAttr#getQName()
-     */
-    public QName getQName() 
-    {
-        if(isQName()) {
-            return (QName)getContent();
-        } else {
-            return null;
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.apache.woden.xml.QNameOrTokenAttr#getToken()
-     */
-    public String getToken() 
-    {
-        if(!isQName() && isValid()) {
-            return (String)getContent();
-        } else {
-            return null;
-        }
-    }
-
-    /* (non-Javadoc)
-     * @see org.apache.woden.internal.xml.XMLAttrImpl#convert(org.w3c.dom.Element, java.lang.String)
-     *
-     * Convert a string of type "Union of xs:QName or xs:token #any" to a 
-     * java.xml.namespace.QName or a String.
-     * A null argument will return a null value.
-     * Any conversion error will be reported and a null value will be returned.
-     */
-    protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException
-    {
-        //First, check if the attribute contains the xs:token '#any'.
-        if("#any".equals(attrValue)) return attrValue;
-        
-        //Second, assume the attribute contains a xs:QName value.
-        Exception ex = null;
-        QName qn = null;
-        
-        if(attrValue != null)
-        {
-            try
-            {
-                qn = ownerEl.getQName(attrValue);
-            } 
-            catch (WSDLException e) 
-            {
-                ex = e;
-            }
-        }
-        
-        if(qn == null)
-        {
-            setValid(false);
-            getErrorReporter().reportError(
-                    new ErrorLocatorImpl(),  //TODO line&col nos.
-                    "WSDL507",
-                    new Object[] {attrValue}, 
-                    ErrorReporter.SEVERITY_ERROR, 
-                    ex);
-        }
-        
-        return qn;
-    }
-    
-}
+ * 
+ *     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.
+ */
+package org.apache.woden.internal.xml;
+
+import javax.xml.namespace.QName;
+
+import org.apache.woden.ErrorReporter;
+import org.apache.woden.WSDLException;
+import org.apache.woden.XMLElement;
+import org.apache.woden.internal.ErrorLocatorImpl;
+import org.apache.woden.xml.QNameOrTokenAttr;
+
+/**
+ * This class represents XML attribute information items of type
+ * <code>Union of QName or xs:token #any</code>.
+ * For example, the wsoap:code extension attribute of binding fault.
+ * 
+ * @author jkaputin@apache.org
+ */
+public class QNameOrTokenAnyAttrImpl extends XMLAttrImpl 
+                                     implements QNameOrTokenAttr 
+{
+    public QNameOrTokenAnyAttrImpl(XMLElement ownerEl, QName attrType, 
+            String attrValue, ErrorReporter errRpt) throws WSDLException
+    {
+        super(ownerEl, attrType, attrValue, errRpt);
+    }
+    
+    /* ************************************************************
+     *  QNameOrTokenAttr interface declared methods 
+     * ************************************************************/
+
+    /* (non-Javadoc)
+     * @see org.apache.woden.xml.QNameOrTokenAttr#isQName()
+     */
+    public boolean isQName() 
+    {
+        return getContent() instanceof QName;
+    }
+
+    /* (non-Javadoc)
+     * @see org.apache.woden.xml.QNameOrTokenAttr#isToken()
+     */
+    public boolean isToken() 
+    {
+        if(!isQName() && isValid()) {
+            return true;
+        } else {
+            return false;
+        }
+    }
+
+    /* (non-Javadoc)
+     * @see org.apache.woden.xml.QNameOrTokenAttr#getQName()
+     */
+    public QName getQName() 
+    {
+        if(isQName()) {
+            return (QName)getContent();
+        } else {
+            return null;
+        }
+    }
+
+    /* (non-Javadoc)
+     * @see org.apache.woden.xml.QNameOrTokenAttr#getToken()
+     */
+    public String getToken() 
+    {
+        if(!isQName() && isValid()) {
+            return (String)getContent();
+        } else {
+            return null;
+        }
+    }
+
+    /* (non-Javadoc)
+     * @see org.apache.woden.internal.xml.XMLAttrImpl#convert(org.w3c.dom.Element, java.lang.String)
+     *
+     * Convert a string of type "Union of xs:QName or xs:token #any" to a 
+     * java.xml.namespace.QName or a String.
+     * A null argument will return a null value.
+     * Any conversion error will be reported and a null value will be returned.
+     */
+    protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException
+    {
+        //First, check if the attribute contains the xs:token '#any'.
+        if("#any".equals(attrValue)) return attrValue;
+        
+        //Second, assume the attribute contains a xs:QName value.
+        Exception ex = null;
+        QName qn = null;
+        
+        if(attrValue != null)
+        {
+            try
+            {
+                qn = ownerEl.getQName(attrValue);
+            } 
+            catch (WSDLException e) 
+            {
+                ex = e;
+            }
+        }
+        
+        if(qn == null)
+        {
+            setValid(false);
+            getErrorReporter().reportError(
+                    new ErrorLocatorImpl(),  //TODO line&col nos.
+                    "WSDL507",
+                    new Object[] {attrValue}, 
+                    ErrorReporter.SEVERITY_ERROR, 
+                    ex);
+        }
+        
+        return qn;
+    }
+    
+}

Propchange: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/QNameOrTokenAnyAttrImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/StringAttrImpl.java
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/src/org/apache/woden/internal/xml/StringAttrImpl.java?rev=568932&r1=568931&r2=568932&view=diff
==============================================================================
--- incubator/woden/trunk/java/src/org/apache/woden/internal/xml/StringAttrImpl.java (original)
+++ incubator/woden/trunk/java/src/org/apache/woden/internal/xml/StringAttrImpl.java Thu Aug 23 04:01:23 2007
@@ -1,73 +1,73 @@
-/**
+/**
  * 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.
- */
-package org.apache.woden.internal.xml;
-
-import javax.xml.namespace.QName;
-
-import org.apache.woden.ErrorReporter;
-import org.apache.woden.WSDLException;
-import org.apache.woden.XMLElement;
-import org.apache.woden.internal.ErrorLocatorImpl;
-import org.apache.woden.xml.StringAttr;
-
-
-/**
- * This class represents XML attribute information items of type xs:string.
- * 
- * @author jkaputin@apache.org
- */
-public class StringAttrImpl extends XMLAttrImpl implements StringAttr 
-{
-    public StringAttrImpl(XMLElement ownerEl, QName attrType, 
-            String attrValue, ErrorReporter errRpt) throws WSDLException
-    {
-        super(ownerEl, attrType, attrValue, errRpt);
-    }
-    
-    /* ************************************************************
-     *  StringAttr interface declared methods 
-     * ************************************************************/
-    
-    public String getString() {
-        return (String)getContent();
-    }
-    
-    /* ************************************************************
-     *  Non-API implementation methods 
-     * ************************************************************/
-
-    /*
-     * Convert a string of type xs:string to a java.lang.String.
-     * A null argument will return a null value.
-     * Any conversion error will be reported and a null value will be returned.
-     */
-    protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException
-    {
-
-        if(attrValue == null)
-        {
-            setValid(false);
-            getErrorReporter().reportError(
-                    new ErrorLocatorImpl(),  //TODO line&col nos.
-                    "WSDL508",
-                    new Object[] {attrValue},
-                    ErrorReporter.SEVERITY_ERROR);
-        }
-        return attrValue;
-    }
-
-}
+ * 
+ *     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.
+ */
+package org.apache.woden.internal.xml;
+
+import javax.xml.namespace.QName;
+
+import org.apache.woden.ErrorReporter;
+import org.apache.woden.WSDLException;
+import org.apache.woden.XMLElement;
+import org.apache.woden.internal.ErrorLocatorImpl;
+import org.apache.woden.xml.StringAttr;
+
+
+/**
+ * This class represents XML attribute information items of type xs:string.
+ * 
+ * @author jkaputin@apache.org
+ */
+public class StringAttrImpl extends XMLAttrImpl implements StringAttr 
+{
+    public StringAttrImpl(XMLElement ownerEl, QName attrType, 
+            String attrValue, ErrorReporter errRpt) throws WSDLException
+    {
+        super(ownerEl, attrType, attrValue, errRpt);
+    }
+    
+    /* ************************************************************
+     *  StringAttr interface declared methods 
+     * ************************************************************/
+    
+    public String getString() {
+        return (String)getContent();
+    }
+    
+    /* ************************************************************
+     *  Non-API implementation methods 
+     * ************************************************************/
+
+    /*
+     * Convert a string of type xs:string to a java.lang.String.
+     * A null argument will return a null value.
+     * Any conversion error will be reported and a null value will be returned.
+     */
+    protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException
+    {
+
+        if(attrValue == null)
+        {
+            setValid(false);
+            getErrorReporter().reportError(
+                    new ErrorLocatorImpl(),  //TODO line&col nos.
+                    "WSDL508",
+                    new Object[] {attrValue},
+                    ErrorReporter.SEVERITY_ERROR);
+        }
+        return attrValue;
+    }
+
+}

Propchange: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/StringAttrImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/TokenAttrImpl.java
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/src/org/apache/woden/internal/xml/TokenAttrImpl.java?rev=568932&r1=568931&r2=568932&view=diff
==============================================================================
--- incubator/woden/trunk/java/src/org/apache/woden/internal/xml/TokenAttrImpl.java (original)
+++ incubator/woden/trunk/java/src/org/apache/woden/internal/xml/TokenAttrImpl.java Thu Aug 23 04:01:23 2007
@@ -1,76 +1,76 @@
-/**
+/**
  * 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.
- */
-package org.apache.woden.internal.xml;
-
-import javax.xml.namespace.QName;
-
-import org.apache.woden.ErrorReporter;
-import org.apache.woden.WSDLException;
-import org.apache.woden.XMLElement;
-import org.apache.woden.internal.ErrorLocatorImpl;
-import org.apache.woden.xml.TokenAttr;
-
-/**
- * This class represents XML attribute information items of type xs:token.
- * 
- * TODO when the class org.apache.woden.types.Token has been created, convert the
- * xs:token to a Token instead of a String and modify the getToken method to return
- * a Token instead of a String.
- * 
- * @author jkaputin@apache.org
- */
-public class TokenAttrImpl extends XMLAttrImpl implements TokenAttr 
-{
-    public TokenAttrImpl(XMLElement ownerEl, QName attrType, 
-            String attrValue, ErrorReporter errRpt) throws WSDLException
-    {
-        super(ownerEl, attrType, attrValue, errRpt);
-    }
-    
-    /* ************************************************************
-     *  TokenAttr interface declared methods 
-     * ************************************************************/
-    
-    public String getToken() {
-        return (String)getContent();
-    }
-    
-    /* ************************************************************
-     *  Non-API implementation methods 
-     * ************************************************************/
-
-    /*
-     * Convert a string of type xs:token to a java.lang.String (for now, but see 'todo' above).
-     * A null argument will return a null value.
-     * Any conversion error will be reported and a null value will be returned.
-     */
-    protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException
-    {
-
-        if(attrValue == null)
-        {
-            setValid(false);
-            getErrorReporter().reportError(
-                    new ErrorLocatorImpl(),  //TODO line&col nos.
-                    "WSDL508",
-                    new Object[] {attrValue},
-                    ErrorReporter.SEVERITY_ERROR);
-        }
-        return attrValue;
-    }
-
-}
+ * 
+ *     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.
+ */
+package org.apache.woden.internal.xml;
+
+import javax.xml.namespace.QName;
+
+import org.apache.woden.ErrorReporter;
+import org.apache.woden.WSDLException;
+import org.apache.woden.XMLElement;
+import org.apache.woden.internal.ErrorLocatorImpl;
+import org.apache.woden.xml.TokenAttr;
+
+/**
+ * This class represents XML attribute information items of type xs:token.
+ * 
+ * TODO when the class org.apache.woden.types.Token has been created, convert the
+ * xs:token to a Token instead of a String and modify the getToken method to return
+ * a Token instead of a String.
+ * 
+ * @author jkaputin@apache.org
+ */
+public class TokenAttrImpl extends XMLAttrImpl implements TokenAttr 
+{
+    public TokenAttrImpl(XMLElement ownerEl, QName attrType, 
+            String attrValue, ErrorReporter errRpt) throws WSDLException
+    {
+        super(ownerEl, attrType, attrValue, errRpt);
+    }
+    
+    /* ************************************************************
+     *  TokenAttr interface declared methods 
+     * ************************************************************/
+    
+    public String getToken() {
+        return (String)getContent();
+    }
+    
+    /* ************************************************************
+     *  Non-API implementation methods 
+     * ************************************************************/
+
+    /*
+     * Convert a string of type xs:token to a java.lang.String (for now, but see 'todo' above).
+     * A null argument will return a null value.
+     * Any conversion error will be reported and a null value will be returned.
+     */
+    protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException
+    {
+
+        if(attrValue == null)
+        {
+            setValid(false);
+            getErrorReporter().reportError(
+                    new ErrorLocatorImpl(),  //TODO line&col nos.
+                    "WSDL508",
+                    new Object[] {attrValue},
+                    ErrorReporter.SEVERITY_ERROR);
+        }
+        return attrValue;
+    }
+
+}

Propchange: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/TokenAttrImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/URIAttrImpl.java
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/src/org/apache/woden/internal/xml/URIAttrImpl.java?rev=568932&r1=568931&r2=568932&view=diff
==============================================================================
--- incubator/woden/trunk/java/src/org/apache/woden/internal/xml/URIAttrImpl.java (original)
+++ incubator/woden/trunk/java/src/org/apache/woden/internal/xml/URIAttrImpl.java Thu Aug 23 04:01:23 2007
@@ -1,92 +1,92 @@
-/**
+/**
  * 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.
- */
-package org.apache.woden.internal.xml;
-
-import java.net.URI;
-import java.net.URISyntaxException;
-
-import javax.xml.namespace.QName;
-
-import org.apache.woden.ErrorReporter;
-import org.apache.woden.WSDLException;
-import org.apache.woden.XMLElement;
-import org.apache.woden.internal.ErrorLocatorImpl;
-import org.apache.woden.xml.URIAttr;
-
-/**
- * This class represents XML attribute information items of type xs:anyURI.
- * 
- * @author jkaputin@apache.org
- */
-public class URIAttrImpl extends XMLAttrImpl implements URIAttr 
-{
-    public URIAttrImpl(XMLElement ownerEl, QName attrType, 
-            String attrValue, ErrorReporter errRpt) throws WSDLException
-    {
-        super(ownerEl, attrType, attrValue, errRpt);
-    }
-    
-    
-    /* ************************************************************
-     *  URIAttr interface declared methods 
-     * ************************************************************/
-    
-    public URI getURI() {
-        return (URI)getContent();
-    }
-    
-    /* ************************************************************
-     *  Non-API implementation methods 
-     * ************************************************************/
-
-    /*
-     * Convert a string of type xs:anyURI to a java.net.URI.
-     * An empty string argument will return an empty string URI.
-     * A null argument will return a null value.
-     * Any conversion error will be reported and a null value will be returned.
-     */
-    protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException
-    {
-        Exception ex = null;
-        URI uri = null;
-        
-        if(attrValue != null)
-        {
-            try 
-            {
-                uri = new URI(attrValue);
-            } 
-            catch (URISyntaxException e) 
-            {
-                ex = e;
-            }
-        }
-        
-        if(uri == null)
-        {
-            setValid(false);
-            getErrorReporter().reportError(
-                    new ErrorLocatorImpl(),  //TODO line&col nos.
-                    "WSDL506", 
-                    new Object[] {attrValue}, 
-                    ErrorReporter.SEVERITY_ERROR, 
-                    ex);
-        }
-        return uri;
-    }
-
-}
+ * 
+ *     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.
+ */
+package org.apache.woden.internal.xml;
+
+import java.net.URI;
+import java.net.URISyntaxException;
+
+import javax.xml.namespace.QName;
+
+import org.apache.woden.ErrorReporter;
+import org.apache.woden.WSDLException;
+import org.apache.woden.XMLElement;
+import org.apache.woden.internal.ErrorLocatorImpl;
+import org.apache.woden.xml.URIAttr;
+
+/**
+ * This class represents XML attribute information items of type xs:anyURI.
+ * 
+ * @author jkaputin@apache.org
+ */
+public class URIAttrImpl extends XMLAttrImpl implements URIAttr 
+{
+    public URIAttrImpl(XMLElement ownerEl, QName attrType, 
+            String attrValue, ErrorReporter errRpt) throws WSDLException
+    {
+        super(ownerEl, attrType, attrValue, errRpt);
+    }
+    
+    
+    /* ************************************************************
+     *  URIAttr interface declared methods 
+     * ************************************************************/
+    
+    public URI getURI() {
+        return (URI)getContent();
+    }
+    
+    /* ************************************************************
+     *  Non-API implementation methods 
+     * ************************************************************/
+
+    /*
+     * Convert a string of type xs:anyURI to a java.net.URI.
+     * An empty string argument will return an empty string URI.
+     * A null argument will return a null value.
+     * Any conversion error will be reported and a null value will be returned.
+     */
+    protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException
+    {
+        Exception ex = null;
+        URI uri = null;
+        
+        if(attrValue != null)
+        {
+            try 
+            {
+                uri = new URI(attrValue);
+            } 
+            catch (URISyntaxException e) 
+            {
+                ex = e;
+            }
+        }
+        
+        if(uri == null)
+        {
+            setValid(false);
+            getErrorReporter().reportError(
+                    new ErrorLocatorImpl(),  //TODO line&col nos.
+                    "WSDL506", 
+                    new Object[] {attrValue}, 
+                    ErrorReporter.SEVERITY_ERROR, 
+                    ex);
+        }
+        return uri;
+    }
+
+}

Propchange: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/URIAttrImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/XMLAttrImpl.java
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/src/org/apache/woden/internal/xml/XMLAttrImpl.java?rev=568932&r1=568931&r2=568932&view=diff
==============================================================================
--- incubator/woden/trunk/java/src/org/apache/woden/internal/xml/XMLAttrImpl.java (original)
+++ incubator/woden/trunk/java/src/org/apache/woden/internal/xml/XMLAttrImpl.java Thu Aug 23 04:01:23 2007
@@ -1,96 +1,96 @@
-/**
+/**
  * 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.
- */
-package org.apache.woden.internal.xml;
-
-import javax.xml.namespace.QName;
-
-import org.apache.woden.ErrorReporter;
-import org.apache.woden.WSDLException;
-import org.apache.woden.XMLElement;
-import org.apache.woden.internal.ErrorReporterImpl;
-import org.apache.woden.internal.WSDLContext;
-import org.apache.woden.xml.XMLAttr;
-
-/**
- * This is an abstract superclass for all classes representing different
- * types of XML attribute information items.
- * 
- * @author jkaputin@apache.org
- */
-public abstract class XMLAttrImpl implements XMLAttr
-{
-    private QName fAttrType = null;
-    private Object fContent = null;
-    private String fExternalForm = null;
-    private boolean fValid = true;
-    private ErrorReporter fErrorReporter = null;
-    
-    protected XMLAttrImpl(XMLElement ownerEl, QName attrType, 
-            String attrValue, ErrorReporter errRpt) throws WSDLException
-    {
-        fErrorReporter = errRpt;
-        fAttrType = attrType;
-        fExternalForm = attrValue;
-        fContent = convert(ownerEl, attrValue);
-        if(fContent == null) {
-            fValid = false;
-        }
-    }
-    
-    /* ************************************************************
-     *  XMLAttr interface declared methods 
-     * ************************************************************/
-
-    public QName getAttributeType() {
-        return fAttrType;
-    }
-    
-    public Object getContent() {
-        return fContent;
-    }
-    
-    public String toExternalForm() {
-        return fExternalForm;
-    }
-    
-    public boolean isValid() {
-        return fValid;
-    }
-    
-    /* ************************************************************
-     *  Non-API implementation methods 
-     * ************************************************************/
-
-    abstract protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException;
-    
-    protected ErrorReporter getErrorReporter()
-    {
-        return fErrorReporter;
-    }
-    
-    /*
-     * Validity is initialized to true, but set to false if the attribute's
-     * value is null or if it cannot be converted to an object of the 
-     * appropriate type). This method may be used to change the validity later
-     * (e.g. if Validation determines an error).
-     * 
-     * TODO confirm this method is needed, otherwise remove it.
-     */
-    protected void setValid(boolean validity) {
-        fValid = validity;
-    }
-}
+ * 
+ *     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.
+ */
+package org.apache.woden.internal.xml;
+
+import javax.xml.namespace.QName;
+
+import org.apache.woden.ErrorReporter;
+import org.apache.woden.WSDLException;
+import org.apache.woden.XMLElement;
+import org.apache.woden.internal.ErrorReporterImpl;
+import org.apache.woden.internal.WSDLContext;
+import org.apache.woden.xml.XMLAttr;
+
+/**
+ * This is an abstract superclass for all classes representing different
+ * types of XML attribute information items.
+ * 
+ * @author jkaputin@apache.org
+ */
+public abstract class XMLAttrImpl implements XMLAttr
+{
+    private QName fAttrType = null;
+    private Object fContent = null;
+    private String fExternalForm = null;
+    private boolean fValid = true;
+    private ErrorReporter fErrorReporter = null;
+    
+    protected XMLAttrImpl(XMLElement ownerEl, QName attrType, 
+            String attrValue, ErrorReporter errRpt) throws WSDLException
+    {
+        fErrorReporter = errRpt;
+        fAttrType = attrType;
+        fExternalForm = attrValue;
+        fContent = convert(ownerEl, attrValue);
+        if(fContent == null) {
+            fValid = false;
+        }
+    }
+    
+    /* ************************************************************
+     *  XMLAttr interface declared methods 
+     * ************************************************************/
+
+    public QName getAttributeType() {
+        return fAttrType;
+    }
+    
+    public Object getContent() {
+        return fContent;
+    }
+    
+    public String toExternalForm() {
+        return fExternalForm;
+    }
+    
+    public boolean isValid() {
+        return fValid;
+    }
+    
+    /* ************************************************************
+     *  Non-API implementation methods 
+     * ************************************************************/
+
+    abstract protected Object convert(XMLElement ownerEl, String attrValue) throws WSDLException;
+    
+    protected ErrorReporter getErrorReporter()
+    {
+        return fErrorReporter;
+    }
+    
+    /*
+     * Validity is initialized to true, but set to false if the attribute's
+     * value is null or if it cannot be converted to an object of the 
+     * appropriate type). This method may be used to change the validity later
+     * (e.g. if Validation determines an error).
+     * 
+     * TODO confirm this method is needed, otherwise remove it.
+     */
+    protected void setValid(boolean validity) {
+        fValid = validity;
+    }
+}

Propchange: incubator/woden/trunk/java/src/org/apache/woden/internal/xml/XMLAttrImpl.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/woden/trunk/java/src/org/apache/woden/resolver/URIResolver.java
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/src/org/apache/woden/resolver/URIResolver.java?rev=568932&r1=568931&r2=568932&view=diff
==============================================================================
--- incubator/woden/trunk/java/src/org/apache/woden/resolver/URIResolver.java (original)
+++ incubator/woden/trunk/java/src/org/apache/woden/resolver/URIResolver.java Thu Aug 23 04:01:23 2007
@@ -1,54 +1,54 @@
-/**
+/**
  * 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.
- * 
- *  @author Graham Turrell
- */
-package org.apache.woden.resolver;
-
-import java.io.IOException;
-import java.net.URI;
-
-import org.apache.woden.WSDLException;
-
-/** 
- *Implementations of this interface may be used to specify a custom URI resolver.
- *Such an implementation can then be used to override the default Woden URI Resolver.
- *To associate a URI resolver programmatically, the following should be called prior to parser invocation.
- *<p>Example:
- *<br>WSDLFactory factory = WSDLFactory.newInstance();
- *<br>WSDLReader reader = factory.newWSDLReader();
- *<br>// MyURIResolver implements this interface ...
- *<br>URIResolver resolver = new MyURIResolver(); 
- *<br>reader.setURIResolver(resolver);
- *<br>...
- *<br>// Then, can parse a document and the assigned resolver will be used internally...
- *<br>Description desc = reader.readWSDL("http://myplace/mydoc.wsdl");
- *@see org.apache.woden.WSDLFactory
- *@see org.apache.woden.WSDLReader
- */
-public interface URIResolver {
-	
-	/** 
-	 * Implementation should return null if there is no resolution for the uri.
-	 * 
-	 * @param uri the uri to be resolved
-	 * @return    the resolved URI (or null if no resolution available)
-	 * @throws    WSDLException
-	 * @throws    IOException
-	 */
-	public URI resolveURI(URI uri) throws WSDLException, IOException;
-
-}
+ * 
+ *     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.
+ * 
+ *  @author Graham Turrell
+ */
+package org.apache.woden.resolver;
+
+import java.io.IOException;
+import java.net.URI;
+
+import org.apache.woden.WSDLException;
+
+/** 
+ *Implementations of this interface may be used to specify a custom URI resolver.
+ *Such an implementation can then be used to override the default Woden URI Resolver.
+ *To associate a URI resolver programmatically, the following should be called prior to parser invocation.
+ *<p>Example:
+ *<br>WSDLFactory factory = WSDLFactory.newInstance();
+ *<br>WSDLReader reader = factory.newWSDLReader();
+ *<br>// MyURIResolver implements this interface ...
+ *<br>URIResolver resolver = new MyURIResolver(); 
+ *<br>reader.setURIResolver(resolver);
+ *<br>...
+ *<br>// Then, can parse a document and the assigned resolver will be used internally...
+ *<br>Description desc = reader.readWSDL("http://myplace/mydoc.wsdl");
+ *@see org.apache.woden.WSDLFactory
+ *@see org.apache.woden.WSDLReader
+ */
+public interface URIResolver {
+	
+	/** 
+	 * Implementation should return null if there is no resolution for the uri.
+	 * 
+	 * @param uri the uri to be resolved
+	 * @return    the resolved URI (or null if no resolution available)
+	 * @throws    WSDLException
+	 * @throws    IOException
+	 */
+	public URI resolveURI(URI uri) throws WSDLException, IOException;
+
+}

Propchange: incubator/woden/trunk/java/src/org/apache/woden/resolver/URIResolver.java
------------------------------------------------------------------------------
    svn:eol-style = native

Modified: incubator/woden/trunk/java/src/org/apache/woden/resolver/XMLSchema.dtd
URL: http://svn.apache.org/viewvc/incubator/woden/trunk/java/src/org/apache/woden/resolver/XMLSchema.dtd?rev=568932&r1=568931&r2=568932&view=diff
==============================================================================
--- incubator/woden/trunk/java/src/org/apache/woden/resolver/XMLSchema.dtd (original)
+++ incubator/woden/trunk/java/src/org/apache/woden/resolver/XMLSchema.dtd Thu Aug 23 04:01:23 2007
@@ -1,402 +1,402 @@
-<!-- DTD for XML Schemas: Part 1: Structures
-     Public Identifier: "-//W3C//DTD XMLSCHEMA 200102//EN"
-     Official Location: http://www.w3.org/2001/XMLSchema.dtd -->
-<!-- $Id: XMLSchema.dtd,v 1.31 2001/10/24 15:50:16 ht Exp $ -->
-<!-- Note this DTD is NOT normative, or even definitive. -->           <!--d-->
-<!-- prose copy in the structures REC is the definitive version -->    <!--d-->
-<!-- (which shouldn't differ from this one except for this -->         <!--d-->
-<!-- comment and entity expansions, but just in case) -->              <!--d-->
-<!-- With the exception of cases with multiple namespace
-     prefixes for the XML Schema namespace, any XML document which is
-     not valid per this DTD given redefinitions in its internal subset of the
-     'p' and 's' parameter entities below appropriate to its namespace
-     declaration of the XML Schema namespace is almost certainly not
-     a valid schema. -->
-
-<!-- The simpleType element and its constituent parts
-     are defined in XML Schema: Part 2: Datatypes -->
-<!ENTITY % xs-datatypes PUBLIC 'datatypes' 'datatypes.dtd' >
-
-<!ENTITY % p 'xs:'> <!-- can be overriden in the internal subset of a
-                         schema document to establish a different
-                         namespace prefix -->
-<!ENTITY % s ':xs'> <!-- if %p is defined (e.g. as foo:) then you must
-                         also define %s as the suffix for the appropriate
-                         namespace declaration (e.g. :foo) -->
-<!ENTITY % nds 'xmlns%s;'>
-
-<!-- Define all the element names, with optional prefix -->
-<!ENTITY % schema "%p;schema">
-<!ENTITY % complexType "%p;complexType">
-<!ENTITY % complexContent "%p;complexContent">
-<!ENTITY % simpleContent "%p;simpleContent">
-<!ENTITY % extension "%p;extension">
-<!ENTITY % element "%p;element">
-<!ENTITY % unique "%p;unique">
-<!ENTITY % key "%p;key">
-<!ENTITY % keyref "%p;keyref">
-<!ENTITY % selector "%p;selector">
-<!ENTITY % field "%p;field">
-<!ENTITY % group "%p;group">
-<!ENTITY % all "%p;all">
-<!ENTITY % choice "%p;choice">
-<!ENTITY % sequence "%p;sequence">
-<!ENTITY % any "%p;any">
-<!ENTITY % anyAttribute "%p;anyAttribute">
-<!ENTITY % attribute "%p;attribute">
-<!ENTITY % attributeGroup "%p;attributeGroup">
-<!ENTITY % include "%p;include">
-<!ENTITY % import "%p;import">
-<!ENTITY % redefine "%p;redefine">
-<!ENTITY % notation "%p;notation">
-
-<!-- annotation elements -->
-<!ENTITY % annotation "%p;annotation">
-<!ENTITY % appinfo "%p;appinfo">
-<!ENTITY % documentation "%p;documentation">
-
-<!-- Customisation entities for the ATTLIST of each element type.
-     Define one of these if your schema takes advantage of the
-     anyAttribute='##other' in the schema for schemas -->
-
-<!ENTITY % schemaAttrs ''>
-<!ENTITY % complexTypeAttrs ''>
-<!ENTITY % complexContentAttrs ''>
-<!ENTITY % simpleContentAttrs ''>
-<!ENTITY % extensionAttrs ''>
-<!ENTITY % elementAttrs ''>
-<!ENTITY % groupAttrs ''>
-<!ENTITY % allAttrs ''>
-<!ENTITY % choiceAttrs ''>
-<!ENTITY % sequenceAttrs ''>
-<!ENTITY % anyAttrs ''>
-<!ENTITY % anyAttributeAttrs ''>
-<!ENTITY % attributeAttrs ''>
-<!ENTITY % attributeGroupAttrs ''>
-<!ENTITY % uniqueAttrs ''>
-<!ENTITY % keyAttrs ''>
-<!ENTITY % keyrefAttrs ''>
-<!ENTITY % selectorAttrs ''>
-<!ENTITY % fieldAttrs ''>
-<!ENTITY % includeAttrs ''>
-<!ENTITY % importAttrs ''>
-<!ENTITY % redefineAttrs ''>
-<!ENTITY % notationAttrs ''>
-<!ENTITY % annotationAttrs ''>
-<!ENTITY % appinfoAttrs ''>
-<!ENTITY % documentationAttrs ''>
-
-<!ENTITY % complexDerivationSet "CDATA">
-      <!-- #all or space-separated list drawn from derivationChoice -->
-<!ENTITY % blockSet "CDATA">
-      <!-- #all or space-separated list drawn from
-                      derivationChoice + 'substitution' -->
-
-<!ENTITY % mgs '%all; | %choice; | %sequence;'>
-<!ENTITY % cs '%choice; | %sequence;'>
-<!ENTITY % formValues '(qualified|unqualified)'>
-
-
-<!ENTITY % attrDecls    '((%attribute;| %attributeGroup;)*,(%anyAttribute;)?)'>
-
-<!ENTITY % particleAndAttrs '((%mgs; | %group;)?, %attrDecls;)'>
-
-<!-- This is used in part2 -->
-<!ENTITY % restriction1 '((%mgs; | %group;)?)'>
-
-%xs-datatypes;
-
-<!-- the duplication below is to produce an unambiguous content model
-     which allows annotation everywhere -->
-<!ELEMENT %schema; ((%include; | %import; | %redefine; | %annotation;)*,
-                    ((%simpleType; | %complexType;
-                      | %element; | %attribute;
-                      | %attributeGroup; | %group;
-                      | %notation; ),
-                     (%annotation;)*)* )>
-<!ATTLIST %schema;
-   targetNamespace      %URIref;               #IMPLIED
-   version              CDATA                  #IMPLIED
-   %nds;                %URIref;               #FIXED 'http://www.w3.org/2001/XMLSchema'
-   xmlns                CDATA                  #IMPLIED
-   finalDefault         %complexDerivationSet; ''
-   blockDefault         %blockSet;             ''
-   id                   ID                     #IMPLIED
-   elementFormDefault   %formValues;           'unqualified'
-   attributeFormDefault %formValues;           'unqualified'
-   xml:lang             CDATA                  #IMPLIED
-   %schemaAttrs;>
-<!-- Note the xmlns declaration is NOT in the Schema for Schemas,
-     because at the Infoset level where schemas operate,
-     xmlns(:prefix) is NOT an attribute! -->
-<!-- The declaration of xmlns is a convenience for schema authors -->
- 
-<!-- The id attribute here and below is for use in external references
-     from non-schemas using simple fragment identifiers.
-     It is NOT used for schema-to-schema reference, internal or
-     external. -->
-
-<!-- a type is a named content type specification which allows attribute
-     declarations-->
-<!-- -->
-
-<!ELEMENT %complexType; ((%annotation;)?,
-                         (%simpleContent;|%complexContent;|
-                          %particleAndAttrs;))>
-
-<!ATTLIST %complexType;
-          name      %NCName;                        #IMPLIED
-          id        ID                              #IMPLIED
-          abstract  %boolean;                       #IMPLIED
-          final     %complexDerivationSet;          #IMPLIED
-          block     %complexDerivationSet;          #IMPLIED
-          mixed (true|false) 'false'
-          %complexTypeAttrs;>
-
-<!-- particleAndAttrs is shorthand for a root type -->
-<!-- mixed is disallowed if simpleContent, overriden if complexContent
-     has one too. -->
-
-<!-- If anyAttribute appears in one or more referenced attributeGroups
-     and/or explicitly, the intersection of the permissions is used -->
-
-<!ELEMENT %complexContent; ((%annotation;)?, (%restriction;|%extension;))>
-<!ATTLIST %complexContent;
-          mixed (true|false) #IMPLIED
-          id    ID           #IMPLIED
-          %complexContentAttrs;>
-
-<!-- restriction should use the branch defined above, not the simple
-     one from part2; extension should use the full model  -->
-
-<!ELEMENT %simpleContent; ((%annotation;)?, (%restriction;|%extension;))>
-<!ATTLIST %simpleContent;
-          id    ID           #IMPLIED
-          %simpleContentAttrs;>
-
-<!-- restriction should use the simple branch from part2, not the 
-     one defined above; extension should have no particle  -->
-
-<!ELEMENT %extension; ((%annotation;)?, (%particleAndAttrs;))>
-<!ATTLIST %extension;
-          base  %QName;      #REQUIRED
-          id    ID           #IMPLIED
-          %extensionAttrs;>
-
-<!-- an element is declared by either:
- a name and a type (either nested or referenced via the type attribute)
- or a ref to an existing element declaration -->
-
-<!ELEMENT %element; ((%annotation;)?, (%complexType;| %simpleType;)?,
-                     (%unique; | %key; | %keyref;)*)>
-<!-- simpleType or complexType only if no type|ref attribute -->
-<!-- ref not allowed at top level -->
-<!ATTLIST %element;
-            name               %NCName;               #IMPLIED
-            id                 ID                     #IMPLIED
-            ref                %QName;                #IMPLIED
-            type               %QName;                #IMPLIED
-            minOccurs          %nonNegativeInteger;   #IMPLIED
-            maxOccurs          CDATA                  #IMPLIED
-            nillable           %boolean;              #IMPLIED
-            substitutionGroup  %QName;                #IMPLIED
-            abstract           %boolean;              #IMPLIED
-            final              %complexDerivationSet; #IMPLIED
-            block              %blockSet;             #IMPLIED
-            default            CDATA                  #IMPLIED
-            fixed              CDATA                  #IMPLIED
-            form               %formValues;           #IMPLIED
-            %elementAttrs;>
-<!-- type and ref are mutually exclusive.
-     name and ref are mutually exclusive, one is required -->
-<!-- In the absence of type AND ref, type defaults to type of
-     substitutionGroup, if any, else the ur-type, i.e. unconstrained -->
-<!-- default and fixed are mutually exclusive -->
-
-<!ELEMENT %group; ((%annotation;)?,(%mgs;)?)>
-<!ATTLIST %group; 
-          name        %NCName;               #IMPLIED
-          ref         %QName;                #IMPLIED
-          minOccurs   %nonNegativeInteger;   #IMPLIED
-          maxOccurs   CDATA                  #IMPLIED
-          id          ID                     #IMPLIED
-          %groupAttrs;>
-
-<!ELEMENT %all; ((%annotation;)?, (%element;)*)>
-<!ATTLIST %all;
-          minOccurs   (1)                    #IMPLIED
-          maxOccurs   (1)                    #IMPLIED
-          id          ID                     #IMPLIED
-          %allAttrs;>
-
-<!ELEMENT %choice; ((%annotation;)?, (%element;| %group;| %cs; | %any;)*)>
-<!ATTLIST %choice;
-          minOccurs   %nonNegativeInteger;   #IMPLIED
-          maxOccurs   CDATA                  #IMPLIED
-          id          ID                     #IMPLIED
-          %choiceAttrs;>
-
-<!ELEMENT %sequence; ((%annotation;)?, (%element;| %group;| %cs; | %any;)*)>
-<!ATTLIST %sequence;
-          minOccurs   %nonNegativeInteger;   #IMPLIED
-          maxOccurs   CDATA                  #IMPLIED
-          id          ID                     #IMPLIED
-          %sequenceAttrs;>
-
-<!-- an anonymous grouping in a model, or
-     a top-level named group definition, or a reference to same -->
-
-<!-- Note that if order is 'all', group is not allowed inside.
-     If order is 'all' THIS group must be alone (or referenced alone) at
-     the top level of a content model -->
-<!-- If order is 'all', minOccurs==maxOccurs==1 on element/any inside -->
-<!-- Should allow minOccurs=0 inside order='all' . . . -->
-
-<!ELEMENT %any; (%annotation;)?>
-<!ATTLIST %any;
-            namespace       CDATA                  '##any'
-            processContents (skip|lax|strict)      'strict'
-            minOccurs       %nonNegativeInteger;   '1'
-            maxOccurs       CDATA                  '1'
-            id              ID                     #IMPLIED
-            %anyAttrs;>
-
-<!-- namespace is interpreted as follows:
-                  ##any      - - any non-conflicting WFXML at all
-
-                  ##other    - - any non-conflicting WFXML from namespace other
-                                  than targetNamespace
-
-                  ##local    - - any unqualified non-conflicting WFXML/attribute
-                  one or     - - any non-conflicting WFXML from
-                  more URI        the listed namespaces
-                  references
-
-                  ##targetNamespace ##local may appear in the above list,
-                    with the obvious meaning -->
-
-<!ELEMENT %anyAttribute; (%annotation;)?>
-<!ATTLIST %anyAttribute;
-            namespace       CDATA              '##any'
-            processContents (skip|lax|strict)  'strict'
-            id              ID                 #IMPLIED
-            %anyAttributeAttrs;>
-<!-- namespace is interpreted as for 'any' above -->
-
-<!-- simpleType only if no type|ref attribute -->
-<!-- ref not allowed at top level, name iff at top level -->
-<!ELEMENT %attribute; ((%annotation;)?, (%simpleType;)?)>
-<!ATTLIST %attribute;
-          name      %NCName;      #IMPLIED
-          id        ID            #IMPLIED
-          ref       %QName;       #IMPLIED
-          type      %QName;       #IMPLIED
-          use       (prohibited|optional|required) #IMPLIED
-          default   CDATA         #IMPLIED
-          fixed     CDATA         #IMPLIED
-          form      %formValues;  #IMPLIED
-          %attributeAttrs;>
-<!-- type and ref are mutually exclusive.
-     name and ref are mutually exclusive, one is required -->
-<!-- default for use is optional when nested, none otherwise -->
-<!-- default and fixed are mutually exclusive -->
-<!-- type attr and simpleType content are mutually exclusive -->
-
-<!-- an attributeGroup is a named collection of attribute decls, or a
-     reference thereto -->
-<!ELEMENT %attributeGroup; ((%annotation;)?,
-                       (%attribute; | %attributeGroup;)*,
-                       (%anyAttribute;)?) >
-<!ATTLIST %attributeGroup;
-                 name       %NCName;       #IMPLIED
-                 id         ID             #IMPLIED
-                 ref        %QName;        #IMPLIED
-                 %attributeGroupAttrs;>
-
-<!-- ref iff no content, no name.  ref iff not top level -->
-
-<!-- better reference mechanisms -->
-<!ELEMENT %unique; ((%annotation;)?, %selector;, (%field;)+)>
-<!ATTLIST %unique;
-          name     %NCName;       #REQUIRED
-	  id       ID             #IMPLIED
-	  %uniqueAttrs;>
-
-<!ELEMENT %key;    ((%annotation;)?, %selector;, (%field;)+)>
-<!ATTLIST %key;
-          name     %NCName;       #REQUIRED
-	  id       ID             #IMPLIED
-	  %keyAttrs;>
-
-<!ELEMENT %keyref; ((%annotation;)?, %selector;, (%field;)+)>
-<!ATTLIST %keyref;
-          name     %NCName;       #REQUIRED
-	  refer    %QName;        #REQUIRED
-	  id       ID             #IMPLIED
-	  %keyrefAttrs;>
-
-<!ELEMENT %selector; ((%annotation;)?)>
-<!ATTLIST %selector;
-          xpath %XPathExpr; #REQUIRED
-          id    ID          #IMPLIED
-          %selectorAttrs;>
-<!ELEMENT %field; ((%annotation;)?)>
-<!ATTLIST %field;
-          xpath %XPathExpr; #REQUIRED
-          id    ID          #IMPLIED
-          %fieldAttrs;>
-
-<!-- Schema combination mechanisms -->
-<!ELEMENT %include; (%annotation;)?>
-<!ATTLIST %include;
-          schemaLocation %URIref; #REQUIRED
-          id             ID       #IMPLIED
-          %includeAttrs;>
-
-<!ELEMENT %import; (%annotation;)?>
-<!ATTLIST %import;
-          namespace      %URIref; #IMPLIED
-          schemaLocation %URIref; #IMPLIED
-          id             ID       #IMPLIED
-          %importAttrs;>
-
-<!ELEMENT %redefine; (%annotation; | %simpleType; | %complexType; |
-                      %attributeGroup; | %group;)*>
-<!ATTLIST %redefine;
-          schemaLocation %URIref; #REQUIRED
-          id             ID       #IMPLIED
-          %redefineAttrs;>
-
-<!ELEMENT %notation; (%annotation;)?>
-<!ATTLIST %notation;
-	  name        %NCName;    #REQUIRED
-	  id          ID          #IMPLIED
-	  public      CDATA       #REQUIRED
-	  system      %URIref;    #IMPLIED
-	  %notationAttrs;>
-
-<!-- Annotation is either application information or documentation -->
-<!-- By having these here they are available for datatypes as well
-     as all the structures elements -->
-
-<!ELEMENT %annotation; (%appinfo; | %documentation;)*>
-<!ATTLIST %annotation; %annotationAttrs;>
-
-<!-- User must define annotation elements in internal subset for this
-     to work -->
-<!ELEMENT %appinfo; ANY>   <!-- too restrictive -->
-<!ATTLIST %appinfo;
-          source     %URIref;      #IMPLIED
-          id         ID         #IMPLIED
-          %appinfoAttrs;>
-<!ELEMENT %documentation; ANY>   <!-- too restrictive -->
-<!ATTLIST %documentation;
-          source     %URIref;   #IMPLIED
-          id         ID         #IMPLIED
-          xml:lang   CDATA      #IMPLIED
-          %documentationAttrs;>
-
-<!NOTATION XMLSchemaStructures PUBLIC
-           'structures' 'http://www.w3.org/2001/XMLSchema.xsd' >
-<!NOTATION XML PUBLIC
-           'REC-xml-1998-0210' 'http://www.w3.org/TR/1998/REC-xml-19980210' >
+<!-- DTD for XML Schemas: Part 1: Structures
+     Public Identifier: "-//W3C//DTD XMLSCHEMA 200102//EN"
+     Official Location: http://www.w3.org/2001/XMLSchema.dtd -->
+<!-- $Id: XMLSchema.dtd,v 1.31 2001/10/24 15:50:16 ht Exp $ -->
+<!-- Note this DTD is NOT normative, or even definitive. -->           <!--d-->
+<!-- prose copy in the structures REC is the definitive version -->    <!--d-->
+<!-- (which shouldn't differ from this one except for this -->         <!--d-->
+<!-- comment and entity expansions, but just in case) -->              <!--d-->
+<!-- With the exception of cases with multiple namespace
+     prefixes for the XML Schema namespace, any XML document which is
+     not valid per this DTD given redefinitions in its internal subset of the
+     'p' and 's' parameter entities below appropriate to its namespace
+     declaration of the XML Schema namespace is almost certainly not
+     a valid schema. -->
+
+<!-- The simpleType element and its constituent parts
+     are defined in XML Schema: Part 2: Datatypes -->
+<!ENTITY % xs-datatypes PUBLIC 'datatypes' 'datatypes.dtd' >
+
+<!ENTITY % p 'xs:'> <!-- can be overriden in the internal subset of a
+                         schema document to establish a different
+                         namespace prefix -->
+<!ENTITY % s ':xs'> <!-- if %p is defined (e.g. as foo:) then you must
+                         also define %s as the suffix for the appropriate
+                         namespace declaration (e.g. :foo) -->
+<!ENTITY % nds 'xmlns%s;'>
+
+<!-- Define all the element names, with optional prefix -->
+<!ENTITY % schema "%p;schema">
+<!ENTITY % complexType "%p;complexType">
+<!ENTITY % complexContent "%p;complexContent">
+<!ENTITY % simpleContent "%p;simpleContent">
+<!ENTITY % extension "%p;extension">
+<!ENTITY % element "%p;element">
+<!ENTITY % unique "%p;unique">
+<!ENTITY % key "%p;key">
+<!ENTITY % keyref "%p;keyref">
+<!ENTITY % selector "%p;selector">
+<!ENTITY % field "%p;field">
+<!ENTITY % group "%p;group">
+<!ENTITY % all "%p;all">
+<!ENTITY % choice "%p;choice">
+<!ENTITY % sequence "%p;sequence">
+<!ENTITY % any "%p;any">
+<!ENTITY % anyAttribute "%p;anyAttribute">
+<!ENTITY % attribute "%p;attribute">
+<!ENTITY % attributeGroup "%p;attributeGroup">
+<!ENTITY % include "%p;include">
+<!ENTITY % import "%p;import">
+<!ENTITY % redefine "%p;redefine">
+<!ENTITY % notation "%p;notation">
+
+<!-- annotation elements -->
+<!ENTITY % annotation "%p;annotation">
+<!ENTITY % appinfo "%p;appinfo">
+<!ENTITY % documentation "%p;documentation">
+
+<!-- Customisation entities for the ATTLIST of each element type.
+     Define one of these if your schema takes advantage of the
+     anyAttribute='##other' in the schema for schemas -->
+
+<!ENTITY % schemaAttrs ''>
+<!ENTITY % complexTypeAttrs ''>
+<!ENTITY % complexContentAttrs ''>
+<!ENTITY % simpleContentAttrs ''>
+<!ENTITY % extensionAttrs ''>
+<!ENTITY % elementAttrs ''>
+<!ENTITY % groupAttrs ''>
+<!ENTITY % allAttrs ''>
+<!ENTITY % choiceAttrs ''>
+<!ENTITY % sequenceAttrs ''>
+<!ENTITY % anyAttrs ''>
+<!ENTITY % anyAttributeAttrs ''>
+<!ENTITY % attributeAttrs ''>
+<!ENTITY % attributeGroupAttrs ''>
+<!ENTITY % uniqueAttrs ''>
+<!ENTITY % keyAttrs ''>
+<!ENTITY % keyrefAttrs ''>
+<!ENTITY % selectorAttrs ''>
+<!ENTITY % fieldAttrs ''>
+<!ENTITY % includeAttrs ''>
+<!ENTITY % importAttrs ''>
+<!ENTITY % redefineAttrs ''>
+<!ENTITY % notationAttrs ''>
+<!ENTITY % annotationAttrs ''>
+<!ENTITY % appinfoAttrs ''>
+<!ENTITY % documentationAttrs ''>
+
+<!ENTITY % complexDerivationSet "CDATA">
+      <!-- #all or space-separated list drawn from derivationChoice -->
+<!ENTITY % blockSet "CDATA">
+      <!-- #all or space-separated list drawn from
+                      derivationChoice + 'substitution' -->
+
+<!ENTITY % mgs '%all; | %choice; | %sequence;'>
+<!ENTITY % cs '%choice; | %sequence;'>
+<!ENTITY % formValues '(qualified|unqualified)'>
+
+
+<!ENTITY % attrDecls    '((%attribute;| %attributeGroup;)*,(%anyAttribute;)?)'>
+
+<!ENTITY % particleAndAttrs '((%mgs; | %group;)?, %attrDecls;)'>
+
+<!-- This is used in part2 -->
+<!ENTITY % restriction1 '((%mgs; | %group;)?)'>
+
+%xs-datatypes;
+
+<!-- the duplication below is to produce an unambiguous content model
+     which allows annotation everywhere -->
+<!ELEMENT %schema; ((%include; | %import; | %redefine; | %annotation;)*,
+                    ((%simpleType; | %complexType;
+                      | %element; | %attribute;
+                      | %attributeGroup; | %group;
+                      | %notation; ),
+                     (%annotation;)*)* )>
+<!ATTLIST %schema;
+   targetNamespace      %URIref;               #IMPLIED
+   version              CDATA                  #IMPLIED
+   %nds;                %URIref;               #FIXED 'http://www.w3.org/2001/XMLSchema'
+   xmlns                CDATA                  #IMPLIED
+   finalDefault         %complexDerivationSet; ''
+   blockDefault         %blockSet;             ''
+   id                   ID                     #IMPLIED
+   elementFormDefault   %formValues;           'unqualified'
+   attributeFormDefault %formValues;           'unqualified'
+   xml:lang             CDATA                  #IMPLIED
+   %schemaAttrs;>
+<!-- Note the xmlns declaration is NOT in the Schema for Schemas,
+     because at the Infoset level where schemas operate,
+     xmlns(:prefix) is NOT an attribute! -->
+<!-- The declaration of xmlns is a convenience for schema authors -->
+ 
+<!-- The id attribute here and below is for use in external references
+     from non-schemas using simple fragment identifiers.
+     It is NOT used for schema-to-schema reference, internal or
+     external. -->
+
+<!-- a type is a named content type specification which allows attribute
+     declarations-->
+<!-- -->
+
+<!ELEMENT %complexType; ((%annotation;)?,
+                         (%simpleContent;|%complexContent;|
+                          %particleAndAttrs;))>
+
+<!ATTLIST %complexType;
+          name      %NCName;                        #IMPLIED
+          id        ID                              #IMPLIED
+          abstract  %boolean;                       #IMPLIED
+          final     %complexDerivationSet;          #IMPLIED
+          block     %complexDerivationSet;          #IMPLIED
+          mixed (true|false) 'false'
+          %complexTypeAttrs;>
+
+<!-- particleAndAttrs is shorthand for a root type -->
+<!-- mixed is disallowed if simpleContent, overriden if complexContent
+     has one too. -->
+
+<!-- If anyAttribute appears in one or more referenced attributeGroups
+     and/or explicitly, the intersection of the permissions is used -->
+
+<!ELEMENT %complexContent; ((%annotation;)?, (%restriction;|%extension;))>
+<!ATTLIST %complexContent;
+          mixed (true|false) #IMPLIED
+          id    ID           #IMPLIED
+          %complexContentAttrs;>
+
+<!-- restriction should use the branch defined above, not the simple
+     one from part2; extension should use the full model  -->
+
+<!ELEMENT %simpleContent; ((%annotation;)?, (%restriction;|%extension;))>
+<!ATTLIST %simpleContent;
+          id    ID           #IMPLIED
+          %simpleContentAttrs;>
+
+<!-- restriction should use the simple branch from part2, not the 
+     one defined above; extension should have no particle  -->
+
+<!ELEMENT %extension; ((%annotation;)?, (%particleAndAttrs;))>
+<!ATTLIST %extension;
+          base  %QName;      #REQUIRED
+          id    ID           #IMPLIED
+          %extensionAttrs;>
+
+<!-- an element is declared by either:
+ a name and a type (either nested or referenced via the type attribute)
+ or a ref to an existing element declaration -->
+
+<!ELEMENT %element; ((%annotation;)?, (%complexType;| %simpleType;)?,
+                     (%unique; | %key; | %keyref;)*)>
+<!-- simpleType or complexType only if no type|ref attribute -->
+<!-- ref not allowed at top level -->
+<!ATTLIST %element;
+            name               %NCName;               #IMPLIED
+            id                 ID                     #IMPLIED
+            ref                %QName;                #IMPLIED
+            type               %QName;                #IMPLIED
+            minOccurs          %nonNegativeInteger;   #IMPLIED
+            maxOccurs          CDATA                  #IMPLIED
+            nillable           %boolean;              #IMPLIED
+            substitutionGroup  %QName;                #IMPLIED
+            abstract           %boolean;              #IMPLIED
+            final              %complexDerivationSet; #IMPLIED
+            block              %blockSet;             #IMPLIED
+            default            CDATA                  #IMPLIED
+            fixed              CDATA                  #IMPLIED
+            form               %formValues;           #IMPLIED
+            %elementAttrs;>
+<!-- type and ref are mutually exclusive.
+     name and ref are mutually exclusive, one is required -->
+<!-- In the absence of type AND ref, type defaults to type of
+     substitutionGroup, if any, else the ur-type, i.e. unconstrained -->
+<!-- default and fixed are mutually exclusive -->
+
+<!ELEMENT %group; ((%annotation;)?,(%mgs;)?)>
+<!ATTLIST %group; 
+          name        %NCName;               #IMPLIED
+          ref         %QName;                #IMPLIED
+          minOccurs   %nonNegativeInteger;   #IMPLIED
+          maxOccurs   CDATA                  #IMPLIED
+          id          ID                     #IMPLIED
+          %groupAttrs;>
+
+<!ELEMENT %all; ((%annotation;)?, (%element;)*)>
+<!ATTLIST %all;
+          minOccurs   (1)                    #IMPLIED
+          maxOccurs   (1)                    #IMPLIED
+          id          ID                     #IMPLIED
+          %allAttrs;>
+
+<!ELEMENT %choice; ((%annotation;)?, (%element;| %group;| %cs; | %any;)*)>
+<!ATTLIST %choice;
+          minOccurs   %nonNegativeInteger;   #IMPLIED
+          maxOccurs   CDATA                  #IMPLIED
+          id          ID                     #IMPLIED
+          %choiceAttrs;>
+
+<!ELEMENT %sequence; ((%annotation;)?, (%element;| %group;| %cs; | %any;)*)>
+<!ATTLIST %sequence;
+          minOccurs   %nonNegativeInteger;   #IMPLIED
+          maxOccurs   CDATA                  #IMPLIED
+          id          ID                     #IMPLIED
+          %sequenceAttrs;>
+
+<!-- an anonymous grouping in a model, or
+     a top-level named group definition, or a reference to same -->
+
+<!-- Note that if order is 'all', group is not allowed inside.
+     If order is 'all' THIS group must be alone (or referenced alone) at
+     the top level of a content model -->
+<!-- If order is 'all', minOccurs==maxOccurs==1 on element/any inside -->
+<!-- Should allow minOccurs=0 inside order='all' . . . -->
+
+<!ELEMENT %any; (%annotation;)?>
+<!ATTLIST %any;
+            namespace       CDATA                  '##any'
+            processContents (skip|lax|strict)      'strict'
+            minOccurs       %nonNegativeInteger;   '1'
+            maxOccurs       CDATA                  '1'
+            id              ID                     #IMPLIED
+            %anyAttrs;>
+
+<!-- namespace is interpreted as follows:
+                  ##any      - - any non-conflicting WFXML at all
+
+                  ##other    - - any non-conflicting WFXML from namespace other
+                                  than targetNamespace
+
+                  ##local    - - any unqualified non-conflicting WFXML/attribute
+                  one or     - - any non-conflicting WFXML from
+                  more URI        the listed namespaces
+                  references
+
+                  ##targetNamespace ##local may appear in the above list,
+                    with the obvious meaning -->
+
+<!ELEMENT %anyAttribute; (%annotation;)?>
+<!ATTLIST %anyAttribute;
+            namespace       CDATA              '##any'
+            processContents (skip|lax|strict)  'strict'
+            id              ID                 #IMPLIED
+            %anyAttributeAttrs;>
+<!-- namespace is interpreted as for 'any' above -->
+
+<!-- simpleType only if no type|ref attribute -->
+<!-- ref not allowed at top level, name iff at top level -->
+<!ELEMENT %attribute; ((%annotation;)?, (%simpleType;)?)>
+<!ATTLIST %attribute;
+          name      %NCName;      #IMPLIED
+          id        ID            #IMPLIED
+          ref       %QName;       #IMPLIED
+          type      %QName;       #IMPLIED
+          use       (prohibited|optional|required) #IMPLIED
+          default   CDATA         #IMPLIED
+          fixed     CDATA         #IMPLIED
+          form      %formValues;  #IMPLIED
+          %attributeAttrs;>
+<!-- type and ref are mutually exclusive.
+     name and ref are mutually exclusive, one is required -->
+<!-- default for use is optional when nested, none otherwise -->
+<!-- default and fixed are mutually exclusive -->
+<!-- type attr and simpleType content are mutually exclusive -->
+
+<!-- an attributeGroup is a named collection of attribute decls, or a
+     reference thereto -->
+<!ELEMENT %attributeGroup; ((%annotation;)?,
+                       (%attribute; | %attributeGroup;)*,
+                       (%anyAttribute;)?) >
+<!ATTLIST %attributeGroup;
+                 name       %NCName;       #IMPLIED
+                 id         ID             #IMPLIED
+                 ref        %QName;        #IMPLIED
+                 %attributeGroupAttrs;>
+
+<!-- ref iff no content, no name.  ref iff not top level -->
+
+<!-- better reference mechanisms -->
+<!ELEMENT %unique; ((%annotation;)?, %selector;, (%field;)+)>
+<!ATTLIST %unique;
+          name     %NCName;       #REQUIRED
+	  id       ID             #IMPLIED
+	  %uniqueAttrs;>
+
+<!ELEMENT %key;    ((%annotation;)?, %selector;, (%field;)+)>
+<!ATTLIST %key;
+          name     %NCName;       #REQUIRED
+	  id       ID             #IMPLIED
+	  %keyAttrs;>
+
+<!ELEMENT %keyref; ((%annotation;)?, %selector;, (%field;)+)>
+<!ATTLIST %keyref;
+          name     %NCName;       #REQUIRED
+	  refer    %QName;        #REQUIRED
+	  id       ID             #IMPLIED
+	  %keyrefAttrs;>
+
+<!ELEMENT %selector; ((%annotation;)?)>
+<!ATTLIST %selector;
+          xpath %XPathExpr; #REQUIRED
+          id    ID          #IMPLIED
+          %selectorAttrs;>
+<!ELEMENT %field; ((%annotation;)?)>
+<!ATTLIST %field;
+          xpath %XPathExpr; #REQUIRED
+          id    ID          #IMPLIED
+          %fieldAttrs;>
+
+<!-- Schema combination mechanisms -->
+<!ELEMENT %include; (%annotation;)?>
+<!ATTLIST %include;
+          schemaLocation %URIref; #REQUIRED
+          id             ID       #IMPLIED
+          %includeAttrs;>
+
+<!ELEMENT %import; (%annotation;)?>
+<!ATTLIST %import;
+          namespace      %URIref; #IMPLIED
+          schemaLocation %URIref; #IMPLIED
+          id             ID       #IMPLIED
+          %importAttrs;>
+
+<!ELEMENT %redefine; (%annotation; | %simpleType; | %complexType; |
+                      %attributeGroup; | %group;)*>
+<!ATTLIST %redefine;
+          schemaLocation %URIref; #REQUIRED
+          id             ID       #IMPLIED
+          %redefineAttrs;>
+
+<!ELEMENT %notation; (%annotation;)?>
+<!ATTLIST %notation;
+	  name        %NCName;    #REQUIRED
+	  id          ID          #IMPLIED
+	  public      CDATA       #REQUIRED
+	  system      %URIref;    #IMPLIED
+	  %notationAttrs;>
+
+<!-- Annotation is either application information or documentation -->
+<!-- By having these here they are available for datatypes as well
+     as all the structures elements -->
+
+<!ELEMENT %annotation; (%appinfo; | %documentation;)*>
+<!ATTLIST %annotation; %annotationAttrs;>
+
+<!-- User must define annotation elements in internal subset for this
+     to work -->
+<!ELEMENT %appinfo; ANY>   <!-- too restrictive -->
+<!ATTLIST %appinfo;
+          source     %URIref;      #IMPLIED
+          id         ID         #IMPLIED
+          %appinfoAttrs;>
+<!ELEMENT %documentation; ANY>   <!-- too restrictive -->
+<!ATTLIST %documentation;
+          source     %URIref;   #IMPLIED
+          id         ID         #IMPLIED
+          xml:lang   CDATA      #IMPLIED
+          %documentationAttrs;>
+
+<!NOTATION XMLSchemaStructures PUBLIC
+           'structures' 'http://www.w3.org/2001/XMLSchema.xsd' >
+<!NOTATION XML PUBLIC
+           'REC-xml-1998-0210' 'http://www.w3.org/TR/1998/REC-xml-19980210' >

Propchange: incubator/woden/trunk/java/src/org/apache/woden/resolver/XMLSchema.dtd
------------------------------------------------------------------------------
    svn:eol-style = native



---------------------------------------------------------------------
To unsubscribe, e-mail: woden-dev-unsubscribe@ws.apache.org
For additional commands, e-mail: woden-dev-help@ws.apache.org