Skip to content
Please note that GitHub no longer supports your web browser.

We recommend upgrading to the latest Google Chrome or Firefox.

Learn more
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

Beyond the Repository (BtR) Spec Change Proposal V1.3.0 #21

Open
wants to merge 7 commits into
base: master
from

Conversation

@tdilauro
Copy link

tdilauro commented Nov 14, 2019

The BagIt Team of the Beyond the Repository project is recommending changes to the BagIt Profiles specification.

This PR updates the BagIt Profiles specification to:

  • Add a new optional description property for free-form textual description related to Bag-Info tags.
  • Add support for specifying lists of allowed payload and tag manifest types/algorithms via the Manifests-Allowed and Tag-Manifests-Allowed properties, respectively.
  • Bump version number.

These changes are non-breaking for v1.2.0, thus packages built to that specification would not require changes (aside from BagIt-Profile-Identifier tag in bag-info.txt).

  • The description property of the Bag-Info object is optional.
  • The Manifests-Allowed and Tag-Manifests-Allowed lists are optional and reasonable behaviors are defined for the default values.

Description Property

The description property enables the conveyance of any information that might be helpful to either the producer or the consumer of a bag to understand how to provide or interpret the information associated with a particular tag. There is no restriction on the length of description, so it may be less than ideal to use as a tooltip for its associated tag.

Manifests-Allowed and Tag-Manifests-Allowed Properties

With Manifests-Required and Tag-Manifests-Required, the current BagIt Profiles specification (v1.2.0) supports the enumeration of any algorithms for which a corresponding payload or tag manifest, respectively, MUST be present in a bag. If these lists are specified, though, all listed algorithms must be represented.

We needed an additional mechanism through which to designate the set of algorithms supported (rather than required) by the consumer of a bag, so that producers are able create bags appropriately. Manifests-Allowed and Tag-Manifests-Allowed fulfill this need. If unspecified, these properties impose no constraints on the algorithms available to a producer. If Manifests-Required is specified, then if Manifests-Allowed is specified, it must include at least those algorithms listed in Manifests-Required. The same relationship applies for Tag-Manifests-Required/Tag-Manifests-Allowed.

tdilauro and others added 7 commits Oct 7, 2019
These properties can be used to restrict the permitted types/algorithms for payload and tag manifests without requiring that all supported types be present.
add properties for Beyond the Repository project
Fix minor formatting problem
@ruebot

This comment has been minimized.

Copy link
Member

ruebot commented Nov 14, 2019

@tdilauro thanks for the PR! Can you send a note to digital curation list and ask folks for input/feedback? Let's say put a deadline of November 30, 2019 in the message, and we can go from there once we get input.

@jwestgard

This comment has been minimized.

Copy link

jwestgard commented Nov 16, 2019

I would like to register my support for this PR. The manifests-allowed would offer some additional flexibility and and precision and has no downside that I can see.

@ruebot

This comment has been minimized.

Copy link
Member

ruebot commented Nov 21, 2019

@tdilauro could you update one or both the example profiles as well? ..and can you also update the validator?

@jscancella

This comment has been minimized.

Copy link

jscancella commented Nov 21, 2019

I would like to register my support for this PR. The manifests-allowed would offer some additional flexibility and and precision and has no downside that I can see.

+1

@ruebot

This comment has been minimized.

Copy link
Member

ruebot commented Dec 5, 2019

@tdilauro pinging again on the comment above. Once we sort that out, I'm happy to get this merged.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
6 participants
You can’t perform that action at this time.