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
Copy file name to clipboardExpand all lines: EVES/EVES-003/eves-003.md
+18-8Lines changed: 18 additions & 8 deletions
Display the source diff
Display the rich diff
Original file line number
Diff line number
Diff line change
@@ -83,6 +83,10 @@ The following process is implemented in the [ENVITED-X Data Space][12] portal de
83
83
- Validate the `domainMetadata.json`:
84
84
1. Extract SHACL constraints from the `domainMetadata.json` context.
85
85
2. Validate JSON structure against domain-specific SHACLs.
86
+
- Validate if items in `hasReferencedArtifacts` are available:
87
+
1. Check if access role is `isPublic`, OPTIONALLY check if filePath resolves.
88
+
2. Check if access role is `isOwner` or `isRegistered` and if `@id` of asset is known in the database.
89
+
3. It is RECOMMENDED to warn the user if references do not exist.
86
90
87
91
#### Step 2: Upload Asset to ENVITED-X Data Space
88
92
@@ -93,7 +97,8 @@ The following process is implemented in the [ENVITED-X Data Space][12] portal de
93
97
- Store `isPublic` metadata at `https://ipfs.envited-x.net/Asset-CID/Data-CID`.
94
98
- Calculate CIDs for all `isPublic` data.
95
99
- Create `tzip21_manifest.json` by replacing relative paths in `manifest_reference.json` with IPFS/envited-x.net URLs.
96
-
- Replace `@id` from `manifest_reference.json` with generated UUID in `tzip21_manifest.json`.
100
+
- Replace the paths of items in `hasReferencedArtifacts` to the correct filePaths.
101
+
- Replace `@id` from `manifest_reference.json` with generated database `UUID` in `tzip21_manifest.json`.
97
102
- Create `tzip21_token_metadata.json` and map the metadata fields OPTIONALLY use an application/ld+json conform to the [tzip21 ontology][19].
98
103
99
104
#### Step 3: Preview Data
@@ -113,10 +118,14 @@ The following process is implemented in the [ENVITED-X Data Space][12] portal de
113
118
#### Step 5: Listener and Database Synchronization
114
119
115
120
- Use a listener to detect mint events and synchronize data with the ENVITED-X Data Space portal database.
116
-
- Verify that data referenced in the token metadata is the same as stored in Step 2).
117
-
- If asset is not yet in DB then mark it as foreign asset and add the `publisher` information to the DB.
118
-
- Verify the asset in reverse order as in step 1).
119
-
- Only public information of assets can be verified if uploaded through another application than ENVITED-X.
121
+
- A data space like the ENVITED-X Data Space MUST check if the asset was uploaded through its respective portal:
122
+
-`UUID` from step 2) has an entry in the database.
123
+
- Confirm that `contract` + `CID` and `minter` of tzip21_token_metadata.json are the same as in the database.
124
+
- Confirm that the entries `UUID` and `@id` of the asset are unique.
125
+
- OPTIONALLY check if the EIP-712 signature of the tzip21_token_metadata.json matches the user who initiated the mint (SHALL only be known to the respective portal).
126
+
- If the asset is not yet in DB OPTIONALLY mark it as foreign asset and add the `publisher` information to the DB.
127
+
- It is RECOMMENDED to verify the asset in reverse order as in step 1).
128
+
- Only public information of assets can be verified if uploaded through another portal than ENVITED-X data space.
120
129
121
130
### 5. Database Synchronization
122
131
@@ -127,6 +136,7 @@ The following process is implemented in the [ENVITED-X Data Space][12] portal de
127
136
- The CIDs MAY be signed by the user according to EIP-712.
128
137
- A UUID MUST be generated for the `tzip21_manifest.json` pre-mint to link the asset with the ENVITED-X database securely.
129
138
- The DID of the member associated with the user minting the asset MUST be known.
139
+
- DID of the user minting the asset SHALL be stored pre-mint in the database.
130
140
131
141
#### Pre-Mint Information
132
142
@@ -155,10 +165,10 @@ Examples are the first five tags or "publishers", which is always ENVITED-X and
0 commit comments