forked from LearningRegistry/LearningRegistry
-
Notifications
You must be signed in to change notification settings - Fork 2
LR Envelope Example
damonregan edited this page Dec 30, 2011
·
6 revisions
Below is an excerpt describing the resource data description model (envelope) from the Learning Registry Technical Specification v0.23.0:
{
"doc_type": "resource_data", // the literal "resource_data"
// required, immutable
"doc_version": "0.23.0", // the literal for the current spec version -- "0.23.0"
// required, immutable
// general elements about the submission
"doc_ID": "string", // unique ID for this resource data description document
// unique within scope of the LR
// immutable
// user optional, required for storage
// system generated when publishing
// the document if not provided
"resource_data_type": "string", // open (best practices) vocabulary
// ["metadata", "paradata", "resource", "assertion", ...]
// required, immutable
"active": boolean, // is the resource data description document active
// required, mutable from T to F only
// information about the submission, independent of the resource data
"identity": { // identity and curation
"submitter_type": "string", // fixed vocabulary ["anonymous", "user", "agent"]
// required, immutable
// "anonymous" -- submitter is unknown
// "user" -- submitter is a user or has a user identity
// "agent" -- submitter is an agent, e.g., a repository, LMS
// or an organization
"submitter": "string", // identity of the submitter of the resource data
// required, immutable
// use "anonymous" for type "anonymous"
"curator": "string", // identity of the curator of the resource data description
// who manages the resource data description
// optional
"owner": "string", // identity of the owner of the resource
// who owns what is referenced in the resource locator
// optional
"signer": "string" // identity of key owner used to sign the submission
// optional
},
// submission and distribution workflow information
"submitter_timestamp": "string", // submitter-created timestamp
// time/date encoding
// optional
"submitter_TTL": "string", // submitter statement of TTL of validity of submission
// time/date encoding
// optional
"publishing_node": "string", // node_id of node where injected into the network
// required
// provided by the initial publish node (not distribution)
"create_timestamp": "string", // timestamp of when first published to the network
// independent of updates
// time/date encoding
// required, immutable
// provided by the initial publishing node on first publish
// not by a distribution node or not an update
"TOS": { // terms of service
"submission_TOS": "string", // agreed terms of service by submitter
// required
"submission_attribution":"string" // attribution statement from submitter
// optional
},
"do_not_distribute": "string", // system provided key-value pair
// optional
"weight": "integer", // submitter assigned weight (strength)
// -100:100
// optional
"digital_signature": { // digital signature of the submission, optional
"signature": "string", // signature string, required
"key_location": ["string"], // array of public key locations,, required
"signing_method": "string" // fixed vocabulary ["LR-PGP.1.0"]
// required
},
// information about the resource, independent of the resource data
"resource_locator": "string", // unique locator for the resource described
// SHALL resolve to a single unique resource
// required
"keys": ["string"], // array of hashtag, keyword value list used for filtering
// optional
"resource_TTL": integer, // TTL from resource owner for the resource itself, in days
// optional
// the actual resource data description elements
// these elements are optional as a block if the submission is a resource
"payload_placement": "string", // fixed vocabulary ["inline", "linked", "attached"]
// "inline" -- resource data is in an object that follows
// "linked" -- resource data is at the link provided
// "attached" -- resource data is in an attachment
// required
"payload_schema": ["string"], // array of schema description/keywords
// for the resource data
// required
// defined metadata schema values
// defined paradata schema values
"payload_schema_locator":"string", // schema locator for the resource data
// optional
"payload_schema_format":"string", // schema MIME type
// optional
"payload_locator": "string", // locator if payload_placement value is "linked"
// required if "linked", otherwise ignored
"resource_data": // the actual inline resource data
<the resource data object>, // the resource data itself (resource. metadata, paradata)
// maybe a JSON object, or
// a string encoding XML or some other format, or
// a string encoding binary
// required if "inline" otherwise ignored
"X_xxx": ????? // placeholder for extensibility, optional
}