TNS Internal:NDR Use Case: Webfeed Ingest
From NSDLWiki
Just as an example of what an application might require of the NDR:
Contents[hide] |
Collections
- Get a list of all Collections (from the NSDL)
- with title and unique identifier.
- AtomPub: get the URI for the coll of coll
- AbstractAPI: listCollections(), parse output
- Also needs setSpec
- It needs to give the MetadataProvider a setSpec in order for NSDL oai to work
- Given a collections model, all OAI stuff can be defined automatically.
- It needs to give the MetadataProvider a setSpec in order for NSDL oai to work
- Get information about a Collection (by unique identifier).
- with description, subject(s).
- AbstractAPI: find appropriate NDRCollection, find the annotation it needs (ncs_collect, etc)
- Get information about a Collection (by associated Data Source).
Users
- Get a list of all Users.
- with name of each User.
- Get a list of all Users that meet certain criteria.
- One criterion: a relation of wfi:authorizedForCollection to a specific Collection.
- Another criterion: any relation of wfi:authorizedForCollection.
- Create a new user.
- Add a relation between a User and a Collection.
- Remove a relation between a User and a Collection.
Could this be an application-layer concern? If so, this does not need to be in the collections API.
Data Sources
- Get a list of all Data Sources that meet certain criteria.
- In this case, a "data source" is a metadata provider.
- One criterion: the property wfi:WFIngestProvider=true.
- Another criterion: the property wfi:WFIngestProvider=true, and the Data Source is tied to a specific Collection.
- Create a new Data Source on a Collection.
- Delete a Data Source.
- Attach arbitrary data to a Data Source, and modify that data.
- In this case, ingest parameters and ingest history.
Resources/Metadata
- Get a list of all Resources and Metadata associated with a given Data Source and Collection.
- Create new Resources/Metadata
- Creating Resources/Metadata should be an inexpensive operation.
- Associate Resources/Metadata with a Data Source and Collection.
- Should be an atomic operation.
- Modify existing Metadata.
- Delete Metadata.