TNS Internal:NDR/API/2.0/SimplifiedCollectionObject
From NSDLWiki
< TNS Internal:NDR | API | 2.0
Contents[hide] |
Proposal to Simplify Composite Collection Objects
Abbreviations and Terms
CAgg | Collection Aggregator |
CMDP | Collection Metadata Provider |
OAgent | Owner Agent for Collection |
CR | Collection Record |
M | Metadata about the collection that is not part of the composite object |
M-MDP | Metadata Provider for Metadata (M) |
Extra Parent | any parent collections besides NSDL Collection of Collections |
CMgmt | NSDL Collection Management Metadata Provider |
NSDL CR | NSDL Collection Records Metadata Provider |
ncs:CMF | relationship ncs:collectionMetadataFor that identifies the real Collection Metadata Provider |
EV | Metadata Provider | Aggregator) |
Existing Composite Collection Object
Objects
Object | Usage Notes |
CMDP | supposedly identifying MDP that provides metadata for resources in this NDR Collection |
CAggr | handle representing the collection; has legacy ServiceDescription |
CM | contains NDR collection metadata, eg. Title, Description, Contacts, ExternalID |
CR | contains collection resource URL |
OAgent | application agent, eg. NCS, -- VS. -- project agent, eg. Beyond Penguins |
M | legacy metadata objects for collections that contain multiple metadata datastreams |
M-MDP | provider for M, always one of NSDL Collection Management, NSDL Collection Record, or EV; has legacy ServiceDescription |
parentCAggr |
Relationships
Subject | Relationship | Predicate | Usage Notes |
CMDP | metadataProviderFor | OAgent | |
CMDP | aggregatedBy | CAggr | |
CAggr | aggregatorFor | OAgent | |
CAggr | associatedWith | CR | |
CM | metadataProvidedBy | CMDP | |
CM | metadataFor | CAggr | |
CM | metadataFor | CR | |
M | metadataFor | CAggr | legacy outside the control of the composite object |
M | metadataProvidedBy | M-MDP | legacy outside the control of the composite object |
CAggr | memberOf | parentCAggr |
Simplified Collection Object
Objects
Object | Usage Notes |
CAggr | contains URL for collection resource, contains NDR collection metadata |
OAgent | application agent, eg. NCS, -- VS. -- project agent, eg. Beyond Penguins |
parentCAggr |
Relationships
Subject | Relationship | Predicate | Usage Notes |
CAggr | aggregatorFor | OAgent |
Questions / Issues
- In NDR code, what limits metadata creation/modification in an NDR Collection?
- Is it the CMDP aggregatedBy CAggr?
- Or is it the OAgent that the CAggr is the aggregatorFor?
- Or is it any agent with auth:authorizedToChange relationship with the Aggregator?
- When metadata is added to an NDR Collection, how does that metadata get attributed to a particular CMDP? The existing composite collection object was designed with the assumption of a one-to-one relationship between CAggr and CMDP, and thus it was assumed that all metadata in the CAggr would be attributed to the CMDP.
Ex. (P) -- CAggr - Beyond Penguins NSDL Library Collection CMDP - Beyond Penguins parentCAggr - NSDL Collection of Collections OAgent - NCS M - NCS Collection Record (C1) -- CAggr - Beyond Penguins - OnRamp RSS Metadata Source CMDP - Beyond Penguins parentCAggr - (P) Beyond Penguinis NSDL Library Collection OAgent - WFI M - metadata about resources added through WFI (C2) -- CAggr - Beyond Penguins - NCS Managed Metadata Source CMDP - Beyond Penguins parentCAggr - (P) Beyond Penguinis NSDL Library Collection OAgent - NCS M - metadata about resources added through NCS When metadata is added to (P), it is assumed to be attributable to Beyond Penguins. When metadata is added to (C1), it is assumed to be attributable to Beyond Penguins. When metadata is added to (C2), it is assumed to be attributable to Beyond Penguins.
- If we drop the CMDP relationship, how is metadata provinence determined?
- If we drop CR, the resourceURL may never exist as a discoverable resource in the NDR.