Open dslik opened 3 months ago
The specification text for each export type should include documentation of the encoding of each of the export path/name/identifier/etc fields. If the encoding is dynamic or can change from object to object, the encoding for the object should be indicated as an export field.
When there are multiple versions of an export protocol, and the encoding of fields changes, should this be coupled with the version, or specified separately?
After a discussion about the best place for parentID, the consensus is that this should be grouped together with the other ID fields, especially given that ID support is optional. The example above has been updated to reflect this change.
For clarity, HTTP access is also an export (and could be at a different path), so this also fits into the generalized exports structure.
There are two different broad categories of capabilities: Capabilities that are intrinsic to the object (e.g. if the object is writable), and capabilities that are intrinsic to an access method. Currently, in CDMI, these are co-mingled in the capabilities object that each CDMI object refers to. If we add the ability to have a capabilities object reference to a export, then we can clearly differentiate between these two categories of capabilities, and keep they isolated from each other.
We need to clearly specify in normative text that the key for each export is a user-defined string.
Proposal, restructure document to:
Rough draft of diagram to replace Figure 3:
This more clearly shows the separation of clients from protocols.
Extend the exports system to include information on CDMI object access and CDMI path access. This generalizes the exports system to handle all possible access methods to a CDMI object.
An example of a CDMI object using this extension:
Where "1", "2", "3", ... are examples of user-specified keys naming each export.