Martin,

The estimation spec has evolved somewhat  from the example below, but is 
still consistent with this use of multi-valued properties to define 
collections. We are taking an even simpler approach to collections:

for every resource type, e.g. Estimate, we have a singleton collection 
resource, e.g. EstimateList
to create a new resource, you POST to its List resource
the List resource has a multi-valued property that defines its members, 
e.g. EstimateList has a multi-valued ems:estimate property that refers to 
Estimate resources
in this example, the Estimate resource also has a property, ems:project, 
that refers to its owning Project
to get the collection of Estimates for a given Project, you GET the 
EstimateList resource with a query parameter that filters the collection

This design has the feature that the scope of a Project resource does not 
include the Estimates that refer to it, i.e. when a new Estimate is 
created, it does not update the Project. If you wanted to regard the 
Estimates as being part of the Project, then you would add explicit 
ems:hasEstimate properties to the Project.

Arthur Ryman, IBM DE
Chief Architect, Rational Project and Portfolio Management
Office: 905-413-3077, Cell: 416-939-5063
Assistant: Nancy Barnes, 905-413-4182 



Martin Nally/Raleigh/IBM@IBMUS
12/09/2009 03:06 PM

To
Paul McMahan/Raleigh/IBM@IBMUS, Arthur Ryman/Toronto/IBM@IBMCA
cc
[email protected], [email protected], 
[email protected]
Subject
Re: [OSLC] OSLC QM 1.0 specification





This design adopts the design for multi-valued properties documented in 
the CM spec. I don't think this is a good design and we shouldn't 
propagate it. The OSLC estimation workgroup is doing this the "right" way, 
as shown in this example:

<?xml version="1.0"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#";
   xmlns:dc="http://purl.org/dc/elements/1.1/";
   xmlns:ems="http://open-services.net/software-metrics/";>
   <ems:Project
      rdf:about="http://braintwistors.example.com/ems/v1.0/Project/4201";>
      <dc:title>Tsunami 1.0</dc:title>
      <dc:description>
         The goal of ... 
      </dc:description>
      ...
      <ems:hasEstimate
         rdf:resource="
http://braintwistors.example.com/ems/v1.0/Estmate/4203"; />
      <ems:hasEstimate
         rdf:resource="
http://braintwistors.example.com/ems/v1.0/Estmate/4204"; />
      ...
      <!-- other properties of this project resource have been omitted for 
brevity -->
   </ems:Project>
</rdf:RDF>

In other words, a multi-valued property is just what it says - a property 
with multiple values, as illustrated here by "ems:hasEstimate". You do not 
introduce a separate collection resource with separate link resources - 
that design is not in the spirit of REST, it's just an old-fashioned OO 
programming API exposed via http.

Best regards, Martin

Martin Nally, IBM Fellow
CTO and VP, IBM Rational
tel: (949)544-4691




From:
Paul McMahan/Raleigh/IBM@IBMUS
To:
[email protected]
Cc:
[email protected]
Date:
12/09/2009 12:05 PM
Subject:
[OSLC] OSLC QM 1.0 specification
Sent by:
[email protected]




The OSLC Quality Management V1 specification is available at :
http://open-services.net/bin/view/Main/QmSpecificationV1

I would like to thank the Quality Management workgroup members (BigLever,
IBM, Sogeti, and Tieto) for their participation in the workgroup and
contributions to the specification.  The broader OSLC community is invited
to view the specification and provide any feedback in the wiki or via the
[email protected] mailing list.  The Quality Management V2
specification effort is expected to get underway soon so any feedback on
the V1 specification will be especially valuable.


Best wishes.
Paul McMahan
Rational Quality Management
[email protected]


_______________________________________________
Community mailing list
[email protected]
http://open-services.net/mailman/listinfo/community_open-services.net



Reply via email to