Closed awoods closed 5 years ago
I just pushed a really basic container structure so that we can start fleshing this out in a PR.
I looked at the Fedora spec and moved the boilerplate sections around. Section 3 is now 'Object specification', where the object spec will go. Section 4 is non-normative Implementation Considerations.
I would propose as a starting point (feel free to flesh out):
3. Object specification
3.1 OCFL Object
3.1.1 Basic Structure
3.1.2 OCFL Conformance declaration
3.1.3 Logs directory
3.1.4 Top-level inventory
3.1.4.1 Top-level Inventory Checksum
3.1.5 Version directories
3.2 Inventory
3.2.1 Basic structure
3.2.2 Digest Algorithm Choice
3.2.3 Object Manifest
3.2.4 Object Versions
Is there value in adding an additional top-level section for Storage Root
, and splitting 3.1 and 3.2 into separate top-level sections:
3. Storage Root
3.1 ...
4. OCFL Object
4.1 ...
5. Inventory.jsonld
5.1 ...
6. Examples
6.1 Minimal object
6.2 Moab in OCFL object
Sounds good, but I would put the object and inventory before storage root:
Does the inventory have any meaning outside of the OCFL Object? I would imagine it as a sub-section
@zimeon : I was thinking that the inventory is complex enough to warrant its own section... even though I agree that it only exists within the context of an OCFL Object.
1. Conformance
2. Terminology
- OCFL Object
- OCFL Object Root
- OCFL Storage Root
- Inventory File
3. OCFL Object
3.1 Basic Structure
3.2 Object Conformance Declaration
3.4 Version Directories
3.5 Inventory
3.5.1 Basic Structure
- Detailing optional and mandatory files
- Schema
- Example
3.5.2 Digest
3.5.3 Manifest
3.5.4 Versions
3.6 Inventory Digest
3.7 Top-level Inventory and Inventory Digest
3.8 Logs Directory
4. OCFL Storage Root
4.1 Root Conformance Declaration
4.2 Root Structure
- structure must be the same for all structures
4.3 Extensions
- e.g., NamAsTe for pairtree formats
5. Examples
5.1 Minimal Object
5.2 Moab in an OCFL Object
5.3 BagIt in an OCFL Object
A. References
A.1 Normative references
Create a new document, 'Client Behaviours', with implementation considerations.
Before diving too far into the details of the specification, agreement on the top-level outline would be helpful.