diff --git a/content/concepts/did-ddo.md b/content/concepts/did-ddo.md index a509b1ef..7f2a9268 100644 --- a/content/concepts/did-ddo.md +++ b/content/concepts/did-ddo.md @@ -93,8 +93,8 @@ This object holds information describing the actual asset. | Attribute | Type | Required | Description | | --------------------------- | ----------------------------------------- | --------------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **`created`** | `ISO Date Time string` | | Contains the date of the creation of the dataset content in ISO Date Time Format, e.g. `2000-10-31T01:30:00`.| -| **`updated`** | `ISO Date Time string` | | Contains the date of last update of the dataset content in ISO Date Time Format, e.g. `2000-10-31T01:30:00`.| +| **`created`** | `ISO Date Time string` | | Contains the date of the creation of the dataset content in ISO Date Time Format, e.g. `2000-10-31T01:30:00`. | +| **`updated`** | `ISO Date Time string` | | Contains the date of last update of the dataset content in ISO Date Time Format, e.g. `2000-10-31T01:30:00`. | | **`description`** | `string` | **✓** | Details of what the resource is. For a dataset, this attribute explains what the data represents and what it can be used for. | | **`copyrightHolder`** | `string` | | The party holding the legal copyright. Empty by default. | | **`name`** | `string` | **✓** | Descriptive name or title of the asset. | @@ -181,7 +181,7 @@ An asset should have at least one service to be actually accessible, and can hav | **`serviceEndpoint`** | `string` | **✓** | Provider URL (schema + host) | | **`files`** | [Files](#files) | **✓** | Encrypted file URLs. | | **`timeout`** | `number` | **✓** | Describing how long the service can be used after consumption is initiated. A timeout of `0` represents no time limit. Expressed in seconds. | -| **`compute`** | [Compute](#compute-options) | **✓** (for compute assets only) | If service is of `type` `compute`, holds information about the compute-related privacy settings & resources. | +| **`compute`** | [Compute](#compute-options) | **✓** (for compute assets only) | If service is of `type` `compute`, holds information about the compute-related privacy settings & resources. | #### Files @@ -222,19 +222,18 @@ This only concerns metadata about a file, but never the file URLs. The only way An asset with a service of `type` `compute` has the following additional attributes under the `compute` object. This object is required if the asset is of `type` `compute`, but can be omitted for `type` of `access`. -| Attribute | Type | Required | Description | -| ------------------------------------------ | ------------------------------------- | -------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | -| **`namespace`** | `string` | **✓** | Namespaced used for the compute job. Defaults to 'ocean-compute'. | -| **`cpus`** | `number` | | Maximum number of CPUs allocated for a job| -| **`gpus`** | `number` | | Maximum number of GPUs allocated for a job| -| **`gpuType`** | `string` | | Type of GPU (if any) -| **`memory`** | `string` | | Maximum amount of memory allocated for a job. You can express memory as a plain integer or as a fixed-point number using one of these suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki. For example, the following represent roughly the same value: 128974848, 129e6, 129M, 123Mi| -| **`volumeSize`** | `string` | | Amount of disk space allocated. You can express it as a plain integer or as a fixed-point number using one of these suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki. | -| **`allowRawAlgorithm`** | `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. | -| **`allowNetworkAccess`** | `boolean` | **✓** | If `true`, the algorithm job will have network access. | -| **`publisherTrustedAlgorithmPublishers `** | Array of `string` | **✓** | If empty, then any published algorithm is allowed. Otherwise, only published algorithms by some publishers are allowed | -| **`publisherTrustedAlgorithms `** | Array of `publisherTrustedAlgorithms` | **✓** | If empty, then any published algorithm is allowed. (see below) | - +| Attribute | Type | Required | Description | +| ------------------------------------------ | ------------------------------------- | -------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- | +| **`namespace`** | `string` | **✓** | Namespaced used for the compute job. Defaults to 'ocean-compute'. | +| **`cpus`** | `number` | | Maximum number of CPUs allocated for a job | +| **`gpus`** | `number` | | Maximum number of GPUs allocated for a job | +| **`gpuType`** | `string` | | Type of GPU (if any) | +| **`memory`** | `string` | | Maximum amount of memory allocated for a job. You can express memory as a plain integer or as a fixed-point number using one of these suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki. For example, the following represent roughly the same value: 128974848, 129e6, 129M, 123Mi | +| **`volumeSize`** | `string` | | Amount of disk space allocated. You can express it as a plain integer or as a fixed-point number using one of these suffixes: E, P, T, G, M, k. You can also use the power-of-two equivalents: Ei, Pi, Ti, Gi, Mi, Ki. | +| **`allowRawAlgorithm`** | `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. | +| **`allowNetworkAccess`** | `boolean` | **✓** | If `true`, the algorithm job will have network access. | +| **`publisherTrustedAlgorithmPublishers `** | Array of `string` | **✓** | If empty, then any published algorithm is allowed. Otherwise, only published algorithms by some publishers are allowed | +| **`publisherTrustedAlgorithms `** | Array of `publisherTrustedAlgorithms` | **✓** | If empty, then any published algorithm is allowed. (see below) | The `publisherTrustedAlgorithms ` is an array of objects with the following structure: @@ -278,17 +277,17 @@ Example: "datatokenAddress": "0x124", "serviceEndpoint": "https://myprovider.com", "timeout": 0, - "compute":{ - "namespace": "ocean-compute", - "cpus": 2, - "gpus": 4, - "gpuType": "NVIDIA Tesla V100 GPU", - "memory": "128M", - "volumeSize": "2G", - "allowRawAlgorithm": false, - "allowNetworkAccess": true, - "publisherTrustedAlgorithmPublishers": ["0x234", "0x235"], - "publisherTrustedAlgorithms": [ + "compute": { + "namespace": "ocean-compute", + "cpus": 2, + "gpus": 4, + "gpuType": "NVIDIA Tesla V100 GPU", + "memory": "128M", + "volumeSize": "2G", + "allowRawAlgorithm": false, + "allowNetworkAccess": true, + "publisherTrustedAlgorithmPublishers": ["0x234", "0x235"], + "publisherTrustedAlgorithms": [ { "did": "did:op:123", "filesChecksum": "100", @@ -397,14 +396,14 @@ These additional fields are never stored on-chain, and are never taken into cons The `nft` object contains information about the ERC721 NFT contract which represents the intellectual property of the publisher. -| Attribute | Type | Description | -| ------------- | -------- | ------------------------------------------------------------------------- | -| **`address`** | `string` | Contract address of the deployed ERC721 NFT contract. | -| **`name`** | `string` | Name of NFT set in contract. | -| **`symbol`** | `string` | Symbol of NFT set in contract. | -| **`owner`** | `string` | ETH account address of the NFT owner. | -| **`state`** | `number` | State of the asset reflecting the NFT contract value. See [State](#state) | -| **`created`** | `ISO Date Time string` | Contains the date of nft creation | +| Attribute | Type | Description | +| ------------- | ---------------------- | ------------------------------------------------------------------------- | +| **`address`** | `string` | Contract address of the deployed ERC721 NFT contract. | +| **`name`** | `string` | Name of NFT set in contract. | +| **`symbol`** | `string` | Symbol of NFT set in contract. | +| **`owner`** | `string` | ETH account address of the NFT owner. | +| **`state`** | `number` | State of the asset reflecting the NFT contract value. See [State](#state) | +| **`created`** | `ISO Date Time string` | Contains the date of nft creation | Example: @@ -498,13 +497,13 @@ Example: "version": "4.0.0", "chainId": 1, "metadata": { - "created": "2020-11-15T12:27:48Z", - "updated": "2021-05-17T21:58:02Z", - "description": "Sample description", - "name": "Sample asset", - "type": "dataset", - "author": "OPF", - "license": "https://market.oceanprotocol.com/terms" + "created": "2020-11-15T12:27:48Z", + "updated": "2021-05-17T21:58:02Z", + "description": "Sample description", + "name": "Sample asset", + "type": "dataset", + "author": "OPF", + "license": "https://market.oceanprotocol.com/terms" }, "services": [ { @@ -524,17 +523,17 @@ Example: "datatokenAddress": "0x124", "serviceEndpoint": "https://myprovider.com", "timeout": 3600, - "compute":{ - "namespace": "ocean-compute", - "cpus": 2, - "gpus": 4, - "gpuType": "NVIDIA Tesla V100 GPU", - "memory": "128M", - "volumeSize": "2G", - "allowRawAlgorithm": false, - "allowNetworkAccess": true, - "publisherTrustedAlgorithmPublishers": ["0x234", "0x235"], - "publisherTrustedAlgorithms": [ + "compute": { + "namespace": "ocean-compute", + "cpus": 2, + "gpus": 4, + "gpuType": "NVIDIA Tesla V100 GPU", + "memory": "128M", + "volumeSize": "2G", + "allowRawAlgorithm": false, + "allowNetworkAccess": true, + "publisherTrustedAlgorithmPublishers": ["0x234", "0x235"], + "publisherTrustedAlgorithms": [ { "did": "did:op:123", "filesChecksum": "100",