Skip to content

Instantly share code, notes, and snippets.

@zubairov
Forked from tfennelly/base-schema.xsd
Created February 25, 2011 12:34
Show Gist options
  • Save zubairov/843723 to your computer and use it in GitHub Desktop.
Save zubairov/843723 to your computer and use it in GitHub Desktop.
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:switchyard-config:switchyard:1.0"
xmlns:swyd="urn:switchyard-config:switchyard:1.0"
xmlns:sca="http://docs.oasis-open.org/ns/opencsa/sca/200912"
elementFormDefault="qualified">
<import namespace="http://docs.oasis-open.org/ns/opencsa/sca/200912"
schemaLocation="sca-1.1-cd06.xsd"/>
<element name="switchyard" type="swyd:SwitchYardType"/>
<complexType name="SwitchYardType">
<sequence>
<element ref="sca:composite" minOccurs="0" maxOccurs="1"/>
<element ref="swyd:transforms" minOccurs="0" maxOccurs="1"/>
</sequence>
<attribute name="name" type="string" use="optional"/>
<attribute name="targetNamespace" type="string" use="optional"/>
</complexType>
<element name="transforms" type="swyd:TransformsType"/>
<complexType name="TransformsType">
<sequence>
<element ref="swyd:transform" minOccurs="0" maxOccurs="unbounded"/>
</sequence>
</complexType>
<element name="transform" type="swyd:TransformType" abstract="true"/>
<complexType name="TransformType" abstract="true">
<attribute name="from" type="string" use="required"/>
<attribute name="to" type="string" use="required"/>
</complexType>
</schema>
<switchyard xmlns="urn:switchyard-config:switchyard:1.0">
   <transforms xmlns:trans="urn:switchyard-config:transform:1.0">
       <trans:transform.java from="msgA" to="msgB" class="org.examples.transform.AtoBTransform"/>
       <trans:transform.smooks from="msgC" to="msgD" config="" />
   </transforms>
</switchyard>
<schema xmlns="http://www.w3.org/2001/XMLSchema"
targetNamespace="urn:switchyard-config:transform:1.0"
xmlns:swyd="urn:switchyard-config:switchyard:1.0"
xmlns:trfm="urn:switchyard-config:transform:1.0"
elementFormDefault="qualified">
<import namespace="urn:switchyard-config:switchyard:1.0"
schemaLocation="file:///whatever"/>
<element name="transform.java" type="trfm:JavaTransformType" substitutionGroup="swyd:transform"/>
<complexType name="JavaTransformType">
<annotation>
<documentation xml:lang="en">
Generic/Custom Java Transformer Configuration.
</documentation>
</annotation>
<complexContent>
<extension base="swyd:TransformType">
<attribute name="class" type="string" use="required">
<annotation>
<documentation xml:lang="en">
The name of the Java Transformer implementation class.
</documentation>
</annotation>
</attribute>
</extension>
</complexContent>
</complexType>
<element name="transform.smooks" type="trfm:SmooksTransformType" substitutionGroup="swyd:transform"/>
<complexType name="SmooksTransformType">
<annotation>
<documentation xml:lang="en">
Smooks Transformer Configuration.
</documentation>
</annotation>
<complexContent>
<extension base="swyd:TransformType">
<attribute name="config" type="string" use="required">
<annotation>
<documentation xml:lang="en">
Smooks Configuration file path.
</documentation>
</annotation>
</attribute>
<attribute name="reportPath" type="string" use="optional">
<annotation>
<documentation xml:lang="en">
Smooks Execution Report filesystem path.
<p/>
An Execution Report is a HTML file showing how all the input message
fragments were processed by Smooks, including the contents of the Smooks
ExecutionContext at each stage in the processing.
<p/>
Use for debug purposes only. Adds significant processing overhead.
</documentation>
</annotation>
</attribute>
</extension>
</complexContent>
</complexType>
</schema>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment