ISCC Registration¶
| CIP: | 0003 | 
|---|---|
| Title: | ISCC Registration | 
| Authos: | TP | 
| Status: | |
| Created: | 2018-01-13 | 
| License: | BSD-2-Clause | 
Purpose¶
An open an public registry for ISCC content identifiers. 
This documents specifies an open stream named iscc that can be used to 
register ISCC content codes and optionally associated metadata.
Schema¶
The ISCC-stream is named iscc and is readable and writable by every 
blockchain participant. The stream uses multiple keys for each stream-item 
where each key represents one of the 4 ISCC components:
Meta-ID, Content-ID, Data-ID, Instance-ID.
The stream-item value must be a JSON object that supports a set of defined top-level fields which are specified below. Applications may add custom fields at the top level but must prefix those fields with an underscore to avoid collisions with future extensions of the ISCC Metadata specification.
Top-Level Fields¶
version (optional)¶
Version of ISCC registry schema. Assumed to be 1.0 if omitted.
title (required)¶
Title of an intangible creation.
The UTF-8 encoded value of the title-field must not exceed 128 bytes. For a 
valid ISCC entry the value of this field together with the optional 
extra-field must encode to the MetaID that was given as the first key of the 
stream-item.
extra (optional)¶
A short statement that distinguishes this intangible creation from another one.
The UTF-8 encoded value of the extra-field must not exceed 128 bytes.
tophash (optional)¶
The full 64 character hex-encoded tophash (merkle root) retuned by the instance_id function.
meta (optional)¶
A list of one or more metadata entries. Must include at least one entry if specified.
A metadata entry allows for a flexible and extendable way to supply additional 
industry specific metadata about the identified content. It is a JSON object 
with the fields schema, mediatype, data, url. The schema-field may 
indicate a well known metadata schema (such as Dublin Core, IPTC, ID3v2, ONIX) 
that is used. The mediatype-field specifies an 
IANA Media Type. 
The data-field is only required if theurl field is omitted. It holds the 
metadata conforming to the indicated schema and mediatype. The url-field 
is only required if the data-field is omitted. The url is an external link 
that is expected to host the metadata with the indicated schema and 
mediatype.  
Examples¶
Minimal ISCC registry entry value:
{ "title": "The Neverending Story" }
With extra field:
{ "title": "The Neverending Story", "extra": "1984 fantasy film based on novel" }
With ISCC data integrity hash:
{ "title": "The Neverending Story", "tophash": "40aeb0ef856a8dbfa4e9897de98b1a1eef7e24f8744e65cd33118b40d9741147" }
{ "title": "Ubu: A face-to-face connector app for Hubud members", "meta": [ { "schema": "xmp", "mediatype": "application/rdf+xml", "url": "http://camwebb.info/blog/2014-11-19/ubu.xmp" } ] }
With custom inline Metadata:
{ "title": "The Neverending Story", "meta": [{ "schema": "schema.org", "mediatype": "application/ld+json", "data": { "@context": "http://schema.org", "@type": "Movie", "name": "The Neverending Story", "dateCreated": "6 April, 1984", "director": "Wolfgang Petersen", "actors": ["Noah Hathaway", "Barret Oliver", "Tami Stronach"], "duration": "1:42:00" } }] }
With application specific custom field:
{ "title": "The Neverending Story", "_productionCompany": "Bavaria Studios" }