Author: alexsmirnov
Date: 2009-11-05 19:27:52 -0500 (Thu, 05 Nov 2009)
New Revision: 15845
Added:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/RendererClassVisitor.java
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/TemplateVisitor.java
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/XMLSchema.dtd
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/cdk-template.xsd
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/datatypes.dtd
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/web-facelettaglibrary_2_0.xsd
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/xhtml-el.xsd
Removed:
root/cdk/trunk/plugins/generator/src/main/xsd/cdk-template.xsd
root/cdk/trunk/plugins/generator/src/main/xsd/xhtml-el.xsd
Modified:
root/cdk/trunk/plugins/generator/pom.xml
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/builder/templates/BaseTemplateConsumer.java
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/RendererTemplateParser.java
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/AnyElement.java
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/CdkBodyElement.java
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/CdkCallElement.java
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ElementsHandler.java
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ModelElement.java
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ModelFragment.java
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/xmlconfig/CdkEntityResolver.java
Log:
https://jira.jboss.org/jira/browse/RF-7732
Create visitor that will build Renderer class from model.
Modified: root/cdk/trunk/plugins/generator/pom.xml
===================================================================
--- root/cdk/trunk/plugins/generator/pom.xml 2009-11-05 20:37:23 UTC (rev 15844)
+++ root/cdk/trunk/plugins/generator/pom.xml 2009-11-06 00:27:52 UTC (rev 15845)
@@ -42,9 +42,9 @@
</goals>
<configuration>
<properties>
-
<sourceSchema>src/main/xsd/xhtml-el.xsd</sourceSchema>
+
<sourceSchema>src/main/resources/META-INF/schema/xhtml-el.xsd</sourceSchema>
<
targetNamespace>http://richfaces.org/xhtml-el</targetNamespace>
- <outputFile>attributes.ser</outputFile>
+
<outputFile>META-INF/schema/attributes.ser</outputFile>
</properties>
<classpath>
<element>
@@ -101,7 +101,7 @@
<scope>test</scope>
</dependency>
<dependency>
- <groupId>freemarker</groupId>
+ <groupId>org.freemarker</groupId>
<artifactId>freemarker</artifactId>
<version>2.3.9</version>
</dependency>
@@ -155,7 +155,7 @@
<version>1.3</version> </dependency>
-->
<dependency>
- <groupId>wutka</groupId>
+ <groupId>com.wutka</groupId>
<artifactId>dtdparser</artifactId>
<version>1.21</version>
</dependency>
Modified:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/builder/templates/BaseTemplateConsumer.java
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/builder/templates/BaseTemplateConsumer.java 2009-11-05
20:37:23 UTC (rev 15844)
+++
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/builder/templates/BaseTemplateConsumer.java 2009-11-06
00:27:52 UTC (rev 15845)
@@ -56,7 +56,7 @@
private static final Map<String, Set<String>> ELEMENTS_ATTRIBUTES;
static {
- InputStream serializedAttributesStream =
BaseTemplateConsumer.class.getResourceAsStream("/attributes.ser");
+ InputStream serializedAttributesStream =
BaseTemplateConsumer.class.getResourceAsStream("/META-INF/schema/attributes.ser");
try {
Added:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/RendererClassVisitor.java
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/RendererClassVisitor.java
(rev 0)
+++
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/RendererClassVisitor.java 2009-11-06
00:27:52 UTC (rev 15845)
@@ -0,0 +1,143 @@
+/*
+ * $Id$
+ *
+ * License Agreement.
+ *
+ * Rich Faces - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+package org.richfaces.cdk.templatecompiler;
+
+import java.io.IOException;
+import java.io.InputStream;
+import java.io.ObjectInputStream;
+import java.util.LinkedList;
+import java.util.Map;
+import java.util.Set;
+import java.util.Stack;
+import java.util.regex.Pattern;
+
+import org.richfaces.builder.model.JavaClass;
+import org.richfaces.builder.model.MethodBodyStatement;
+import org.richfaces.builder.templates.BaseTemplateConsumer;
+import org.richfaces.cdk.CdkException;
+import org.richfaces.cdk.templatecompiler.model.AnyElement;
+import org.richfaces.cdk.templatecompiler.model.CdkBodyElement;
+import org.richfaces.cdk.templatecompiler.model.CdkCallElement;
+import org.richfaces.cdk.templatecompiler.model.CompositeInterface;
+import org.richfaces.cdk.templatecompiler.model.TemplateVisitor;
+
+import com.google.common.collect.Lists;
+
+/**
+ * <p class="changed_added_4_0"></p>
+ * @author asmirnov(a)exadel.com
+ *
+ */
+public class RendererClassVisitor implements TemplateVisitor {
+
+ private static final Pattern EL_EXPRESSION =
Pattern.compile("#\\{([^\\}]+)\\}");
+ private static final Pattern COMPONENT_ATTRIBUTES_EXPRESSION =
+
Pattern.compile("^component\\.attributes\\[(?:'|\")?([^'\"]+)(?:'|\")?\\]$");
+ private static final Map<String, Set<String>> ELEMENTS_ATTRIBUTES;
+ private final LinkedList<MethodBodyStatement> statements =
Lists.newLinkedList();
+ private final JavaClass renderer;
+ private final CompositeInterface compositeInterface;
+
+ protected MethodBodyStatement currentStatement;
+
+ static {
+ InputStream serializedAttributesStream =
RendererClassVisitor.class.getResourceAsStream("/META-INF/schema/attributes.ser");
+
+ try {
+
+ // TODO read default attributes values
+ // TODO detect URI attributes
+ ObjectInputStream ois = new ObjectInputStream(serializedAttributesStream);
+
+ ELEMENTS_ATTRIBUTES = (Map<String, Set<String>>)
ois.readObject();
+ } catch (Exception e) {
+ throw new IllegalStateException(e.getMessage(), e);
+ } finally {
+ try {
+ serializedAttributesStream.close();
+ } catch (IOException e) {
+ throw new IllegalStateException(e.getMessage(), e);
+ }
+ }
+ }
+
+ public RendererClassVisitor(CompositeInterface compositeInterface) {
+ this.compositeInterface = compositeInterface;
+ renderer = new JavaClass();
+ }
+ /* (non-Javadoc)
+ * @see
org.richfaces.cdk.templatecompiler.model.TemplateVisitor#endElement(org.richfaces.cdk.templatecompiler.model.AnyElement)
+ */
+ @Override
+ public void endElement(AnyElement anyElement) throws CdkException {
+ // TODO Auto-generated method stub
+
+ }
+
+ /* (non-Javadoc)
+ * @see
org.richfaces.cdk.templatecompiler.model.TemplateVisitor#endElement(org.richfaces.cdk.templatecompiler.model.CdkBodyElement)
+ */
+ @Override
+ public void endElement(CdkBodyElement cdkBodyElement) throws CdkException {
+ // TODO Auto-generated method stub
+
+ }
+
+ /* (non-Javadoc)
+ * @see
org.richfaces.cdk.templatecompiler.model.TemplateVisitor#startElement(org.richfaces.cdk.templatecompiler.model.AnyElement)
+ */
+ @Override
+ public void startElement(AnyElement anyElement) throws CdkException {
+ // TODO Auto-generated method stub
+
+ }
+
+ /* (non-Javadoc)
+ * @see
org.richfaces.cdk.templatecompiler.model.TemplateVisitor#startElement(org.richfaces.cdk.templatecompiler.model.CdkBodyElement)
+ */
+ @Override
+ public void startElement(CdkBodyElement cdkBodyElement) throws CdkException {
+ // TODO Auto-generated method stub
+
+ }
+
+ /* (non-Javadoc)
+ * @see
org.richfaces.cdk.templatecompiler.model.TemplateVisitor#visitElement(org.richfaces.cdk.templatecompiler.model.CdkCallElement)
+ */
+ @Override
+ public void visitElement(CdkCallElement cdkCallElement) throws CdkException {
+ // TODO Auto-generated method stub
+
+ }
+
+ /* (non-Javadoc)
+ * @see
org.richfaces.cdk.templatecompiler.model.TemplateVisitor#visitElement(java.lang.String)
+ */
+ @Override
+ public void visitElement(String child) throws CdkException {
+ // TODO Auto-generated method stub
+
+ }
+
+}
Property changes on:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/RendererClassVisitor.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/RendererTemplateParser.java
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/RendererTemplateParser.java 2009-11-05
20:37:23 UTC (rev 15844)
+++
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/RendererTemplateParser.java 2009-11-06
00:27:52 UTC (rev 15845)
@@ -72,7 +72,7 @@
}
protected Template parseTemplate(File file) throws CdkException {
- return jaxbBinding.unmarshal(file, null, Template.class);
+ return jaxbBinding.unmarshal(file,
"http://richfaces.org/cdk/cdk-template.xsd", Template.class);
}
/*
Modified:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/AnyElement.java
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/AnyElement.java 2009-11-05
20:37:23 UTC (rev 15844)
+++
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/AnyElement.java 2009-11-06
00:27:52 UTC (rev 15845)
@@ -29,6 +29,8 @@
import javax.xml.bind.annotation.XmlAnyAttribute;
import javax.xml.namespace.QName;
+import org.richfaces.cdk.CdkException;
+
/**
* <p class="changed_added_4_0"></p>
* @author asmirnov(a)exadel.com
@@ -80,4 +82,13 @@
this.attributes = attributes;
}
+ @Override
+ public void beforeVisit(TemplateVisitor visitor) throws CdkException {
+ visitor.startElement(this);
+ }
+
+ @Override
+ public void afterVisit(TemplateVisitor visitor) throws CdkException {
+ visitor.endElement(this);
+ }
}
Modified:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/CdkBodyElement.java
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/CdkBodyElement.java 2009-11-05
20:37:23 UTC (rev 15844)
+++
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/CdkBodyElement.java 2009-11-06
00:27:52 UTC (rev 15845)
@@ -23,11 +23,22 @@
package org.richfaces.cdk.templatecompiler.model;
+import org.richfaces.cdk.CdkException;
+
/**
* <p class="changed_added_4_0"></p>
* @author asmirnov(a)exadel.com
*
*/
public class CdkBodyElement extends ModelFragment {
+ @Override
+ public void beforeVisit(TemplateVisitor visitor) throws CdkException {
+ visitor.startElement(this);
+ }
+
+ @Override
+ public void afterVisit(TemplateVisitor visitor) throws CdkException {
+ visitor.endElement(this);
+ }
}
Modified:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/CdkCallElement.java
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/CdkCallElement.java 2009-11-05
20:37:23 UTC (rev 15844)
+++
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/CdkCallElement.java 2009-11-06
00:27:52 UTC (rev 15845)
@@ -26,13 +26,15 @@
import javax.xml.bind.annotation.XmlAttribute;
import javax.xml.bind.annotation.XmlRootElement;
+import org.richfaces.cdk.CdkException;
+
/**
* <p class="changed_added_4_0"></p>
* @author asmirnov(a)exadel.com
*
*/
@XmlRootElement(name="call",namespace=Template.CDK_NAMESPACE)
-public class CdkCallElement {
+public class CdkCallElement implements ModelElement {
private String expression;
@@ -55,6 +57,13 @@
public void setExpression(String expression) {
this.expression = expression;
}
+
+ @Override
+ public void visit(TemplateVisitor visitor) throws CdkException {
+
+ visitor.visitElement(this);
+
+ }
}
Modified:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ElementsHandler.java
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ElementsHandler.java 2009-11-05
20:37:23 UTC (rev 15844)
+++
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ElementsHandler.java 2009-11-06
00:27:52 UTC (rev 15845)
@@ -23,6 +23,7 @@
package org.richfaces.cdk.templatecompiler.model;
+import javax.xml.XMLConstants;
import javax.xml.bind.JAXB;
import javax.xml.bind.ValidationEventHandler;
import javax.xml.bind.annotation.DomHandler;
@@ -101,8 +102,8 @@
public ModelElement getElement(DOMResult rt) {
Element domElement = getDomElement(rt);
AnyElement element = JAXB.unmarshal(new DOMSource(domElement),
AnyElement.class);
-
- QName name = new QName(domElement.getNamespaceURI(),domElement.getLocalName());
+ String prefix = domElement.getPrefix();
+ QName name = new
QName(domElement.getNamespaceURI(),domElement.getLocalName(),null!=prefix?prefix:XMLConstants.DEFAULT_NS_PREFIX);
element.setName(name);
return element;
}
Modified:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ModelElement.java
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ModelElement.java 2009-11-05
20:37:23 UTC (rev 15844)
+++
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ModelElement.java 2009-11-06
00:27:52 UTC (rev 15845)
@@ -5,10 +5,11 @@
import javax.xml.bind.annotation.XmlAnyElement;
import javax.xml.bind.annotation.XmlMixed;
+import org.richfaces.cdk.CdkException;
import org.w3c.dom.Element;
public interface ModelElement {
+ public void visit(TemplateVisitor visitor) throws CdkException;
-
}
\ No newline at end of file
Modified:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ModelFragment.java
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ModelFragment.java 2009-11-05
20:37:23 UTC (rev 15844)
+++
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/ModelFragment.java 2009-11-06
00:27:52 UTC (rev 15845)
@@ -6,6 +6,8 @@
import javax.xml.bind.annotation.XmlMixed;
import javax.xml.bind.annotation.XmlSeeAlso;
+import org.richfaces.cdk.CdkException;
+
/**
* <p class="changed_added_4_0">All classes that are used in template
bodey should be presented
* in the {@link XmlSeeAlso} annotation </p>
@@ -32,4 +34,25 @@
this.children = body;
}
+ @Override
+ public void visit(TemplateVisitor visitor) throws CdkException {
+ beforeVisit(visitor);
+ for (Object child : getChildren()) {
+ if (child instanceof String) {
+ visitor.visitElement((String) child);
+ } else if (child instanceof ModelElement) {
+ ((ModelElement) child).visit(visitor);
+ } else {
+ throw new CdkException("Unknown type of element in renderer template
"+child.getClass());
+ }
+ }
+ afterVisit(visitor);
+ }
+
+ public void afterVisit(TemplateVisitor visitor) throws CdkException {
+ }
+
+ public void beforeVisit(TemplateVisitor visitor) throws CdkException {
+ }
+
}
\ No newline at end of file
Added:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/TemplateVisitor.java
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/TemplateVisitor.java
(rev 0)
+++
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/TemplateVisitor.java 2009-11-06
00:27:52 UTC (rev 15845)
@@ -0,0 +1,47 @@
+/*
+ * $Id$
+ *
+ * License Agreement.
+ *
+ * Rich Faces - Natural Ajax for Java Server Faces (JSF)
+ *
+ * Copyright (C) 2007 Exadel, Inc.
+ *
+ * This library is free software; you can redistribute it and/or
+ * modify it under the terms of the GNU Lesser General Public
+ * License version 2.1 as published by the Free Software Foundation.
+ *
+ * This library is distributed in the hope that it will be useful,
+ * but WITHOUT ANY WARRANTY; without even the implied warranty of
+ * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
+ * Lesser General Public License for more details.
+ *
+ * You should have received a copy of the GNU Lesser General Public
+ * License along with this library; if not, write to the Free Software
+ * Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston, MA 02110-1301 USA
+ */
+
+package org.richfaces.cdk.templatecompiler.model;
+
+import org.richfaces.cdk.CdkException;
+
+/**
+ * <p class="changed_added_4_0"></p>
+ * @author asmirnov(a)exadel.com
+ *
+ */
+public interface TemplateVisitor {
+
+ void visitElement(CdkCallElement cdkCallElement) throws CdkException;
+
+ void visitElement(String child) throws CdkException;
+
+ void startElement(AnyElement anyElement) throws CdkException;
+
+ void endElement(AnyElement anyElement) throws CdkException;
+
+ void startElement(CdkBodyElement cdkBodyElement) throws CdkException;
+
+ void endElement(CdkBodyElement cdkBodyElement) throws CdkException;
+
+}
Property changes on:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/templatecompiler/model/TemplateVisitor.java
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Modified:
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/xmlconfig/CdkEntityResolver.java
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/xmlconfig/CdkEntityResolver.java 2009-11-05
20:37:23 UTC (rev 15844)
+++
root/cdk/trunk/plugins/generator/src/main/java/org/richfaces/cdk/xmlconfig/CdkEntityResolver.java 2009-11-06
00:27:52 UTC (rev 15845)
@@ -66,16 +66,32 @@
private static final String ATTRIBUTES_PREFIX =
"META-INF/cdk/attributes/";
private static final String SYSTEM_PREFIX = "/META-INF/schema";
private static final String URN_SYSTEM = "urn:system:";
- private static final ImmutableMap<String, String> SYSTEM_ENTITIES =
- ImmutableMap.<String, String>builder().put(
- "http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd",
URN_SYSTEM + "/web-facesconfig_2_0.xsd").put(
- "http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd",
URN_SYSTEM + "/web-facesconfig_1_2.xsd").put(
- "http://java.sun.com/xml/ns/javaee/javaee_5.xsd", URN_SYSTEM +
"/javaee_5.xsd").put(
- "http://java.sun.com/xml/ns/javaee/javaee_web_services_1_2.xsd",
- URN_SYSTEM + "/javaee_web_services_1_2.xsd").put(
-
"http://java.sun.com/xml/ns/javaee/javaee_web_services_client_1_2.xsd",
- URN_SYSTEM + "/javaee_web_services_client_1_2.xsd").put(
- "http://www.w3.org/2001/03/xml.xsd", URN_SYSTEM +
"/xml.xsd").build();
+ private static final ImmutableMap<String, String> SYSTEM_ENTITIES =
ImmutableMap
+ .<String, String> builder()
+ .put("http://java.sun.com/xml/ns/javaee/web-facesconfig_2_0.xsd",
+ URN_SYSTEM + "/web-facesconfig_2_0.xsd")
+
.put("http://java.sun.com/xml/ns/javaee/web-facesuicomponent_2_0.xsd",
+ URN_SYSTEM + "/web-facesuicomponent_2_0.xsd")
+
.put("http://java.sun.com/xml/ns/javaee/web-partialresponse_2_0.xsd",
+ URN_SYSTEM + "/web-partialresponse_2_0.xsd")
+ .put("http://java.sun.com/xml/ns/javaee/web-facesconfig_1_2.xsd",
+ URN_SYSTEM + "/web-facesconfig_1_2.xsd")
+ .put("http://java.sun.com/xml/ns/javaee/javaee_5.xsd",
+ URN_SYSTEM + "/javaee_5.xsd")
+ .put(
+
"http://java.sun.com/xml/ns/javaee/javaee_web_services_1_2.xsd",
+ URN_SYSTEM + "/javaee_web_services_1_2.xsd")
+ .put(
+
"http://java.sun.com/xml/ns/javaee/javaee_web_services_client_1_2.xsd",
+ URN_SYSTEM + "/javaee_web_services_client_1_2.xsd").put(
+ "http://www.w3.org/2001/03/XMLSchema.dtd",
+ URN_SYSTEM + "/XMLSchema.dtd").put(
+ "http://www.w3.org/2001/03/xml.xsd",
+ URN_SYSTEM + "/xml.xsd").put(
+ "http://richfaces.org/cdk/cdk-template.xsd",
+ URN_SYSTEM + "/cdk-template.xsd").put(
+ "http://richfaces.org/cdk/xhtml-el.xsd",
+ URN_SYSTEM + "/xhtml-el.xsd").build();
private final CdkContext context;
Added: root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/XMLSchema.dtd
===================================================================
--- root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/XMLSchema.dtd
(rev 0)
+++
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/XMLSchema.dtd 2009-11-06
00:27:52 UTC (rev 15845)
@@ -0,0 +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.3 2006/03/27 17:41:34 rlubke 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' >
Property changes on:
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/XMLSchema.dtd
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Copied:
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/cdk-template.xsd (from
rev 15844, root/cdk/trunk/plugins/generator/src/main/xsd/cdk-template.xsd)
===================================================================
--- root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/cdk-template.xsd
(rev 0)
+++
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/cdk-template.xsd 2009-11-06
00:27:52 UTC (rev 15845)
@@ -0,0 +1,100 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
+
targetNamespace="http://richfaces.org/cdk"
xmlns="http://richfaces.org/cdk"
+ elementFormDefault="qualified" attributeFormDefault="qualified"
+
xmlns:xhtml="http://richfaces.org/xhtml-el"
+
xmlns:javaee="http://java.sun.com/xml/ns/javaee"
+ >
+ <xs:import schemaLocation="web-facesuicomponent_2_0.xsd"
namespace="http://java.sun.com/xml/ns/javaee"/><!--
+ <xs:include schemaLocation="xhtml-el.xsd"/>
+
+ --><xs:simpleType name="elStrictExpression">
+ <xs:restriction base="xs:string">
+ <xs:pattern value="#\{[^\}]+\}" />
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="elMixedExpression">
+ <xs:restriction base="xs:string">
+ <xs:pattern value=".*#\{[^\}]+\}.*" />
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="elFreeformExpression">
+ <xs:restriction base="xs:string" />
+ </xs:simpleType>
+
+ <xs:attributeGroup name="core.attrs">
+ <xs:attribute name="passThroughWithExclusions"
type="xs:NMTOKENS" />
+ </xs:attributeGroup>
+
+ <xs:attributeGroup name="testGroup">
+ <xs:attribute name="test" form="unqualified"
use="required" type="elStrictExpression" />
+ </xs:attributeGroup>
+
+ <xs:element name="root">
+ <xs:complexType mixed="true">
+ <xs:choice>
+ <xs:any minOccurs="0" maxOccurs="unbounded" />
+ </xs:choice>
+ <xs:attribute name="class" type="xs:string"
form="unqualified" use="required" />
+ <xs:attribute name="superclass" type="xs:string"
form="unqualified"/>
+ <xs:attribute name="componentclass" type="xs:string"
form="unqualified" use="required" />
+ </xs:complexType>
+ </xs:element>
+
+ <xs:group name="structural">
+ <xs:choice>
+ <xs:element name="body">
+ <xs:complexType mixed="true">
+ <xs:choice>
+ <xs:any minOccurs="0" maxOccurs="unbounded" />
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ <xs:element ref="if" />
+ <xs:element ref="choose" />
+ <xs:element ref="call" />
+ </xs:choice>
+ </xs:group>
+
+
+ <xs:element name="if">
+ <xs:complexType mixed="true">
+ <xs:choice>
+ <xs:any minOccurs="0" maxOccurs="unbounded" />
+ </xs:choice>
+ <xs:attributeGroup ref="testGroup" />
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="choose">
+ <xs:complexType>
+ <xs:sequence>
+ <xs:element maxOccurs="unbounded" name="when">
+ <xs:complexType>
+ <xs:choice>
+ <xs:any minOccurs="0"
+ maxOccurs="unbounded">
+ </xs:any>
+ </xs:choice>
+ <xs:attributeGroup ref="testGroup" />
+ </xs:complexType>
+ </xs:element>
+ <xs:element minOccurs="0" name="otherwise">
+ <xs:complexType>
+ <xs:choice>
+ <xs:any minOccurs="0"
+ maxOccurs="unbounded">
+ </xs:any>
+ </xs:choice>
+ </xs:complexType>
+ </xs:element>
+ </xs:sequence>
+ </xs:complexType>
+ </xs:element>
+ <xs:element name="call">
+ <xs:complexType>
+ <xs:attribute name="expression" form="unqualified" />
+ </xs:complexType>
+ </xs:element>
+</xs:schema>
Added: root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/datatypes.dtd
===================================================================
--- root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/datatypes.dtd
(rev 0)
+++
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/datatypes.dtd 2009-11-06
00:27:52 UTC (rev 15845)
@@ -0,0 +1,203 @@
+<!--
+ DTD for XML Schemas: Part 2: Datatypes
+ $Id: datatypes.dtd,v 1.3 2006/03/27 17:41:34 rlubke Exp $
+ Note this DTD is NOT normative, or even definitive. - - the
+ prose copy in the datatypes REC is the definitive version
+ (which shouldn't differ from this one except for this comment
+ and entity expansions, but just in case)
+ -->
+
+<!--
+ This DTD cannot be used on its own, it is intended
+ only for incorporation in XMLSchema.dtd, q.v.
+ -->
+
+<!-- Define all the element names, with optional prefix -->
+<!ENTITY % simpleType "%p;simpleType">
+<!ENTITY % restriction "%p;restriction">
+<!ENTITY % list "%p;list">
+<!ENTITY % union "%p;union">
+<!ENTITY % maxExclusive "%p;maxExclusive">
+<!ENTITY % minExclusive "%p;minExclusive">
+<!ENTITY % maxInclusive "%p;maxInclusive">
+<!ENTITY % minInclusive "%p;minInclusive">
+<!ENTITY % totalDigits "%p;totalDigits">
+<!ENTITY % fractionDigits "%p;fractionDigits">
+<!ENTITY % length "%p;length">
+<!ENTITY % minLength "%p;minLength">
+<!ENTITY % maxLength "%p;maxLength">
+<!ENTITY % enumeration "%p;enumeration">
+<!ENTITY % whiteSpace "%p;whiteSpace">
+<!ENTITY % pattern "%p;pattern">
+
+<!--
+ 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 % simpleTypeAttrs "">
+<!ENTITY % restrictionAttrs "">
+<!ENTITY % listAttrs "">
+<!ENTITY % unionAttrs "">
+<!ENTITY % maxExclusiveAttrs "">
+<!ENTITY % minExclusiveAttrs "">
+<!ENTITY % maxInclusiveAttrs "">
+<!ENTITY % minInclusiveAttrs "">
+<!ENTITY % totalDigitsAttrs "">
+<!ENTITY % fractionDigitsAttrs "">
+<!ENTITY % lengthAttrs "">
+<!ENTITY % minLengthAttrs "">
+<!ENTITY % maxLengthAttrs "">
+<!ENTITY % enumerationAttrs "">
+<!ENTITY % whiteSpaceAttrs "">
+<!ENTITY % patternAttrs "">
+
+<!-- Define some entities for informative use as attribute
+ types -->
+<!ENTITY % URIref "CDATA">
+<!ENTITY % XPathExpr "CDATA">
+<!ENTITY % QName "NMTOKEN">
+<!ENTITY % QNames "NMTOKENS">
+<!ENTITY % NCName "NMTOKEN">
+<!ENTITY % nonNegativeInteger "NMTOKEN">
+<!ENTITY % boolean "(true|false)">
+<!ENTITY % simpleDerivationSet "CDATA">
+<!--
+ #all or space-separated list drawn from derivationChoice
+ -->
+
+<!--
+ Note that the use of 'facet' below is less restrictive
+ than is really intended: There should in fact be no
+ more than one of each of minInclusive, minExclusive,
+ maxInclusive, maxExclusive, totalDigits, fractionDigits,
+ length, maxLength, minLength within datatype,
+ and the min- and max- variants of Inclusive and Exclusive
+ are mutually exclusive. On the other hand, pattern and
+ enumeration may repeat.
+ -->
+<!ENTITY % minBound "(%minInclusive; | %minExclusive;)">
+<!ENTITY % maxBound "(%maxInclusive; | %maxExclusive;)">
+<!ENTITY % bounds "%minBound; | %maxBound;">
+<!ENTITY % numeric "%totalDigits; | %fractionDigits;">
+<!ENTITY % ordered "%bounds; | %numeric;">
+<!ENTITY % unordered
+ "%pattern; | %enumeration; | %whiteSpace; | %length; |
+ %maxLength; | %minLength;">
+<!ENTITY % facet "%ordered; | %unordered;">
+<!ENTITY % facetAttr
+ "value CDATA #REQUIRED
+ id ID #IMPLIED">
+<!ENTITY % fixedAttr "fixed %boolean; #IMPLIED">
+<!ENTITY % facetModel "(%annotation;)?">
+<!ELEMENT %simpleType;
+ ((%annotation;)?, (%restriction; | %list; | %union;))>
+<!ATTLIST %simpleType;
+ name %NCName; #IMPLIED
+ final %simpleDerivationSet; #IMPLIED
+ id ID #IMPLIED
+ %simpleTypeAttrs;>
+<!-- name is required at top level -->
+<!ELEMENT %restriction; ((%annotation;)?,
+ (%restriction1; |
+ ((%simpleType;)?,(%facet;)*)),
+ (%attrDecls;))>
+<!ATTLIST %restriction;
+ base %QName; #IMPLIED
+ id ID #IMPLIED
+ %restrictionAttrs;>
+<!--
+ base and simpleType child are mutually exclusive,
+ one is required.
+
+ restriction is shared between simpleType and
+ simpleContent and complexContent (in XMLSchema.xsd).
+ restriction1 is for the latter cases, when this
+ is restricting a complex type, as is attrDecls.
+ -->
+<!ELEMENT %list; ((%annotation;)?,(%simpleType;)?)>
+<!ATTLIST %list;
+ itemType %QName; #IMPLIED
+ id ID #IMPLIED
+ %listAttrs;>
+<!--
+ itemType and simpleType child are mutually exclusive,
+ one is required
+ -->
+<!ELEMENT %union; ((%annotation;)?,(%simpleType;)*)>
+<!ATTLIST %union;
+ id ID #IMPLIED
+ memberTypes %QNames; #IMPLIED
+ %unionAttrs;>
+<!--
+ At least one item in memberTypes or one simpleType
+ child is required
+ -->
+
+<!ELEMENT %maxExclusive; %facetModel;>
+<!ATTLIST %maxExclusive;
+ %facetAttr;
+ %fixedAttr;
+ %maxExclusiveAttrs;>
+<!ELEMENT %minExclusive; %facetModel;>
+<!ATTLIST %minExclusive;
+ %facetAttr;
+ %fixedAttr;
+ %minExclusiveAttrs;>
+
+<!ELEMENT %maxInclusive; %facetModel;>
+<!ATTLIST %maxInclusive;
+ %facetAttr;
+ %fixedAttr;
+ %maxInclusiveAttrs;>
+<!ELEMENT %minInclusive; %facetModel;>
+<!ATTLIST %minInclusive;
+ %facetAttr;
+ %fixedAttr;
+ %minInclusiveAttrs;>
+
+<!ELEMENT %totalDigits; %facetModel;>
+<!ATTLIST %totalDigits;
+ %facetAttr;
+ %fixedAttr;
+ %totalDigitsAttrs;>
+<!ELEMENT %fractionDigits; %facetModel;>
+<!ATTLIST %fractionDigits;
+ %facetAttr;
+ %fixedAttr;
+ %fractionDigitsAttrs;>
+
+<!ELEMENT %length; %facetModel;>
+<!ATTLIST %length;
+ %facetAttr;
+ %fixedAttr;
+ %lengthAttrs;>
+<!ELEMENT %minLength; %facetModel;>
+<!ATTLIST %minLength;
+ %facetAttr;
+ %fixedAttr;
+ %minLengthAttrs;>
+<!ELEMENT %maxLength; %facetModel;>
+<!ATTLIST %maxLength;
+ %facetAttr;
+ %fixedAttr;
+ %maxLengthAttrs;>
+
+<!-- This one can be repeated -->
+<!ELEMENT %enumeration; %facetModel;>
+<!ATTLIST %enumeration;
+ %facetAttr;
+ %enumerationAttrs;>
+
+<!ELEMENT %whiteSpace; %facetModel;>
+<!ATTLIST %whiteSpace;
+ %facetAttr;
+ %fixedAttr;
+ %whiteSpaceAttrs;>
+
+<!-- This one can be repeated -->
+<!ELEMENT %pattern; %facetModel;>
+<!ATTLIST %pattern;
+ %facetAttr;
+ %patternAttrs;>
Property changes on:
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/datatypes.dtd
___________________________________________________________________
Name: svn:executable
+ *
Name: svn:mime-type
+ text/plain
Added:
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/web-facelettaglibrary_2_0.xsd
===================================================================
---
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/web-facelettaglibrary_2_0.xsd
(rev 0)
+++
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/web-facelettaglibrary_2_0.xsd 2009-11-06
00:27:52 UTC (rev 15845)
@@ -0,0 +1,468 @@
+<?xml version = "1.0" encoding = "UTF-8"?>
+
+<!--
+ DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS HEADER.
+
+ Copyright 1997-2007 Sun Microsystems, Inc. All rights reserved.
+
+ The contents of this file are subject to the terms of either the GNU
+ General Public License Version 2 only ("GPL") or the Common Development
+ and Distribution License("CDDL") (collectively, the "License").
You
+ may not use this file except in compliance with the License. You can obtain
+ a copy of the License at
https://glassfish.dev.java.net/public/CDDL+GPL.html
+ or glassfish/bootstrap/legal/LICENSE.txt. See the License for the specific
+ language governing permissions and limitations under the License.
+
+ When distributing the software, include this License Header Notice in each
+ file and include the License file at glassfish/bootstrap/legal/LICENSE.txt.
+ Sun designates this particular file as subject to the "Classpath" exception
+ as provided by Sun in the GPL Version 2 section of the License file that
+ accompanied this code. If applicable, add the following below the License
+ Header, with the fields enclosed by brackets [] replaced by your own
+ identifying information: "Portions Copyrighted [year]
+ [name of copyright owner]"
+
+ Contributor(s):
+
+ If you wish your version of this file to be governed by only the CDDL or
+ only the GPL Version 2, indicate your decision by adding "[Contributor]
+ elects to include this software in this distribution under the [CDDL or GPL
+ Version 2] license." If you don't indicate a single choice of license, a
+ recipient has the option to distribute your version of this file under
+ either the CDDL, the GPL Version 2 or to extend the choice of license to
+ its licensees as provided above. However, if you add GPL Version 2 code
+ and therefore, elected the GPL Version 2 license, then the option applies
+ only if the new code is made subject to such option by the copyright
+ holder.
+-->
+<xsd:schema
+
targetNamespace="http://java.sun.com/xml/ns/javaee"
+
xmlns:javaee="http://java.sun.com/xml/ns/javaee"
+
xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+
xmlns:xml="http://www.w3.org/XML/1998/namespace"
+ elementFormDefault="qualified"
+ attributeFormDefault="unqualified"
+ version="2.0">
+ <xsd:include schemaLocation="javaee_5.xsd"/>
+ <xsd:element name="facelet-taglib"
type="javaee:facelet-taglibType">
+ <xsd:unique name="facelet-taglib-tagname-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ tag-names must be unique within a document.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:tag"/>
+ <xsd:field xpath="javaee:tag-name"/>
+ </xsd:unique>
+ <xsd:unique name="faces-config-behavior-ID-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Behavior IDs must be unique within a document.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:behavior"/>
+ <xsd:field xpath="javaee:behavior-id"/>
+ </xsd:unique>
+ <xsd:unique name="faces-config-converter-ID-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Converter IDs must be unique within a document.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:converter"/>
+ <xsd:field xpath="javaee:converter-id"/>
+ </xsd:unique>
+ <xsd:unique name="faces-config-validator-ID-uniqueness">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Validator IDs must be unique within a document.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:selector xpath="javaee:validator"/>
+ <xsd:field xpath="javaee:validator-id"/>
+ </xsd:unique>
+ </xsd:element>
+ <xsd:complexType name="facelet-taglibType">
+ <xsd:annotation>
+ <xsd:documentation>
+ The top level XML element in a facelet tag library XML file.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:choice>
+ <xsd:element name="library-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:sequence>
+ <xsd:element name="namespace"
type="javaee:string"/>
+ <xsd:element minOccurs="0" maxOccurs="1"
+ name="composite-library-name"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:choice minOccurs="0"
maxOccurs="unbounded">
+ <xsd:element name="tag"
+ type="javaee:facelet-taglib-tagType"/>
+ <xsd:element name="function"
+
type="javaee:facelet-taglib-functionType"/>
+
+ </xsd:choice>
+ </xsd:sequence>
+ </xsd:choice>
+ <xsd:element name="taglib-extension"
+ type="javaee:facelet-taglib-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ <xsd:attribute name="version"
+ type="javaee:facelet-taglib-versionType"
+ use="required"/>
+ </xsd:complexType>
+ <xsd:complexType name="facelet-taglib-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ Extension element for facelet-taglib. It may contain
+ implementation specific content.
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:complexType name="facelet-taglib-tagType">
+ <xsd:annotation>
+ <xsd:documentation>
+ If the tag library XML file contains individual tag
+ declarations rather than pointing to a library-class or a
+ declaring a composite-library name, the individual tags are
+ enclosed in tag elements.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="tag-name"
+ type="javaee:facelet-taglib-canonical-nameType"/>
+ <xsd:choice>
+ <xsd:element name="handler-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="behavior"
+
type="javaee:facelet-taglib-tag-behaviorType"/>
+ <xsd:element name="component"
+
type="javaee:facelet-taglib-tag-componentType"/>
+ <xsd:element name="converter"
+
type="javaee:facelet-taglib-tag-converterType"/>
+ <xsd:element name="validator"
+
type="javaee:facelet-taglib-tag-validatorType"/>
+ <xsd:element name="source"
type="javaee:string"/>
+ </xsd:choice>
+ <xsd:element name="attribute"
+ type="javaee:facelet-taglib-tag-attributeType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ <xsd:element name="tag-extension"
+ type="javaee:facelet-taglib-tag-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+
+ <xsd:complexType name="facelet-taglib-tag-attributeType">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ The attribute element defines an attribute for the nesting
+ tag. The attribute element may have several subelements
+ defining:
+
+ description a description of the attribute
+
+ name the name of the attribute
+
+ required whether the attribute is required or
+ optional
+
+ type the type of the attribute
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="name"
+ type="javaee:xsdNMTOKENType"/>
+ <xsd:element name="required"
+ type="javaee:generic-booleanType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines if the nesting attribute is required or
+ optional.
+
+ If not present then the default is "false", i.e
+ the attribute is optional.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:choice>
+ <xsd:element name="type"
+ type="javaee:fully-qualified-classType"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the Java type of the attributes
+ value. If this element is omitted, the
+ expected type is assumed to be
+ "java.lang.Object".
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ <xsd:element name="method-signature"
+ type="javaee:string"
+ minOccurs="0">
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the method signature for a MethodExpression-
+ enabled attribute.
+
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:element>
+ </xsd:choice>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+
+ <xsd:complexType name="facelet-taglib-tag-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ Extension element for tag It may contain
+ implementation specific content.
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:complexType name="facelet-taglib-functionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ If the tag library XML file contains individual function
+ declarations rather than pointing to a library-class or a
+ declaring a composite-library name, the individual functions are
+ enclosed in function elements.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="function-name"
type="javaee:string"/>
+ <xsd:element name="function-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="function-signature"
type="javaee:string"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="facelet-taglib-tag-behaviorType">
+ <xsd:annotation>
+ <xsd:documentation>
+ Within a tag element, the behavior element encapsulates
+ information specific to a JSF Behavior.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element minOccurs="1" maxOccurs="1"
+ name="behavior-id"
type="javaee:string"/>
+ <xsd:element minOccurs="0" maxOccurs="1"
+ name="handler-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="behavior-extension"
+
type="javaee:facelet-taglib-tag-behavior-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="facelet-taglib-tag-behavior-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ Extension element for behavior. It may contain
+ implementation specific content.
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+ <xsd:complexType name="facelet-taglib-tag-componentType">
+ <xsd:annotation>
+ <xsd:documentation>
+ Within a tag element, the component element encapsulates
+ information specific to a JSF UIComponent.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element name="component-type"
type="javaee:string"/>
+ <xsd:element minOccurs="0" maxOccurs="1"
+ name="renderer-type"
type="javaee:string"/>
+ <xsd:element minOccurs="0" maxOccurs="1"
+ name="handler-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="component-extension"
+
type="javaee:facelet-taglib-tag-component-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="facelet-taglib-tag-component-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ Extension element for component It may contain
+ implementation specific content.
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:complexType name="facelet-taglib-tag-converterType">
+ <xsd:annotation>
+ <xsd:documentation>
+ Within a tag element, the converter element encapsulates
+ information specific to a JSF Converter.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element minOccurs="1" maxOccurs="1"
+ name="converter-id"
type="javaee:string"/>
+ <xsd:element minOccurs="0" maxOccurs="1"
+ name="handler-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="converter-extension"
+
type="javaee:facelet-taglib-tag-converter-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="facelet-taglib-tag-converter-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ Extension element for converter It may contain
+ implementation specific content.
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <xsd:complexType name="facelet-taglib-tag-validatorType">
+ <xsd:annotation>
+ <xsd:documentation>
+ Within a tag element, the validator element encapsulates
+ information specific to a JSF Validator.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:sequence>
+ <xsd:group ref="javaee:descriptionGroup"/>
+ <xsd:element minOccurs="1" maxOccurs="1"
+ name="validator-id"
type="javaee:string"/>
+ <xsd:element minOccurs="0" maxOccurs="1"
+ name="handler-class"
+ type="javaee:fully-qualified-classType"/>
+ <xsd:element name="validator-extension"
+
type="javaee:facelet-taglib-tag-validator-extensionType"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ </xsd:complexType>
+ <xsd:complexType name="facelet-taglib-tag-validator-extensionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ Extension element for validator It may contain
+ implementation specific content.
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:sequence>
+ <xsd:any namespace="##any"
+ processContents="lax"
+ minOccurs="0"
+ maxOccurs="unbounded"/>
+ </xsd:sequence>
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:complexType>
+
+ <!-- **************************************************** -->
+ <xsd:simpleType name="facelet-taglib-versionType">
+ <xsd:annotation>
+ <xsd:documentation>
+ This type contains the recognized versions of
+ facelet-taglib supported.
+ </xsd:documentation>
+ </xsd:annotation>
+ <xsd:restriction base="xsd:token">
+ <xsd:enumeration value="2.0"/>
+ </xsd:restriction>
+ </xsd:simpleType>
+
+ <xsd:complexType name="facelet-taglib-canonical-nameType">
+
+ <xsd:annotation>
+ <xsd:documentation>
+
+ Defines the canonical name of a tag or attribute being
+ defined.
+
+ The name must conform to the lexical rules for an NCName
+
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:simpleContent>
+ <xsd:extension base="xsd:NCName">
+ <xsd:attribute name="id" type="xsd:ID"/>
+ </xsd:extension>
+ </xsd:simpleContent>
+ </xsd:complexType>
+
+</xsd:schema>
Property changes on:
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/web-facelettaglibrary_2_0.xsd
___________________________________________________________________
Name: svn:mime-type
+ text/plain
Copied: root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/xhtml-el.xsd
(from rev 15844, root/cdk/trunk/plugins/generator/src/main/xsd/xhtml-el.xsd)
===================================================================
--- root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/xhtml-el.xsd
(rev 0)
+++
root/cdk/trunk/plugins/generator/src/main/resources/META-INF/schema/xhtml-el.xsd 2009-11-06
00:27:52 UTC (rev 15845)
@@ -0,0 +1,3389 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xs:schema version="1.0" xml:lang="en"
+
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://richfaces.org/xhtml-el"
+
xmlns="http://richfaces.org/xhtml-el"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
+ elementFormDefault="qualified"
xmlns:cdk="http://richfaces.org/cdk">
+
+ <xs:import schemaLocation="cdk-template.xsd"
namespace="http://richfaces.org/cdk" />
+
+ <xs:annotation>
+ <xs:documentation>
+ XHTML 1.0 (Second Edition) Transitional in XML
+ Schema
+
+ This is the same as HTML 4 Transitional except for
+ changes due
+ to the differences between XML and SGML.
+
+ Namespace =
+
http://www.w3.org/1999/xhtml
+
+ For further information, see:
+
http://www.w3.org/TR/xhtml1
+
+ Copyright (c) 1998-2002 W3C (MIT, INRIA,
+ Keio),
+ All Rights Reserved.
+
+ The DTD version is identified by the PUBLIC
+ and SYSTEM identifiers:
+
+ PUBLIC "-//W3C//DTD XHTML 1.0
+ Transitional//EN"
+ SYSTEM
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
+
+ $Id:
+ xhtml1-transitional.xsd,v 1.5 2002/08/28 09:53:29 mimasa Exp $
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:import
namespace="http://www.w3.org/XML/1998/namespace"
+
schemaLocation="http://www.w3.org/2001/xml.xsd" />
+
+ <xs:annotation>
+ <xs:documentation>
+ ================ Character mnemonic entities
+ =========================
+
+ XHTML entity sets are identified by the
+ PUBLIC and SYSTEM identifiers:
+
+ PUBLIC "-//W3C//ENTITIES Latin 1 for
+ XHTML//EN"
+ SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent"
+
+ PUBLIC "-//W3C//ENTITIES Special for XHTML//EN"
+ SYSTEM
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml-special.ent"
+
+ PUBLIC
+ "-//W3C//ENTITIES Symbols for XHTML//EN"
+ SYSTEM
+ "http://www.w3.org/TR/xhtml1/DTD/xhtml-symbol.ent"
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:annotation>
+ <xs:documentation>
+ ================== Imported Names
+ ====================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:simpleType name="ContentType">
+ <xs:annotation>
+ <xs:documentation>
+ media type, as per [RFC2045]
+ </xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="ContentTypes">
+ <xs:annotation>
+ <xs:documentation>
+ comma-separated list of media types, as per
+ [RFC2045]
+ </xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="Charset">
+ <xs:annotation>
+ <xs:documentation>
+ a character encoding, as per [RFC2045]
+ </xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="Charsets">
+ <xs:annotation>
+ <xs:documentation>
+ a space separated list of character encodings, as
+ per [RFC2045]
+ </xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="LanguageCode">
+ <xs:annotation>
+ <xs:documentation>
+ a language code, as per [RFC3066]
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union memberTypes="xs:language cdk:elMixedExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="Character">
+ <xs:annotation>
+ <xs:documentation>
+ a single character, as per section 2.2 of [XML]
+ </xs:documentation>
+ </xs:annotation>
+ <!-- TODO test -->
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:length value="1" fixed="true" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="simpleType.Number">
+ <xs:restriction base="xs:nonNegativeInteger">
+ <xs:pattern value="[0-9]+" />
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:simpleType name="Number">
+ <xs:annotation>
+ <xs:documentation>
+ one or more digits
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union memberTypes="simpleType.Number cdk:elMixedExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="tabindexNumber">
+ <xs:annotation>
+ <xs:documentation>
+ tabindex attribute specifies the position of the
+ current element
+ in the tabbing order for the current document. This
+ value must be
+ a number between 0 and 32767. User agents should ignore
+ leading
+ zeros.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="simpleType.Number">
+ <xs:minInclusive value="0" />
+ <xs:maxInclusive value="32767" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elMixedExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="LinkTypes">
+ <xs:annotation>
+ <xs:documentation>
+ space-separated list of link types
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union memberTypes="xs:NMTOKENS cdk:elMixedExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="MediaDesc">
+ <xs:annotation>
+ <xs:documentation>
+ single or comma-separated list of media descriptors
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[^,]+(,\s*[^,]+)*" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="URI">
+ <xs:annotation>
+ <xs:documentation>
+ a Uniform Resource Identifier, see [RFC2396]
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union memberTypes="xs:anyURI cdk:elMixedExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="UriList">
+ <xs:annotation>
+ <xs:documentation>
+ a space separated list of Uniform Resource
+ Identifiers
+ </xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="Datetime">
+ <xs:annotation>
+ <xs:documentation>
+ date and time information. ISO date format
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union memberTypes="xs:dateTime cdk:elMixedExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="Script">
+ <xs:annotation>
+ <xs:documentation>
+ script expression
+ </xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="StyleSheet">
+ <xs:annotation>
+ <xs:documentation>
+ style sheet data
+ </xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="Text">
+ <xs:annotation>
+ <xs:documentation>
+ used for titles etc.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+
+ <xs:simpleType name="FrameTarget">
+ <xs:annotation>
+ <xs:documentation>
+ render in this frame
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:NMTOKEN">
+ <xs:pattern value="_(blank|self|parent|top)|[A-Za-z]\c*" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="Length">
+ <xs:annotation>
+ <xs:documentation>
+ nn for pixels or nn% for percentage length
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[-+]?(\d+|\d+(\.\d+)?%)" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="MultiLength">
+ <xs:annotation>
+ <xs:documentation>
+ pixel, percentage, or relative
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[-+]?(\d+|\d+(\.\d+)?%)|[1-9]?(\d+)?\*" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="Pixels">
+ <xs:annotation>
+ <xs:documentation>
+ integer representing length in pixels
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union memberTypes="xs:nonNegativeInteger cdk:elMixedExpression" />
+ </xs:simpleType>
+
+ <xs:annotation>
+ <xs:documentation>
+ these are used for image maps
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:simpleType name="Shape">
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="rect" />
+ <xs:enumeration value="circle" />
+ <xs:enumeration value="poly" />
+ <xs:enumeration value="default" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="Coords">
+ <xs:annotation>
+ <xs:documentation>
+ comma separated list of lengths
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern
value="[-+]?(\d+|\d+(\.\d+)?%)(,\s*[-+]?(\d+|\d+(\.\d+)?%))*" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="ImgAlign">
+ <xs:annotation>
+ <xs:documentation>
+ used for object, applet, img, input and iframe
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top" />
+ <xs:enumeration value="middle" />
+ <xs:enumeration value="bottom" />
+ <xs:enumeration value="left" />
+ <xs:enumeration value="right" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="Color">
+ <xs:annotation>
+ <xs:documentation>
+ a color using sRGB: #RRGGBB as Hex values
+
+ There are
+ also 16 widely known color names with their sRGB values:
+
+ Black =
+ #000000 Green = #008000
+ Silver = #C0C0C0 Lime = #00FF00
+ Gray = #808080
+ Olive = #808000
+ White = #FFFFFF Yellow = #FFFF00
+ Maroon = #800000 Navy
+ = #000080
+ Red = #FF0000 Blue = #0000FF
+ Purple = #800080 Teal = #008080
+ Fuchsia= #FF00FF Aqua = #00FFFF
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:string">
+ <xs:pattern value="[A-Za-z]+|#[0-9A-Fa-f]{3}|#[0-9A-Fa-f]{6}" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <!-- TODO: add constraints -->
+ <xs:simpleType name="ID">
+ <xs:union memberTypes="xs:ID cdk:elMixedExpression" />
+ </xs:simpleType>
+ <xs:simpleType name="IDREF">
+ <xs:union memberTypes="xs:IDREF cdk:elMixedExpression" />
+ </xs:simpleType>
+ <xs:simpleType name="IDREFS">
+ <xs:union memberTypes="xs:IDREFS cdk:elMixedExpression" />
+ </xs:simpleType>
+ <xs:simpleType name="NMTOKEN">
+ <xs:union memberTypes="xs:NMTOKEN cdk:elMixedExpression" />
+ </xs:simpleType>
+ <xs:simpleType name="NMTOKENS">
+ <xs:union memberTypes="xs:NMTOKENS cdk:elMixedExpression" />
+ </xs:simpleType>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Generic Attributes
+ ===============================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:attributeGroup name="coreattrs">
+ <xs:annotation>
+ <xs:documentation>
+ core attributes common to most elements
+ id
+ document-wide unique id
+ class space separated list of classes
+ style
+ associated style info
+ title advisory title/amplification
+ </xs:documentation>
+ </xs:annotation>
+ <xs:attribute name="id" type="ID" />
+ <xs:attribute name="class" type="NMTOKENS" />
+ <xs:attribute name="style" type="StyleSheet" />
+ <xs:attribute name="title" type="Text" />
+ </xs:attributeGroup>
+
+ <xs:simpleType name="simpleType.dir">
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="ltr" />
+ <xs:enumeration value="rtl" />
+ </xs:restriction>
+ </xs:simpleType>
+
+ <xs:attributeGroup name="i18n">
+ <xs:annotation>
+ <xs:documentation>
+ internationalization attributes
+ lang language code
+ (backwards compatible)
+ xml:lang language code (as per XML 1.0 spec)
+ dir direction for weak/neutral text
+ </xs:documentation>
+ </xs:annotation>
+ <xs:attribute name="lang" type="LanguageCode" />
+
+ <!-- TODO: xml:lang can be made EL -->
+ <xs:attribute ref="xml:lang" />
+ <xs:attribute name="dir">
+ <xs:simpleType>
+ <xs:union memberTypes="simpleType.dir cdk:elMixedExpression" />
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+
+ <xs:attributeGroup name="events">
+ <xs:annotation>
+ <xs:documentation>
+ attributes for common UI events
+ onclick a pointer
+ button was clicked
+ ondblclick a pointer button was double clicked
+ onmousedown a pointer button was pressed down
+ onmouseup a pointer
+ button was released
+ onmousemove a pointer was moved onto the element
+ onmouseout a pointer was moved away from the element
+ onkeypress a key
+ was pressed and released
+ onkeydown a key was pressed down
+ onkeyup a
+ key was released
+ </xs:documentation>
+ </xs:annotation>
+ <xs:attribute name="onclick" type="Script" />
+ <xs:attribute name="ondblclick" type="Script" />
+ <xs:attribute name="onmousedown" type="Script" />
+ <xs:attribute name="onmouseup" type="Script" />
+ <xs:attribute name="onmouseover" type="Script" />
+ <xs:attribute name="onmousemove" type="Script" />
+ <xs:attribute name="onmouseout" type="Script" />
+ <xs:attribute name="onkeypress" type="Script" />
+ <xs:attribute name="onkeydown" type="Script" />
+ <xs:attribute name="onkeyup" type="Script" />
+ </xs:attributeGroup>
+
+ <xs:attributeGroup name="focus">
+ <xs:annotation>
+ <xs:documentation>
+ attributes for elements that can get the focus
+ accesskey accessibility key character
+ tabindex position in tabbing
+ order
+ onfocus the element got the focus
+ onblur the element lost the
+ focus
+ </xs:documentation>
+ </xs:annotation>
+ <xs:attribute name="accesskey" type="Character" />
+ <xs:attribute name="tabindex" type="tabindexNumber" />
+ <xs:attribute name="onfocus" type="Script" />
+ <xs:attribute name="onblur" type="Script" />
+ </xs:attributeGroup>
+
+ <xs:attributeGroup name="attrs">
+ <xs:attributeGroup ref="coreattrs" />
+ <xs:attributeGroup ref="i18n" />
+ <xs:attributeGroup ref="events" />
+ </xs:attributeGroup>
+
+ <xs:attributeGroup name="TextAlign">
+ <xs:annotation>
+ <xs:documentation>
+ text alignment for p, div, h1-h6. The default is
+ align="left" for ltr headings, "right" for rtl
+ </xs:documentation>
+ </xs:annotation>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left" />
+ <xs:enumeration value="center" />
+ <xs:enumeration value="right" />
+ <xs:enumeration value="justify" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Text Elements
+ ====================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:group name="special.extra">
+ <xs:choice>
+ <xs:element ref="object" />
+ <xs:element ref="applet" />
+ <xs:element ref="img" />
+ <xs:element ref="map" />
+ <xs:element ref="iframe" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="special.basic">
+ <xs:choice>
+ <xs:element ref="br" />
+ <xs:element ref="span" />
+ <xs:element ref="bdo" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="special">
+ <xs:choice>
+ <xs:group ref="special.basic" />
+ <xs:group ref="special.extra" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="fontstyle.extra">
+ <xs:choice>
+ <xs:element ref="big" />
+ <xs:element ref="small" />
+ <xs:element ref="font" />
+ <xs:element ref="basefont" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="fontstyle.basic">
+ <xs:choice>
+ <xs:element ref="tt" />
+ <xs:element ref="i" />
+ <xs:element ref="b" />
+ <xs:element ref="u" />
+ <xs:element ref="s" />
+ <xs:element ref="strike" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="fontstyle">
+ <xs:choice>
+ <xs:group ref="fontstyle.basic" />
+ <xs:group ref="fontstyle.extra" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="phrase.extra">
+ <xs:choice>
+ <xs:element ref="sub" />
+ <xs:element ref="sup" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="phrase.basic">
+ <xs:choice>
+ <xs:element ref="em" />
+ <xs:element ref="strong" />
+ <xs:element ref="dfn" />
+ <xs:element ref="code" />
+ <xs:element ref="q" />
+ <xs:element ref="samp" />
+ <xs:element ref="kbd" />
+ <xs:element ref="var" />
+ <xs:element ref="cite" />
+ <xs:element ref="abbr" />
+ <xs:element ref="acronym" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="phrase">
+ <xs:choice>
+ <xs:group ref="phrase.basic" />
+ <xs:group ref="phrase.extra" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="inline.forms">
+ <xs:choice>
+ <xs:element ref="input" />
+ <xs:element ref="select" />
+ <xs:element ref="textarea" />
+ <xs:element ref="label" />
+ <xs:element ref="button" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="misc.inline">
+ <xs:annotation>
+ <xs:documentation>
+ these can only occur at block level
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice>
+ <xs:group ref="cdk:structural" />
+ <xs:element ref="ins" />
+ <xs:element ref="del" />
+ <xs:element ref="script" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="misc">
+ <xs:annotation>
+ <xs:documentation>
+ these can only occur at block level
+ </xs:documentation>
+ </xs:annotation>
+ <xs:choice>
+ <xs:group ref="misc.elements" />
+ <xs:group ref="misc.inline" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="misc.elements">
+ <xs:choice>
+ <xs:element ref="noscript" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="inline">
+ <xs:choice>
+ <xs:group ref="inline.elements" />
+ <xs:group ref="special" />
+ <xs:group ref="fontstyle" />
+ <xs:group ref="phrase" />
+ <xs:group ref="inline.forms" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="inline.elements">
+ <xs:choice>
+ <xs:element ref="a" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="Inline" mixed="true">
+ <xs:annotation>
+ <xs:documentation>
+ "Inline" covers inline or "text-level" element
+ </xs:documentation>
+ </xs:annotation>
+ <xs:group ref="Inline.content" />
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="Inline.content">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="inline" />
+ <xs:group ref="misc.inline" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:annotation>
+ <xs:documentation>
+ ================== Block level elements
+ ==============================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:group name="heading">
+ <xs:choice>
+ <xs:element ref="h1" />
+ <xs:element ref="h2" />
+ <xs:element ref="h3" />
+ <xs:element ref="h4" />
+ <xs:element ref="h5" />
+ <xs:element ref="h6" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="lists">
+ <xs:choice>
+ <xs:element ref="ul" />
+ <xs:element ref="ol" />
+ <xs:element ref="dl" />
+ <xs:element ref="menu" />
+ <xs:element ref="dir" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="blocktext">
+ <xs:choice>
+ <xs:element ref="pre" />
+ <xs:element ref="hr" />
+ <xs:element ref="blockquote" />
+ <xs:element ref="address" />
+ <xs:element ref="center" />
+ <xs:element ref="noframes" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="block">
+ <xs:choice>
+ <xs:group ref="block.children" />
+ <xs:group ref="heading" />
+ <xs:group ref="lists" />
+ <xs:group ref="blocktext" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="block.children">
+ <xs:choice>
+ <xs:element ref="p" />
+ <xs:element ref="div" />
+ <xs:element ref="isindex" />
+ <xs:element ref="fieldset" />
+ <xs:element ref="table" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="Flow" mixed="true">
+ <xs:annotation>
+ <xs:documentation>
+ "Flow" mixes block and inline and is used for list
+ items etc.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:group ref="Flow.children" />
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="Flow.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="block" />
+ <xs:group ref="form.element.group" />
+ <xs:group ref="inline" />
+ <xs:group ref="misc" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="form.element.group">
+ <xs:choice>
+ <xs:element ref="form" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:annotation>
+ <xs:documentation>
+ ================== Content models for exclusions
+ =====================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:complexType name="a.content" mixed="true">
+ <xs:group ref="a.children" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attributeGroup ref="focus"></xs:attributeGroup>
+ <xs:attribute name="charset"
type="Charset"></xs:attribute>
+ <xs:attribute name="type"
type="ContentType"></xs:attribute>
+ <xs:attribute name="name"
type="NMTOKEN"></xs:attribute>
+ <xs:attribute name="href" type="URI"></xs:attribute>
+ <xs:attribute name="hreflang"
type="LanguageCode"></xs:attribute>
+ <xs:attribute name="rel"
type="LinkTypes"></xs:attribute>
+ <xs:attribute name="rev"
type="LinkTypes"></xs:attribute>
+ <xs:attribute default="rect" name="shape"
type="Shape"></xs:attribute>
+ <xs:attribute name="coords"
type="Coords"></xs:attribute>
+ <xs:attribute name="target"
type="FrameTarget"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="a.children">
+ <xs:choice>
+ <xs:group ref="special"></xs:group>
+ <xs:group ref="fontstyle"></xs:group>
+ <xs:group ref="phrase"></xs:group>
+ <xs:group ref="inline.forms"></xs:group>
+ <xs:group ref="misc.inline"></xs:group>
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="pre.content" mixed="true">
+ <xs:annotation>
+ <xs:documentation>
+ pre uses "Inline" excluding img, object, applet,
+ big, small,
+ font, or basefont
+ </xs:documentation>
+ </xs:annotation>
+ <xs:group ref="pre.children" />
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="pre.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="a.element.group" />
+ <xs:group ref="special.basic" />
+ <xs:group ref="fontstyle.basic" />
+ <xs:group ref="phrase.basic" />
+ <xs:group ref="inline.forms" />
+ <xs:group ref="misc.inline" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="a.element.group">
+ <xs:choice>
+ <xs:element ref="a" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="form.content" mixed="true">
+ <xs:annotation>
+ <xs:documentation>
+ form uses "Flow" excluding form
+ </xs:documentation>
+ </xs:annotation>
+ <xs:group ref="form.children" />
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="form.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="block" />
+ <xs:group ref="inline" />
+ <xs:group ref="misc" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="button.content" mixed="true">
+ <xs:annotation>
+ <xs:documentation>
+ button uses "Flow" but excludes a, form, form
+ controls, iframe
+ </xs:documentation>
+ </xs:annotation>
+ <xs:group ref="button.children" />
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="button.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="button.children.elements" />
+ <xs:group ref="heading" />
+ <xs:group ref="lists" />
+ <xs:group ref="blocktext" />
+ <xs:group ref="fontstyle" />
+ <xs:group ref="phrase" />
+ <xs:group ref="misc" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="button.children.elements">
+ <xs:choice>
+ <xs:element ref="p" />
+ <xs:element ref="div" />
+ <xs:element ref="table" />
+ <xs:element ref="br" />
+ <xs:element ref="span" />
+ <xs:element ref="bdo" />
+ <xs:element ref="object" />
+ <xs:element ref="applet" />
+ <xs:element ref="img" />
+ <xs:element ref="map" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:annotation>
+ <xs:documentation>
+ ================ Document Structure
+ ==================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="html" type="html.content">
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ ================ Document Head
+ =======================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:group name="head.misc">
+ <xs:sequence>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:element ref="script" />
+ <xs:element ref="style" />
+ <xs:element ref="meta" />
+ <xs:element ref="link" />
+ <xs:element ref="object" />
+ <xs:element ref="isindex" />
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+
+ <xs:element name="head" type="head.content">
+ <xs:annotation>
+ <xs:documentation>
+ content model is "head.misc" combined with a single
+ title and an optional base element in any order
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="title" type="title.content">
+ <xs:annotation>
+ <xs:documentation>
+ The title element is not considered part of the
+ flow of text.
+ It should be displayed, for example as the page header
+ or
+ window title. Exactly one title is required per document.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="base" type="base.content">
+ <xs:annotation>
+ <xs:documentation>
+ document base URI
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="meta" type="meta.content">
+ <xs:annotation>
+ <xs:documentation>
+ generic metainformation
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="link" type="link.content">
+ <xs:annotation>
+ <xs:documentation>
+ Relationship values can be used in principle:
+
+ a) for
+ document specific toolbars/menus when used
+ with the link element in
+ document head e.g.
+ start, contents, previous, next, index, end, help
+ b) to link to a separate style sheet (rel="stylesheet")
+ c) to make a
+ link to a script (rel="script")
+ d) by stylesheets to control how
+ collections of
+ html nodes are rendered into printed documents
+ e) to
+ make a link to a printable version of this document
+ e.g. a PostScript
+ or PDF version (rel="alternate" media="print")
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="style" type="style.content">
+ <xs:annotation>
+ <xs:documentation>
+ style info, which may include CDATA sections
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="script" type="script.content">
+ <xs:annotation>
+ <xs:documentation>
+ script statements, which may include CDATA sections
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="noscript">
+ <xs:annotation>
+ <xs:documentation>
+ alternate content container for non script-based
+ rendering
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ ======================= Frames
+ =======================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="iframe">
+ <xs:annotation>
+ <xs:documentation>
+ inline subwindow
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="coreattrs" />
+ <xs:attribute name="longdesc" type="URI" />
+ <xs:attribute name="name" type="NMTOKEN" />
+ <xs:attribute name="src" type="URI" />
+ <xs:attribute name="frameborder" default="1">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="1" />
+ <xs:enumeration value="0" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="marginwidth" type="Pixels" />
+ <xs:attribute name="marginheight" type="Pixels" />
+ <xs:attribute name="scrolling" default="auto">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="yes" />
+ <xs:enumeration value="no" />
+ <xs:enumeration value="auto" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="align" type="ImgAlign" />
+ <xs:attribute name="height" type="Length" />
+ <xs:attribute name="width" type="Length" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="noframes">
+ <xs:annotation>
+ <xs:documentation>
+ alternate content container for non frame-based
+ rendering
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Document Body
+ ====================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="body">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="onload" type="Script" />
+ <xs:attribute name="onunload" type="Script" />
+ <xs:attribute name="background" type="URI" />
+ <xs:attribute name="bgcolor" type="Color" />
+ <xs:attribute name="text" type="Color" />
+ <xs:attribute name="link" type="Color" />
+ <xs:attribute name="vlink" type="Color" />
+ <xs:attribute name="alink" type="Color" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="div">
+ <xs:annotation>
+ <xs:documentation>
+ generic language/style container
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attributeGroup ref="TextAlign" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Paragraphs
+ =======================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="p">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attributeGroup ref="TextAlign" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Headings
+ =========================================
+
+ There are six levels of
+ headings from h1 (the most important)
+ to h6 (the least important).
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="h1">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attributeGroup ref="TextAlign" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="h2">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attributeGroup ref="TextAlign" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="h3">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attributeGroup ref="TextAlign" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="h4">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attributeGroup ref="TextAlign" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="h5">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attributeGroup ref="TextAlign" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="h6">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attributeGroup ref="TextAlign" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Lists
+ ============================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:simpleType name="ULStyle">
+ <xs:annotation>
+ <xs:documentation>
+ Unordered list bullet styles
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="disc" />
+ <xs:enumeration value="square" />
+ <xs:enumeration value="circle" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:attribute name="compact">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="compact" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+
+ <xs:element name="ul" type="ul.content">
+ <xs:annotation>
+ <xs:documentation>
+ Unordered list
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:simpleType name="OLStyle">
+ <xs:annotation>
+ <xs:documentation>
+ Ordered list numbering style
+
+ 1 arabic numbers 1, 2,
+ 3, ...
+ a lower alpha a, b, c, ...
+ A upper alpha A, B, C, ...
+ i lower
+ roman i, ii, iii, ...
+ I upper roman I, II, III, ...
+
+ The style is
+ applied to the sequence number which by default
+ is reset to 1 for the
+ first list item in an ordered list.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+
+ <xs:element name="ol" type="ol.content">
+ <xs:annotation>
+ <xs:documentation>
+ Ordered (numbered) list
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="menu" type="menu.content">
+ <xs:annotation>
+ <xs:documentation>
+ single column list (DEPRECATED)
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="dir" type="dir.content">
+ <xs:annotation>
+ <xs:documentation>
+ multiple column list (DEPRECATED)
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:simpleType name="LIStyle">
+ <xs:annotation>
+ <xs:documentation>
+ LIStyle is constrained to: "(ULStyle|OLStyle)"
+ </xs:documentation>
+ </xs:annotation>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+
+ <xs:element name="li">
+ <xs:annotation>
+ <xs:documentation>
+ list item
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="type" type="LIStyle" />
+ <xs:attribute name="value" type="Number" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ definition lists - dt for term, dd for its
+ definition
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="dl" type="dl.content" />
+
+ <xs:element name="dt">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="dd">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Address
+ ==========================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="address" type="address.content">
+ <xs:annotation>
+ <xs:documentation>
+ information on author
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Horizontal Rule
+ ==================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="hr" type="hr.content">
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Preformatted Text
+ ================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="pre">
+ <xs:annotation>
+ <xs:documentation>
+ content is "Inline" excluding
+ "img|object|applet|big|small|sub|sup|font|basefont"
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="pre.content">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="width" type="Number" />
+ <xs:attribute ref="xml:space" fixed="preserve" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Block-like Quotes
+ ================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="blockquote">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="cite" type="URI" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Text alignment
+ ===================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="center">
+ <xs:annotation>
+ <xs:documentation>
+ center content
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Inserted/Deleted Text
+ ============================
+
+ ins/del are allowed in block and inline
+ content, but its
+ inappropriate to include block content within an ins
+ element
+ occurring in inline content.
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="ins">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="cite" type="URI" />
+ <xs:attribute name="datetime" type="Datetime" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="del">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="cite" type="URI" />
+ <xs:attribute name="datetime" type="Datetime" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ ================== The Anchor Element
+ ================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="a" type="a.content">
+ <xs:annotation>
+ <xs:documentation>
+ content is "Inline" except that anchors shouldn't
+ be nested
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ ===================== Inline Elements
+ ================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="span">
+ <xs:annotation>
+ <xs:documentation>
+ generic language/style container
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="bdo">
+ <xs:annotation>
+ <xs:documentation>
+ I18N BiDi over-ride
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="coreattrs" />
+ <xs:attributeGroup ref="events" />
+ <xs:attribute name="lang" type="LanguageCode" />
+ <xs:attribute ref="xml:lang" />
+ <xs:attribute name="dir" use="required">
+ <xs:simpleType>
+ <xs:union memberTypes="simpleType.dir cdk:elMixedExpression" />
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="br" type="br.content">
+ <xs:annotation>
+ <xs:documentation>
+ forced line break
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="em">
+ <xs:annotation>
+ <xs:documentation>
+ emphasis
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="strong">
+ <xs:annotation>
+ <xs:documentation>
+ strong emphasis
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="dfn">
+ <xs:annotation>
+ <xs:documentation>
+ definitional
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="code">
+ <xs:annotation>
+ <xs:documentation>
+ program code
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="samp">
+ <xs:annotation>
+ <xs:documentation>
+ sample
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="kbd">
+ <xs:annotation>
+ <xs:documentation>
+ something user would type
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="var">
+ <xs:annotation>
+ <xs:documentation>
+ variable
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="cite">
+ <xs:annotation>
+ <xs:documentation>
+ citation
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="abbr">
+ <xs:annotation>
+ <xs:documentation>
+ abbreviation
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="acronym">
+ <xs:annotation>
+ <xs:documentation>
+ acronym
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="q">
+ <xs:annotation>
+ <xs:documentation>
+ inlined quote
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="cite" type="URI" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="sub">
+ <xs:annotation>
+ <xs:documentation>
+ subscript
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="sup">
+ <xs:annotation>
+ <xs:documentation>
+ superscript
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="tt">
+ <xs:annotation>
+ <xs:documentation>
+ fixed pitch font
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="i">
+ <xs:annotation>
+ <xs:documentation>
+ italic font
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="b">
+ <xs:annotation>
+ <xs:documentation>
+ bold font
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="big">
+ <xs:annotation>
+ <xs:documentation>
+ bigger font
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="small">
+ <xs:annotation>
+ <xs:documentation>
+ smaller font
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="u">
+ <xs:annotation>
+ <xs:documentation>
+ underline
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="s">
+ <xs:annotation>
+ <xs:documentation>
+ strike-through
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="strike">
+ <xs:annotation>
+ <xs:documentation>
+ strike-through
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="basefont" type="basefont.content">
+ <xs:annotation>
+ <xs:documentation>
+ base font size
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="font">
+ <xs:annotation>
+ <xs:documentation>
+ local change to font
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="coreattrs" />
+ <xs:attributeGroup ref="i18n" />
+ <xs:attribute name="size" />
+ <xs:attribute name="color" type="Color" />
+ <xs:attribute name="face" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ ==================== Object
+ ======================================
+
+ object is used to embed objects
+ as part of HTML pages.
+ param elements should precede other content.
+ Parameters
+ can also be expressed as attribute/value pairs on the
+ object element itself when brevity is desired.
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="object" type="object.content" />
+
+ <xs:element name="param" type="param.content">
+ <xs:annotation>
+ <xs:documentation>
+ param is used to supply a named property value.
+ In
+ XML it would seem natural to follow RDF and support an
+ abbreviated
+ syntax where the param elements are replaced
+ by attribute value pairs
+ on the object start tag.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Java applet
+ ==================================
+
+ One of code or object attributes
+ must be present.
+ Place param elements before other content.
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="applet" type="applet.content">
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ =================== Images
+ ===========================================
+
+ To avoid accessibility
+ problems for people who aren't
+ able to see the image, you should
+ provide a text
+ description using the alt and longdesc attributes.
+ In
+ addition, avoid the use of server-side image maps.
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="img" type="img.content">
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ ================== Client-side image maps
+ ============================
+
+ These can be placed in the same document
+ or grouped in a
+ separate document although this isn't yet widely
+ supported
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="map" type="map.content">
+ </xs:element>
+
+ <xs:element name="area" type="area.content">
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ ================ Forms
+ ===============================================
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="form">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="form.content">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="action" use="required"
type="URI" />
+ <xs:attribute name="method" default="get">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="get" />
+ <xs:enumeration value="post" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="enctype" type="ContentType"
+ default="application/x-www-form-urlencoded" />
+ <xs:attribute name="onsubmit" type="Script" />
+ <xs:attribute name="onreset" type="Script" />
+ <xs:attribute name="accept" type="ContentTypes" />
+ <xs:attribute name="accept-charset" type="Charsets" />
+ <xs:attribute name="target" type="FrameTarget" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="label">
+ <xs:annotation>
+ <xs:documentation>
+ Each label must not contain more than ONE field
+ Label elements shouldn't be nested.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="for" type="IDREF" />
+ <xs:attribute name="accesskey" type="Character" />
+ <xs:attribute name="onfocus" type="Script" />
+ <xs:attribute name="onblur" type="Script" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:simpleType name="InputType">
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="text" />
+ <xs:enumeration value="password" />
+ <xs:enumeration value="checkbox" />
+ <xs:enumeration value="radio" />
+ <xs:enumeration value="submit" />
+ <xs:enumeration value="reset" />
+ <xs:enumeration value="file" />
+ <xs:enumeration value="hidden" />
+ <xs:enumeration value="image" />
+ <xs:enumeration value="button" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:attribute name="checked">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="checked" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="disabled">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="disabled" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="readonly">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="readonly" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+
+ <xs:element name="input" type="input.content">
+ <xs:annotation>
+ <xs:documentation>
+ form control
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="select" type="select.content">
+ <xs:annotation>
+ <xs:documentation>
+ option selector
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="optgroup" type="optgroup.content">
+ <xs:annotation>
+ <xs:documentation>
+ option group
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="option" type="option.content">
+ <xs:annotation>
+ <xs:documentation>
+ selectable choice
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="textarea" type="textarea.content">
+ <xs:annotation>
+ <xs:documentation>
+ multi-line text field
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="fieldset" type="fieldset.content">
+ <xs:annotation>
+ <xs:documentation>
+ The fieldset element is used to group form fields.
+ Only one legend element should occur in the content
+ and if present
+ should only be preceded by whitespace.
+
+ NOTE: this content model is
+ different from the XHTML 1.0 DTD,
+ closer to the intended content
+ model in HTML4 DTD
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:simpleType name="LAlign">
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top" />
+ <xs:enumeration value="bottom" />
+ <xs:enumeration value="left" />
+ <xs:enumeration value="right" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:element name="legend">
+ <xs:annotation>
+ <xs:documentation>
+ fieldset label
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="accesskey" type="Character" />
+ <xs:attribute name="align" type="LAlign" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="button">
+ <xs:annotation>
+ <xs:documentation>
+ Content is "Flow" excluding a, form and form
+ controls
+ </xs:documentation>
+ </xs:annotation>
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="button.content">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attributeGroup ref="focus" />
+ <xs:attribute name="name" />
+ <xs:attribute name="value" />
+ <xs:attribute name="type" default="submit">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="button" />
+ <xs:enumeration value="submit" />
+ <xs:enumeration value="reset" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute ref="disabled" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="isindex" type="isindex.content">
+ <xs:annotation>
+ <xs:documentation>
+ single-line text input control (DEPRECATED)
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ ======================= Tables
+ =======================================
+
+ Derived from IETF HTML table
+ standard, see [RFC1942]
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:simpleType name="TFrame">
+ <xs:annotation>
+ <xs:documentation>
+ The border attribute sets the thickness of the
+ frame around the
+ table. The default units are screen pixels.
+
+ The frame
+ attribute specifies which parts of the frame around
+ the table should
+ be rendered. The values are not the same as
+ CALS to avoid a name
+ clash with the valign attribute.
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="void" />
+ <xs:enumeration value="above" />
+ <xs:enumeration value="below" />
+ <xs:enumeration value="hsides" />
+ <xs:enumeration value="lhs" />
+ <xs:enumeration value="rhs" />
+ <xs:enumeration value="vsides" />
+ <xs:enumeration value="box" />
+ <xs:enumeration value="border" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="TRules">
+ <xs:annotation>
+ <xs:documentation>
+ The rules attribute defines which rules to draw
+ between cells:
+
+ If rules is absent then assume:
+ "none" if border is
+ absent or border="0" otherwise "all"
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="none" />
+ <xs:enumeration value="groups" />
+ <xs:enumeration value="rows" />
+ <xs:enumeration value="cols" />
+ <xs:enumeration value="all" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:simpleType name="TAlign">
+ <xs:annotation>
+ <xs:documentation>
+ horizontal placement of table relative to document
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left" />
+ <xs:enumeration value="center" />
+ <xs:enumeration value="right" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:attributeGroup name="cellhalign">
+ <xs:annotation>
+ <xs:documentation>
+ horizontal alignment attributes for cell contents
+
+ char alignment char, e.g. char=':'
+ charoff offset for alignment char
+ </xs:documentation>
+ </xs:annotation>
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left" />
+ <xs:enumeration value="center" />
+ <xs:enumeration value="right" />
+ <xs:enumeration value="justify" />
+ <xs:enumeration value="char" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="char" type="Character" />
+ <xs:attribute name="charoff" type="Length" />
+ </xs:attributeGroup>
+
+ <xs:attributeGroup name="cellvalign">
+ <xs:annotation>
+ <xs:documentation>
+ vertical alignment attributes for cell contents
+ </xs:documentation>
+ </xs:annotation>
+ <xs:attribute name="valign">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top" />
+ <xs:enumeration value="middle" />
+ <xs:enumeration value="bottom" />
+ <xs:enumeration value="baseline" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ </xs:attributeGroup>
+
+ <xs:element name="table" type="table.content">
+ </xs:element>
+
+ <xs:simpleType name="CAlign">
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="top" />
+ <xs:enumeration value="bottom" />
+ <xs:enumeration value="left" />
+ <xs:enumeration value="right" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elFreeformExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:element name="caption">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Inline">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="align" type="CAlign" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:annotation>
+ <xs:documentation>
+ Use thead to duplicate headers when breaking table
+ across page boundaries, or for static headers when
+ tbody sections are
+ rendered in scrolling panel.
+
+ Use tfoot to duplicate footers when
+ breaking table
+ across page boundaries, or for static footers when
+ tbody sections are rendered in scrolling panel.
+
+ Use multiple tbody
+ sections when rules are needed
+ between groups of table rows.
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:element name="thead" type="thead.content">
+ </xs:element>
+
+ <xs:element name="tfoot" type="tfoot.content">
+ </xs:element>
+
+ <xs:element name="tbody" type="tbody.content">
+ </xs:element>
+
+ <xs:element name="colgroup" type="colgroup.content">
+ <xs:annotation>
+ <xs:documentation>
+ colgroup groups a set of col elements. It allows
+ you to group
+ several semantically related columns together.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="col" type="col.content">
+ <xs:annotation>
+ <xs:documentation>
+ col elements define the alignment properties for
+ cells in
+ one or more columns.
+
+ The width attribute specifies the width
+ of the columns, e.g.
+
+ width=64 width in screen pixels
+ width=0.5*
+ relative width of 0.5
+
+ The span attribute causes the attributes of one
+ col element to apply to more than one column.
+ </xs:documentation>
+ </xs:annotation>
+ </xs:element>
+
+ <xs:element name="tr" type="tr.content">
+ </xs:element>
+
+ <xs:simpleType name="Scope">
+ <xs:annotation>
+ <xs:documentation>
+ Scope is simpler than headers attribute for common
+ tables
+ </xs:documentation>
+ </xs:annotation>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="row" />
+ <xs:enumeration value="col" />
+ <xs:enumeration value="rowgroup" />
+ <xs:enumeration value="colgroup" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elMixedExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+
+ <xs:annotation>
+ <xs:documentation>
+ th is for headers, td for data and for cells acting
+ as both
+ </xs:documentation>
+ </xs:annotation>
+
+ <xs:attribute name="nowrap">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="nowrap" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elMixedExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+
+ <xs:element name="th">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="abbr" type="Text" />
+ <xs:attribute name="axis" />
+ <xs:attribute name="headers" type="IDREFS" />
+ <xs:attribute name="scope" type="Scope" />
+ <xs:attribute name="rowspan" default="1"
type="Number" />
+ <xs:attribute name="colspan" default="1"
type="Number" />
+ <xs:attributeGroup ref="cellhalign" />
+ <xs:attributeGroup ref="cellvalign" />
+ <xs:attribute ref="nowrap" />
+ <xs:attribute name="bgcolor" type="Color" />
+ <xs:attribute name="width" type="Length" />
+ <xs:attribute name="height" type="Length" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:element name="td">
+ <xs:complexType mixed="true">
+ <xs:complexContent>
+ <xs:extension base="Flow">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="abbr" type="Text" />
+ <xs:attribute name="axis" />
+ <xs:attribute name="headers" type="IDREFS" />
+ <xs:attribute name="scope" type="Scope" />
+ <xs:attribute name="rowspan" default="1"
type="Number" />
+ <xs:attribute name="colspan" default="1"
type="Number" />
+ <xs:attributeGroup ref="cellhalign" />
+ <xs:attributeGroup ref="cellvalign" />
+ <xs:attribute ref="nowrap" />
+ <xs:attribute name="bgcolor" type="Color" />
+ <xs:attribute name="width" type="Length" />
+ <xs:attribute name="height" type="Length" />
+ </xs:extension>
+ </xs:complexContent>
+ </xs:complexType>
+ </xs:element>
+
+ <xs:complexType name="address.content" mixed="true">
+ <xs:group ref="address.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="address.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="inline"></xs:group>
+ <xs:group ref="misc.inline"></xs:group>
+ <xs:group ref="address.children.elements" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="address.children.elements">
+ <xs:choice>
+ <xs:element ref="p" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="applet.content" mixed="true">
+ <xs:group ref="applet.children" />
+ <xs:attributeGroup ref="coreattrs"></xs:attributeGroup>
+ <xs:attribute name="codebase"
type="URI"></xs:attribute>
+ <xs:attribute name="archive"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute name="code"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute name="object"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute name="alt" type="Text"></xs:attribute>
+ <xs:attribute name="name"
type="NMTOKEN"></xs:attribute>
+ <xs:attribute use="required" name="width"
type="Length"></xs:attribute>
+ <xs:attribute use="required" name="height"
type="Length"></xs:attribute>
+ <xs:attribute name="align"
type="ImgAlign"></xs:attribute>
+ <xs:attribute name="hspace"
type="Pixels"></xs:attribute>
+ <xs:attribute name="vspace"
type="Pixels"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="applet.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="param.element.group" />
+ <xs:group ref="block"></xs:group>
+ <xs:group ref="form.element.group" />
+ <xs:group ref="inline"></xs:group>
+ <xs:group ref="misc"></xs:group>
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="param.element.group">
+ <xs:choice>
+ <xs:element ref="param"></xs:element>
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="area.content">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attributeGroup ref="focus"></xs:attributeGroup>
+ <xs:attribute default="rect" name="shape"
type="Shape"></xs:attribute>
+ <xs:attribute name="coords"
type="Coords"></xs:attribute>
+ <xs:attribute name="href" type="URI"></xs:attribute>
+ <xs:attribute name="nohref">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="nohref"></xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute use="required" name="alt"
type="Text"></xs:attribute>
+ <xs:attribute name="target"
type="FrameTarget"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="base.content">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attribute name="id" type="ID"></xs:attribute>
+ <xs:attribute name="href" type="URI"></xs:attribute>
+ <xs:attribute name="target"
type="FrameTarget"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="basefont.content">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attribute name="id" type="ID" />
+ <xs:attribute use="required" name="size"
type="xs:anySimpleType" />
+ <xs:attribute name="color" type="Color" />
+ <xs:attribute name="face" type="xs:anySimpleType" />
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="br.content">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="coreattrs"></xs:attributeGroup>
+ <xs:attribute default="none" name="clear">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"></xs:enumeration>
+ <xs:enumeration value="all"></xs:enumeration>
+ <xs:enumeration value="right"></xs:enumeration>
+ <xs:enumeration value="none"></xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="col.content">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute default="1" name="span"
type="Number"></xs:attribute>
+ <xs:attribute name="width"
type="MultiLength"></xs:attribute>
+ <xs:attributeGroup ref="cellhalign"></xs:attributeGroup>
+ <xs:attributeGroup ref="cellvalign"></xs:attributeGroup>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="colgroup.content">
+ <xs:group ref="colgroup.children" />
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute default="1" name="span" type="Number"
/>
+ <xs:attribute name="width" type="MultiLength" />
+ <xs:attributeGroup ref="cellhalign" />
+ <xs:attributeGroup ref="cellvalign" />
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:group name="colgroup.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element maxOccurs="unbounded" minOccurs="0"
ref="col" />
+ <xs:group ref="cdk:structural" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+ <xs:complexType name="dir.content">
+ <xs:group ref="dir.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute ref="compact"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:group name="dir.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element maxOccurs="unbounded" minOccurs="0"
ref="li" />
+ <xs:group ref="cdk:structural" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+ <xs:complexType name="dl.content">
+ <xs:group ref="dl.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute ref="compact"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="dl.children">
+ <xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:element ref="dt" />
+ <xs:element ref="dd" />
+ <xs:group ref="cdk:structural" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="fieldset.content" mixed="true">
+ <xs:group ref="fieldset.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="fieldset.children">
+ <xs:sequence>
+ <xs:group ref="legend.element.group" />
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="block"></xs:group>
+ <xs:group ref="form.element.group" />
+ <xs:group ref="inline"></xs:group>
+ <xs:group ref="misc"></xs:group>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+
+ <xs:group name="legend.element.group">
+ <xs:choice>
+ <xs:element ref="legend"></xs:element>
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="head.content">
+ <xs:group ref="head.children" />
+ <xs:attributeGroup ref="i18n"></xs:attributeGroup>
+ <xs:attribute name="id" type="ID"></xs:attribute>
+ <xs:attribute name="profile"
type="URI"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="head.children">
+ <xs:sequence>
+ <xs:group ref="head.misc" />
+ <xs:choice>
+ <xs:sequence minOccurs="0">
+ <xs:element ref="title" />
+ <xs:group ref="head.misc" />
+ <xs:sequence minOccurs="0">
+ <xs:element ref="base" />
+ <xs:group ref="head.misc" />
+ </xs:sequence>
+ </xs:sequence>
+ <xs:sequence minOccurs="0">
+ <xs:element ref="base" />
+ <xs:group ref="head.misc" />
+ <xs:element ref="title" />
+ <xs:group ref="head.misc" />
+ </xs:sequence>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+
+ <xs:complexType name="hr.content">
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="align">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="left"></xs:enumeration>
+ <xs:enumeration value="center"></xs:enumeration>
+ <xs:enumeration value="right"></xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="noshade">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="noshade"></xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="size"
type="Pixels"></xs:attribute>
+ <xs:attribute name="width"
type="Length"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="html.content">
+ <xs:group ref="html.children" />
+ <xs:attributeGroup ref="i18n"></xs:attributeGroup>
+ <xs:attribute name="id" type="ID"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:group name="html.children">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="head" />
+ <xs:group maxOccurs="unbounded" minOccurs="0"
ref="cdk:structural" />
+ <xs:element minOccurs="0" ref="body" />
+ </xs:sequence>
+ </xs:group>
+ <xs:complexType name="img.content">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute use="required" name="src"
type="URI"></xs:attribute>
+ <xs:attribute use="required" name="alt"
type="Text"></xs:attribute>
+ <xs:attribute name="name"
type="NMTOKEN"></xs:attribute>
+ <xs:attribute name="longdesc"
type="URI"></xs:attribute>
+ <xs:attribute name="height"
type="Length"></xs:attribute>
+ <xs:attribute name="width"
type="Length"></xs:attribute>
+ <xs:attribute name="usemap" type="URI">
+ <xs:annotation></xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="ismap">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="ismap"></xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="align"
type="ImgAlign"></xs:attribute>
+ <xs:attribute name="border"
type="Length"></xs:attribute>
+ <xs:attribute name="hspace"
type="Pixels"></xs:attribute>
+ <xs:attribute name="vspace"
type="Pixels"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="input.content">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attributeGroup ref="focus"></xs:attributeGroup>
+ <xs:attribute default="text" name="type"
type="InputType"></xs:attribute>
+ <xs:attribute name="name" type="xs:anySimpleType">
+ <xs:annotation></xs:annotation>
+ </xs:attribute>
+ <xs:attribute name="value"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute ref="checked"></xs:attribute>
+ <xs:attribute ref="disabled"></xs:attribute>
+ <xs:attribute ref="readonly"></xs:attribute>
+ <xs:attribute name="size"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute name="maxlength"
type="Number"></xs:attribute>
+ <xs:attribute name="src" type="URI"></xs:attribute>
+ <xs:attribute name="alt"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute name="usemap" type="URI"></xs:attribute>
+ <xs:attribute name="onselect"
type="Script"></xs:attribute>
+ <xs:attribute name="onchange"
type="Script"></xs:attribute>
+ <xs:attribute name="accept"
type="ContentTypes"></xs:attribute>
+ <xs:attribute name="align"
type="ImgAlign"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="isindex.content">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="coreattrs"></xs:attributeGroup>
+ <xs:attributeGroup ref="i18n"></xs:attributeGroup>
+ <xs:attribute name="prompt"
type="Text"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="link.content">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute name="charset"
type="Charset"></xs:attribute>
+ <xs:attribute name="href" type="URI"></xs:attribute>
+ <xs:attribute name="hreflang"
type="LanguageCode"></xs:attribute>
+ <xs:attribute name="type"
type="ContentType"></xs:attribute>
+ <xs:attribute name="rel"
type="LinkTypes"></xs:attribute>
+ <xs:attribute name="rev"
type="LinkTypes"></xs:attribute>
+ <xs:attribute name="media"
type="MediaDesc"></xs:attribute>
+ <xs:attribute name="target"
type="FrameTarget"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="map.content">
+ <xs:group ref="map.children" />
+ <xs:attributeGroup ref="i18n"></xs:attributeGroup>
+ <xs:attributeGroup ref="events"></xs:attributeGroup>
+ <xs:attribute use="required" name="id"
type="ID"></xs:attribute>
+ <xs:attribute name="class"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute name="style"
type="StyleSheet"></xs:attribute>
+ <xs:attribute name="title" type="Text"></xs:attribute>
+ <xs:attribute name="name"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="map.children">
+ <xs:choice>
+ <xs:choice maxOccurs="unbounded">
+ <xs:group ref="block"></xs:group>
+ <xs:group ref="form.element.group" />
+ <xs:group ref="misc"></xs:group>
+ </xs:choice>
+ <xs:group ref="area.element.group" maxOccurs="unbounded" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="area.element.group">
+ <xs:choice>
+ <xs:element ref="area" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="menu.content">
+ <xs:group ref="menu.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute ref="compact"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="menu.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element maxOccurs="unbounded" minOccurs="0"
ref="li" />
+ <xs:group ref="cdk:structural" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="meta.content">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="i18n"></xs:attributeGroup>
+ <xs:attribute name="id" type="ID"></xs:attribute>
+ <xs:attribute name="http-equiv"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute name="name"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute use="required" name="content"
type="xs:anySimpleType">
+ </xs:attribute>
+ <xs:attribute name="scheme"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="object.content" mixed="true">
+ <xs:group ref="object.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute name="declare">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="declare"></xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="classid"
type="URI"></xs:attribute>
+ <xs:attribute name="codebase"
type="URI"></xs:attribute>
+ <xs:attribute name="data" type="URI"></xs:attribute>
+ <xs:attribute name="type"
type="ContentType"></xs:attribute>
+ <xs:attribute name="codetype"
type="ContentType"></xs:attribute>
+ <xs:attribute name="archive"
type="UriList"></xs:attribute>
+ <xs:attribute name="standby"
type="Text"></xs:attribute>
+ <xs:attribute name="height"
type="Length"></xs:attribute>
+ <xs:attribute name="width"
type="Length"></xs:attribute>
+ <xs:attribute name="usemap" type="URI"></xs:attribute>
+ <xs:attribute name="name"
type="NMTOKEN"></xs:attribute>
+ <xs:attribute name="tabindex"
type="Number"></xs:attribute>
+ <xs:attribute name="align"
type="ImgAlign"></xs:attribute>
+ <xs:attribute name="border"
type="Pixels"></xs:attribute>
+ <xs:attribute name="hspace"
type="Pixels"></xs:attribute>
+ <xs:attribute name="vspace"
type="Pixels"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="object.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:group ref="object.children.elements" />
+ <xs:group ref="block" />
+ <xs:group ref="inline" />
+ <xs:group ref="misc" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:group name="object.children.elements">
+ <xs:choice>
+ <xs:element ref="param" />
+ <xs:element ref="form" />
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="ol.content">
+ <xs:group ref="ol.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute name="type"
type="OLStyle"></xs:attribute>
+ <xs:attribute ref="compact"></xs:attribute>
+ <xs:attribute name="start"
type="Number"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="ol.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element maxOccurs="unbounded" minOccurs="0"
ref="li" />
+ <xs:group ref="cdk:structural" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="optgroup.content">
+ <xs:group ref="optgroup.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute ref="disabled"></xs:attribute>
+ <xs:attribute use="required" name="label"
type="Text"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="optgroup.children">
+ <xs:sequence>
+ <xs:element minOccurs="0" maxOccurs="unbounded"
ref="option" />
+ <xs:group ref="cdk:structural" />
+ </xs:sequence>
+ </xs:group>
+
+ <xs:complexType name="option.content" mixed="true">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute name="selected">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="selected"></xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute ref="disabled"></xs:attribute>
+ <xs:attribute name="label" type="Text"></xs:attribute>
+ <xs:attribute name="value"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="param.content">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attribute name="id" type="ID"></xs:attribute>
+ <xs:attribute use="required" name="name"
type="xs:anySimpleType">
+ </xs:attribute>
+ <xs:attribute name="value"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute default="data" name="valuetype">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="data"></xs:enumeration>
+ <xs:enumeration value="ref"></xs:enumeration>
+ <xs:enumeration value="object"></xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute name="type"
type="ContentType"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="script.content" mixed="true">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attribute name="id" type="ID"></xs:attribute>
+ <xs:attribute name="charset"
type="Charset"></xs:attribute>
+ <xs:attribute use="required" name="type"
type="ContentType"></xs:attribute>
+ <xs:attribute name="language"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute name="src" type="URI"></xs:attribute>
+ <xs:attribute name="defer">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="defer"></xs:enumeration>
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute fixed="preserve"
ref="xml:space"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="select.content">
+ <xs:group ref="select.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute name="name"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute name="size"
type="Number"></xs:attribute>
+ <xs:attribute name="multiple">
+ <xs:simpleType>
+ <xs:union>
+ <xs:simpleType>
+ <xs:restriction base="xs:token">
+ <xs:enumeration value="multiple" />
+ </xs:restriction>
+ </xs:simpleType>
+ <xs:simpleType>
+ <xs:restriction base="cdk:elMixedExpression" />
+ </xs:simpleType>
+ </xs:union>
+ </xs:simpleType>
+ </xs:attribute>
+ <xs:attribute ref="disabled"></xs:attribute>
+ <xs:attribute name="tabindex"
type="tabindexNumber"></xs:attribute>
+ <xs:attribute name="onfocus"
type="Script"></xs:attribute>
+ <xs:attribute name="onblur"
type="Script"></xs:attribute>
+ <xs:attribute name="onchange"
type="Script"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="select.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element ref="optgroup" />
+ <xs:element ref="option" />
+ <xs:group ref="cdk:structural" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="style.content" mixed="true">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="i18n"></xs:attributeGroup>
+ <xs:attribute name="id" type="ID"></xs:attribute>
+ <xs:attribute use="required" name="type"
type="ContentType"></xs:attribute>
+ <xs:attribute name="media"
type="MediaDesc"></xs:attribute>
+ <xs:attribute name="title" type="Text"></xs:attribute>
+ <xs:attribute fixed="preserve"
ref="xml:space"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="table.content">
+ <xs:group ref="table.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attribute name="summary"
type="Text"></xs:attribute>
+ <xs:attribute name="width"
type="Length"></xs:attribute>
+ <xs:attribute name="border"
type="Pixels"></xs:attribute>
+ <xs:attribute name="frame"
type="TFrame"></xs:attribute>
+ <xs:attribute name="rules"
type="TRules"></xs:attribute>
+ <xs:attribute name="cellspacing"
type="Length"></xs:attribute>
+ <xs:attribute name="cellpadding"
type="Length"></xs:attribute>
+ <xs:attribute name="align"
type="TAlign"></xs:attribute>
+ <xs:attribute name="bgcolor"
type="Color"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="table.children">
+ <xs:sequence>
+ <xs:element minOccurs="0" ref="caption" />
+ <xs:choice>
+ <xs:element minOccurs="0" maxOccurs="unbounded"
ref="col" />
+ <xs:element minOccurs="0" maxOccurs="unbounded"
ref="colgroup" />
+ </xs:choice>
+ <xs:element minOccurs="0" ref="thead" />
+ <xs:element minOccurs="0" ref="tfoot" />
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:choice>
+ <xs:group ref="cdk:structural" />
+ <xs:element minOccurs="0" maxOccurs="unbounded"
ref="tbody" />
+ <xs:element minOccurs="0" maxOccurs="unbounded"
ref="tr" />
+ </xs:choice>
+ </xs:choice>
+ </xs:sequence>
+ </xs:group>
+
+ <xs:complexType name="tbody.content">
+ <xs:group ref="tbody.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attributeGroup ref="cellhalign"></xs:attributeGroup>
+ <xs:attributeGroup ref="cellvalign"></xs:attributeGroup>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="tbody.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element maxOccurs="unbounded" minOccurs="0"
ref="tr" />
+ <xs:group ref="cdk:structural" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="textarea.content" mixed="true">
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attributeGroup ref="focus"></xs:attributeGroup>
+ <xs:attribute name="name"
type="xs:anySimpleType"></xs:attribute>
+ <xs:attribute use="required" name="rows"
type="Number"></xs:attribute>
+ <xs:attribute use="required" name="cols"
type="Number"></xs:attribute>
+ <xs:attribute ref="disabled"></xs:attribute>
+ <xs:attribute ref="readonly"></xs:attribute>
+ <xs:attribute name="onselect"
type="Script"></xs:attribute>
+ <xs:attribute name="onchange"
type="Script"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:complexType name="tfoot.content">
+ <xs:group ref="tfoot.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attributeGroup ref="cellhalign"></xs:attributeGroup>
+ <xs:attributeGroup ref="cellvalign"></xs:attributeGroup>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:group name="tfoot.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element maxOccurs="unbounded" minOccurs="0"
ref="tr" />
+ <xs:group ref="cdk:structural" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+ <xs:complexType name="thead.content">
+ <xs:group ref="thead.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attributeGroup ref="cellhalign"></xs:attributeGroup>
+ <xs:attributeGroup ref="cellvalign"></xs:attributeGroup>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+ <xs:group name="thead.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element maxOccurs="unbounded" minOccurs="0"
ref="tr" />
+ <xs:group ref="cdk:structural" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+ <xs:complexType name="title.content" mixed="true">
+ <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
+ <xs:attributeGroup ref="i18n"></xs:attributeGroup>
+ <xs:attribute name="id" type="ID"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:complexType name="tr.content">
+ <xs:group ref="tr.children" />
+ <xs:attributeGroup ref="attrs"></xs:attributeGroup>
+ <xs:attributeGroup ref="cellhalign"></xs:attributeGroup>
+ <xs:attributeGroup ref="cellvalign"></xs:attributeGroup>
+ <xs:attribute name="bgcolor"
type="Color"></xs:attribute>
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="tr.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element maxOccurs="unbounded" minOccurs="0"
ref="th" />
+ <xs:element maxOccurs="unbounded" minOccurs="0"
ref="td" />
+ <xs:group ref="cdk:structural" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+
+ <xs:complexType name="ul.content">
+ <xs:group ref="ul.children" />
+ <xs:attributeGroup ref="attrs" />
+ <xs:attribute name="type" type="ULStyle" />
+ <xs:attribute ref="compact" />
+ <xs:attributeGroup ref="cdk:core.attrs" />
+ </xs:complexType>
+
+ <xs:group name="ul.children">
+ <xs:choice>
+ <xs:choice minOccurs="0" maxOccurs="unbounded">
+ <xs:element maxOccurs="unbounded" minOccurs="0"
ref="li" />
+ <xs:group ref="cdk:structural" />
+ </xs:choice>
+ </xs:choice>
+ </xs:group>
+</xs:schema>
Deleted: root/cdk/trunk/plugins/generator/src/main/xsd/cdk-template.xsd
===================================================================
--- root/cdk/trunk/plugins/generator/src/main/xsd/cdk-template.xsd 2009-11-05 20:37:23 UTC
(rev 15844)
+++ root/cdk/trunk/plugins/generator/src/main/xsd/cdk-template.xsd 2009-11-06 00:27:52 UTC
(rev 15845)
@@ -1,96 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema
xmlns:xs="http://www.w3.org/2001/XMLSchema"
-
targetNamespace="http://richfaces.org/cdk"
xmlns="http://richfaces.org/cdk"
- elementFormDefault="qualified" attributeFormDefault="qualified"
-
xmlns:xhtml="http://richfaces.org/xhtml-el">
-
- <xs:simpleType name="elStrictExpression">
- <xs:restriction base="xs:string">
- <xs:pattern value="#\{[^\}]+\}" />
- </xs:restriction>
- </xs:simpleType>
-
- <xs:simpleType name="elMixedExpression">
- <xs:restriction base="xs:string">
- <xs:pattern value=".*#\{[^\}]+\}.*" />
- </xs:restriction>
- </xs:simpleType>
-
- <xs:simpleType name="elFreeformExpression">
- <xs:restriction base="xs:string" />
- </xs:simpleType>
-
- <xs:attributeGroup name="core.attrs">
- <xs:attribute name="passThroughWithExclusions"
type="xs:NMTOKENS" />
- </xs:attributeGroup>
-
- <xs:attributeGroup name="testGroup">
- <xs:attribute name="test" form="unqualified"
use="required" type="elStrictExpression" />
- </xs:attributeGroup>
-
- <xs:element name="root">
- <xs:complexType mixed="true">
- <xs:choice>
- <xs:any minOccurs="0" maxOccurs="unbounded" />
- </xs:choice>
- <xs:attribute name="class" type="xs:string"
form="unqualified" use="required" />
- <xs:attribute name="superclass" type="xs:string"
form="unqualified"/>
- <xs:attribute name="componentclass" type="xs:string"
form="unqualified" use="required" />
- </xs:complexType>
- </xs:element>
-
- <xs:group name="structural">
- <xs:choice>
- <xs:element name="body">
- <xs:complexType mixed="true">
- <xs:choice>
- <xs:any minOccurs="0" maxOccurs="unbounded" />
- </xs:choice>
- </xs:complexType>
- </xs:element>
- <xs:element ref="if" />
- <xs:element ref="choose" />
- <xs:element ref="call" />
- </xs:choice>
- </xs:group>
-
-
- <xs:element name="if">
- <xs:complexType mixed="true">
- <xs:choice>
- <xs:any minOccurs="0" maxOccurs="unbounded" />
- </xs:choice>
- <xs:attributeGroup ref="testGroup" />
- </xs:complexType>
- </xs:element>
- <xs:element name="choose">
- <xs:complexType>
- <xs:sequence>
- <xs:element maxOccurs="unbounded" name="when">
- <xs:complexType>
- <xs:choice>
- <xs:any minOccurs="0"
- maxOccurs="unbounded">
- </xs:any>
- </xs:choice>
- <xs:attributeGroup ref="testGroup" />
- </xs:complexType>
- </xs:element>
- <xs:element minOccurs="0" name="otherwise">
- <xs:complexType>
- <xs:choice>
- <xs:any minOccurs="0"
- maxOccurs="unbounded">
- </xs:any>
- </xs:choice>
- </xs:complexType>
- </xs:element>
- </xs:sequence>
- </xs:complexType>
- </xs:element>
- <xs:element name="call">
- <xs:complexType>
- <xs:attribute name="expression" form="unqualified" />
- </xs:complexType>
- </xs:element>
-</xs:schema>
Deleted: root/cdk/trunk/plugins/generator/src/main/xsd/xhtml-el.xsd
===================================================================
--- root/cdk/trunk/plugins/generator/src/main/xsd/xhtml-el.xsd 2009-11-05 20:37:23 UTC
(rev 15844)
+++ root/cdk/trunk/plugins/generator/src/main/xsd/xhtml-el.xsd 2009-11-06 00:27:52 UTC
(rev 15845)
@@ -1,3389 +0,0 @@
-<?xml version="1.0" encoding="UTF-8"?>
-<xs:schema version="1.0" xml:lang="en"
-
xmlns:xs="http://www.w3.org/2001/XMLSchema"
targetNamespace="http://richfaces.org/xhtml-el"
-
xmlns="http://richfaces.org/xhtml-el"
xmlns:xml="http://www.w3.org/XML/1998/namespace"
- elementFormDefault="qualified"
xmlns:cdk="http://richfaces.org/cdk">
-
- <xs:import schemaLocation="cdk-template.xsd"
namespace="http://richfaces.org/cdk" />
-
- <xs:annotation>
- <xs:documentation>
- XHTML 1.0 (Second Edition) Transitional in XML
- Schema
-
- This is the same as HTML 4 Transitional except for
- changes due
- to the differences between XML and SGML.
-
- Namespace =
-
http://www.w3.org/1999/xhtml
-
- For further information, see:
-
http://www.w3.org/TR/xhtml1
-
- Copyright (c) 1998-2002 W3C (MIT, INRIA,
- Keio),
- All Rights Reserved.
-
- The DTD version is identified by the PUBLIC
- and SYSTEM identifiers:
-
- PUBLIC "-//W3C//DTD XHTML 1.0
- Transitional//EN"
- SYSTEM
- "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd"
-
- $Id:
- xhtml1-transitional.xsd,v 1.5 2002/08/28 09:53:29 mimasa Exp $
- </xs:documentation>
- </xs:annotation>
-
- <xs:import
namespace="http://www.w3.org/XML/1998/namespace"
-
schemaLocation="http://www.w3.org/2001/xml.xsd" />
-
- <xs:annotation>
- <xs:documentation>
- ================ Character mnemonic entities
- =========================
-
- XHTML entity sets are identified by the
- PUBLIC and SYSTEM identifiers:
-
- PUBLIC "-//W3C//ENTITIES Latin 1 for
- XHTML//EN"
- SYSTEM "http://www.w3.org/TR/xhtml1/DTD/xhtml-lat1.ent"
-
- PUBLIC "-//W3C//ENTITIES Special for XHTML//EN"
- SYSTEM
- "http://www.w3.org/TR/xhtml1/DTD/xhtml-special.ent"
-
- PUBLIC
- "-//W3C//ENTITIES Symbols for XHTML//EN"
- SYSTEM
- "http://www.w3.org/TR/xhtml1/DTD/xhtml-symbol.ent"
- </xs:documentation>
- </xs:annotation>
-
- <xs:annotation>
- <xs:documentation>
- ================== Imported Names
- ====================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:simpleType name="ContentType">
- <xs:annotation>
- <xs:documentation>
- media type, as per [RFC2045]
- </xs:documentation>
- </xs:annotation>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="ContentTypes">
- <xs:annotation>
- <xs:documentation>
- comma-separated list of media types, as per
- [RFC2045]
- </xs:documentation>
- </xs:annotation>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="Charset">
- <xs:annotation>
- <xs:documentation>
- a character encoding, as per [RFC2045]
- </xs:documentation>
- </xs:annotation>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="Charsets">
- <xs:annotation>
- <xs:documentation>
- a space separated list of character encodings, as
- per [RFC2045]
- </xs:documentation>
- </xs:annotation>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="LanguageCode">
- <xs:annotation>
- <xs:documentation>
- a language code, as per [RFC3066]
- </xs:documentation>
- </xs:annotation>
- <xs:union memberTypes="xs:language cdk:elMixedExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="Character">
- <xs:annotation>
- <xs:documentation>
- a single character, as per section 2.2 of [XML]
- </xs:documentation>
- </xs:annotation>
- <!-- TODO test -->
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:length value="1" fixed="true" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:simpleType name="simpleType.Number">
- <xs:restriction base="xs:nonNegativeInteger">
- <xs:pattern value="[0-9]+" />
- </xs:restriction>
- </xs:simpleType>
-
- <xs:simpleType name="Number">
- <xs:annotation>
- <xs:documentation>
- one or more digits
- </xs:documentation>
- </xs:annotation>
- <xs:union memberTypes="simpleType.Number cdk:elMixedExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="tabindexNumber">
- <xs:annotation>
- <xs:documentation>
- tabindex attribute specifies the position of the
- current element
- in the tabbing order for the current document. This
- value must be
- a number between 0 and 32767. User agents should ignore
- leading
- zeros.
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="simpleType.Number">
- <xs:minInclusive value="0" />
- <xs:maxInclusive value="32767" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elMixedExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:simpleType name="LinkTypes">
- <xs:annotation>
- <xs:documentation>
- space-separated list of link types
- </xs:documentation>
- </xs:annotation>
- <xs:union memberTypes="xs:NMTOKENS cdk:elMixedExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="MediaDesc">
- <xs:annotation>
- <xs:documentation>
- single or comma-separated list of media descriptors
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="[^,]+(,\s*[^,]+)*" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:simpleType name="URI">
- <xs:annotation>
- <xs:documentation>
- a Uniform Resource Identifier, see [RFC2396]
- </xs:documentation>
- </xs:annotation>
- <xs:union memberTypes="xs:anyURI cdk:elMixedExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="UriList">
- <xs:annotation>
- <xs:documentation>
- a space separated list of Uniform Resource
- Identifiers
- </xs:documentation>
- </xs:annotation>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="Datetime">
- <xs:annotation>
- <xs:documentation>
- date and time information. ISO date format
- </xs:documentation>
- </xs:annotation>
- <xs:union memberTypes="xs:dateTime cdk:elMixedExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="Script">
- <xs:annotation>
- <xs:documentation>
- script expression
- </xs:documentation>
- </xs:annotation>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="StyleSheet">
- <xs:annotation>
- <xs:documentation>
- style sheet data
- </xs:documentation>
- </xs:annotation>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="Text">
- <xs:annotation>
- <xs:documentation>
- used for titles etc.
- </xs:documentation>
- </xs:annotation>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
-
- <xs:simpleType name="FrameTarget">
- <xs:annotation>
- <xs:documentation>
- render in this frame
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:NMTOKEN">
- <xs:pattern value="_(blank|self|parent|top)|[A-Za-z]\c*" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:simpleType name="Length">
- <xs:annotation>
- <xs:documentation>
- nn for pixels or nn% for percentage length
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="[-+]?(\d+|\d+(\.\d+)?%)" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:simpleType name="MultiLength">
- <xs:annotation>
- <xs:documentation>
- pixel, percentage, or relative
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="[-+]?(\d+|\d+(\.\d+)?%)|[1-9]?(\d+)?\*" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:simpleType name="Pixels">
- <xs:annotation>
- <xs:documentation>
- integer representing length in pixels
- </xs:documentation>
- </xs:annotation>
- <xs:union memberTypes="xs:nonNegativeInteger cdk:elMixedExpression" />
- </xs:simpleType>
-
- <xs:annotation>
- <xs:documentation>
- these are used for image maps
- </xs:documentation>
- </xs:annotation>
-
- <xs:simpleType name="Shape">
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="rect" />
- <xs:enumeration value="circle" />
- <xs:enumeration value="poly" />
- <xs:enumeration value="default" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:simpleType name="Coords">
- <xs:annotation>
- <xs:documentation>
- comma separated list of lengths
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern
value="[-+]?(\d+|\d+(\.\d+)?%)(,\s*[-+]?(\d+|\d+(\.\d+)?%))*" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:simpleType name="ImgAlign">
- <xs:annotation>
- <xs:documentation>
- used for object, applet, img, input and iframe
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="top" />
- <xs:enumeration value="middle" />
- <xs:enumeration value="bottom" />
- <xs:enumeration value="left" />
- <xs:enumeration value="right" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:simpleType name="Color">
- <xs:annotation>
- <xs:documentation>
- a color using sRGB: #RRGGBB as Hex values
-
- There are
- also 16 widely known color names with their sRGB values:
-
- Black =
- #000000 Green = #008000
- Silver = #C0C0C0 Lime = #00FF00
- Gray = #808080
- Olive = #808000
- White = #FFFFFF Yellow = #FFFF00
- Maroon = #800000 Navy
- = #000080
- Red = #FF0000 Blue = #0000FF
- Purple = #800080 Teal = #008080
- Fuchsia= #FF00FF Aqua = #00FFFF
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:string">
- <xs:pattern value="[A-Za-z]+|#[0-9A-Fa-f]{3}|#[0-9A-Fa-f]{6}" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <!-- TODO: add constraints -->
- <xs:simpleType name="ID">
- <xs:union memberTypes="xs:ID cdk:elMixedExpression" />
- </xs:simpleType>
- <xs:simpleType name="IDREF">
- <xs:union memberTypes="xs:IDREF cdk:elMixedExpression" />
- </xs:simpleType>
- <xs:simpleType name="IDREFS">
- <xs:union memberTypes="xs:IDREFS cdk:elMixedExpression" />
- </xs:simpleType>
- <xs:simpleType name="NMTOKEN">
- <xs:union memberTypes="xs:NMTOKEN cdk:elMixedExpression" />
- </xs:simpleType>
- <xs:simpleType name="NMTOKENS">
- <xs:union memberTypes="xs:NMTOKENS cdk:elMixedExpression" />
- </xs:simpleType>
-
- <xs:annotation>
- <xs:documentation>
- =================== Generic Attributes
- ===============================
- </xs:documentation>
- </xs:annotation>
-
- <xs:attributeGroup name="coreattrs">
- <xs:annotation>
- <xs:documentation>
- core attributes common to most elements
- id
- document-wide unique id
- class space separated list of classes
- style
- associated style info
- title advisory title/amplification
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="id" type="ID" />
- <xs:attribute name="class" type="NMTOKENS" />
- <xs:attribute name="style" type="StyleSheet" />
- <xs:attribute name="title" type="Text" />
- </xs:attributeGroup>
-
- <xs:simpleType name="simpleType.dir">
- <xs:restriction base="xs:token">
- <xs:enumeration value="ltr" />
- <xs:enumeration value="rtl" />
- </xs:restriction>
- </xs:simpleType>
-
- <xs:attributeGroup name="i18n">
- <xs:annotation>
- <xs:documentation>
- internationalization attributes
- lang language code
- (backwards compatible)
- xml:lang language code (as per XML 1.0 spec)
- dir direction for weak/neutral text
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="lang" type="LanguageCode" />
-
- <!-- TODO: xml:lang can be made EL -->
- <xs:attribute ref="xml:lang" />
- <xs:attribute name="dir">
- <xs:simpleType>
- <xs:union memberTypes="simpleType.dir cdk:elMixedExpression" />
- </xs:simpleType>
- </xs:attribute>
- </xs:attributeGroup>
-
- <xs:attributeGroup name="events">
- <xs:annotation>
- <xs:documentation>
- attributes for common UI events
- onclick a pointer
- button was clicked
- ondblclick a pointer button was double clicked
- onmousedown a pointer button was pressed down
- onmouseup a pointer
- button was released
- onmousemove a pointer was moved onto the element
- onmouseout a pointer was moved away from the element
- onkeypress a key
- was pressed and released
- onkeydown a key was pressed down
- onkeyup a
- key was released
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="onclick" type="Script" />
- <xs:attribute name="ondblclick" type="Script" />
- <xs:attribute name="onmousedown" type="Script" />
- <xs:attribute name="onmouseup" type="Script" />
- <xs:attribute name="onmouseover" type="Script" />
- <xs:attribute name="onmousemove" type="Script" />
- <xs:attribute name="onmouseout" type="Script" />
- <xs:attribute name="onkeypress" type="Script" />
- <xs:attribute name="onkeydown" type="Script" />
- <xs:attribute name="onkeyup" type="Script" />
- </xs:attributeGroup>
-
- <xs:attributeGroup name="focus">
- <xs:annotation>
- <xs:documentation>
- attributes for elements that can get the focus
- accesskey accessibility key character
- tabindex position in tabbing
- order
- onfocus the element got the focus
- onblur the element lost the
- focus
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="accesskey" type="Character" />
- <xs:attribute name="tabindex" type="tabindexNumber" />
- <xs:attribute name="onfocus" type="Script" />
- <xs:attribute name="onblur" type="Script" />
- </xs:attributeGroup>
-
- <xs:attributeGroup name="attrs">
- <xs:attributeGroup ref="coreattrs" />
- <xs:attributeGroup ref="i18n" />
- <xs:attributeGroup ref="events" />
- </xs:attributeGroup>
-
- <xs:attributeGroup name="TextAlign">
- <xs:annotation>
- <xs:documentation>
- text alignment for p, div, h1-h6. The default is
- align="left" for ltr headings, "right" for rtl
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="align">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="left" />
- <xs:enumeration value="center" />
- <xs:enumeration value="right" />
- <xs:enumeration value="justify" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- </xs:attributeGroup>
-
- <xs:annotation>
- <xs:documentation>
- =================== Text Elements
- ====================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:group name="special.extra">
- <xs:choice>
- <xs:element ref="object" />
- <xs:element ref="applet" />
- <xs:element ref="img" />
- <xs:element ref="map" />
- <xs:element ref="iframe" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="special.basic">
- <xs:choice>
- <xs:element ref="br" />
- <xs:element ref="span" />
- <xs:element ref="bdo" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="special">
- <xs:choice>
- <xs:group ref="special.basic" />
- <xs:group ref="special.extra" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="fontstyle.extra">
- <xs:choice>
- <xs:element ref="big" />
- <xs:element ref="small" />
- <xs:element ref="font" />
- <xs:element ref="basefont" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="fontstyle.basic">
- <xs:choice>
- <xs:element ref="tt" />
- <xs:element ref="i" />
- <xs:element ref="b" />
- <xs:element ref="u" />
- <xs:element ref="s" />
- <xs:element ref="strike" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="fontstyle">
- <xs:choice>
- <xs:group ref="fontstyle.basic" />
- <xs:group ref="fontstyle.extra" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="phrase.extra">
- <xs:choice>
- <xs:element ref="sub" />
- <xs:element ref="sup" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="phrase.basic">
- <xs:choice>
- <xs:element ref="em" />
- <xs:element ref="strong" />
- <xs:element ref="dfn" />
- <xs:element ref="code" />
- <xs:element ref="q" />
- <xs:element ref="samp" />
- <xs:element ref="kbd" />
- <xs:element ref="var" />
- <xs:element ref="cite" />
- <xs:element ref="abbr" />
- <xs:element ref="acronym" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="phrase">
- <xs:choice>
- <xs:group ref="phrase.basic" />
- <xs:group ref="phrase.extra" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="inline.forms">
- <xs:choice>
- <xs:element ref="input" />
- <xs:element ref="select" />
- <xs:element ref="textarea" />
- <xs:element ref="label" />
- <xs:element ref="button" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="misc.inline">
- <xs:annotation>
- <xs:documentation>
- these can only occur at block level
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:group ref="cdk:structural" />
- <xs:element ref="ins" />
- <xs:element ref="del" />
- <xs:element ref="script" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="misc">
- <xs:annotation>
- <xs:documentation>
- these can only occur at block level
- </xs:documentation>
- </xs:annotation>
- <xs:choice>
- <xs:group ref="misc.elements" />
- <xs:group ref="misc.inline" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="misc.elements">
- <xs:choice>
- <xs:element ref="noscript" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="inline">
- <xs:choice>
- <xs:group ref="inline.elements" />
- <xs:group ref="special" />
- <xs:group ref="fontstyle" />
- <xs:group ref="phrase" />
- <xs:group ref="inline.forms" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="inline.elements">
- <xs:choice>
- <xs:element ref="a" />
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="Inline" mixed="true">
- <xs:annotation>
- <xs:documentation>
- "Inline" covers inline or "text-level" element
- </xs:documentation>
- </xs:annotation>
- <xs:group ref="Inline.content" />
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="Inline.content">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="inline" />
- <xs:group ref="misc.inline" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:annotation>
- <xs:documentation>
- ================== Block level elements
- ==============================
- </xs:documentation>
- </xs:annotation>
-
- <xs:group name="heading">
- <xs:choice>
- <xs:element ref="h1" />
- <xs:element ref="h2" />
- <xs:element ref="h3" />
- <xs:element ref="h4" />
- <xs:element ref="h5" />
- <xs:element ref="h6" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="lists">
- <xs:choice>
- <xs:element ref="ul" />
- <xs:element ref="ol" />
- <xs:element ref="dl" />
- <xs:element ref="menu" />
- <xs:element ref="dir" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="blocktext">
- <xs:choice>
- <xs:element ref="pre" />
- <xs:element ref="hr" />
- <xs:element ref="blockquote" />
- <xs:element ref="address" />
- <xs:element ref="center" />
- <xs:element ref="noframes" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="block">
- <xs:choice>
- <xs:group ref="block.children" />
- <xs:group ref="heading" />
- <xs:group ref="lists" />
- <xs:group ref="blocktext" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="block.children">
- <xs:choice>
- <xs:element ref="p" />
- <xs:element ref="div" />
- <xs:element ref="isindex" />
- <xs:element ref="fieldset" />
- <xs:element ref="table" />
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="Flow" mixed="true">
- <xs:annotation>
- <xs:documentation>
- "Flow" mixes block and inline and is used for list
- items etc.
- </xs:documentation>
- </xs:annotation>
- <xs:group ref="Flow.children" />
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="Flow.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="block" />
- <xs:group ref="form.element.group" />
- <xs:group ref="inline" />
- <xs:group ref="misc" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:group name="form.element.group">
- <xs:choice>
- <xs:element ref="form" />
- </xs:choice>
- </xs:group>
-
- <xs:annotation>
- <xs:documentation>
- ================== Content models for exclusions
- =====================
- </xs:documentation>
- </xs:annotation>
-
- <xs:complexType name="a.content" mixed="true">
- <xs:group ref="a.children" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attributeGroup ref="focus"></xs:attributeGroup>
- <xs:attribute name="charset"
type="Charset"></xs:attribute>
- <xs:attribute name="type"
type="ContentType"></xs:attribute>
- <xs:attribute name="name"
type="NMTOKEN"></xs:attribute>
- <xs:attribute name="href" type="URI"></xs:attribute>
- <xs:attribute name="hreflang"
type="LanguageCode"></xs:attribute>
- <xs:attribute name="rel"
type="LinkTypes"></xs:attribute>
- <xs:attribute name="rev"
type="LinkTypes"></xs:attribute>
- <xs:attribute default="rect" name="shape"
type="Shape"></xs:attribute>
- <xs:attribute name="coords"
type="Coords"></xs:attribute>
- <xs:attribute name="target"
type="FrameTarget"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="a.children">
- <xs:choice>
- <xs:group ref="special"></xs:group>
- <xs:group ref="fontstyle"></xs:group>
- <xs:group ref="phrase"></xs:group>
- <xs:group ref="inline.forms"></xs:group>
- <xs:group ref="misc.inline"></xs:group>
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="pre.content" mixed="true">
- <xs:annotation>
- <xs:documentation>
- pre uses "Inline" excluding img, object, applet,
- big, small,
- font, or basefont
- </xs:documentation>
- </xs:annotation>
- <xs:group ref="pre.children" />
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="pre.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="a.element.group" />
- <xs:group ref="special.basic" />
- <xs:group ref="fontstyle.basic" />
- <xs:group ref="phrase.basic" />
- <xs:group ref="inline.forms" />
- <xs:group ref="misc.inline" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:group name="a.element.group">
- <xs:choice>
- <xs:element ref="a" />
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="form.content" mixed="true">
- <xs:annotation>
- <xs:documentation>
- form uses "Flow" excluding form
- </xs:documentation>
- </xs:annotation>
- <xs:group ref="form.children" />
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="form.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="block" />
- <xs:group ref="inline" />
- <xs:group ref="misc" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="button.content" mixed="true">
- <xs:annotation>
- <xs:documentation>
- button uses "Flow" but excludes a, form, form
- controls, iframe
- </xs:documentation>
- </xs:annotation>
- <xs:group ref="button.children" />
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="button.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="button.children.elements" />
- <xs:group ref="heading" />
- <xs:group ref="lists" />
- <xs:group ref="blocktext" />
- <xs:group ref="fontstyle" />
- <xs:group ref="phrase" />
- <xs:group ref="misc" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:group name="button.children.elements">
- <xs:choice>
- <xs:element ref="p" />
- <xs:element ref="div" />
- <xs:element ref="table" />
- <xs:element ref="br" />
- <xs:element ref="span" />
- <xs:element ref="bdo" />
- <xs:element ref="object" />
- <xs:element ref="applet" />
- <xs:element ref="img" />
- <xs:element ref="map" />
- </xs:choice>
- </xs:group>
-
- <xs:annotation>
- <xs:documentation>
- ================ Document Structure
- ==================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="html" type="html.content">
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- ================ Document Head
- =======================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:group name="head.misc">
- <xs:sequence>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:element ref="script" />
- <xs:element ref="style" />
- <xs:element ref="meta" />
- <xs:element ref="link" />
- <xs:element ref="object" />
- <xs:element ref="isindex" />
- </xs:choice>
- </xs:sequence>
- </xs:group>
-
- <xs:element name="head" type="head.content">
- <xs:annotation>
- <xs:documentation>
- content model is "head.misc" combined with a single
- title and an optional base element in any order
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="title" type="title.content">
- <xs:annotation>
- <xs:documentation>
- The title element is not considered part of the
- flow of text.
- It should be displayed, for example as the page header
- or
- window title. Exactly one title is required per document.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="base" type="base.content">
- <xs:annotation>
- <xs:documentation>
- document base URI
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="meta" type="meta.content">
- <xs:annotation>
- <xs:documentation>
- generic metainformation
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="link" type="link.content">
- <xs:annotation>
- <xs:documentation>
- Relationship values can be used in principle:
-
- a) for
- document specific toolbars/menus when used
- with the link element in
- document head e.g.
- start, contents, previous, next, index, end, help
- b) to link to a separate style sheet (rel="stylesheet")
- c) to make a
- link to a script (rel="script")
- d) by stylesheets to control how
- collections of
- html nodes are rendered into printed documents
- e) to
- make a link to a printable version of this document
- e.g. a PostScript
- or PDF version (rel="alternate" media="print")
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="style" type="style.content">
- <xs:annotation>
- <xs:documentation>
- style info, which may include CDATA sections
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="script" type="script.content">
- <xs:annotation>
- <xs:documentation>
- script statements, which may include CDATA sections
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="noscript">
- <xs:annotation>
- <xs:documentation>
- alternate content container for non script-based
- rendering
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- ======================= Frames
- =======================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="iframe">
- <xs:annotation>
- <xs:documentation>
- inline subwindow
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="coreattrs" />
- <xs:attribute name="longdesc" type="URI" />
- <xs:attribute name="name" type="NMTOKEN" />
- <xs:attribute name="src" type="URI" />
- <xs:attribute name="frameborder" default="1">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="1" />
- <xs:enumeration value="0" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="marginwidth" type="Pixels" />
- <xs:attribute name="marginheight" type="Pixels" />
- <xs:attribute name="scrolling" default="auto">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="yes" />
- <xs:enumeration value="no" />
- <xs:enumeration value="auto" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="align" type="ImgAlign" />
- <xs:attribute name="height" type="Length" />
- <xs:attribute name="width" type="Length" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="noframes">
- <xs:annotation>
- <xs:documentation>
- alternate content container for non frame-based
- rendering
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Document Body
- ====================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="body">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="onload" type="Script" />
- <xs:attribute name="onunload" type="Script" />
- <xs:attribute name="background" type="URI" />
- <xs:attribute name="bgcolor" type="Color" />
- <xs:attribute name="text" type="Color" />
- <xs:attribute name="link" type="Color" />
- <xs:attribute name="vlink" type="Color" />
- <xs:attribute name="alink" type="Color" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="div">
- <xs:annotation>
- <xs:documentation>
- generic language/style container
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- <xs:attributeGroup ref="TextAlign" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Paragraphs
- =======================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="p">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- <xs:attributeGroup ref="TextAlign" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Headings
- =========================================
-
- There are six levels of
- headings from h1 (the most important)
- to h6 (the least important).
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="h1">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- <xs:attributeGroup ref="TextAlign" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="h2">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- <xs:attributeGroup ref="TextAlign" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="h3">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- <xs:attributeGroup ref="TextAlign" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="h4">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- <xs:attributeGroup ref="TextAlign" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="h5">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- <xs:attributeGroup ref="TextAlign" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="h6">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- <xs:attributeGroup ref="TextAlign" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Lists
- ============================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:simpleType name="ULStyle">
- <xs:annotation>
- <xs:documentation>
- Unordered list bullet styles
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="disc" />
- <xs:enumeration value="square" />
- <xs:enumeration value="circle" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:attribute name="compact">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="compact" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
-
- <xs:element name="ul" type="ul.content">
- <xs:annotation>
- <xs:documentation>
- Unordered list
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:simpleType name="OLStyle">
- <xs:annotation>
- <xs:documentation>
- Ordered list numbering style
-
- 1 arabic numbers 1, 2,
- 3, ...
- a lower alpha a, b, c, ...
- A upper alpha A, B, C, ...
- i lower
- roman i, ii, iii, ...
- I upper roman I, II, III, ...
-
- The style is
- applied to the sequence number which by default
- is reset to 1 for the
- first list item in an ordered list.
- </xs:documentation>
- </xs:annotation>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
-
- <xs:element name="ol" type="ol.content">
- <xs:annotation>
- <xs:documentation>
- Ordered (numbered) list
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="menu" type="menu.content">
- <xs:annotation>
- <xs:documentation>
- single column list (DEPRECATED)
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="dir" type="dir.content">
- <xs:annotation>
- <xs:documentation>
- multiple column list (DEPRECATED)
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:simpleType name="LIStyle">
- <xs:annotation>
- <xs:documentation>
- LIStyle is constrained to: "(ULStyle|OLStyle)"
- </xs:documentation>
- </xs:annotation>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
-
- <xs:element name="li">
- <xs:annotation>
- <xs:documentation>
- list item
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="type" type="LIStyle" />
- <xs:attribute name="value" type="Number" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- definition lists - dt for term, dd for its
- definition
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="dl" type="dl.content" />
-
- <xs:element name="dt">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="dd">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Address
- ==========================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="address" type="address.content">
- <xs:annotation>
- <xs:documentation>
- information on author
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Horizontal Rule
- ==================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="hr" type="hr.content">
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Preformatted Text
- ================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="pre">
- <xs:annotation>
- <xs:documentation>
- content is "Inline" excluding
- "img|object|applet|big|small|sub|sup|font|basefont"
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="pre.content">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="width" type="Number" />
- <xs:attribute ref="xml:space" fixed="preserve" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Block-like Quotes
- ================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="blockquote">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="cite" type="URI" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Text alignment
- ===================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="center">
- <xs:annotation>
- <xs:documentation>
- center content
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Inserted/Deleted Text
- ============================
-
- ins/del are allowed in block and inline
- content, but its
- inappropriate to include block content within an ins
- element
- occurring in inline content.
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="ins">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="cite" type="URI" />
- <xs:attribute name="datetime" type="Datetime" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="del">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="cite" type="URI" />
- <xs:attribute name="datetime" type="Datetime" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- ================== The Anchor Element
- ================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="a" type="a.content">
- <xs:annotation>
- <xs:documentation>
- content is "Inline" except that anchors shouldn't
- be nested
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- ===================== Inline Elements
- ================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="span">
- <xs:annotation>
- <xs:documentation>
- generic language/style container
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="bdo">
- <xs:annotation>
- <xs:documentation>
- I18N BiDi over-ride
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="coreattrs" />
- <xs:attributeGroup ref="events" />
- <xs:attribute name="lang" type="LanguageCode" />
- <xs:attribute ref="xml:lang" />
- <xs:attribute name="dir" use="required">
- <xs:simpleType>
- <xs:union memberTypes="simpleType.dir cdk:elMixedExpression" />
- </xs:simpleType>
- </xs:attribute>
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="br" type="br.content">
- <xs:annotation>
- <xs:documentation>
- forced line break
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="em">
- <xs:annotation>
- <xs:documentation>
- emphasis
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="strong">
- <xs:annotation>
- <xs:documentation>
- strong emphasis
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="dfn">
- <xs:annotation>
- <xs:documentation>
- definitional
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="code">
- <xs:annotation>
- <xs:documentation>
- program code
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="samp">
- <xs:annotation>
- <xs:documentation>
- sample
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="kbd">
- <xs:annotation>
- <xs:documentation>
- something user would type
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="var">
- <xs:annotation>
- <xs:documentation>
- variable
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="cite">
- <xs:annotation>
- <xs:documentation>
- citation
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="abbr">
- <xs:annotation>
- <xs:documentation>
- abbreviation
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="acronym">
- <xs:annotation>
- <xs:documentation>
- acronym
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="q">
- <xs:annotation>
- <xs:documentation>
- inlined quote
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="cite" type="URI" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="sub">
- <xs:annotation>
- <xs:documentation>
- subscript
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="sup">
- <xs:annotation>
- <xs:documentation>
- superscript
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="tt">
- <xs:annotation>
- <xs:documentation>
- fixed pitch font
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="i">
- <xs:annotation>
- <xs:documentation>
- italic font
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="b">
- <xs:annotation>
- <xs:documentation>
- bold font
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="big">
- <xs:annotation>
- <xs:documentation>
- bigger font
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="small">
- <xs:annotation>
- <xs:documentation>
- smaller font
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="u">
- <xs:annotation>
- <xs:documentation>
- underline
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="s">
- <xs:annotation>
- <xs:documentation>
- strike-through
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="strike">
- <xs:annotation>
- <xs:documentation>
- strike-through
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="basefont" type="basefont.content">
- <xs:annotation>
- <xs:documentation>
- base font size
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="font">
- <xs:annotation>
- <xs:documentation>
- local change to font
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="coreattrs" />
- <xs:attributeGroup ref="i18n" />
- <xs:attribute name="size" />
- <xs:attribute name="color" type="Color" />
- <xs:attribute name="face" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- ==================== Object
- ======================================
-
- object is used to embed objects
- as part of HTML pages.
- param elements should precede other content.
- Parameters
- can also be expressed as attribute/value pairs on the
- object element itself when brevity is desired.
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="object" type="object.content" />
-
- <xs:element name="param" type="param.content">
- <xs:annotation>
- <xs:documentation>
- param is used to supply a named property value.
- In
- XML it would seem natural to follow RDF and support an
- abbreviated
- syntax where the param elements are replaced
- by attribute value pairs
- on the object start tag.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Java applet
- ==================================
-
- One of code or object attributes
- must be present.
- Place param elements before other content.
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="applet" type="applet.content">
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- =================== Images
- ===========================================
-
- To avoid accessibility
- problems for people who aren't
- able to see the image, you should
- provide a text
- description using the alt and longdesc attributes.
- In
- addition, avoid the use of server-side image maps.
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="img" type="img.content">
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- ================== Client-side image maps
- ============================
-
- These can be placed in the same document
- or grouped in a
- separate document although this isn't yet widely
- supported
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="map" type="map.content">
- </xs:element>
-
- <xs:element name="area" type="area.content">
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- ================ Forms
- ===============================================
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="form">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="form.content">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="action" use="required"
type="URI" />
- <xs:attribute name="method" default="get">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="get" />
- <xs:enumeration value="post" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="enctype" type="ContentType"
- default="application/x-www-form-urlencoded" />
- <xs:attribute name="onsubmit" type="Script" />
- <xs:attribute name="onreset" type="Script" />
- <xs:attribute name="accept" type="ContentTypes" />
- <xs:attribute name="accept-charset" type="Charsets" />
- <xs:attribute name="target" type="FrameTarget" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="label">
- <xs:annotation>
- <xs:documentation>
- Each label must not contain more than ONE field
- Label elements shouldn't be nested.
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="for" type="IDREF" />
- <xs:attribute name="accesskey" type="Character" />
- <xs:attribute name="onfocus" type="Script" />
- <xs:attribute name="onblur" type="Script" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:simpleType name="InputType">
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="text" />
- <xs:enumeration value="password" />
- <xs:enumeration value="checkbox" />
- <xs:enumeration value="radio" />
- <xs:enumeration value="submit" />
- <xs:enumeration value="reset" />
- <xs:enumeration value="file" />
- <xs:enumeration value="hidden" />
- <xs:enumeration value="image" />
- <xs:enumeration value="button" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:attribute name="checked">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="checked" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="disabled">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="disabled" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="readonly">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="readonly" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
-
- <xs:element name="input" type="input.content">
- <xs:annotation>
- <xs:documentation>
- form control
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="select" type="select.content">
- <xs:annotation>
- <xs:documentation>
- option selector
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="optgroup" type="optgroup.content">
- <xs:annotation>
- <xs:documentation>
- option group
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="option" type="option.content">
- <xs:annotation>
- <xs:documentation>
- selectable choice
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="textarea" type="textarea.content">
- <xs:annotation>
- <xs:documentation>
- multi-line text field
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="fieldset" type="fieldset.content">
- <xs:annotation>
- <xs:documentation>
- The fieldset element is used to group form fields.
- Only one legend element should occur in the content
- and if present
- should only be preceded by whitespace.
-
- NOTE: this content model is
- different from the XHTML 1.0 DTD,
- closer to the intended content
- model in HTML4 DTD
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:simpleType name="LAlign">
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="top" />
- <xs:enumeration value="bottom" />
- <xs:enumeration value="left" />
- <xs:enumeration value="right" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:element name="legend">
- <xs:annotation>
- <xs:documentation>
- fieldset label
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="accesskey" type="Character" />
- <xs:attribute name="align" type="LAlign" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="button">
- <xs:annotation>
- <xs:documentation>
- Content is "Flow" excluding a, form and form
- controls
- </xs:documentation>
- </xs:annotation>
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="button.content">
- <xs:attributeGroup ref="attrs" />
- <xs:attributeGroup ref="focus" />
- <xs:attribute name="name" />
- <xs:attribute name="value" />
- <xs:attribute name="type" default="submit">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="button" />
- <xs:enumeration value="submit" />
- <xs:enumeration value="reset" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute ref="disabled" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="isindex" type="isindex.content">
- <xs:annotation>
- <xs:documentation>
- single-line text input control (DEPRECATED)
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- ======================= Tables
- =======================================
-
- Derived from IETF HTML table
- standard, see [RFC1942]
- </xs:documentation>
- </xs:annotation>
-
- <xs:simpleType name="TFrame">
- <xs:annotation>
- <xs:documentation>
- The border attribute sets the thickness of the
- frame around the
- table. The default units are screen pixels.
-
- The frame
- attribute specifies which parts of the frame around
- the table should
- be rendered. The values are not the same as
- CALS to avoid a name
- clash with the valign attribute.
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="void" />
- <xs:enumeration value="above" />
- <xs:enumeration value="below" />
- <xs:enumeration value="hsides" />
- <xs:enumeration value="lhs" />
- <xs:enumeration value="rhs" />
- <xs:enumeration value="vsides" />
- <xs:enumeration value="box" />
- <xs:enumeration value="border" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:simpleType name="TRules">
- <xs:annotation>
- <xs:documentation>
- The rules attribute defines which rules to draw
- between cells:
-
- If rules is absent then assume:
- "none" if border is
- absent or border="0" otherwise "all"
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="none" />
- <xs:enumeration value="groups" />
- <xs:enumeration value="rows" />
- <xs:enumeration value="cols" />
- <xs:enumeration value="all" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:simpleType name="TAlign">
- <xs:annotation>
- <xs:documentation>
- horizontal placement of table relative to document
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="left" />
- <xs:enumeration value="center" />
- <xs:enumeration value="right" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:attributeGroup name="cellhalign">
- <xs:annotation>
- <xs:documentation>
- horizontal alignment attributes for cell contents
-
- char alignment char, e.g. char=':'
- charoff offset for alignment char
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="align">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="left" />
- <xs:enumeration value="center" />
- <xs:enumeration value="right" />
- <xs:enumeration value="justify" />
- <xs:enumeration value="char" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="char" type="Character" />
- <xs:attribute name="charoff" type="Length" />
- </xs:attributeGroup>
-
- <xs:attributeGroup name="cellvalign">
- <xs:annotation>
- <xs:documentation>
- vertical alignment attributes for cell contents
- </xs:documentation>
- </xs:annotation>
- <xs:attribute name="valign">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="top" />
- <xs:enumeration value="middle" />
- <xs:enumeration value="bottom" />
- <xs:enumeration value="baseline" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- </xs:attributeGroup>
-
- <xs:element name="table" type="table.content">
- </xs:element>
-
- <xs:simpleType name="CAlign">
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="top" />
- <xs:enumeration value="bottom" />
- <xs:enumeration value="left" />
- <xs:enumeration value="right" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elFreeformExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:element name="caption">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Inline">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="align" type="CAlign" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:annotation>
- <xs:documentation>
- Use thead to duplicate headers when breaking table
- across page boundaries, or for static headers when
- tbody sections are
- rendered in scrolling panel.
-
- Use tfoot to duplicate footers when
- breaking table
- across page boundaries, or for static footers when
- tbody sections are rendered in scrolling panel.
-
- Use multiple tbody
- sections when rules are needed
- between groups of table rows.
- </xs:documentation>
- </xs:annotation>
-
- <xs:element name="thead" type="thead.content">
- </xs:element>
-
- <xs:element name="tfoot" type="tfoot.content">
- </xs:element>
-
- <xs:element name="tbody" type="tbody.content">
- </xs:element>
-
- <xs:element name="colgroup" type="colgroup.content">
- <xs:annotation>
- <xs:documentation>
- colgroup groups a set of col elements. It allows
- you to group
- several semantically related columns together.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="col" type="col.content">
- <xs:annotation>
- <xs:documentation>
- col elements define the alignment properties for
- cells in
- one or more columns.
-
- The width attribute specifies the width
- of the columns, e.g.
-
- width=64 width in screen pixels
- width=0.5*
- relative width of 0.5
-
- The span attribute causes the attributes of one
- col element to apply to more than one column.
- </xs:documentation>
- </xs:annotation>
- </xs:element>
-
- <xs:element name="tr" type="tr.content">
- </xs:element>
-
- <xs:simpleType name="Scope">
- <xs:annotation>
- <xs:documentation>
- Scope is simpler than headers attribute for common
- tables
- </xs:documentation>
- </xs:annotation>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="row" />
- <xs:enumeration value="col" />
- <xs:enumeration value="rowgroup" />
- <xs:enumeration value="colgroup" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elMixedExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
-
- <xs:annotation>
- <xs:documentation>
- th is for headers, td for data and for cells acting
- as both
- </xs:documentation>
- </xs:annotation>
-
- <xs:attribute name="nowrap">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="nowrap" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elMixedExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
-
- <xs:element name="th">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="abbr" type="Text" />
- <xs:attribute name="axis" />
- <xs:attribute name="headers" type="IDREFS" />
- <xs:attribute name="scope" type="Scope" />
- <xs:attribute name="rowspan" default="1"
type="Number" />
- <xs:attribute name="colspan" default="1"
type="Number" />
- <xs:attributeGroup ref="cellhalign" />
- <xs:attributeGroup ref="cellvalign" />
- <xs:attribute ref="nowrap" />
- <xs:attribute name="bgcolor" type="Color" />
- <xs:attribute name="width" type="Length" />
- <xs:attribute name="height" type="Length" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:element name="td">
- <xs:complexType mixed="true">
- <xs:complexContent>
- <xs:extension base="Flow">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="abbr" type="Text" />
- <xs:attribute name="axis" />
- <xs:attribute name="headers" type="IDREFS" />
- <xs:attribute name="scope" type="Scope" />
- <xs:attribute name="rowspan" default="1"
type="Number" />
- <xs:attribute name="colspan" default="1"
type="Number" />
- <xs:attributeGroup ref="cellhalign" />
- <xs:attributeGroup ref="cellvalign" />
- <xs:attribute ref="nowrap" />
- <xs:attribute name="bgcolor" type="Color" />
- <xs:attribute name="width" type="Length" />
- <xs:attribute name="height" type="Length" />
- </xs:extension>
- </xs:complexContent>
- </xs:complexType>
- </xs:element>
-
- <xs:complexType name="address.content" mixed="true">
- <xs:group ref="address.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="address.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="inline"></xs:group>
- <xs:group ref="misc.inline"></xs:group>
- <xs:group ref="address.children.elements" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:group name="address.children.elements">
- <xs:choice>
- <xs:element ref="p" />
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="applet.content" mixed="true">
- <xs:group ref="applet.children" />
- <xs:attributeGroup ref="coreattrs"></xs:attributeGroup>
- <xs:attribute name="codebase"
type="URI"></xs:attribute>
- <xs:attribute name="archive"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute name="code"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute name="object"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute name="alt" type="Text"></xs:attribute>
- <xs:attribute name="name"
type="NMTOKEN"></xs:attribute>
- <xs:attribute use="required" name="width"
type="Length"></xs:attribute>
- <xs:attribute use="required" name="height"
type="Length"></xs:attribute>
- <xs:attribute name="align"
type="ImgAlign"></xs:attribute>
- <xs:attribute name="hspace"
type="Pixels"></xs:attribute>
- <xs:attribute name="vspace"
type="Pixels"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="applet.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="param.element.group" />
- <xs:group ref="block"></xs:group>
- <xs:group ref="form.element.group" />
- <xs:group ref="inline"></xs:group>
- <xs:group ref="misc"></xs:group>
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:group name="param.element.group">
- <xs:choice>
- <xs:element ref="param"></xs:element>
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="area.content">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attributeGroup ref="focus"></xs:attributeGroup>
- <xs:attribute default="rect" name="shape"
type="Shape"></xs:attribute>
- <xs:attribute name="coords"
type="Coords"></xs:attribute>
- <xs:attribute name="href" type="URI"></xs:attribute>
- <xs:attribute name="nohref">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="nohref"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute use="required" name="alt"
type="Text"></xs:attribute>
- <xs:attribute name="target"
type="FrameTarget"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="base.content">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attribute name="id" type="ID"></xs:attribute>
- <xs:attribute name="href" type="URI"></xs:attribute>
- <xs:attribute name="target"
type="FrameTarget"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="basefont.content">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attribute name="id" type="ID" />
- <xs:attribute use="required" name="size"
type="xs:anySimpleType" />
- <xs:attribute name="color" type="Color" />
- <xs:attribute name="face" type="xs:anySimpleType" />
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="br.content">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="coreattrs"></xs:attributeGroup>
- <xs:attribute default="none" name="clear">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="left"></xs:enumeration>
- <xs:enumeration value="all"></xs:enumeration>
- <xs:enumeration value="right"></xs:enumeration>
- <xs:enumeration value="none"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="col.content">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute default="1" name="span"
type="Number"></xs:attribute>
- <xs:attribute name="width"
type="MultiLength"></xs:attribute>
- <xs:attributeGroup ref="cellhalign"></xs:attributeGroup>
- <xs:attributeGroup ref="cellvalign"></xs:attributeGroup>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="colgroup.content">
- <xs:group ref="colgroup.children" />
- <xs:attributeGroup ref="attrs" />
- <xs:attribute default="1" name="span" type="Number"
/>
- <xs:attribute name="width" type="MultiLength" />
- <xs:attributeGroup ref="cellhalign" />
- <xs:attributeGroup ref="cellvalign" />
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:group name="colgroup.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element maxOccurs="unbounded" minOccurs="0"
ref="col" />
- <xs:group ref="cdk:structural" />
- </xs:choice>
- </xs:choice>
- </xs:group>
- <xs:complexType name="dir.content">
- <xs:group ref="dir.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute ref="compact"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:group name="dir.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element maxOccurs="unbounded" minOccurs="0"
ref="li" />
- <xs:group ref="cdk:structural" />
- </xs:choice>
- </xs:choice>
- </xs:group>
- <xs:complexType name="dl.content">
- <xs:group ref="dl.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute ref="compact"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="dl.children">
- <xs:choice>
- <xs:choice maxOccurs="unbounded">
- <xs:element ref="dt" />
- <xs:element ref="dd" />
- <xs:group ref="cdk:structural" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="fieldset.content" mixed="true">
- <xs:group ref="fieldset.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="fieldset.children">
- <xs:sequence>
- <xs:group ref="legend.element.group" />
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="block"></xs:group>
- <xs:group ref="form.element.group" />
- <xs:group ref="inline"></xs:group>
- <xs:group ref="misc"></xs:group>
- </xs:choice>
- </xs:sequence>
- </xs:group>
-
- <xs:group name="legend.element.group">
- <xs:choice>
- <xs:element ref="legend"></xs:element>
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="head.content">
- <xs:group ref="head.children" />
- <xs:attributeGroup ref="i18n"></xs:attributeGroup>
- <xs:attribute name="id" type="ID"></xs:attribute>
- <xs:attribute name="profile"
type="URI"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="head.children">
- <xs:sequence>
- <xs:group ref="head.misc" />
- <xs:choice>
- <xs:sequence minOccurs="0">
- <xs:element ref="title" />
- <xs:group ref="head.misc" />
- <xs:sequence minOccurs="0">
- <xs:element ref="base" />
- <xs:group ref="head.misc" />
- </xs:sequence>
- </xs:sequence>
- <xs:sequence minOccurs="0">
- <xs:element ref="base" />
- <xs:group ref="head.misc" />
- <xs:element ref="title" />
- <xs:group ref="head.misc" />
- </xs:sequence>
- </xs:choice>
- </xs:sequence>
- </xs:group>
-
- <xs:complexType name="hr.content">
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="align">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="left"></xs:enumeration>
- <xs:enumeration value="center"></xs:enumeration>
- <xs:enumeration value="right"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="noshade">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="noshade"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="size"
type="Pixels"></xs:attribute>
- <xs:attribute name="width"
type="Length"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="html.content">
- <xs:group ref="html.children" />
- <xs:attributeGroup ref="i18n"></xs:attributeGroup>
- <xs:attribute name="id" type="ID"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:group name="html.children">
- <xs:sequence>
- <xs:element minOccurs="0" ref="head" />
- <xs:group maxOccurs="unbounded" minOccurs="0"
ref="cdk:structural" />
- <xs:element minOccurs="0" ref="body" />
- </xs:sequence>
- </xs:group>
- <xs:complexType name="img.content">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute use="required" name="src"
type="URI"></xs:attribute>
- <xs:attribute use="required" name="alt"
type="Text"></xs:attribute>
- <xs:attribute name="name"
type="NMTOKEN"></xs:attribute>
- <xs:attribute name="longdesc"
type="URI"></xs:attribute>
- <xs:attribute name="height"
type="Length"></xs:attribute>
- <xs:attribute name="width"
type="Length"></xs:attribute>
- <xs:attribute name="usemap" type="URI">
- <xs:annotation></xs:annotation>
- </xs:attribute>
- <xs:attribute name="ismap">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="ismap"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="align"
type="ImgAlign"></xs:attribute>
- <xs:attribute name="border"
type="Length"></xs:attribute>
- <xs:attribute name="hspace"
type="Pixels"></xs:attribute>
- <xs:attribute name="vspace"
type="Pixels"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="input.content">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attributeGroup ref="focus"></xs:attributeGroup>
- <xs:attribute default="text" name="type"
type="InputType"></xs:attribute>
- <xs:attribute name="name" type="xs:anySimpleType">
- <xs:annotation></xs:annotation>
- </xs:attribute>
- <xs:attribute name="value"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute ref="checked"></xs:attribute>
- <xs:attribute ref="disabled"></xs:attribute>
- <xs:attribute ref="readonly"></xs:attribute>
- <xs:attribute name="size"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute name="maxlength"
type="Number"></xs:attribute>
- <xs:attribute name="src" type="URI"></xs:attribute>
- <xs:attribute name="alt"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute name="usemap" type="URI"></xs:attribute>
- <xs:attribute name="onselect"
type="Script"></xs:attribute>
- <xs:attribute name="onchange"
type="Script"></xs:attribute>
- <xs:attribute name="accept"
type="ContentTypes"></xs:attribute>
- <xs:attribute name="align"
type="ImgAlign"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="isindex.content">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="coreattrs"></xs:attributeGroup>
- <xs:attributeGroup ref="i18n"></xs:attributeGroup>
- <xs:attribute name="prompt"
type="Text"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="link.content">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute name="charset"
type="Charset"></xs:attribute>
- <xs:attribute name="href" type="URI"></xs:attribute>
- <xs:attribute name="hreflang"
type="LanguageCode"></xs:attribute>
- <xs:attribute name="type"
type="ContentType"></xs:attribute>
- <xs:attribute name="rel"
type="LinkTypes"></xs:attribute>
- <xs:attribute name="rev"
type="LinkTypes"></xs:attribute>
- <xs:attribute name="media"
type="MediaDesc"></xs:attribute>
- <xs:attribute name="target"
type="FrameTarget"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="map.content">
- <xs:group ref="map.children" />
- <xs:attributeGroup ref="i18n"></xs:attributeGroup>
- <xs:attributeGroup ref="events"></xs:attributeGroup>
- <xs:attribute use="required" name="id"
type="ID"></xs:attribute>
- <xs:attribute name="class"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute name="style"
type="StyleSheet"></xs:attribute>
- <xs:attribute name="title" type="Text"></xs:attribute>
- <xs:attribute name="name"
type="xs:anySimpleType"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="map.children">
- <xs:choice>
- <xs:choice maxOccurs="unbounded">
- <xs:group ref="block"></xs:group>
- <xs:group ref="form.element.group" />
- <xs:group ref="misc"></xs:group>
- </xs:choice>
- <xs:group ref="area.element.group" maxOccurs="unbounded" />
- </xs:choice>
- </xs:group>
-
- <xs:group name="area.element.group">
- <xs:choice>
- <xs:element ref="area" />
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="menu.content">
- <xs:group ref="menu.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute ref="compact"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="menu.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element maxOccurs="unbounded" minOccurs="0"
ref="li" />
- <xs:group ref="cdk:structural" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="meta.content">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="i18n"></xs:attributeGroup>
- <xs:attribute name="id" type="ID"></xs:attribute>
- <xs:attribute name="http-equiv"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute name="name"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute use="required" name="content"
type="xs:anySimpleType">
- </xs:attribute>
- <xs:attribute name="scheme"
type="xs:anySimpleType"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="object.content" mixed="true">
- <xs:group ref="object.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute name="declare">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="declare"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="classid"
type="URI"></xs:attribute>
- <xs:attribute name="codebase"
type="URI"></xs:attribute>
- <xs:attribute name="data" type="URI"></xs:attribute>
- <xs:attribute name="type"
type="ContentType"></xs:attribute>
- <xs:attribute name="codetype"
type="ContentType"></xs:attribute>
- <xs:attribute name="archive"
type="UriList"></xs:attribute>
- <xs:attribute name="standby"
type="Text"></xs:attribute>
- <xs:attribute name="height"
type="Length"></xs:attribute>
- <xs:attribute name="width"
type="Length"></xs:attribute>
- <xs:attribute name="usemap" type="URI"></xs:attribute>
- <xs:attribute name="name"
type="NMTOKEN"></xs:attribute>
- <xs:attribute name="tabindex"
type="Number"></xs:attribute>
- <xs:attribute name="align"
type="ImgAlign"></xs:attribute>
- <xs:attribute name="border"
type="Pixels"></xs:attribute>
- <xs:attribute name="hspace"
type="Pixels"></xs:attribute>
- <xs:attribute name="vspace"
type="Pixels"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="object.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:group ref="object.children.elements" />
- <xs:group ref="block" />
- <xs:group ref="inline" />
- <xs:group ref="misc" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:group name="object.children.elements">
- <xs:choice>
- <xs:element ref="param" />
- <xs:element ref="form" />
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="ol.content">
- <xs:group ref="ol.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute name="type"
type="OLStyle"></xs:attribute>
- <xs:attribute ref="compact"></xs:attribute>
- <xs:attribute name="start"
type="Number"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="ol.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element maxOccurs="unbounded" minOccurs="0"
ref="li" />
- <xs:group ref="cdk:structural" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="optgroup.content">
- <xs:group ref="optgroup.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute ref="disabled"></xs:attribute>
- <xs:attribute use="required" name="label"
type="Text"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="optgroup.children">
- <xs:sequence>
- <xs:element minOccurs="0" maxOccurs="unbounded"
ref="option" />
- <xs:group ref="cdk:structural" />
- </xs:sequence>
- </xs:group>
-
- <xs:complexType name="option.content" mixed="true">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute name="selected">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="selected"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute ref="disabled"></xs:attribute>
- <xs:attribute name="label" type="Text"></xs:attribute>
- <xs:attribute name="value"
type="xs:anySimpleType"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="param.content">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attribute name="id" type="ID"></xs:attribute>
- <xs:attribute use="required" name="name"
type="xs:anySimpleType">
- </xs:attribute>
- <xs:attribute name="value"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute default="data" name="valuetype">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="data"></xs:enumeration>
- <xs:enumeration value="ref"></xs:enumeration>
- <xs:enumeration value="object"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute name="type"
type="ContentType"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="script.content" mixed="true">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attribute name="id" type="ID"></xs:attribute>
- <xs:attribute name="charset"
type="Charset"></xs:attribute>
- <xs:attribute use="required" name="type"
type="ContentType"></xs:attribute>
- <xs:attribute name="language"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute name="src" type="URI"></xs:attribute>
- <xs:attribute name="defer">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="defer"></xs:enumeration>
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction
base="cdk:elMixedExpression"></xs:restriction>
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute fixed="preserve"
ref="xml:space"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="select.content">
- <xs:group ref="select.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute name="name"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute name="size"
type="Number"></xs:attribute>
- <xs:attribute name="multiple">
- <xs:simpleType>
- <xs:union>
- <xs:simpleType>
- <xs:restriction base="xs:token">
- <xs:enumeration value="multiple" />
- </xs:restriction>
- </xs:simpleType>
- <xs:simpleType>
- <xs:restriction base="cdk:elMixedExpression" />
- </xs:simpleType>
- </xs:union>
- </xs:simpleType>
- </xs:attribute>
- <xs:attribute ref="disabled"></xs:attribute>
- <xs:attribute name="tabindex"
type="tabindexNumber"></xs:attribute>
- <xs:attribute name="onfocus"
type="Script"></xs:attribute>
- <xs:attribute name="onblur"
type="Script"></xs:attribute>
- <xs:attribute name="onchange"
type="Script"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="select.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element ref="optgroup" />
- <xs:element ref="option" />
- <xs:group ref="cdk:structural" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="style.content" mixed="true">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="i18n"></xs:attributeGroup>
- <xs:attribute name="id" type="ID"></xs:attribute>
- <xs:attribute use="required" name="type"
type="ContentType"></xs:attribute>
- <xs:attribute name="media"
type="MediaDesc"></xs:attribute>
- <xs:attribute name="title" type="Text"></xs:attribute>
- <xs:attribute fixed="preserve"
ref="xml:space"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="table.content">
- <xs:group ref="table.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attribute name="summary"
type="Text"></xs:attribute>
- <xs:attribute name="width"
type="Length"></xs:attribute>
- <xs:attribute name="border"
type="Pixels"></xs:attribute>
- <xs:attribute name="frame"
type="TFrame"></xs:attribute>
- <xs:attribute name="rules"
type="TRules"></xs:attribute>
- <xs:attribute name="cellspacing"
type="Length"></xs:attribute>
- <xs:attribute name="cellpadding"
type="Length"></xs:attribute>
- <xs:attribute name="align"
type="TAlign"></xs:attribute>
- <xs:attribute name="bgcolor"
type="Color"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="table.children">
- <xs:sequence>
- <xs:element minOccurs="0" ref="caption" />
- <xs:choice>
- <xs:element minOccurs="0" maxOccurs="unbounded"
ref="col" />
- <xs:element minOccurs="0" maxOccurs="unbounded"
ref="colgroup" />
- </xs:choice>
- <xs:element minOccurs="0" ref="thead" />
- <xs:element minOccurs="0" ref="tfoot" />
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:choice>
- <xs:group ref="cdk:structural" />
- <xs:element minOccurs="0" maxOccurs="unbounded"
ref="tbody" />
- <xs:element minOccurs="0" maxOccurs="unbounded"
ref="tr" />
- </xs:choice>
- </xs:choice>
- </xs:sequence>
- </xs:group>
-
- <xs:complexType name="tbody.content">
- <xs:group ref="tbody.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attributeGroup ref="cellhalign"></xs:attributeGroup>
- <xs:attributeGroup ref="cellvalign"></xs:attributeGroup>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="tbody.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element maxOccurs="unbounded" minOccurs="0"
ref="tr" />
- <xs:group ref="cdk:structural" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="textarea.content" mixed="true">
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attributeGroup ref="focus"></xs:attributeGroup>
- <xs:attribute name="name"
type="xs:anySimpleType"></xs:attribute>
- <xs:attribute use="required" name="rows"
type="Number"></xs:attribute>
- <xs:attribute use="required" name="cols"
type="Number"></xs:attribute>
- <xs:attribute ref="disabled"></xs:attribute>
- <xs:attribute ref="readonly"></xs:attribute>
- <xs:attribute name="onselect"
type="Script"></xs:attribute>
- <xs:attribute name="onchange"
type="Script"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:complexType name="tfoot.content">
- <xs:group ref="tfoot.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attributeGroup ref="cellhalign"></xs:attributeGroup>
- <xs:attributeGroup ref="cellvalign"></xs:attributeGroup>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:group name="tfoot.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element maxOccurs="unbounded" minOccurs="0"
ref="tr" />
- <xs:group ref="cdk:structural" />
- </xs:choice>
- </xs:choice>
- </xs:group>
- <xs:complexType name="thead.content">
- <xs:group ref="thead.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attributeGroup ref="cellhalign"></xs:attributeGroup>
- <xs:attributeGroup ref="cellvalign"></xs:attributeGroup>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
- <xs:group name="thead.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element maxOccurs="unbounded" minOccurs="0"
ref="tr" />
- <xs:group ref="cdk:structural" />
- </xs:choice>
- </xs:choice>
- </xs:group>
- <xs:complexType name="title.content" mixed="true">
- <xs:group ref="cdk:structural" minOccurs="0"
maxOccurs="unbounded" />
- <xs:attributeGroup ref="i18n"></xs:attributeGroup>
- <xs:attribute name="id" type="ID"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:complexType name="tr.content">
- <xs:group ref="tr.children" />
- <xs:attributeGroup ref="attrs"></xs:attributeGroup>
- <xs:attributeGroup ref="cellhalign"></xs:attributeGroup>
- <xs:attributeGroup ref="cellvalign"></xs:attributeGroup>
- <xs:attribute name="bgcolor"
type="Color"></xs:attribute>
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="tr.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element maxOccurs="unbounded" minOccurs="0"
ref="th" />
- <xs:element maxOccurs="unbounded" minOccurs="0"
ref="td" />
- <xs:group ref="cdk:structural" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-
- <xs:complexType name="ul.content">
- <xs:group ref="ul.children" />
- <xs:attributeGroup ref="attrs" />
- <xs:attribute name="type" type="ULStyle" />
- <xs:attribute ref="compact" />
- <xs:attributeGroup ref="cdk:core.attrs" />
- </xs:complexType>
-
- <xs:group name="ul.children">
- <xs:choice>
- <xs:choice minOccurs="0" maxOccurs="unbounded">
- <xs:element maxOccurs="unbounded" minOccurs="0"
ref="li" />
- <xs:group ref="cdk:structural" />
- </xs:choice>
- </xs:choice>
- </xs:group>
-</xs:schema>