# Overview

The Contract Open Standard is a smart contract specification defined by the Relation Protocol. It has two basic requirements:

* The contracts should conform to the data format and interface specification defined by the [Open Standard API](https://relationlabs.gitbook.io/protocol/open-standard-api/introduction).
* The RDF data constructed by these contracts should conform to the [Schema Standard](https://relationlabs.gitbook.io/protocol/schema-standard/overview).

Relation Protocol defined a set of Base Contracts based on the Contract Open Standard to address the three following scenarios.

**Identity**: Describe users' identity via SBT contracts.

* Name Service contract

**Relationships**: Describe connections between different users via SBT contracts.

* Follow
* DAO

**Publication**: Describe users' public or privacy content published via SBT contracts.

* Content
* Privacy Content

<figure><img src="https://2101283974-files.gitbook.io/~/files/v0/b/gitbook-x-prod.appspot.com/o/spaces%2FYeYon1a8IZta2Zm96hF1%2Fuploads%2Fgit-blob-46af9d7859ac768ee260e3f24c3075c29af75a97%2Fsocial-contracts.png?alt=media" alt=""><figcaption><p>Figure 5-1 Base Contracts</p></figcaption></figure>
