OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

ebxml-transport message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]


Subject: DTD, XSD and sample XML header docs


All,

Okay, I've been meaning to get this done for a while now.

Here are the "level1" DTD, XSD and sample XML documents
based on the "published" header spec.

Your comments and feedback are welcomed. I have added a
few annotations to spice things up a bit and generate some
discussion.

Most notably:
	- do we need ReliableMessagingInfo if we have a TSLA
	- Should the PartyId be expressed as elements or as
	follows:
		<!ELEMENT PartyId (#PCDATA)>
		<!ATTLIST PartyId context CDATA "Undefined">
	or optionally:
		<!ELEMENT PartyId #EMPTY>
		<!ATTLIST PartyId 
			context CDATA "Undefined"
			uri CDATA #REQUIRED>
	of course, URI should have its own built-in context, so it
	isn't clear that the context attribute adds any value. 
		e.g. uri:duns:12345

Anyway, keep those cards and letters coming;-)

Chris


	
-- 
    _/_/_/_/ _/    _/ _/    _/ Christopher Ferris - Enterprise Architect
   _/       _/    _/ _/_/  _/  Phone: 781-442-3063 or x23063
  _/_/_/_/ _/    _/ _/ _/ _/   Email: chris.ferris@East.Sun.COM
       _/ _/    _/ _/  _/_/    Sun Microsystems,  Mailstop: UBUR03-313
_/_/_/_/  _/_/_/  _/    _/     1 Network Drive Burlington, MA 01803-0903

level1.dtd

<?xml version ="1.0"?>
<!--Generated by XML Authority. Conforms to w3c http://www.w3.org/1999/XMLSchema-->
<schema xmlns = "http://www.w3.org/1999/XMLSchema">
	<element name = "MessageHeader">
		<complexType content = "elementOnly">
			<sequence>
				<element ref = "ServiceType"/>
				<element ref = "Intent"/>
				<element ref = "MessageSetData"/>
				<element ref = "MessageData"/>
				<element ref = "TransportSLAId"/>
				<element ref = "From"/>
				<element ref = "To"/>
				<element ref = "ReliableMessagingInfo"/>
				<element ref = "MessageManifest"/>
			</sequence>
			<attribute name = "Version" use = "fixed" value = "1.0" type = "string"/>
			<attribute name = "MessageType" use = "required">
				<simpleType base = "ENUMERATION">
					<enumeration value = "Normal"/>
					<enumeration value = "Acknowledgment"/>
					<enumeration value = "Error"/>
				</simpleType>
			</attribute>
		</complexType>
	</element>
	
	<element name = "ServiceType" type = "string"/>
	<element name = "Intent" type = "string"/>
	<element name = "MessageSetData">
		<complexType content = "elementOnly">
			<sequence>
				<element ref = "MessageSetId"/>
			</sequence>
		</complexType>
	</element>
	
	<element name = "MessageData">
		<complexType content = "elementOnly">
			<sequence>
				<element ref = "MessageId"/>
				<element ref = "TimeStamp"/>
				<element ref = "RefMessageId" minOccurs = "0" maxOccurs = "1"/>
			</sequence>
		</complexType>
	</element>
	
	<element name = "RefMessageId" type = "uuid"/>
	<element name = "MessageSetId" type = "uuid"/>
	<element name = "TimeStamp" type = "dateTime"/>
	<element name = "MessageId" type = "uuid"/>
	<element name = "TransportSLAId" type = "uri">
		<annotation>
			<appInfo>CBF: Are we in agreement that this is a URI?</appInfo>
		</annotation>
	</element>
	
	<element name = "From">
		<complexType content = "elementOnly">
			<sequence>
				<element ref = "PartyId"/>
			</sequence>
		</complexType>
	</element>
	
	<element name = "To">
		<complexType content = "elementOnly">
			<sequence>
				<element ref = "PartyId"/>
			</sequence>
		</complexType>
	</element>
	
	<element name = "PartyId">
		<complexType content = "elementOnly">
			<annotation>
				<appInfo>CBF: I'm not really thrilled with this construct. I think that I would
prefer that AddressContext be an attribute and the address the element
content.</appInfo>
			</annotation>
			<sequence>
				<element ref = "AddressContext" minOccurs = "0" maxOccurs = "1"/>
				<element ref = "Address"/>
			</sequence>
		</complexType>
	</element>
	
	<element name = "AddressContext" type = "string"/>
	<element name = "Address" type = "uri"/>
	<element name = "ReliableMessagingInfo">
		<complexType content = "empty">
			<annotation>
				<appInfo>CBF: It isn't clear that this is needed if we have a TSLA.</appInfo>
			</annotation>
			<attribute name = "DeliverySemantics" use = "fixed" value = "Undefined">
				<simpleType base = "ENUMERATION">
					<enumeration value = "AtMostOnce"/>
					<enumeration value = "AtLeastOnce"/>
					<enumeration value = "ExactlyOnce"/>
					<enumeration value = "Undefined"/>
				</simpleType>
			</attribute>
		</complexType>
	</element>
	
	<element name = "MessageManifest">
		<complexType content = "elementOnly">
			<annotation>
				<documentation>CBF: REQUIRED!</documentation>
			</annotation>
			<sequence minOccurs = "1" maxOccurs = "unbounded">
				<element ref = "DocumentReference"/>
			</sequence>
		</complexType>
	</element>
	
	<element name = "DocumentReference">
		<complexType content = "elementOnly">
			<sequence minOccurs = "1" maxOccurs = "unbounded">
				<element ref = "DocType"/>
				<element ref = "DocId"/>
			</sequence>
		</complexType>
	</element>
	
	<element name = "DocType" type = "string">
		<annotation>
			<appInfo>We should consider this as being a string representing a doctype.</appInfo>
		</annotation>
	</element>
	
	<element name = "DocId" type = "uuid">
		<annotation>
			<documentation>This should be the ContextID of the mime part</documentation>
		</annotation>
	</element>
	
</schema>

level1.xml



[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [Elist Home]

Search: Match: Sort by:
Words: | Help


Powered by eList eXpress LLC