bigchaindb/org

Technical spec for COALA IP Spec using LCC, IPLD, and BigchainDB

Opened this issue · 3 comments

Abstract

With the SPOOL protocol, ascribe.io published and implemented a specification on how to handle ownership of digital assets on the Bitcoin blockchain. In the implementation of this, frameworks for digital rights management (most notably from LCC) were discovered that they couldn't be applied to SPOOL protocol v1.0 easily. As ascribe.io wants to move to BigchainDB as a ledger in the near future, this gives a rationale to formally discuss how the integration of Linked Data Coalition's Rights Reference Model could look like using BigchainDB as a central but decentralized rights registry.

Goals

Using the following (but not exclusively) technologies/resources:

we want to come up with a practical (!!!) technical specification that matches the use case of digital rights management (SPOOL v2.0) on a central but decentralized rights registry (namely BigchainDB).

In terms of actual goals, this means:

Tasks

The scope of this project is to resolve the following tasks and questions. For now the scope of the project is deliberately kept to a time span of two weeks:

  • Identify vital components for a first-cut SPOOL v2.0 implementation
    (which LCC entities are actually of use for us now)
  • Identify how LCC entities can be converted to a sane JSON schema using schema.org, when applied to digital rights management on a decentralized
    registry
  • Research how linked data (both JSON LD and IPLD) can play a role in
    linking pieces of meta data to assets
  • Write a comprehensible, fun, easy-to-read, specification that covers
    how the above mentioned technologies can be used to implement a first-cut
    implementation of SPOOL v.2.0
  • Update specification to reflect Creation ownership decisions (COALAIP/specs#6, COALAIP/specs#3)

Form

The form of outcome of this project is a formal, practical, technical specification of SPOOL v2.0 using the above mentioned technologies.

Outlook

As the Abstract already foreshadows, this project is rather extensive featuring many branches that could be traversed in-depth. Hence, it is even more important to stress that this projects overarching goal is to extract a practical implementation from the LCC standards body. Even if this means that the implementation in its first, second or third cut will not even closely resemble the original specification's outlines.

Hence, in future iterations (NOT NOW!) we'll worry about questions like:

  • How does this interplay with technologies like BigchainDB, IPFS, (InsertTechnology)
  • (more later when I get them :D)

Last items before completing:

  • Last passover by Greg
  • Final read through
  • Move to Coala organization

Added by Troy:

  • Remove the "when: In progress" label and close this issue

Copying two comments made by @sohkai on bigchaindb/bigchaindb#270

Comment 1:

Just made a few small edits that fixed the extra newlines in the sentences of some of the paragraphs; I guess Github doesn't suppress extra newlines in comments.

Comment 2:

👍 Looking forward to the spec. As a thought, maybe it'd be nice to have a high-level presentation on the data formats you've mentioned (and differences to SPOOL v1) now that you're Lord Commander of LCC integration and have grokked them all? Or maybe Greg?

Updated issue body instead.

🎉