[jsdl-wg] Revised and updated jsdl xsd schema

A Stephen McGough asm100 at doc.ic.ac.uk
Thu Nov 25 08:04:42 CST 2004


All,

I've attached the latest and updated schema. There are two major changes.

1) Trivial - uses the latest Regular Expression for range values.

2) Big change: removal of jsdl:any and replacement with xsd:any##other. 
This is due to some big problems with the jsdl:any type. I'm going to 
put a summary below:

a) It was noticed that the requirement for jsdl:any to always have an id 
tag was inconsistent with the rest of the document. We have stated for 
the rest of the document that an id tag was only needed when the 
multiplicity of an element (in the schema) is greater than 1. Thus 
forcing all extensions to the schema to have an id is incorrect.

b) The definition that was there for jsdl:any did not match how I and (I 
think) most others expected it to work. Here is how I expected it to work:

...
<jsdl:Resource>
           <jsdl:CPUTime operator="lessThanEqualTo">1000</jsdl:CPUTime>
           <globus:two_phase id="globusExtend">1</globus:two_phase>
</jsdl:Resource>
...

While in fact the document would need to look like the following:
...
<jsdl:Resource>
           <jsdl:CPUTime operator="lessThanEqualTo">1000</jsdl:CPUTime>
           <jsdl:any id="globusExtend">
              <globus:two_phase>1</globus:two_phase>
           </jsdl:any>
</jsdl:Resource>
...

This reduces the elegance of the document and makes it much harder to 
write. Michel, Nathalie, Willam, Donal and I have had a look at 
alternatives including using substitution groups and extending jsdl 
elements and all have some form of drawback which is either as bad if 
not worse than the fact we can't force people to use an id tag in their 
elements. As it has now been noticed that id tags don't always need to 
be there it seems much better to stick with the xsd:any##other tag in 
the schema and place into the spec document instructions on how 
extensions should be done and where id attributes should be placed.

If someone could put the schema up on GridForge that would be great.

Andreas - could you update the pseudo-schema in the document to use 
xsd:any##other rather than jsdl:any and we'll need to write the section 
in the spec to describe how to do extensions.

steve..

PS if any XML guru knows how to achieve these rules in a schema please 
let us know.

-- 
------------------------------------------------------------------------
Dr A. Stephen McGough
------------------------------------------------------------------------
Research Associate,   Imperial College London,  Department of Computing,
180 Queen's Gate,    London SW7 2BZ, UK
tel: +44 (0)207-594-8310                        fax: +44 (0)207-581-8024
------------------------------------------------------------------------
Assistant Warden,  West Wing,  Beit Hall,  Imperial College,
Prince Consort Road, London, SW7 2BB            tel: +44 (0)207-594-9910
------------------------------------------------------------------------






More information about the jsdl-wg mailing list