You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Identity-centric services are an important aspect to the user-centric web, where users employ/permission specific services to act on their behalf and any application can make use of these services
These services need to exist independent from any single application or platform
There will be many different types of services lists
There should be a standard interface for apps to discover services lists so they can locate and interact with these services
Specification
The Services Index specification consists of a doctype, schema, table, and tags.
Services Index utilizes the String Map (CIP-9) schema, which simply stores a list of strings which map to other strings. In this context, the key string should represent the category of service, and the value string should represent a document that stores a list of services within that category. A reference to this schema should be included in your Services Index document when it is created.
Table
The Services Index Table (to be created at a later time) contains the standard set of properties that may be contained in any given Services Index. New properties can be added to the table by following the steps below. Additional properties not found in this table may be stored in any Services Index, however they may be less interoperable since others may not know what they represent. Here are some common examples of properties stored in the Services Index:
notifications: the DocId of a Notifications Service List, which contains a list of notification services used by this DID
backup: the DocId of a Backup Service List, which contains a list of data backup services used by this DID
consent: the DocId of a Consent Services List, which contains a list of privacy management services used by this DID
How to add a new property to the Services Index Table
Choose a unique, descriptive property name.
Add a description for your property.
Submit a PR to the CIP repository updating the Services Index Table with your property.
Mention the authors of this CIP in the comments of your PR.
Tags
When creating a Services Index document, add ServicesIndex to the tags field.
Root Index: Services Index provides a directory of services lists, however services are just one type of resource that can be associated with a DID. The Root Index (CIP-12) provides a top-level root directory for resources, and can contain a property called services which stores a link to a Services Index document. The recommended path for mapping from a DID to the Services Index is: DID/Root Index/Services Index.
Rationale
Extensibility & Flexibility: It is impossible to predict all of the types of services that need to be associated with any particular DID. Therefore Services Index was designed to be an infinitely extensible directory that can support any number of services lists.
Decentralization & Trust: Services directory information is data that needs to be globally-available, censorship-resistant, and live permissionlessly in the public domain (not on any single server). Additionally this information should be owned by a DID and will need to be updated from time to time. These requirements make Ceramic the most appropriate platform for publishing this content.
Implementation
String Map Schema: Find the String Map Schema here.
Services Index Table: Find the table containing standard Services Index properties here (to be updated when available).
Simple Summary
Services Index stores a list of documents which contain information about a DID's preferred services, such as notifications or backup.
Abstract
Add more detail here.
Services Index is a subdirectory of the Identity Index (IDX) (CIP-11) and is often linked from the Root Index (CIP-12).
Motivation
Specification
The Services Index specification consists of a doctype, schema, table, and tags.
Doctype
Services Index is a Tile Doctype (CIP-8).
Schema
Services Index utilizes the String Map (CIP-9) schema, which simply stores a list of strings which map to other strings. In this context, the key string should represent the category of service, and the value string should represent a document that stores a list of services within that category. A reference to this schema should be included in your Services Index document when it is created.
Table
The Services Index Table (to be created at a later time) contains the standard set of properties that may be contained in any given Services Index. New properties can be added to the table by following the steps below. Additional properties not found in this table may be stored in any Services Index, however they may be less interoperable since others may not know what they represent. Here are some common examples of properties stored in the Services Index:
notifications
: the DocId of a Notifications Service List, which contains a list of notification services used by this DIDbackup
: the DocId of a Backup Service List, which contains a list of data backup services used by this DIDconsent
: the DocId of a Consent Services List, which contains a list of privacy management services used by this DIDHow to add a new property to the Services Index Table
Tags
When creating a Services Index document, add
ServicesIndex
to the tags field.Example
An example Services Index document.
Suggested Usage
Root Index: Services Index provides a directory of services lists, however services are just one type of resource that can be associated with a DID. The Root Index (CIP-12) provides a top-level root directory for resources, and can contain a property called
services
which stores a link to a Services Index document. The recommended path for mapping from a DID to the Services Index is:DID
/Root Index
/Services Index
.Rationale
Extensibility & Flexibility: It is impossible to predict all of the types of services that need to be associated with any particular DID. Therefore Services Index was designed to be an infinitely extensible directory that can support any number of services lists.
Decentralization & Trust: Services directory information is data that needs to be globally-available, censorship-resistant, and live permissionlessly in the public domain (not on any single server). Additionally this information should be owned by a DID and will need to be updated from time to time. These requirements make Ceramic the most appropriate platform for publishing this content.
Implementation
String Map Schema: Find the String Map Schema here.
Services Index Table: Find the table containing standard Services Index properties here (to be updated when available).
Libraries: Not yet available.
Copyright
Copyright and related rights waived via CC0.
The text was updated successfully, but these errors were encountered: