[occi-wg] Link & Linking
Ralf Nyren
ralf at nyren.net
Mon Aug 16 09:46:51 CDT 2010
I studied your document on Link & Linking [1]. Nice write-up!
When a Link is turned into a resource and thus exposed to CRUD semantics
it will only be valid in the response to a GET request of an associated
Resource, right? That is, using POST/GET/PUT/DELETE with e.g. a compute
resource any Link headers will only be present in the GET response?
If so we solve the problems of updating and removing links although we
still have the the side effects when deleting a resource with associated
links. I.e. that the DELETE operation of a resource should remove any
associated links to avoid dangling links.
Another problem with Link as a resource is that now there can be circular
links and links pointing to other links.
I think a problem here is that you try to model the concept of
bi-directional links on top of Web Links which are strictly unidirectional
(correct my if I am wrong). When you do this an important question to ask
is what OCCI really is. Is it an interface or is it a representation
model? If we decide OCCI is limited to be an interface I say
unidirectional links are all we need. It is not up to OCCI to represent
the relation between resources for persistent storage, it should merely be
able to _display_ links to other resources. It is not like an IaaS
provider would use OCCI as its internal representation format.
Now, look at the analogy with web pages. A web page is a resource, that is
easy to see and CRUD semantics apply as best they ever could. A web page
may have links to other web pages, unidirectional links. Thus links will
be removed when the resource is removed and referential integrity is not
guaranteed. Why not apply the same model in OCCI? We leave the issue of
referential integrity in the hands of the IaaS provider. If we create a
compute resource with a link to a storage resource and then view the
storage resource it is up to the provider to decide if a reverse link to
the compute resource should be included in the response.
Sorry if this last part was a bit confusing. I will add a proposal of my
own to the Link & Linking document so we have a basis for discussion.
regards, Ralf
[1] http://forge.ogf.org/sf/wiki/do/viewPage/projects.occi-wg/wiki/Link
More information about the occi-wg
mailing list