[glue-wg] XSD design choice related to LDAP

david.meredith at stfc.ac.uk david.meredith at stfc.ac.uk
Wed Feb 27 04:37:56 EST 2013


Dear WG,
For the GLUE2 XML rendering we have a design choice that I understand was also relevant in the design of the LDAP schema. Some feedback would be most helpful, especially as I understand that user requirements triggered similar changes in the LDAP schema (i.e. from style A to B as described below?)

Q. In the conceptual spec, when an entity inherits associations from a super class it usually redefines the inherited associations. For example, ComputingService redefines its inherited 'Endpoint.ID' to 'ComputingEndpoint.ID.'  Similarly, StorageService redefines its inherited 'Endpoint.ID' to 'StorageEndpoint.ID'.  Therefore, should we reflect these redefinitions in the XML element names (or not), e.g. option A or B below?

I think the strength of A is that it is made clear that a ComputingService SHOULD (or is this MUST?) reference a ComputingEndpoint. The strength of B is that queries can be more standard across different implementations (akin to polymorphic queries, .e.g. the following XPath could be used to query for all endpoint IDs from all service implementations:  "/Entities/*[@BaseType='Service']/Associations/EndpointID").  There are strengths with both approaches and the decision I think has to be driven by use-case experience, hence I put this to the LDAP folks.

Thanks in advance,
David


Option A: Redefine the associations (e.g. ComputingEndpointID, ComputingShareID)
==================================================================
    <ComputingService BaseType="Service">
        <ID>computingService1</ID>
        ...
        <Associations>
            <ComputingEndpointID>computingEndpoint1</ComputingEndpointID>
           <ComputingShareID>someShare</ComputingShareID>
        </Associations>
    </ComputingService>


Option B: Don't redefine the associations (e.g. use inherited EndpointID, ShareID)
===============================================================
    <ComputingService BaseType="Service">
        <ID>computingService1</ID>
        ...
        <Associations>
            <EndpointID>computingEndpoint1</EndpointID>
           <ShareID>someShare</ShareID>
        </Associations>
    </ComputingService>


==========================
David Meredith
Scientific Computing Dept
Daresbury Laboratory
Tel: +44 (0) 1925 603762
Fax: +44 (0) 1925 603100 (Site)
Email: david.meredith at stfc.ac.uk
Skype name: davidismeredith


-- 
Scanned by iCritical.

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.ogf.org/pipermail/glue-wg/attachments/20130227/7b64a7cb/attachment.html>


More information about the glue-wg mailing list