[UR-WG] Comments/Questsions on usage#draft3 schema

Matt Ford matt.ford at manchester.ac.uk
Tue Sep 26 16:58:46 CDT 2006


Hi Donal,

I have some comments/questions on your latest release of the proposed 
2.0 spec.

- It's much more legible now; your effort in this is much appreciated by 
me at least! :-)

- I like the much cleaner type derivations.

- With regard to the AtomicActivityUsageRecord type: 
  * I don't like how we call it an AtomicActivity and then use "JobName" 
as an element name.  The activity may have nothing to do with jobs; I 
still feel as though we have a mix of the specific and generic in this type.
  * In a similar line of thinking I wonder if elements such as "Status" 
should not be global and instead be local to a derived type such as 
"AtomicActivity" i.e., declared instead of referenced.  Not all Usage 
records will necessarily have "Status" and it's meaning can in principle 
vary wildly.

- With regard to the CompoundUsageRecord:
  * It's abstract as you note; so how's it made specific?  (the 
following questions may be due to my ignorance of XSD's).  I guess I 
could extend the schema but how then do we make it so that people don't 
go off and arbitrarily extend it?  How do we capture this if they do?   
For example if I naively defined a "grid-job"  - treat this name as 
arbitrary ;-) - as the collection of AtomicActivity UsageRecords spawned 
by my Resource Broker (never more than ten) what do I do?

Should I even attempt this: my aim is to extend the schema to allow only 
compound records of 0 to 10 Atomic Activity records only?

<xsd:complexType name="GridJob">
    <xsd:complexContent>
       <xsd:restriction base="usage:CompoundUsageRecord">
                <xsd:element ref="usage:AtomicActivity" minOccurs="0" 
maxOccurs="10"
                        maxOccurs="unbounded" />
                <xsd:any namespace="#other" processContents="lax"
                    minOccurs="0" maxOccurs="unbounded" />
            </xsd:sequence>
        </xsd:restriction>
    </xsd:complexContent>
</xsd:complexType>

<xsd:element name="GridJob"
   substitutionGroup="usage:UsageRecord"
   type="usage:GridJob">
</xsd:element>


Or should I be thinking of CompoundUsageRecord as plumbing for as yet 
undefined parts of the UR-WG schema?

Cheers,

Matt.


More information about the ur-wg mailing list