[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: ISSUE 76: binding.ws schema uses ##any instead of ##other - proposal
Here's a proposal for ISSUE 76  ready for review today. It's called v4 because it has iterated inside IBM, but this is the first document based proposal that the TC has seen.
(See attached file: sca-binding-ws-1.1-spec-cd02-rev3_issue76v4.doc)
As part of making the changes for this issue, I did some "testing", ok, playing with the schemas and Eclipse 3.4 to ensure that the schemas are working as we expect. The schema tests are based on the CD03 Assembly schemas in the OASIS SVN repository. I had to modify them for these tests, but I have not committed the modifications to SVN. The changes are just in my eclipse workspace.
(1) To address the questions of schema extensibility, I think the binding ws schema should look like this (which is what's in the proposal). I removed the <anyAttribute>, removed the <wireFormat> and <operationSelector> and fixed the EndpointReferenceType.
(See attached file: sca-binding-ws-1.1-cd02.xsd)
(a) (See attached file: test1.xml)- verifies that attribute and element extensibility work as I think they should. Eclipse reports no errors. If one were to modify the binding ws schema to remove the <any>, this xml file will become invalid. Also, note that attribute extensibility works without the anyAttribute in the binding ws schema.
(b)(See attached file: test2.xml) - verifies that out of place element extensions are flagged as an error. <other:fred/> is in error.
(c)(See attached file: test3.xml)- verifies that attributes without namespace qualification are treated as part of the SCA namespace and flagged as an error. @ubi is in error.
(d) (See attached file: test4.xml)- This is the most interesting test. I updated the base assembly schema to make the wireFormat element abstract.
<!-- WireFormat Type -->
<element name="wireFormat" type="sca:WireFormatType" abstract="true"/>
<complexType name="WireFormatType" abstract="true">
<any namespace="##other" processContents="lax" minOccurs="0"
<anyAttribute namespace="##other" processContents="lax"/>
Eclipse did NOT flag the <wireFormat/> element in error as presumed by the previous TC discussion. I can't make heads or tails out of the schema spec, maybe one of you can explain this?
STSM, BPM and SCA Architecture
Co-Chair OASIS SCA-Policy TC and SCA-J TC
"Distributed objects first, then world hunger"
Poughkeepsie, NY (845)-435-6093 or 8-295-6093