GitBook: [#42] fix role tables
BIN
.gitbook/assets/marketplace-publish-file-field (1).png
Normal file
After Width: | Height: | Size: 87 KiB |
BIN
.gitbook/assets/publish-google-drive (1).png
Normal file
After Width: | Height: | Size: 36 KiB |
BIN
.gitbook/assets/publish-google-drive-2 (1).png
Normal file
After Width: | Height: | Size: 38 KiB |
@ -9,7 +9,7 @@ description: Data NFTs and datatokens architecture
|
||||
|
||||
Here is the Ocean architecture.
|
||||
|
||||
![Ocean Protocol tools architecture](../.gitbook/assets/architecture.png)
|
||||
![Ocean Protocol tools architecture](<images/architecture (2).png>)
|
||||
|
||||
Here’s an overview of the figure.
|
||||
|
||||
|
@ -3,7 +3,7 @@ title: Asset Pricing
|
||||
description: Choose the revenue model during asset publishing
|
||||
---
|
||||
|
||||
# Asset pricing
|
||||
# Asset Pricing
|
||||
|
||||
Ocean Protocol offers two types of pricing options for asset monetization. The publisher can choose a pricing model which best suits their needs while publishing an asset. The pricing model selected cannot be changed once the asset is published.
|
||||
|
||||
@ -17,7 +17,7 @@ A [FixedRateExchange](https://github.com/oceanprotocol/contracts/blob/v4main/con
|
||||
|
||||
The image below shows how to set the fixed pricing of an asset in the Ocean's Marketplace. Here, the price of the asset is set to 10 Ocean tokens.
|
||||
|
||||
![fixed-asset-pricing](../.gitbook/assets/fixed-asset-pricing.png)
|
||||
![fixed-asset-pricing](<images/fixed-asset-pricing (3).png>)
|
||||
|
||||
### Free pricing
|
||||
|
||||
@ -29,4 +29,4 @@ Free pricing is suitable for individuals and organizations working in the public
|
||||
|
||||
The image below shows how to set free access to an asset in the Ocean's Marketplace.
|
||||
|
||||
![free-asset-pricing](../.gitbook/assets/free-asset-pricing.png)
|
||||
![free-asset-pricing](<images/free-asset-pricing (3).png>)
|
||||
|
@ -62,7 +62,7 @@ Ocean provides convenient methods to list ERC20 datatokens for sale, with fixed-
|
||||
|
||||
### High-Level Behavior
|
||||
|
||||
![Flow](<../.gitbook/assets/use case>)
|
||||
![Flow](<images/use-case (1).png>)
|
||||
|
||||
Here's an example.
|
||||
|
||||
@ -76,9 +76,9 @@ Each data NFT or a datatoken is cloned from pre-defined template contracts. The
|
||||
The only data NFT template currently available has templateId `1` and the source code is available [here](https://github.com/oceanprotocol/contracts/blob/v4main/contracts/templates/ERC721Template.sol).
|
||||
|
||||
The details regarding currently supported datatoken templates are as follows:
|
||||
- **Regular template**: The regular template allows users to buy/sell/hold datatokens. The datatokens can be minted by the address having a `MINTER` role, making the supply of datatoken variable. This template is assigned templateID `1` and the source code is available [here](https://github.com/oceanprotocol/contracts/blob/v4main/contracts/templates/ERC20Template.sol).
|
||||
|
||||
- **Enterprise template**: The enterprise template has additional functions apart from methods in the ERC20 interface. This additional feature allows access to the service by paying in the basetoken instead of datatoken. Internally, the smart contract handles conversion of basetoken to datatoken, initiating an order to access the service, and minting/burning the datatoken. The total supply of the datatoken effectively remains 0 in the case of the enterprise template. This template is assigned templateID `2` and the source code is available [here](https://github.com/oceanprotocol/contracts/blob/v4main/contracts/templates/ERC20TemplateEnterprise.sol).
|
||||
* **Regular template**: The regular template allows users to buy/sell/hold datatokens. The datatokens can be minted by the address having a `MINTER` role, making the supply of datatoken variable. This template is assigned templateID `1` and the source code is available [here](https://github.com/oceanprotocol/contracts/blob/v4main/contracts/templates/ERC20Template.sol).
|
||||
* **Enterprise template**: The enterprise template has additional functions apart from methods in the ERC20 interface. This additional feature allows access to the service by paying in the basetoken instead of datatoken. Internally, the smart contract handles conversion of basetoken to datatoken, initiating an order to access the service, and minting/burning the datatoken. The total supply of the datatoken effectively remains 0 in the case of the enterprise template. This template is assigned templateID `2` and the source code is available [here](https://github.com/oceanprotocol/contracts/blob/v4main/contracts/templates/ERC20TemplateEnterprise.sol).
|
||||
|
||||
_NOTE: Ocean Protocol might support additional variations of data NFT/datatoken by adding new templates._
|
||||
|
||||
@ -88,9 +88,8 @@ Fractional ownership is an exciting sub-niche of Web3, at the intersection of NF
|
||||
|
||||
Ocean provides two approaches to fractional ownership:
|
||||
|
||||
- Sharded holding of ERC20 datatokens, where each ERC20 holder has the usual datatoken rights as described above, e.g. 1.0 datatokens to consume an asset. This comes out-of-the-box with Ocean.
|
||||
|
||||
- Sharding ERC721 data NFT, where each co-holder has right to some earnings against base IP, and co-controls the data NFT. For example, there’s a DAO with the sole purpose to hold the data NFT; this DAO has its own ERC20 token; DAO members vote with tokens to update data NFT roles or deploy ERC20 datatokens against the ERC721.
|
||||
* Sharded holding of ERC20 datatokens, where each ERC20 holder has the usual datatoken rights as described above, e.g. 1.0 datatokens to consume an asset. This comes out-of-the-box with Ocean.
|
||||
* Sharding ERC721 data NFT, where each co-holder has right to some earnings against base IP, and co-controls the data NFT. For example, there’s a DAO with the sole purpose to hold the data NFT; this DAO has its own ERC20 token; DAO members vote with tokens to update data NFT roles or deploy ERC20 datatokens against the ERC721.
|
||||
|
||||
Note: For (2), one might consider doing sharding with something like Niftex. But then there are questions: what rights do the shard-holders get exactly? It could be zero; for example, Amazon shareholders don’t have the right to walk the hallways of the Amazon offices just because they hold shares. Secondly, how do the shard-holders control the data NFT? These questions get resolved by using a tokenized DAO, as described above.
|
||||
|
||||
|
@ -33,7 +33,7 @@ The DDO is stored on-chain as part of the NFT contract and stored in encrypted f
|
||||
|
||||
Here is the flow:
|
||||
|
||||
![DDO flow](<images/ddo-flow (1).png>)
|
||||
![DDO flow](images/ddo-flow.png)
|
||||
|
||||
<details>
|
||||
|
||||
@ -313,6 +313,8 @@ An asset with a service of `type` `compute` has the following additional attribu
|
||||
| `boolean` | **✓** | If `true`, any passed raw text will be allowed to run. Useful for an algorithm drag & drop use case, but increases risk of data escape through malicious user input. Should be `false` by default in all implementations. |
|
||||
| Type | Required | Description |
|
||||
| `boolean` | **✓** | If `true`, any passed raw text will be allowed to run. Useful for an algorithm drag & drop use case, but increases risk of data escape through malicious user input. Should be `false` by default in all implementations. |
|
||||
| Type | Required | Description |
|
||||
| `boolean` | **✓** | If `true`, any passed raw text will be allowed to run. Useful for an algorithm drag & drop use case, but increases risk of data escape through malicious user input. Should be `false` by default in all implementations. |
|
||||
| <p><strong><code>allowNetworkAccess</code></strong></p><table><thead><tr><th>Type</th><th>Required</th><th>Description</th></tr></thead><tbody><tr><td><code>boolean</code></td><td><strong>✓</strong></td><td>If <code>true</code>, the algorithm job will have network access.</td></tr></tbody></table> | | |
|
||||
| Type | Required | Description |
|
||||
| `boolean` | **✓** | If `true`, the algorithm job will have network access. |
|
||||
@ -326,6 +328,8 @@ An asset with a service of `type` `compute` has the following additional attribu
|
||||
| `boolean` | **✓** | If `true`, the algorithm job will have network access. |
|
||||
| Type | Required | Description |
|
||||
| `boolean` | **✓** | If `true`, the algorithm job will have network access. |
|
||||
| Type | Required | Description |
|
||||
| `boolean` | **✓** | If `true`, the algorithm job will have network access. |
|
||||
| <p><strong><code>publisherTrustedAlgorithmPublishers</code></strong></p><table><thead><tr><th>Type</th><th>Required</th><th>Description</th></tr></thead><tbody><tr><td>Array of <code>string</code></td><td><strong>✓</strong></td><td>If not defined, then any published algorithm is allowed. If empty array, then no algorithm is allowed. If not empty any algo published by the defined publishers is allowed.</td></tr></tbody></table> | | |
|
||||
| Type | Required | Description |
|
||||
| Array of `string` | **✓** | If not defined, then any published algorithm is allowed. If empty array, then no algorithm is allowed. If not empty any algo published by the defined publishers is allowed. |
|
||||
@ -339,6 +343,8 @@ An asset with a service of `type` `compute` has the following additional attribu
|
||||
| Array of `string` | **✓** | If not defined, then any published algorithm is allowed. If empty array, then no algorithm is allowed. If not empty any algo published by the defined publishers is allowed. |
|
||||
| Type | Required | Description |
|
||||
| Array of `string` | **✓** | If not defined, then any published algorithm is allowed. If empty array, then no algorithm is allowed. If not empty any algo published by the defined publishers is allowed. |
|
||||
| Type | Required | Description |
|
||||
| Array of `string` | **✓** | If not defined, then any published algorithm is allowed. If empty array, then no algorithm is allowed. If not empty any algo published by the defined publishers is allowed. |
|
||||
| <p><strong><code>publisherTrustedAlgorithms</code></strong></p><table><thead><tr><th>Type</th><th>Required</th><th>Description</th></tr></thead><tbody><tr><td>Array of <code>publisherTrustedAlgorithms</code></td><td><strong>✓</strong></td><td>If not defined, then any published algorithm is allowed. If empty array, then no algorithm is allowed. Otherwise only the algorithms defined in the array are allowed. (see below).</td></tr></tbody></table> | | |
|
||||
| Type | Required | Description |
|
||||
| Array of `publisherTrustedAlgorithms` | **✓** | If not defined, then any published algorithm is allowed. If empty array, then no algorithm is allowed. Otherwise only the algorithms defined in the array are allowed. (see below). |
|
||||
@ -352,6 +358,8 @@ An asset with a service of `type` `compute` has the following additional attribu
|
||||
| Array of `publisherTrustedAlgorithms` | **✓** | If not defined, then any published algorithm is allowed. If empty array, then no algorithm is allowed. Otherwise only the algorithms defined in the array are allowed. (see below). |
|
||||
| Type | Required | Description |
|
||||
| Array of `publisherTrustedAlgorithms` | **✓** | If not defined, then any published algorithm is allowed. If empty array, then no algorithm is allowed. Otherwise only the algorithms defined in the array are allowed. (see below). |
|
||||
| Type | Required | Description |
|
||||
| Array of `publisherTrustedAlgorithms` | **✓** | If not defined, then any published algorithm is allowed. If empty array, then no algorithm is allowed. Otherwise only the algorithms defined in the array are allowed. (see below). |
|
||||
|
||||
The `publisherTrustedAlgorithms` is an array of objects with the following structure:
|
||||
|
||||
|
BIN
core-concepts/images/architecture (2).png
Normal file
After Width: | Height: | Size: 62 KiB |
BIN
core-concepts/images/architecture (3).png
Normal file
After Width: | Height: | Size: 62 KiB |
BIN
core-concepts/images/ddo-flow (2).png
Normal file
After Width: | Height: | Size: 57 KiB |
BIN
core-concepts/images/fixed-asset-pricing (2).png
Normal file
After Width: | Height: | Size: 44 KiB |
BIN
core-concepts/images/fixed-asset-pricing (3).png
Normal file
After Width: | Height: | Size: 44 KiB |
BIN
core-concepts/images/fixed-asset-pricing (4).png
Normal file
After Width: | Height: | Size: 44 KiB |
BIN
core-concepts/images/free-asset-pricing (2).png
Normal file
After Width: | Height: | Size: 39 KiB |
BIN
core-concepts/images/free-asset-pricing (3).png
Normal file
After Width: | Height: | Size: 39 KiB |
BIN
core-concepts/images/free-asset-pricing (4).png
Normal file
After Width: | Height: | Size: 39 KiB |
BIN
core-concepts/images/use-case (2).png
Normal file
After Width: | Height: | Size: 63 KiB |
BIN
core-concepts/images/use-case (3).png
Normal file
After Width: | Height: | Size: 63 KiB |
BIN
core-concepts/images/use-case (4).png
Normal file
After Width: | Height: | Size: 63 KiB |
BIN
orientation/images/confirm-backup-phrase (1).png
Normal file
After Width: | Height: | Size: 221 KiB |
BIN
orientation/images/confirm-backup-phrase (2).png
Normal file
After Width: | Height: | Size: 221 KiB |
BIN
orientation/images/create-new-metamask-wallet (1).png
Normal file
After Width: | Height: | Size: 152 KiB |
BIN
orientation/images/create-new-metamask-wallet (2).png
Normal file
After Width: | Height: | Size: 152 KiB |
BIN
orientation/images/manage-tokens (1).png
Normal file
After Width: | Height: | Size: 65 KiB |
BIN
orientation/images/manage-tokens (2).png
Normal file
After Width: | Height: | Size: 65 KiB |
BIN
orientation/images/metamask-add-network (1).png
Normal file
After Width: | Height: | Size: 76 KiB |
BIN
orientation/images/metamask-add-network (2).png
Normal file
After Width: | Height: | Size: 76 KiB |
BIN
orientation/images/metamask-browser-extension (1).png
Normal file
After Width: | Height: | Size: 97 KiB |
BIN
orientation/images/metamask-browser-extension (2).png
Normal file
After Width: | Height: | Size: 97 KiB |
BIN
orientation/images/metamask-chrome-extension (1).png
Normal file
After Width: | Height: | Size: 86 KiB |
BIN
orientation/images/metamask-chrome-extension (2).png
Normal file
After Width: | Height: | Size: 86 KiB |
BIN
orientation/images/secret-backup-phrase (1).png
Normal file
After Width: | Height: | Size: 331 KiB |
BIN
orientation/images/secret-backup-phrase (2).png
Normal file
After Width: | Height: | Size: 331 KiB |
@ -10,27 +10,27 @@ description: Tutorial about how to set up MetaMask for Chrome.
|
||||
|
||||
1. Go to the [Chrome Web Store for extensions](https://chrome.google.com/webstore/category/extensions) and search for MetaMask.
|
||||
|
||||
![metamask-chrome-store](../building-with-ocean/images/metamask-chrome-extension.png)
|
||||
![metamask-chrome-store](<images/metamask-chrome-extension (1).png>)
|
||||
|
||||
* Install MetaMask. The wallet provides a friendly user interface that will help you through each step. MetaMask gives you two options: importing an existing wallet or creating a new one. Choose to `Create a Wallet`:
|
||||
|
||||
![Create a wallet](../building-with-ocean/images/create-new-metamask-wallet.png)
|
||||
![Create a wallet](<images/create-new-metamask-wallet (1).png>)
|
||||
|
||||
* In the next step create a new password for your wallet. Read through and accept the terms and conditions. After that, MetaMask will generate Secret Backup Phrase for you. Write it down and store it in a safe place.
|
||||
|
||||
![Secret Backup Phrase](../building-with-ocean/images/secret-backup-phrase.png)
|
||||
![Secret Backup Phrase](<images/secret-backup-phrase (1).png>)
|
||||
|
||||
* Continue forward. On the next page, MetaMask will ask you to confirm the backup phrase. Select the words in the correct sequence:
|
||||
|
||||
![Confirm secret backup phrase](../building-with-ocean/images/confirm-backup-phrase.png)
|
||||
![Confirm secret backup phrase](<images/confirm-backup-phrase (1).png>)
|
||||
|
||||
* Voila! Your account is now created. You can access MetaMask via the browser extension in the top right corner of your browser.
|
||||
|
||||
![MetaMask browser extension](../building-with-ocean/images/metamask-browser-extension.png)
|
||||
![MetaMask browser extension](<images/metamask-browser-extension (1).png>)
|
||||
|
||||
* You can now manage Ether and Ocean Tokens with your wallet. You can copy your account address to the clipboard from the options. When you want someone to send Ether or Ocean Tokens to you, you will have to give them that address. It's not a secret.
|
||||
|
||||
![Manage tokens](../building-with-ocean/images/manage-tokens.png)
|
||||
![Manage tokens](<images/manage-tokens (1).png>)
|
||||
|
||||
You can also watch our [tutorial video snippets](https://www.youtube.com/playlist?list=PL\_dn0wVs9kWolBCbtHaFxsi408cumOeth) if you want more help setting up MetaMask.
|
||||
|
||||
@ -40,7 +40,7 @@ Sometimes it is required to use custom or external networks in MetaMask. We can
|
||||
|
||||
Open the Settings menu and find the `Networks` option. When you open it, you'll be able to see all available networks your MetaMask wallet currently use. Click the `Add Network` button.
|
||||
|
||||
![Add custom/external network](../building-with-ocean/images/metamask-add-network.png)
|
||||
![Add custom/external network](<images/metamask-add-network (1).png>)
|
||||
|
||||
There are a few empty inputs we need to fill:
|
||||
|
||||
|