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: docs-kits/kits/industry-core-kit/software-development-view/digital-twins.mdx
+59-14Lines changed: 59 additions & 14 deletions
Original file line number
Diff line number
Diff line change
@@ -283,9 +283,40 @@ Further information about the data transfer of submodels can be found in the [Di
283
283
284
284
#### Cloud-to-Cloud Parquet File Transfer with EDC Cloud Extension
285
285
286
-
1.`Provider` has a parquet file which needs to be shared with consumer.
287
-
2.`Provider` uploads the parquet file to the cloud (S3 bucket in our case)
288
-
3.`Provider` creates an EDC asset for S3 bucket. The `dataAddress` includes information about the S3 bucket and the file name:
286
+
```mermaid
287
+
sequenceDiagram
288
+
participant PRO as Data Provider
289
+
participant Con as Data Consumer
290
+
participant PEDC as Provider EDC <br/>Control Plane
291
+
participant DTR as Digital Twin Registry
292
+
participant SM as Submodel Server
293
+
participant PAWS as Provider AWS Cloud
294
+
participant CAWS as Consumer AWS Cloud
295
+
296
+
autonumber
297
+
PRO->>PAWS: Provider uploads the parquet file to the cloud
298
+
PRO->>PEDC: Provider creates an EDC asset for S3 bucket
299
+
PRO->>PEDC: Provider creates an EDC asset for Submodel <br>pointing to Aspect Model `QualityParquetExchange`
300
+
PRO->>DTR: Provider creates a shell with Shell Descriptors and the edc Asset with controlplane URL
301
+
Note right of DTR: Shell Descriptor contains the<br>Submodel with above EDC asset
302
+
Con->>PEDC: negotiate for DTR and retrieve token
303
+
PEDC-->>Con: access token
304
+
Con->>DTR: GET {{provider-data.plane}}/lookup/shells?assetIds=xyz&assetIds=abc
305
+
DTR-->>Con: aas-id
306
+
Con->>DTR: GET {{provider-data.plane}}/shell-descriptors/{{aas-id}} <br/> with aas-id encoded base64url
307
+
DTR-->>Con: shell-descriptor including the <br/> submodel's Dataset-ID (subprotocolBody)
308
+
Con->>PEDC: negotiate for Dataset and retrieve token
309
+
PEDC-->>Con: access token
310
+
Con->>SM: GET {{submodel-descriptor/href}}/$value
311
+
SM-->>Con: data
312
+
Note left of Con: Submodel contains the parquet<br>file assetID information
313
+
Con->>PEDC: Consumer reads submodel data,<br>starts EDC negotiation for parquet and<br>provides its own bucket details
314
+
PAWS->>CAWS: Provider uploads parquet file to consumer<br>AWS from its own AWS
315
+
CAWS-->>Con: Consumer can download the file directly from its AWS cloud
316
+
```
317
+
318
+
1.`Provider` uploads the parquet file to the cloud (S3 bucket in our case)
319
+
2.`Provider` creates an EDC asset for S3 bucket. The `dataAddress` includes information about the S3 bucket and the file name:
289
320
290
321
```json
291
322
{
@@ -299,11 +330,11 @@ Further information about the data transfer of submodels can be found in the [Di
299
330
300
331
See also full example here: [edc-asset for file transfer](https://eclipse-tractusx.github.io/docs-kits/kits/Quality-Kit/Software%20Development%20View/Specification%20Quality%20Kit/)
301
332
302
-
4.`Provider` creates another EDC asset for Submodel pointing to Aspect Model `QualityParquetExchange`. This aspect model will contain the information (assetID, Dataplane URL and Controlplane URl) for AmazonS3 EDC asset created by provider in step 3.
303
-
5.`Provider` creates a shell with Shell Descriptors and the edc Asset with controlplane URL. This Shell Descriptor contains the Submodel Descriptor which refers to EDC asset created in step 4.
304
-
6.`Consumer` calls the DTR via EDC Dataplane and reads the Submodel Descriptor for `QualityParquetExchange` aspect model from the Shell Descriptor.
305
-
7.`Consumer` calls Submodel Server using Dataplane URL, which is setup by the provider and in response receives the information (assetID, Dataplane URl and Controlplane URL) for AmazonS3 EDC asset created by provider in step 3.
306
-
8.`Consumer` starts negotiation/transfer process and provides its own bucket information:
333
+
3.`Provider` creates another EDC asset for Submodel pointing to Aspect Model `QualityParquetExchange`. This aspect model will contain the information (assetID, Dataplane URL and Controlplane URl) for AmazonS3 EDC asset created by provider in step 3.
334
+
4.`Provider` creates a shell with Shell Descriptors and the edc Asset with controlplane URL. This Shell Descriptor contains the Submodel Descriptor which refers to EDC asset created in step 4.
335
+
5.`Consumer` calls the DTR via EDC Dataplane and reads the Submodel Descriptor for `QualityParquetExchange` aspect model from the Shell Descriptor.
336
+
6.`Consumer` calls Submodel Server using Dataplane URL, which is setup by the provider and in response receives the information (assetID, Dataplane URl and Controlplane URL) for AmazonS3 EDC asset created by provider in step 3.
337
+
7.`Consumer` starts negotiation/transfer process and provides its own bucket information:
307
338
308
339
```json
309
340
{
@@ -317,8 +348,8 @@ See also full example here: [edc-asset for file transfer](https://eclipse-tractu
317
348
}
318
349
```
319
350
320
-
9.`Provider` retrieve the request and download the requested Parquet file from bucket and upload it to the consumer bucket.
321
-
10.`Consumer` can download the file from their own bucket.
351
+
8.`Provider` retrieve the request and download the requested Parquet file from bucket and upload it to the consumer bucket.
352
+
9.`Consumer` can download the file from their own bucket.
322
353
323
354
#### Submodel Descriptor which provided information to retrieve/transfer Parquet file
324
355
@@ -353,7 +384,7 @@ The Submodel Descriptor for Parquet file information can be defined like:
@@ -368,16 +399,30 @@ The Submodel Descriptor for Parquet file information can be defined like:
368
399
}
369
400
```
370
401
371
-
**Aspect model QualityParquetExchange can be found in Semantic Modeling repository [Github](https://github.com/eclipse-tractusx/sldt-semantic-models/)**
| href | Dataplane URL | This Dataplane URl returns aspect model QualityParquetExchange |
376
405
| subprotocolBody | id=edc-asset-id;dspEndpoint=controlplane-url | Includes information about provider edc controlplane and edc-asset ID |
377
406
| subprotocolBodyEncoding | plain | Encoding type for Submodel response |
378
-
| semanticId.keys[].value | urn:bamm:io.catenax.Quality:1.0.0#QualityParquetExchange | Aspect model which provides information (assetID, Dataplane URl and Controlplane URL) for AmazonS3 EDC asset |
407
+
| semanticId.keys[].value | urn:samm:io.catenax.quality.parquet_exchange:1.0.0#ParquetExchange| Aspect model which provides information (assetID, Dataplane URl and Controlplane URL) for AmazonS3 EDC asset |
379
408
| description[].text | submodel-descriptor for quality usecase which provides data for parquet file to be transferred via EDC. | Further description for the consumer. |
380
409
410
+
**Aspect model QualityParquetExchange can be found in Semantic Modeling repository [Github](https://github.com/eclipse-tractusx/sldt-semantic-models/)**
411
+
412
+
A sample payload for QualityParquetExchange aspect model is described below:
0 commit comments