Cover Pages Logo SEARCH
Advanced Search
ABOUT
Site Map
CP RSS Channel
Contact Us
Sponsoring CP
About Our Sponsors

NEWS
Cover Stories
Articles & Papers
Press Releases

CORE STANDARDS
XML
SGML
Schemas
XSL/XSLT/XPath
XLink
XML Query
CSS
SVG

TECHNOLOGY REPORTS
XML Applications
General Apps
Government Apps
Academic Apps

EVENTS
LIBRARY
Introductions
FAQs
Bibliography
Technology and Society
Semantics
Tech Topics
Software
Related Standards
Historic

HP Service Framework Specification Schemas


From the HP Service Framework Specification, Part I, Version 2.0
URL: http://www.hpl.hp.com/techreports/2001/HPL-2001-138.pdf
Schemas and Example Documents


From Appendix A: Schemas and Example Documents

This section contains various schemas that are part of
the SFS specification but that have not been
put in the main text in order not to explode the main text.
It also contains additional examples.

XML Schema of the CDL language

<?xml version="1.0" ?>
<schema name="ConversationDefinition"
xmlns="http://www.w3.org/1999/XMLSchema"
xmlns:dt="http://www.w3.org/1999/XMLSchema-datatypes"
xmlns:conv="http://www.e-speak.net/schema/conversation"
targetNamespace="http://www.e-speak.net/schema/conversation"
elementFormDefault="unqualified"
attributeFormDefault="unqualified" >
<element name="InboundXMLDocument" dt:type="conv:XMLDocumentType"/>
<element name="OutboundXMLDocument" dt:type="conv:XMLDocumentType"/>
<element name="InboundXMLDocuments" >
<complexType>
<element ref="conv:InboundXMLDocument" minOccurs="1" 
maxOccurs="unbounded" />
</complexType>
</element>
<element name="OutboundXMLDocuments" >
<complexType>
<element ref="conv:OutboundXMLDocument" minOccurs="1" 
maxOccurs="unbounded"/>
</complexType>
</element>
<group name="ReceiveSendDocumentGroup">
<sequence>
<element ref="conv:InboundXMLDocuments" minOccurs="1" maxOccurs="1"/>
<element ref="conv:OutboundXMLDocuments" minOccurs="1" maxOccurs="1"/>
</sequence>
</group>
<group name="SendReceiveDocumentGroup">
<sequence>
<element ref="conv:OutboundXMLDocuments" minOccurs="1" maxOccurs="1"/>
<element ref="conv:InboundXMLDocuments" minOccurs="1" maxOccurs="1"/>
</sequence>
</group>
<group name="ReceiveDocumentGroup">
<sequence>
<element ref="conv:OutboundXMLDocuments" minOccurs="1" maxOccurs="1"/>
</sequence>
</group>
<group name="SendDocumentGroup">
<sequence>
<element ref="conv:InboundXMLDocuments" minOccurs="1" maxOccurs="1"/>
</sequence>
</group>
<element name="Interaction" >
<complexType>
<attribute name = "id" type="dt:ID" required="yes" use="required" />
<attribute name = "initialStep" type="dt:boolean" required="yes"/>
<attribute ref="conv:interactionType" required="yes" use="required" />
<choice>
<group ref="conv:ReceiveSendDocumentGroup" />
<group ref="conv:SendReceiveDocumentGroup" />
<group ref="conv:ReceiveDocumentGroup" />
<group ref="conv:SendDocumentGroup" />
</choice>
</complexType>
</element>
<element name="Transition" >
<complexType name="TransitionType">
<attribute name = "transitionType" use="default" value="Basic">
<simpleType base="dt:string">
<dt:enumeration value="Basic"/>
<dt:enumeration value="Default"/>
<dt:enumeration value="Exception"/>
</simpleType>
</attribute>
<element ref="conv:SourceInteraction" minOccurs="1" maxOccurs="1"/>
<element ref="conv:DestinationInteraction" minOccurs="1" maxOccurs="1"/>
<element ref="conv:TriggeringDocument" minOccurs="0" maxOccurs="1"/>
</complexType>
</element>
<element name="Conversation" >
<complexType>
<attribute name = "name" dt:type="dt:string" required="yes" 
use="required" />
<attribute name = "initialInteraction" dt:type="dt:IDREF" required="yes"
use="required" />
<element ref="conv:ConversationInteractions" minOccurs="1" maxOccurs="1"/>
<element ref="conv:ConversationTransitions" minOccurs="1" maxOccurs="1"
required="yes"/>
</complexType>
</element>
<element name="ConversationInteractions" >
<complexType>
<element ref="conv:Interaction" minOccurs="1" maxOccurs="unbounded"/>
</complexType>
</element>
<element name="ConversationTransitions" >
<complexType>
<element ref="conv:Transition" minOccurs="1" maxOccurs="unbounded"/>
</complexType>
</element>
<element name="SourceInteraction" >
<complexType dt:content="empty" >
<attribute name = "href" dt:type="dt:IDREF" use="required" />
</complexType>
</element>
<element name="DestinationInteraction" >
<complexType dt:content="empty" >
<attribute name = "href" dt:type="dt:IDREF" use="required" />
</complexType>
</element>
<element name="TriggeringDocument" >
<complexType dt:content="empty" >
<attribute name = "href" dt:type="dt:IDREF" use="required" />
</complexType>
</element>
<attribute name="interactionType" required="yes" use="required" >
<simpleType base="dt:string">
<enumeration value="SendReceive"/>
<enumeration value="ReceiveSend"/>
<enumeration value="Receive"/>
<enumeration value="Send"/>
</simpleType>
</attribute>
<complexType name="XMLDocumentType">
<attribute name = "id" dt:type="dt:ID" required="yes" use="required" />
<attribute name = "hrefSchema" dt:type="dt:uriReference" required="no"
use="optional" />
</complexType>
</schema>

Schema of the Service Descriptor document

<?xml version="1.0" encoding="UTF-8"?>
<schema xmlns="http://www.w3.org/2000/10/XMLSchema" 
elementFormDefault="quali-fied">
<element name="AccessPoint">
<complexType>
<attribute name="urlType" type="string" use="required"/>
</complexType>
</element>
<element name="AuthInfo">
<complexType/>
</element>
<element name="BindingTemplate">
<complexType>
<sequence>
<element ref="AccessPoint"/>
<element ref="tModelInstanceDetails"/>
</sequence>
</complexType>
</element>
<element name="BindingTemplates">
<complexType>
<element ref="BindingTemplate"/>
</complexType>
</element>
<element name="BusinessService">
<complexType>
<sequence>
<element ref="Name"/>
<element ref="Description"/>
<element ref="BindingTemplates"/>
<element ref="CategoryBag"/>
</sequence>
<attribute name="serviceKey" type="string" use="required"/>
<attribute name="businessKey" type="string" use="required"/>
</complexType>
</element>
<element name="CategoryBag">
<complexType>
<element ref="KeyedReference"/>
</complexType>
</element>
<element name="ConversationDefinition">
<complexType>
<attribute name="id" type="string" use="required"/>
<attribute name="href" type="string" use="required"/>
</complexType>
</element>
<element name="ConversationDefinitions">
<complexType>
<element ref="ConversationDefinition" maxOccurs="unbounded"/>
</complexType>
</element>
<element name="ConversationProcessMap">
<complexType>
<element ref="Map"/>
</complexType>
</element>
<element name="Description">
<complexType/>
</element>
<element name="KeyedReference">
<complexType>
<attribute name="tModelKey" type="string" use="required"/>
<attribute name="keyName" type="string" use="required"/>
<attribute name="keyValue" type="string" use="required"/>
</complexType>
</element>
<element name="Map">
<complexType>
<attribute name="conversation" type="string" use="required"/>
<attribute name="process" type="string" use="required"/>
</complexType>
</element>
<element name="Name">
<complexType/>
</element>
<element name="ProcessDefinition">
<complexType>
<attribute name="id" type="string" use="required"/>
<attribute name="href" type="uriReference" use="required"/>
</complexType>
</element>
<element name="ProcessDefinitions">
<complexType>
<element ref="ProcessDefinition" maxOccurs="unbounded"/>
</complexType>
</element>
<element name="ServiceDescriptor">
<complexType>
<sequence>
<element ref="ServiceProperty"/>
<element ref="ServiceVariable"/>
<element ref="ConversationDefinitions"/>
<element ref="ProcessDefinitions"/>
<element ref="ConversationProcessMap"/>
</sequence>
</complexType>
</element>
<element name="ServiceProperty">
<complexType>
<sequence>
<element ref="AuthInfo"/>
<element ref="BusinessService"/>
</sequence>
</complexType>
</element>
<element name="ServiceURI">
<complexType/>
</element>
<element name="ServiceURL">
<complexType/>
</element>
<element name="ServiceVariable">
<complexType>
<sequence>
<element ref="ServiceURL"/>
<element ref="ServiceURI"/>
</sequence>
</complexType>
</element>
<element name="tModelInstanceDetails">
<complexType>
<element ref="tModelInstanceInfo"/>
</complexType>
</element>
<element name="tModelInstanceInfo">
<complexType>
<sequence>
<element ref="Description"/>
<element ref="ConversationDefinition"/>
</sequence>
<attribute name="tModelKey" type="string" use="required"/>
<attribute name="lang" type="string" use="required"/>
</complexType>
</element>
</schema>

Prepared by Robin Cover for The XML Cover Pages archive. See: "Web Services Conversation Language (WSCL)."


Globe Image

Document URL: http://xml.coverpages.org/HP-SFS-Schemas.html