Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Add 'extensions' support to spec #403

Closed
awoods opened this issue Oct 29, 2019 · 4 comments · Fixed by #428
Closed

Add 'extensions' support to spec #403

awoods opened this issue Oct 29, 2019 · 4 comments · Fixed by #428
Assignees
Labels
OCFL Object Process/Related Not directly about the specification or implementation notes
Milestone

Comments

@awoods
Copy link
Member

awoods commented Oct 29, 2019

Per the Editors Meeting on 2019-10-29, this task is to add language to the OCFL specification that details support for optional extensions.

The language should include:

  • description of what goes in the Storage Root (including naming conventions)
  • description of what goes in the Object Root (including naming conventions)
  • description of scope and limitation of extensions (i.e. can not change other elements of an OCFL Object)

We may be able to repurpose some of the language currently found in the log description.

@ahankinson ahankinson added OCFL Object Process/Related Not directly about the specification or implementation notes labels Oct 29, 2019
@zimeon zimeon added this to the 1.0 milestone Nov 5, 2019
@rosy1280 rosy1280 assigned awoods and unassigned ahankinson Jan 21, 2020
@rosy1280
Copy link
Contributor

related to WIP PR: #404

@awoods
Copy link
Member Author

awoods commented Feb 11, 2020

@awoods
Copy link
Member Author

awoods commented Feb 12, 2020

Before proposing specification language, I would like to establish consensus on the details of what we are attempting to describe and define as it relates to "extensions".

  1. Types of extensions
    1. Extensions referenced in specification, examples:
      • ocfl_layout.json
      • digest algorithms
    2. Extensions that require a workspace, under a subdirectory of 'extensions/', example:
      • mutable head
  2. Questions to be answered
    1. How to reference extensions?
      • As sub-directory of 'extensions' directory, sharing name of extension definition
      • As a key in a specification-defined file (fixity-block, ocfl_layout.json)
    2. Where is extension referenced?
      • In 'ocfl_layout.json'
      • In 'fixity-block'
      • As sub-directory of 'extensions' directory
    3. Where does extension definition live?
      • In extensions repository
      • In the Storage Root
      • Naming convention: 4-digit, zero-padded prefix; should use hyphens to separate words; and have the .md extension.
    4. Where is extension workspace?
      • In sub-directory of 'extensions' directory of Storage Root and/or Object Root
      • Sub-directory must share the extension name, minus the '.md' suffix

References

@zimeon
Copy link
Contributor

zimeon commented Feb 13, 2020

IMO in point one we don't want to go into much detail of what type of extension there may be as that would appear to bless some directions and speak against others. I thought this ticket was specifically for description of the extensions directory and this not really about digest algorithms and such which are already described. In order to get something that is readily mergeable I would be tempted to rename 4.4 to Storage Root Extensions and add a new 3.X Object Extensions, then later think about what common language or cross-reference there should be

awoods pushed a commit to awoods/spec that referenced this issue Feb 25, 2020
julianmorley pushed a commit that referenced this issue Mar 4, 2020
…es (#428)

* Initial pass at wording for extensions directory

* Add text defining storage root and object root 'extensions' directories

Resolves: #403

* code review

* code review 2

Co-authored-by: Andrew Hankinson <andrew.hankinson@bodleian.ox.ac.uk>
@rosy1280 rosy1280 moved this to Done in OCFL 1.0 Aug 29, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
OCFL Object Process/Related Not directly about the specification or implementation notes
Projects
Status: Done
Development

Successfully merging a pull request may close this issue.

4 participants