summaryrefslogtreecommitdiffstats
path: root/test/w3c/schema/scxml.xsd
diff options
context:
space:
mode:
Diffstat (limited to 'test/w3c/schema/scxml.xsd')
-rw-r--r--test/w3c/schema/scxml.xsd88
1 files changed, 88 insertions, 0 deletions
diff --git a/test/w3c/schema/scxml.xsd b/test/w3c/schema/scxml.xsd
new file mode 100644
index 0000000..fb69c75
--- /dev/null
+++ b/test/w3c/schema/scxml.xsd
@@ -0,0 +1,88 @@
+<?xml version="1.0" encoding="UTF-8"?>
+<xsd:schema xmlns:xsd="http://www.w3.org/2001/XMLSchema"
+ targetNamespace="http://www.w3.org/2005/07/scxml"
+ xmlns="http://www.w3.org/2005/07/scxml"
+ elementFormDefault="qualified">
+
+ <xsd:annotation>
+ <xsd:documentation>
+ This is the XML Schema driver for SCXML 1.0.
+ Please use this namespace for SCXML 1.0 elements:
+
+ "http://www.w3.org/2005/07/scxml"
+
+ </xsd:documentation>
+ <xsd:documentation source="scxml-copyright.xsd"/>
+ </xsd:annotation>
+ <xsd:annotation>
+ <xsd:documentation>
+ This is the XML Schema driver file for SCXML 1.0.
+
+ This schema:
+ + sets the namespace for SCXML 1.0
+ + imports external schemas (xml.xsd)
+ + imports SCXML common datatypes, attributes and content models
+ + imports modular schemas
+
+ SCXML 1.0 includes:
+ + SCXML core constructs
+ + SCXML executable content
+ + SCXML data model and manipulation
+ + SCXML external communications
+
+ This schema is permissive such that it accomodates all
+ datamodels, but validating documents may contain markup that
+ is ignored in certain datamodels.
+ </xsd:documentation>
+ </xsd:annotation>
+
+ <xsd:import namespace="http://www.w3.org/XML/1998/namespace" schemaLocation="xml.xsd">
+ <xsd:annotation>
+ <xsd:documentation>
+ This import brings in the XML namespace attributes
+ The XML attributes are used by various modules.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:import>
+
+<xsd:include schemaLocation="scxml-module-core.xsd">
+ <xsd:annotation>
+ <xsd:documentation>
+ This imports the core elements for SCXML.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:include>
+
+ <xsd:include schemaLocation="scxml-module-data.xsd">
+ <xsd:annotation>
+ <xsd:documentation>
+ This imports the data modelelements for SCXML.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:include>
+
+ <xsd:include schemaLocation="scxml-module-external.xsd">
+ <xsd:annotation>
+ <xsd:documentation>
+ This imports the external communications elements for SCXML.
+ </xsd:documentation>
+ </xsd:annotation>
+ </xsd:include>
+
+<!-- the various elements of executable content are defined in the relevant modules.
+This gathers them up into a single type -->
+ <xsd:group name="scxml.core.executablecontent">
+ <xsd:choice>
+ <xsd:group ref="scxml.extra.content" minOccurs="0" maxOccurs="unbounded"/>
+ <xsd:element ref="raise"/>
+ <xsd:element ref="if"/>
+ <xsd:element ref="foreach"/>
+ <xsd:element ref="send"/>
+ <xsd:element ref="script"/>
+ <xsd:element ref="assign"/>
+ <xsd:element ref="log"/>
+ <xsd:element ref="cancel"/>
+ </xsd:choice>
+ </xsd:group>
+
+</xsd:schema>