[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: Re: [wsrm] adding extensibility to the empy type
Doug Bunting wrote: > Tom, > > Yes, this would provide better extensibility. The immediate question > is where we need to allow such extensibility? I doubt every element > needs this support though it is definitely necessary for more than > just our top-level SOAP headers. I see little use for this in (for > example), the MessageId and SequenceNum elements but they can be > defined easily without relying on EmptyType. > > To go a bit further, I would define three general element types for > use throughout the schema, EmptyType, ExtensibleType and HeaderType > (or something similar), and use those as appropriate. EmptyType > should be the type of our simplest "pseudo Boolean" elements and never > extended. HeaderType would be the base for our four SOAP header > elements. ExtensibleType would be the base of all other elements which > are extensible (it could also be the base for HeaderType); elements > which are not extensible or empty would be defined without an explicit > base type. The latest proposed schema I posted has two types, headerBaseType and extensibleBaseType. There is no base type for simple types in this schema. Tom Rutt > > > Less importantly and more generally (about the schema as a whole and a > long standing question I have forgotten to ask), this model puts all > extension content (new elements) at the beginning of the WSRM > elements. This is counter-intuitive though I realise it comes from > the use of schema type extensions rather than consistent placement of > xsd:any at the end of every "interesting" complex type. For example, > an extended MessageHeader would (today) appear as: > > <wsrm:MessageHeader soap:mustUnderstand="1"> > <foo:bar letsGoToTheBar="yeah" /> > <wsrm:MessageId ... /> > <wsrm:ExpiryTime ... /> > <wsrm:ReplyPattern ... /> > </wsrm:MessageHeader> > > rather than something that appears extended: > > <wsrm:MessageHeader soap:mustUnderstand="1"> > <wsrm:MessageId ... /> > <wsrm:ExpiryTime ... /> > <wsrm:ReplyPattern ... /> > <foo:bar letsGoToTheBar="yeah" /> > </wsrm:MessageHeader> > > Should we change our choice here? > > This also reminds me of another schema nit: Why is the existing > extensible type (the one with the required soap:mustUnderstand) named > wsrm:RmBaseType, I thought we nuked all of the "Rm" prefixes? I > purposefully chose HeaderType above to work around this complaint. > > thanx, > doug > > On 20-Feb-04 12:09, Tom Rutt wrote: > >> Would the following change to the empy type provide better >> extensibility for the protocol? >> >> <xsd:complexType name="EmptyType"> >> <xsd:sequence> >> <xsd:any namespace="##other" processContents="lax" >> minOccurs="0" maxOccurs="unbounded"/> >> </xsd:sequence> >> <xsd:anyAttribute namespace="##other" processContents="lax"/> >> </xsd:complexType> >> >> The above prosal adds extensible attributes and elements , without >> the soap must understand attribute which is there for header elements. > > > > To unsubscribe from this mailing list (and be removed from the roster > of the OASIS TC), go to > http://www.oasis-open.org/apps/org/workgroup/wsrm/members/leave_workgroup.php. > > -- ---------------------------------------------------- Tom Rutt email: tom@coastin.com; trutt@fsw.fujitsu.com Tel: +1 732 801 5744 Fax: +1 732 774 5133
[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]