From 2a40ca9a16cf1daacd4459c9a5189dcf74674d64 Mon Sep 17 00:00:00 2001 From: Christian Rehm Date: Wed, 31 Jul 2024 14:17:35 +0200 Subject: [PATCH] chore(documentation): Update and fix documentation --- .../administration/backend-configuration.adoc | 30 +-- .../docs/administration/configuration.adoc | 2 - .../frontend-configuration.adoc | 5 +- .../src/docs/administration/installation.adoc | 2 +- .../administration/portal-configuration.adoc | 56 ++--- .../docs/administration/system-overview.adoc | 16 +- .../docs/administration/troubleshooting.adoc | 2 +- .../arc42/architecture-constraints/index.adoc | 5 +- .../building-block-view/blackbox-overall.adoc | 5 +- .../arc42/building-block-view/level-1.adoc | 17 +- .../architecture-design-patterns.adoc | 5 +- .../cross-cutting/development-concepts.adoc | 30 +-- .../arc42/cross-cutting/domain-concepts.adoc | 2 - .../entity-relationship-model.adoc | 2 +- .../cross-cutting/operational-concepts.adoc | 2 +- .../arc42/cross-cutting/safety-security.adoc | 11 +- .../arc42/cross-cutting/under-the-hood.adoc | 8 +- .../src/docs/arc42/deployment-view/index.adoc | 1 - .../docs/arc42/deployment-view/level-0.adoc | 1 - docs/src/docs/arc42/full.adoc | 1 - docs/src/docs/arc42/glossary.adoc | 2 +- .../docs/arc42/introduction-goals/index.adoc | 3 +- .../introduction-goals/quality-goals.adoc | 2 +- .../introduction-goals/requirements.adoc | 4 +- .../arc42/introduction-goals/stakeholder.adoc | 2 +- docs/src/docs/arc42/quality/index.adoc | 1 - .../docs/arc42/quality/quality-scenarios.adoc | 14 +- .../assets/return-all-assets.adoc | 8 +- .../assets/return-specific-assets.adoc | 8 +- .../arc42/runtime-view/data-consumption.adoc | 6 +- .../arc42/runtime-view/data-provisioning.adoc | 10 +- .../publish-assets-error.adoc | 6 +- .../data-provisioning/publish-assets.adoc | 4 +- .../return-import-report.adoc | 4 +- .../return-asset-contracts.adoc | 13 +- docs/src/docs/arc42/runtime-view/full.adoc | 2 +- .../quality-investigation-receive.adoc | 12 +- .../quality-investigation-send.adoc | 12 +- .../src/docs/arc42/runtime-view/policies.adoc | 26 +- .../docs/arc42/runtime-view/scheduler.adoc | 1 - .../runtime-view/scheduler/scheduler.adoc | 2 +- .../arc42/scope-context/business-context.adoc | 4 + docs/src/docs/arc42/scope-context/index.adoc | 2 +- .../scope-context/technical-context.adoc | 11 +- .../docs/arc42/solution-strategy/index.adoc | 2 +- .../arc42/solution-strategy/introduction.adoc | 2 +- .../arc42/solution-strategy/structure.adoc | 6 +- .../data-import-interface.adoc | 9 +- docs/src/docs/index.adoc | 2 +- docs/src/docs/user/user-manual.adoc | 222 +++++++++--------- ...attern.svg => given-when-then-pattern.svg} | 2 +- ...t_test_naming.svg => unit-test-naming.svg} | 2 +- ...lity_level.svg => vulnerability-level.svg} | 2 +- .../{app_roles.svg => app-roles.svg} | 2 +- ...ign_app_roles.svg => assign-app-roles.svg} | 2 +- ...x_portal_roles.svg => cx-portal-roles.svg} | 2 +- ...w.svg => admin-contract-detailed-view.svg} | 2 +- ...tract_view.svg => admin-contract-view.svg} | 2 +- ..._upload_file.svg => admin-upload-file.svg} | 2 +- ...guration.svg => bpn-edc-configuration.svg} | 2 +- ...s_button.svg => publish-assets-button.svg} | 2 +- ...ssets_view.svg => publish-assets-view.svg} | 2 +- 62 files changed, 297 insertions(+), 332 deletions(-) rename docs/src/images/arc42/cross-cutting/{given_when_then_pattern.svg => given-when-then-pattern.svg} (99%) rename docs/src/images/arc42/cross-cutting/{unit_test_naming.svg => unit-test-naming.svg} (98%) rename docs/src/images/arc42/cross-cutting/{vulnerability_level.svg => vulnerability-level.svg} (99%) rename docs/src/images/user-manual/general-information/{app_roles.svg => app-roles.svg} (99%) rename docs/src/images/user-manual/general-information/{assign_app_roles.svg => assign-app-roles.svg} (99%) rename docs/src/images/user-manual/general-information/{cx_portal_roles.svg => cx-portal-roles.svg} (99%) rename docs/src/images/user-manual/navigation/{admin_contract_detailed_view.svg => admin-contract-detailed-view.svg} (99%) rename docs/src/images/user-manual/navigation/{admin_contract_view.svg => admin-contract-view.svg} (99%) rename docs/src/images/user-manual/navigation/{admin_upload_file.svg => admin-upload-file.svg} (99%) rename docs/src/images/user-manual/navigation/{bpn_edc_configuration.svg => bpn-edc-configuration.svg} (99%) rename docs/src/images/user-manual/parts/{publish_assets_button.svg => publish-assets-button.svg} (99%) rename docs/src/images/user-manual/parts/{publish_assets_view.svg => publish-assets-view.svg} (99%) diff --git a/docs/src/docs/administration/backend-configuration.adoc b/docs/src/docs/administration/backend-configuration.adoc index a89f3d225c..2b3e734f0e 100644 --- a/docs/src/docs/administration/backend-configuration.adoc +++ b/docs/src/docs/administration/backend-configuration.adoc @@ -11,15 +11,12 @@ The OAuth2, Vault configuration / secrets depend on your setup and might need to == Helm configuration Trace-X backend (values.yaml) -[source,yaml] ----- -include::../../../../charts/traceability-foss/values.yaml[lines=121..-1] ----- +https://github.com/eclipse-tractusx/traceability-foss/blob/main/charts/traceability-foss/values.yaml === Values explained ==== -The different profiles for the different supported environments to bootstrap the resources which are required for the respective environment. +The profiles for the different supported environments to bootstrap the resources which are required for the respective environment. |=== |Springprofile | Description @@ -43,13 +40,13 @@ BPN (Business Partner Number) for the traceability app used to identify the part The jdbc connection string to the database. jdbc:postgresql://${url}:${port}/trace ==== -The username of the datasource e.g. "trace" +The username of the datasource e.g. "trace". ==== The password of the datasource or the path to the vault which contains the secret. ==== -Client ID for OAuth2 (KeyCloak). Request this from your Keycloak operator. +Client ID for OAuth2 (Keycloak). Request this from your Keycloak operator. ==== Client secret for OAuth2. Request this from your OAuth2 operator. @@ -64,10 +61,10 @@ The URL of the Keycloak JWK Set. Used by Trace-X to validate tokens when Trace-X The client which is used to authenticate the backend. ==== -The EDC api key or the path to the secret inside a vault. e.g. +The EDC api key or the path to the secret inside a vault. E.g. === -Enables or disables PostgresSQL database. +Enables or disables the PostgresSQL database. === Database password for the *postgres* user or the path to the secret inside a vault. @@ -76,25 +73,22 @@ Database password for the *postgres* user or the path to the secret inside a vau Database password for the application user of the path to the secret inside a vault. === -The name of the database instance. +The name of the database instance. === The user for the database instance. === -Enables or disables the prometheus instance. +Enables or disables the Prometheus instance. === -Enables or disables the grafana instance used for resource and application monitoring. +Enables or disables the Grafana instance used for resource and application monitoring. === -Enables or disables irs helm charts. +Enables or disables IRS helm charts. === -Enables or disables pgadmin4 console for the PostgreSQL database instance +Enables or disables pgAdmin 4 console for the PostgreSQL database instance. === -Enables or disables a K8S Ingress for the pgadmin4 console - - - +Enables or disables a K8S Ingress for the pgAdmin 4 console. diff --git a/docs/src/docs/administration/configuration.adoc b/docs/src/docs/administration/configuration.adoc index e8413e25be..36faf26de9 100644 --- a/docs/src/docs/administration/configuration.adoc +++ b/docs/src/docs/administration/configuration.adoc @@ -5,5 +5,3 @@ include::frontend-configuration.adoc[leveloffset=+1] include::backend-configuration.adoc[leveloffset=+1] include::portal-configuration.adoc[leveloffset=+1] - - diff --git a/docs/src/docs/administration/frontend-configuration.adoc b/docs/src/docs/administration/frontend-configuration.adoc index c0b3d93371..1f2a2fd492 100644 --- a/docs/src/docs/administration/frontend-configuration.adoc +++ b/docs/src/docs/administration/frontend-configuration.adoc @@ -4,7 +4,6 @@ :icons: font :icon-set: fas - Take the following template and adjust the configuration parameters ( mark the relevant spots). You can define the URLs as well as most of the secrets yourself. @@ -12,7 +11,7 @@ The OAuth2, Vault configuration / secrets depend on your setup and might need to == Helm configuration Trace-X frontend (values.yaml) -values.yaml https://github.com/eclipse-tractusx/traceability-foss/blob/main/charts/traceability-foss/values.yaml +https://github.com/eclipse-tractusx/traceability-foss/blob/main/charts/traceability-foss/values.yaml === Values explained @@ -29,7 +28,7 @@ Annotation for the ingress. E.g. `cert-manager.io/cluster-issuer: letsencrypt-pr The hostname of the app. ==== -The tls settings of the app. +The TLS settings of the app. ==== Following Tractus-X Helm Best Practices https://eclipse-tractusx.github.io/docs/release/ diff --git a/docs/src/docs/administration/installation.adoc b/docs/src/docs/administration/installation.adoc index 440e7b5a93..a31ffa5e96 100644 --- a/docs/src/docs/administration/installation.adoc +++ b/docs/src/docs/administration/installation.adoc @@ -24,7 +24,7 @@ $ helm install -f your-values.yaml traceability-foss traceability-foss/traceabil == Dependent values -Following values needs to match in order for application to start and have valid PostgreSQL connection: +Following values need to match in order for application to start and have a valid PostgreSQL connection: [source,yaml] datasource: diff --git a/docs/src/docs/administration/portal-configuration.adoc b/docs/src/docs/administration/portal-configuration.adoc index bd5ec2be35..35054cdc3a 100644 --- a/docs/src/docs/administration/portal-configuration.adoc +++ b/docs/src/docs/administration/portal-configuration.adoc @@ -6,69 +6,69 @@ The following process is required to successfully connect to the portal: -- Company registration with BPN, Company Name +- Company registration with BPN and company name -- User Registration with E-Mail +- User registration with e-mail - Get e-mail to reset your password - Reset the password and log in -- Make sure your user has the role App Management +- Make sure your user has the role 'App Management' -- Navigate to App Overview +- Navigate to 'App Overview' - Create app - Choose a selection of managed roles which is necessary (currently: BPDM, Dataspace Discovery, Semantic Model Management, Identity Wallet Management) -- Wait for app approval by portal +- Wait for app approval by the portal team - Subscribe to the app -- As app creator navigate to subscription management - click on configure +- As app creator navigate to subscription management and click on configure -- Add the frontend url of the application and click approve +- Add the frontend url of the application and click approve -- Save technical user and secret +- Save technical user and secret -- Navigate to Register Connector +- Navigate to 'Register Connector' -- Add managed connector +- Add managed connector -- Select existing technical user (from app subscription) +- Select existing technical user (from app subscription) -- Enter name "EDC Provider A" +- Enter name "EDC Provider A" -- Enter base url of controlplane (EDC) +- Enter base url of control plane (EDC) -- Confirm +- Confirm -- Go to other company which want to participate (subscribe) +- Go to other company which wants to participate (subscribe) -- Login and navigate to app overview +- Login and navigate to app overview -- Search for the app created +- Search for the created app -- Subscribe to the app +- Subscribe to the app -- Go to the app creator company +- Go to the app creator company -- Navigate to the inbox of the portal +- Navigate to the inbox of the portal -- Click on the nav link to give approval for the company which want to subscribe +- Click on the link to give approval for the company which wants to subscribe -- Enter name "EDC Provider B" +- Enter name "EDC Provider B" -- Enter base url of controlplane (EDC) +- Enter base url of control plane (EDC) -- Make sure to popuplate the new client id, secrets and app id within trace-x for each company to let it run properly with the new portal configuration. +- Make sure to populate the new client id, secrets and app id within Trace-X for each company to let it run properly with the new portal configuration. == Company registration https://portal.int.demo.catena-x.net/documentation[How-to] === Additional info -Each instance of trace-x reflects an own company, which is associated with one BPN. +Each instance of Trace-X reflects an own company, which is associated with one BPN. == User registration https://portal.int.demo.catena-x.net/documentation/[How-to] @@ -80,19 +80,19 @@ The user registration is a self-service. Each user can have one or multiple Trac https://portal.int.demo.catena-x.net/documentation/[How-to] === Additional info -A connector in the context of trace-x is a Eclipse-Dataspace-Connector. This connector needs to be configured by the public controlplane URL. +A connector in the context of Trace-X is a Eclipse-Dataspace-Connector. This connector needs to be configured by the public control plane URL. == App registration https://portal.int.demo.catena-x.net/documentation/[How-to] === Additional info -A connector in the context of trace-x is a Eclipse-Dataspace-Connector. This connector needs to be configured by the public controlplane URL. +A connector in the context of trace-x is a Eclipse-Dataspace-Connector. This connector needs to be configured by the public control plane URL. == Create app subscription https://portal.int.demo.catena-x.net/documentation/[How-to] === Additional info -An app subscription is necessary to be able to setup a frontend url which will be authorized through keycloak and accessible with the portal. +An app subscription is necessary to be able to set up a frontend url which will be authorized through Keycloak and accessible with the portal. == Activate App subscription https://portal.int.demo.catena-x.net/documentation/[How-to] diff --git a/docs/src/docs/administration/system-overview.adoc b/docs/src/docs/administration/system-overview.adoc index 2677ec8c1e..57f9e81fa4 100644 --- a/docs/src/docs/administration/system-overview.adoc +++ b/docs/src/docs/administration/system-overview.adoc @@ -5,11 +5,10 @@ The deployment contains the components required to connect Trace-X to an existin * Trace-X frontend * Trace-X backend - Optionally these components can be installed using the Trace-X backend Helm chart as well: * PostgreSQL for Trace-X backend -* pgadmin4 +* pgAdmin 4 * IRS * EDC consumer @@ -28,12 +27,10 @@ Currently, Trace-X API handles three roles: **'User'** and **'Supervisor'** and | Category | Action | User | Supervisor | Admin | View | View Dashboard | x | x | x | | View Parts | x | x | x -| | View Other parts | x | x | x | | View Quality notifications | x | x | x -| | View Administration | | | x -| Edit | Edit Quality notifications | | x | - +| | View Administration panel | | | x | Quality notification | Create | x | x | +| | Edit | x | x | | | Send (Approve) | | x | | | Read | x | x | x | | Cancel | x | x | @@ -43,9 +40,6 @@ Currently, Trace-X API handles three roles: **'User'** and **'Supervisor'** and | | Close | | x | | Administration panel | Access "BPN EDC config panel" | | | x -| | Access "Registry lookup Panel" | | | x -| | Access "Data Import Interface" | | | x - +| | Access "Registry lookup panel" | | | x +| | Access "Data import interface" | | | x |=== - - diff --git a/docs/src/docs/administration/troubleshooting.adoc b/docs/src/docs/administration/troubleshooting.adoc index fa3a7a85b1..248fbca6b9 100644 --- a/docs/src/docs/administration/troubleshooting.adoc +++ b/docs/src/docs/administration/troubleshooting.adoc @@ -1,3 +1,3 @@ = Troubleshooting -Coming soon... \ No newline at end of file +Coming soon... diff --git a/docs/src/docs/arc42/architecture-constraints/index.adoc b/docs/src/docs/arc42/architecture-constraints/index.adoc index d6add6e7b8..aab10a939e 100644 --- a/docs/src/docs/arc42/architecture-constraints/index.adoc +++ b/docs/src/docs/arc42/architecture-constraints/index.adoc @@ -33,14 +33,12 @@ |Trace-X needs to be Catena-X compliant and the application has to follow the CX standards as well as interact with the core services and components. |Release as open source -|The source code - at least partially - is made available as open source and can be found in Github Catena-X ng as well as in Eclipse Tractus-X. +|The source code - at least partially - is made available as open source and can be found in GitHub Catena-X ng as well as in Eclipse Tractus-X. |Technology Readiness Level (TRL) for products developed within the CX consortia |As Trace-X is a reference implementation, the Technology Readiness Level (TRL) must not be above TRL 8. |=== - - == Political constraints |=== @@ -63,5 +61,4 @@ |Test coverage |More than 80% of the complete source code has to be test covered. - |=== diff --git a/docs/src/docs/arc42/building-block-view/blackbox-overall.adoc b/docs/src/docs/arc42/building-block-view/blackbox-overall.adoc index f16c3c7635..14f9c2c115 100644 --- a/docs/src/docs/arc42/building-block-view/blackbox-overall.adoc +++ b/docs/src/docs/arc42/building-block-view/blackbox-overall.adoc @@ -13,15 +13,14 @@ include::../../../uml-diagrams/arc42/building-block-view/whitebox_overall.puml[] |Components |Description |IRS -|The IRS consumes relationship information across the CX-network and builds the graph view. Within this documentation, the focus lies on the IRS. +|The IRS consumes relationship information across the CX-network and builds the graph view. |EDC consumer -|The EDC consumer component is there to fulfill the GAIA-X and IDSA-data sovereignty principles. The EDC consumer consists out of a control plane and a data plane. +|The EDC consumer component is there to fulfill the GAIA-X and IDSA-data sovereignty principles. The EDC consumer is composed of a control plane and a data plane. |EDC provider |The EDC provider component connects with EDC consumer component and forms the endpoint for the actual exchange of data. It handles automatic contract negotiation and the subsequent exchange of data assets for connected applications. |Submodel server |The submodel server offers endpoints for requesting the submodel aspects. - |=== diff --git a/docs/src/docs/arc42/building-block-view/level-1.adoc b/docs/src/docs/arc42/building-block-view/level-1.adoc index f30aeee10f..0dcdab1886 100644 --- a/docs/src/docs/arc42/building-block-view/level-1.adoc +++ b/docs/src/docs/arc42/building-block-view/level-1.adoc @@ -13,33 +13,32 @@ include::../../../uml-diagrams/arc42/building-block-view/building-block-view.pum |Components |Description |*Trace-X* -|*Trace-X* is a system allowing the user to review the parts/assets catalogue, start a quality investigations and receive quality alerts. +|*Trace-X* is a system allowing the user to review the parts / assets catalog and send / receive quality notifications related to those parts. |*Trace-X API* -|The *Trace-X API* is the interface over which the data consumer is communicating. +|The *Trace-X API* is the interface through which the data consumer is communicating. |*AssetsController* -|The *AssetsController* provides a REST interface for retrieving the parts/assets information. +|The *AssetsController* provides a REST interface for retrieving asset information. |*DashboardController* -|The *DashboardController* provides a REST interface for retrieving overall statistics displayed on a dashboard screen. +|The *DashboardController* provides a REST interface for retrieving overall statistics displayed on the dashboard screen. |*RegistryController* -|The *RegistryController* provides a REST interface for retrieving the data from parts registry. +|The *RegistryController* provides a REST interface for retrieving data from the assets registry. |*ImportController* |The *ImportController* provides a REST interface for importing assets and publishing them in the Catena-X network. |*AssetRepository* -|The *AssetRepository* is a component responsible for storing and getting assets from database. +|The *AssetRepository* is a component responsible for storing and getting assets from the database. |*BPNRepository* |The *BPNRepository* is a component which stores BPN -> company name mappings. |*NotificationsRepository* -|The *NotificationsRepository* is a component responsible for storing and holding status of sent/received notifications. +|The *NotificationsRepository* is a component responsible for storing the status and data of sent and received notifications. |*Database* -|The *database* is a place for storing assets, relations as well as sent/received notifications. - +|The *database* is a place for storing assets, relations and notifications. |=== diff --git a/docs/src/docs/arc42/cross-cutting/architecture-design-patterns.adoc b/docs/src/docs/arc42/cross-cutting/architecture-design-patterns.adoc index 1031159bd4..555ce46c30 100644 --- a/docs/src/docs/arc42/cross-cutting/architecture-design-patterns.adoc +++ b/docs/src/docs/arc42/cross-cutting/architecture-design-patterns.adoc @@ -8,7 +8,7 @@ *** Optional: subdomain name (in case of inheritance) → following same structure as main domain *** Mapper: holds the mapper of transforming domain models to response models *** Service: holds the interface for implementation in the domain package -*** REST: holds the controller for providing the api for the domain +*** REST: holds the controller for providing the API for the domain ** Domain *** Optional: subdomain name (in case of inheritance) *** Model: holds the domain model @@ -19,5 +19,4 @@ *** Model: holds the technical entities *** Repository: holds the data access layer **** E.g. JPARepository / Impl -** All models (request / response) used in the API should be saved in the tx-model project. -To be reusable for cucumber testing. +** All models (request / response) used in the API should be saved in the tx-model project to be reusable for cucumber testing. diff --git a/docs/src/docs/arc42/cross-cutting/development-concepts.adoc b/docs/src/docs/arc42/cross-cutting/development-concepts.adoc index fc642fc9e2..f05cbfba9f 100644 --- a/docs/src/docs/arc42/cross-cutting/development-concepts.adoc +++ b/docs/src/docs/arc42/cross-cutting/development-concepts.adoc @@ -12,9 +12,9 @@ New submodules should be created with care and require a review by the team. The Maven build alone only leads up to the JAR artifact of Trace-X. To create Docker images, the Docker build feature is used. -This copies all resources into a builder image, builds the software and creates a final Docker image at the end that can then be deployed. +This copies all resources into a build image, builds the software and creates a final Docker image at the end that can then be deployed. -Although the Docker image can be deployed in various ways, the standard solution are the provided Helm charts, which describe the required components as well. +Although the Docker image can be deployed in various ways, the standard solution is to use the provided Helm charts, which describe the required components as well. == Code generation @@ -34,7 +34,7 @@ The generated OpenAPI specification file is automatically compared to a fixed, s == Migration -Data migration is handled by flyway. +Data migration is handled by Flyway. == Configurability @@ -47,13 +47,13 @@ The operator must have total control over the configuration of Trace-X. == Java style guide -We generally follow the link:https://google.github.io/styleguide/javaguide.html[Google Java Style Guide]. +We generally follow the link:https://google.github.io/styleguide/javaguide.html[Google Java style guide]. == API guide -We generally follow the link:https://swagger.io/specification/[OpenAPI Specification]. +We generally follow the link:https://swagger.io/specification/[OpenAPI specification]. -== Docomentation style guide +== Documentation style guide We generally follow the link:https://developers.google.com/style[Google developer documentation style guide]. @@ -65,19 +65,19 @@ We generally follow the link:https://developers.google.com/style[Google develope * Writing methods which provide a response to be better testable (avoid void if feasible). * Naming of unit tests are as follows: -image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/arc42/cross-cutting/unit_test_naming.svg[] +image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/arc42/cross-cutting/unit-test-naming.svg[] -* Use given/when/then pattern for unit test structuring. +* Use the given / when / then pattern for unit test structuring. E.g: -image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/arc42/cross-cutting/given_when_then_pattern.svg[] +image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/arc42/cross-cutting/given-when-then-pattern.svg[] === Integration testing Each public API should have at least two integration tests (positive / negative). -For integration testing, the `+tx-backend/src/main/resources/application-integration.yml+` is used. +For integration testing, the file `+tx-backend/src/main/resources/application-integration.yml+` is used. Additionally, you need to have a local Docker environment running. -For this, we recommend link:https://rancherdesktop.io/[Rancher Dektop]. +For this, we recommend link:https://rancherdesktop.io/[Rancher Desktop]. == Clean code @@ -85,9 +85,9 @@ We follow the rules and behaviour of: https://clean-code-developer.com/. == Secure coding standards -As there is no other guideline of C-X, we fix any vulnerabilities, exposures, flaw detected by one of our SAST, DAST, Pentesting tools which is higher than "Very Low". +As there is no other guideline of C-X, we fix any vulnerabilities, exposures, flaws detected by one of our SAST, DAST, pen testing tools which are higher than "Very Low". -image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/arc42/cross-cutting/vulnerability_level.svg[] +image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/arc42/cross-cutting/vulnerability-level.svg[] == Trace-X technical class responsibilities @@ -95,7 +95,7 @@ image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main * Has only one dependency to a facade or a service or a validator annotation * Has no own logic -* Includes the swagger documentation annotations +* Includes the Swagger documentation annotations * Has an integration test class * Uses a static mapper to transform a domain model into the response model * Returns a ResponseEntity @@ -139,5 +139,5 @@ image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main * Using builder pattern ** Currently, we are using the constructor to create objects in our application. Main reason is to provide immutable objects. -** As the handling with big loaded constructors is not easy and error prone, it's recommended to use the builder pattern to have a clear understanding about what we are creating at the point of implementation. +** As the handling with big loaded constructors is not easy and error-prone, it's recommended to use the builder pattern to have a clear understanding about what we are creating at the point of implementation. * Using lombok for annotation processing diff --git a/docs/src/docs/arc42/cross-cutting/domain-concepts.adoc b/docs/src/docs/arc42/cross-cutting/domain-concepts.adoc index e2e9685c61..301083f1e6 100644 --- a/docs/src/docs/arc42/cross-cutting/domain-concepts.adoc +++ b/docs/src/docs/arc42/cross-cutting/domain-concepts.adoc @@ -17,5 +17,3 @@ include::../../../uml-diagrams/arc42/cross-cutting/domain-model/domain-model.pum .... include::../../../uml-diagrams/arc42/cross-cutting/domain-model/domain-model-quality-notifications.puml[] .... - - diff --git a/docs/src/docs/arc42/cross-cutting/entity-relationship-model.adoc b/docs/src/docs/arc42/cross-cutting/entity-relationship-model.adoc index 598f55935e..3786d7bf8a 100644 --- a/docs/src/docs/arc42/cross-cutting/entity-relationship-model.adoc +++ b/docs/src/docs/arc42/cross-cutting/entity-relationship-model.adoc @@ -1,6 +1,6 @@ = Entity-relationship model -Please be informed that the 'as-planned' version currently lacks the database relations. However, kindly maintain the Entity-relationship model (ERM) in its current state. +Please be informed that the 'as-planned' version currently lacks the database relations. [plantuml, format=svg] .... diff --git a/docs/src/docs/arc42/cross-cutting/operational-concepts.adoc b/docs/src/docs/arc42/cross-cutting/operational-concepts.adoc index 4c541ecf70..a7758b6726 100644 --- a/docs/src/docs/arc42/cross-cutting/operational-concepts.adoc +++ b/docs/src/docs/arc42/cross-cutting/operational-concepts.adoc @@ -15,7 +15,7 @@ Once the Docker image has been built, these values can only be overwritten using ==== Helm chart The most relevant config properties are exposed as environment variables and must be set in the Helm chart for the application to be able to run. -Check the Trace-X Helm chart in Git for all available variables. +Check the Trace-X Helm chart in GitHub for all available variables. == Scaling diff --git a/docs/src/docs/arc42/cross-cutting/safety-security.adoc b/docs/src/docs/arc42/cross-cutting/safety-security.adoc index a0e3ac90b2..3af5b8e89d 100644 --- a/docs/src/docs/arc42/cross-cutting/safety-security.adoc +++ b/docs/src/docs/arc42/cross-cutting/safety-security.adoc @@ -13,7 +13,7 @@ The JWT token should also contain two claims: The list of values will be converted to roles by Trace-X. Currently, Trace-X API handles three roles: **'User'** and **'Supervisor'** and **'Admin'.** -You can have a look at the https://github.com/eclipse-tractusx/traceability-foss/blob/main/docs/src/docs/administration/system-overview.adoc#rights-and-role-matrix-of-trace-x[rights and role matrix] in the system overview of the administration guide. +The roles and their functions are documented in the https://github.com/eclipse-tractusx/traceability-foss/blob/main/docs/src/docs/administration/system-overview.adoc#rights-and-role-matrix-of-trace-x[rights and role matrix] in the system overview of the administration guide. === Trace-X as EDC client @@ -26,12 +26,9 @@ The VC identifies and authenticates the EDC and is used to acquire access permis A second port, called the trusted port, has been introduced which can only be accessed by internal services within the Kubernetes cluster. This measure is implemented to handle APIs that are difficult to secure and involve several systems and processes. The trusted port ensures that only internal, trusted components can access these sensitive APIs, enhancing overall security. -- Quality notification callback APIs (receive, update) - called by EDC Dataplane -- Endpoint Data Reference callback API - called by EDC Controlplane +- Quality notification callback APIs (receive, update) - called by EDC data plane +- Endpoint Data Reference callback API - called by EDC control plane == Credentials -Credentials must never be stored in Git! - - - +Credentials must never be stored in GitHub! diff --git a/docs/src/docs/arc42/cross-cutting/under-the-hood.adoc b/docs/src/docs/arc42/cross-cutting/under-the-hood.adoc index 8ebcbe7445..f4491b3289 100644 --- a/docs/src/docs/arc42/cross-cutting/under-the-hood.adoc +++ b/docs/src/docs/arc42/cross-cutting/under-the-hood.adoc @@ -34,10 +34,10 @@ Of course, when using only RuntimeExceptions, this is not necessary - but those There will always be some exception that cannot be handled inside the code correctly - or it may just have been unforeseen. A central fallback exception handler is required so all problems are visible in the log and the API always returns meaningful responses. -In some cases, this is as simple as a HTTP 500. +In some cases, this is as simple as an HTTP 500. -==== Dont expose too much exception details over API +==== Don't expose too much exception details over API -It's good to inform the user, why their request did not work, but only if they can do something about it (HTTP 4xx). +It's good to inform the user why their request did not work, but only if they can do something about it (HTTP 4xx). So in case of application problems, you should not expose details of the problem to the caller. -This way, we avoid opening potential attack vectors. +This way we avoid opening potential attack vectors. diff --git a/docs/src/docs/arc42/deployment-view/index.adoc b/docs/src/docs/arc42/deployment-view/index.adoc index d1dd02ff7d..b85e3f0068 100644 --- a/docs/src/docs/arc42/deployment-view/index.adoc +++ b/docs/src/docs/arc42/deployment-view/index.adoc @@ -1,2 +1 @@ = Deployment view - diff --git a/docs/src/docs/arc42/deployment-view/level-0.adoc b/docs/src/docs/arc42/deployment-view/level-0.adoc index e65e810c48..121a3c7fd1 100644 --- a/docs/src/docs/arc42/deployment-view/level-0.adoc +++ b/docs/src/docs/arc42/deployment-view/level-0.adoc @@ -1,2 +1 @@ = Level 0 - Cluster overview - diff --git a/docs/src/docs/arc42/full.adoc b/docs/src/docs/arc42/full.adoc index 49685831ec..317277744f 100644 --- a/docs/src/docs/arc42/full.adoc +++ b/docs/src/docs/arc42/full.adoc @@ -14,7 +14,6 @@ This work is licensed under the [Apache-2.0](https://www.apache.org/licenses/LIC * Source URL: https://github.com/eclipse-tractusx/traceability-foss - include::introduction-goals/index.adoc[leveloffset=+1] :imagesdir: architecture-constraints include::architecture-constraints/index.adoc[leveloffset=+1] diff --git a/docs/src/docs/arc42/glossary.adoc b/docs/src/docs/arc42/glossary.adoc index ed607f07d6..c71ad375de 100644 --- a/docs/src/docs/arc42/glossary.adoc +++ b/docs/src/docs/arc42/glossary.adoc @@ -34,7 +34,7 @@ |**F**ree and **O**pen **S**ource **S**oftware |Interoperability -|Communication and interaction with other components or Catena-X partners/players +|Communication and interaction with other components or Catena-X partners / players |IRS |**I**tem **R**elationship **S**ervice. Component to provide data chains. https://eclipse-tractusx.github.io/item-relationship-service/docs/arc42/[IRS architecture documentation (arc42)] diff --git a/docs/src/docs/arc42/introduction-goals/index.adoc b/docs/src/docs/arc42/introduction-goals/index.adoc index 57a0499734..ce58053af5 100644 --- a/docs/src/docs/arc42/introduction-goals/index.adoc +++ b/docs/src/docs/arc42/introduction-goals/index.adoc @@ -1,7 +1,6 @@ = Introduction and goals -This chapter gives you an overview about the goals of the service, -in which context the service runs and which stakeholders are involved. +This chapter gives you an overview about the goals of the service, in which context the service runs and which stakeholders are involved. include::requirements.adoc[leveloffset=+1] include::quality-goals.adoc[leveloffset=+1] diff --git a/docs/src/docs/arc42/introduction-goals/quality-goals.adoc b/docs/src/docs/arc42/introduction-goals/quality-goals.adoc index 77a856dd76..024bc688fb 100644 --- a/docs/src/docs/arc42/introduction-goals/quality-goals.adoc +++ b/docs/src/docs/arc42/introduction-goals/quality-goals.adoc @@ -12,7 +12,7 @@ The following table entries define overall Trace-X quality goals. The order of t |Enable SMEs to large enterprises. |Cloud agnostic solution -|Trace-X is built as a reference architecture and able to be run on different cloud solutions. It uses Helm, i.e. Helm charts, so that it can easily be deployed on different systems. +|Trace-X is built as a reference architecture and able to be run on different cloud solutions. It uses Helm charts so that it can easily be deployed on different systems. |Trustworthy application |Trace-X uses the Catena-X standards as a basis to fulfill the interoperability (with commercial as well as other solutions) and data sovereignty requirements. diff --git a/docs/src/docs/arc42/introduction-goals/requirements.adoc b/docs/src/docs/arc42/introduction-goals/requirements.adoc index 3d57204589..493390b96d 100644 --- a/docs/src/docs/arc42/introduction-goals/requirements.adoc +++ b/docs/src/docs/arc42/introduction-goals/requirements.adoc @@ -1,13 +1,15 @@ = Requirements overview == What is the purpose of the Trace-X application + * Empower all companies from SMEs to large OEMs to participate in parts traceability with an open-source solution to easily take part in the Catena-X traceability use case. * It is a standalone application which can be self-hosted. * Display the relations of the automotive value chain based on a standardized IT model. * Overview and transparency across the supplier network enable faster intervention based on recorded events in the supply chain. -* Notifications/Messages regarding quality-related incidents and a tool for inspecting the supply chain. +* Notifications & Messages regarding quality-related incidents and a tool for inspecting the supply chain. == Essential features + * List, view and publish manufactured parts based on BoM AsBuild * List, view and publish planned parts based on BoM AsPlanned * Filter and search functionality on part views diff --git a/docs/src/docs/arc42/introduction-goals/stakeholder.adoc b/docs/src/docs/arc42/introduction-goals/stakeholder.adoc index 0c73f9bc79..9763b1b22a 100644 --- a/docs/src/docs/arc42/introduction-goals/stakeholder.adoc +++ b/docs/src/docs/arc42/introduction-goals/stakeholder.adoc @@ -1,6 +1,6 @@ = Stakeholder -The following table presents the stakeholders of Trace-X and their respective intentions. +The following table presents the stakeholders of Trace-X and their respective interests. |=== |Who |Matters and concern diff --git a/docs/src/docs/arc42/quality/index.adoc b/docs/src/docs/arc42/quality/index.adoc index 2908b56e80..a57a6ab80c 100644 --- a/docs/src/docs/arc42/quality/index.adoc +++ b/docs/src/docs/arc42/quality/index.adoc @@ -4,4 +4,3 @@ This section includes concrete quality scenarios to better capture the key quali include::quality-tree.adoc[leveloffset=+1] include::quality-scenarios.adoc[leveloffset=+1] - diff --git a/docs/src/docs/arc42/quality/quality-scenarios.adoc b/docs/src/docs/arc42/quality/quality-scenarios.adoc index 88d47bf973..fc7008f8fd 100644 --- a/docs/src/docs/arc42/quality/quality-scenarios.adoc +++ b/docs/src/docs/arc42/quality/quality-scenarios.adoc @@ -6,19 +6,19 @@ The initial letters of the scenario identifiers (IDs) in the following table eac |ID |Scenario |M01 -|A developer with basic knowledge of the traceability use case looks for an introduction to the traceability architecture. He or she gets the idea of essential design very fast. +|Developers with basic knowledge of the traceability use case look for an introduction to the traceability architecture. They get the idea of essential design very fast. |M02 -|A senior developer looks for a reference implementation of the traceability use case functionalities. He or she gets it within the source code. +|Senior developers look for a reference implementation of the traceability use case functionalities. They get it within the source code. |M03 -|A developer wants to implement new features. He or she is able to add it to the source code easily. +|Developers want to implement new features. They are able to add it to the source code easily. |M04 -|A developer wants to implement a new frontend or change some components. The efforts can be reduced by using the standardized API endpoints to do so. +|Developers want to implement a new frontend or change some components. The efforts can be reduced by using the standardized API endpoints to do so. |I01 -|A user wants to switch from FOSS application to a COTS application or the other way round. This is possible since the application is interoperable with other applications within the CX network. +|Users want to switch from a FOSS application to a COTS application or the other way round. This is possible since the application is interoperable with other applications within the CX network. |F01 |The application uses the Catena-X standards to ensure the correct interoperability and exchange with other participants. @@ -30,8 +30,8 @@ The initial letters of the scenario identifiers (IDs) in the following table eac |A company wants to have more transparency and a visualized status of the supply / value chain. By using the application they are enabled to work with the structures and enable new features / functionalities. |F04 -|Notifications are sent using the EDC to ensure interoperability and reliability to the CX network. +|Notifications are sent using the EDC to ensure interoperability with the CX network. |E01 -|Notifications between traceability apps need to be send out and received within a specified timeframe to minimize the negative impact of e.g. recalled serialized products/batches on the value chain. +|Notifications between traceability apps need to be sent and received within a specified timeframe to minimize the negative impact of e.g. recalled serialized products / batches on the value chain. |=== diff --git a/docs/src/docs/arc42/runtime-view/assets/return-all-assets.adoc b/docs/src/docs/arc42/runtime-view/assets/return-all-assets.adoc index 2344c1e540..91097185a1 100644 --- a/docs/src/docs/arc42/runtime-view/assets/return-all-assets.adoc +++ b/docs/src/docs/arc42/runtime-view/assets/return-all-assets.adoc @@ -1,8 +1,8 @@ = Scenario 1: Return assets -This section describes what happens when user lists stored assets. -In this example, the user requests as built assets. -The same can be done with as planned assets. +This section describes what happens when users list stored assets. +In this example, the user requests as-built assets. +The same can be done with as-planned assets. [plantuml, target=return-all-assets, format=svg] .... @@ -14,4 +14,4 @@ include::../../../../uml-diagrams/arc42/runtime-view/assets/return-all-assets.pu When a user requests stored assets, Trace-X checks if the user has an adequate role ('ROLE_ADMIN', 'ROLE_SUPERVISOR', 'ROLE_USER'). If yes, then the endpoint returns a pageable result of assets. -The returned pageable result can be empty if no suitable asset has been found. +The returned result can be empty if no suitable asset has been found. diff --git a/docs/src/docs/arc42/runtime-view/assets/return-specific-assets.adoc b/docs/src/docs/arc42/runtime-view/assets/return-specific-assets.adoc index 272accc053..452dd1ba61 100644 --- a/docs/src/docs/arc42/runtime-view/assets/return-specific-assets.adoc +++ b/docs/src/docs/arc42/runtime-view/assets/return-specific-assets.adoc @@ -1,8 +1,8 @@ = Scenario 2: Return specific assets -This section describes what happens when user searches for a specific asset. -This example shows the request of one as built asset. -The same can be done with as planned assets. +This section describes what happens when users search for a specific asset. +This example shows the request of one as-built asset. +The same can be done with as-planned assets. [plantuml, target=return-specific-assets, format=svg] .... @@ -11,6 +11,6 @@ include::../../../../uml-diagrams/arc42/runtime-view/assets/return-specific-asse == Overview -When a user requests a specific asset, Trace-X checks if the user has an adequate role ('ROLE_ADMIN', 'ROLE_SUPERVISOR', 'ROLE_USER'). If yes, then the endpoint returns a precise asset for the given assetId, if it is found. +When a user requests a specific asset, Trace-X checks if the user has an adequate role ('ROLE_ADMIN', 'ROLE_SUPERVISOR', 'ROLE_USER'). If yes, then the endpoint returns the asset for the given assetId, if it is found. If no asset has been found for the given ID, an AssetNotFoundException is thrown. diff --git a/docs/src/docs/arc42/runtime-view/data-consumption.adoc b/docs/src/docs/arc42/runtime-view/data-consumption.adoc index 5fc7540f9b..bb716de9af 100644 --- a/docs/src/docs/arc42/runtime-view/data-consumption.adoc +++ b/docs/src/docs/arc42/runtime-view/data-consumption.adoc @@ -1,6 +1,6 @@ = Data consumption -This sequence diagram describes the process of fetching data from a DTR and the Catena-X ecosystem. +This sequence diagram describes the process of fetching data from the DTR and the Catena-X ecosystem: [plantuml, target=business-context_data_consumption, format=svg] .... @@ -9,5 +9,5 @@ include::../../../uml-diagrams/arc42/runtime-view/data-consumption-process.puml[ == Overview -Data is fetched by a Trace-X instance using Digital Twin Registry (DTR), Item Relationship Service (IRS) and Trace-X consumer EDC. -For digital twins the Asset Administration Shell (AAS) standard is used. For fetching data with Trace-X, a Digital Twin Registry and an IRS instance are required. Data should represent parts, supplier and customer parts, parts tree / parts relations. +Data is fetched by a Trace-X instance using the Digital Twin Registry (DTR), Item Relationship Service (IRS) and Trace-X consumer EDC. +For digital twins the Asset Administration Shell (AAS) standard is used. For fetching data with Trace-X a Digital Twin Registry and an IRS instance are required. Data should represent parts, supplier and customer parts, part trees / part relations. diff --git a/docs/src/docs/arc42/runtime-view/data-provisioning.adoc b/docs/src/docs/arc42/runtime-view/data-provisioning.adoc index c7a3dcfa3b..2a244583c1 100644 --- a/docs/src/docs/arc42/runtime-view/data-provisioning.adoc +++ b/docs/src/docs/arc42/runtime-view/data-provisioning.adoc @@ -1,6 +1,6 @@ = Data provisioning -This sequence diagrams describes the process of importing data from a Trace-X dataformat +The following sequence diagrams describe the process of importing data from a Trace-X dataformat: == Module 1 @@ -9,31 +9,27 @@ The raw data which is needed for the shared services (DTR / EDC) will be persist [plantuml, target=business-context_data_provisioning_1, format=svg] .... - include::../../../uml-diagrams/arc42/runtime-view/data-provisioning/trace-x-data-import-interface-modul1-sequence.puml[] .... == Module 2 -The frontend is able to select assets and publish / synchronize them with the shared services. DTR / EDC / submodel API. +The frontend is able to select assets and publish / synchronize them with the shared services DTR / EDC / submodel API. [plantuml, target=business-context_data_provisioning_2, format=svg] .... - include::../../../uml-diagrams/arc42/runtime-view/data-provisioning/trace-x-data-import-interface-modul2-sequence.puml[] .... == Module 3 -The backend is able to persist the data in the DTR / EDC and allows to use IRS for resolving assets. +The backend is able to persist the data in the DTR / EDC and enables the IRS to resolve assets. [plantuml, target=business-context_data_provisioning_3, format=svg] .... - include::../../../uml-diagrams/arc42/runtime-view/data-provisioning/trace-x-data-import-interface-modul3-sequence.puml[] .... - include::data-provisioning/return-import-report.adoc[leveloffset=+1] include::data-provisioning/publish-assets.adoc[leveloffset=+1] diff --git a/docs/src/docs/arc42/runtime-view/data-provisioning/publish-assets-error.adoc b/docs/src/docs/arc42/runtime-view/data-provisioning/publish-assets-error.adoc index 94393d2c85..f947e79796 100644 --- a/docs/src/docs/arc42/runtime-view/data-provisioning/publish-assets-error.adoc +++ b/docs/src/docs/arc42/runtime-view/data-provisioning/publish-assets-error.adoc @@ -1,6 +1,6 @@ = Scenario 3: Publish assets - error on EDC or DTR -This section describes user interaction when publishing assets fails due to EDC or DTR error (for example when the services are unavailable). +This section describes the user interaction when publishing assets fails due to an EDC or DTR error (for example when the services are unavailable). [plantuml,target=publish-assets-error,format=svg] .... @@ -10,5 +10,5 @@ include::../../../../uml-diagrams/arc42/runtime-view/data-provisioning/publish-a == Overview When a user publishes assets, Trace-X checks if the user has an adequate role ('ROLE_ADMIN'). -If yes, then the endpoint starts to publish assets to network. -If any of required services are not available or return an error response upon executing, flow assets are set to ERROR state and the user can retry publishing them at any time when services are available again. +If yes, the endpoint starts to publish assets to network. +If any of the required services are not available or return an error response upon executing, the included assets are set to ERROR state and the user can retry publishing them at any time when services are available again. diff --git a/docs/src/docs/arc42/runtime-view/data-provisioning/publish-assets.adoc b/docs/src/docs/arc42/runtime-view/data-provisioning/publish-assets.adoc index c7f9ba54bd..0b28b7a13b 100644 --- a/docs/src/docs/arc42/runtime-view/data-provisioning/publish-assets.adoc +++ b/docs/src/docs/arc42/runtime-view/data-provisioning/publish-assets.adoc @@ -1,6 +1,6 @@ = Scenario 2: Publish assets -This section describes user interaction when publishing assets +This section describes the user interaction when publishing assets [plantuml,target=publish-assets,format=svg] .... @@ -10,4 +10,4 @@ include::../../../../uml-diagrams/arc42/runtime-view/data-provisioning/publish-a == Overview When a user publishes assets, Trace-X checks if the user has an adequate role ('ROLE_ADMIN'). -If yes, then the endpoint starts to publish assets to network. +If yes, the endpoint starts to publish assets to the network. diff --git a/docs/src/docs/arc42/runtime-view/data-provisioning/return-import-report.adoc b/docs/src/docs/arc42/runtime-view/data-provisioning/return-import-report.adoc index ee9f75b6be..bf051b8cbe 100644 --- a/docs/src/docs/arc42/runtime-view/data-provisioning/return-import-report.adoc +++ b/docs/src/docs/arc42/runtime-view/data-provisioning/return-import-report.adoc @@ -1,6 +1,6 @@ = Scenario 1: Receive import report -This section describes what happens when the user wants to get a report of the imported assets associated to a importJobId. +This section describes what happens when the user wants to get a report of the imported assets associated with a importJobId. In this example, the user requests an import report. [plantuml,target=import-report-receive,format=svg] @@ -11,6 +11,6 @@ include::../../../../uml-diagrams/arc42/runtime-view/data-provisioning/import-re == Overview When a user requests an import report, Trace-X checks if the user has an adequate role ('ROLE_ADMIN', 'ROLE_SUPERVISOR'). -If yes, then the endpoint returns an import report to the given importJobId. +If yes, the endpoint returns the import report of the given importJobId. If the importJobId is not known to Trace-X, an HTTP 404 error is returned. diff --git a/docs/src/docs/arc42/runtime-view/data-sovereignty/return-asset-contracts.adoc b/docs/src/docs/arc42/runtime-view/data-sovereignty/return-asset-contracts.adoc index 6770f29140..22478f82dc 100644 --- a/docs/src/docs/arc42/runtime-view/data-sovereignty/return-asset-contracts.adoc +++ b/docs/src/docs/arc42/runtime-view/data-sovereignty/return-asset-contracts.adoc @@ -1,6 +1,6 @@ = Scenario 1: Return asset contract agreements -This section describes functionality and the behavior in case a user requests contract agreements from Trace-X via the Trace-X contracts API (/contracts). +This section describes the functionality and behavior when a user requests contract agreements from Trace-X via the Trace-X contracts API (/contracts). [plantuml,target=return-all-contracts,format=svg] .... @@ -10,14 +10,9 @@ include::../../../../uml-diagrams/arc42/runtime-view/data-sovereignty/get-all-co == Overview In case a user requests contract agreements, Trace-X checks if the user has required roles ('ROLE_ADMIN', 'ROLE_SUPERVISOR'). -If yes, then the requested assets will be mapped to the related contract agreement id. -These contract agreement ids will be then requested on EDC side via POST (/management/v2/contractagreements/request) and GET (/management/v2/contractagreements/\{ContractAgreementId\}/negotiation) to get the relevant information. +If yes, the requested assets will be mapped to the related contract agreement ID. +These contract agreement IDs will be then requested on EDC side via POST (/management/v2/contractagreements/request) and GET (/management/v2/contractagreements/\{ContractAgreementId\}/negotiation) to get the relevant information. The contract information is then returned by the endpoint as a pageable result. -If no asset ids are provided in the request, 50 contract agreement ids are handled by default. - - - - - +If no asset IDs are provided in the request, 50 contract agreements are returned by default. diff --git a/docs/src/docs/arc42/runtime-view/full.adoc b/docs/src/docs/arc42/runtime-view/full.adoc index e020d2eae4..dde4a074f7 100644 --- a/docs/src/docs/arc42/runtime-view/full.adoc +++ b/docs/src/docs/arc42/runtime-view/full.adoc @@ -1,6 +1,6 @@ = Runtime view -This section describes the different functionalities of Trace-X application. +This section describes the different functionalities of the Trace-X application. include::assets.adoc[leveloffset=+1] include::notifications.adoc[leveloffset=+1] diff --git a/docs/src/docs/arc42/runtime-view/notifications/quality-investigation-receive.adoc b/docs/src/docs/arc42/runtime-view/notifications/quality-investigation-receive.adoc index 58b9a4b3a1..3f76020a33 100644 --- a/docs/src/docs/arc42/runtime-view/notifications/quality-investigation-receive.adoc +++ b/docs/src/docs/arc42/runtime-view/notifications/quality-investigation-receive.adoc @@ -1,6 +1,6 @@ = Receive quality notification -This sequence diagram describes the process of receiving a quality notification from another traceability partner. +This sequence diagram describes the process of receiving a quality notification from another traceability partner: [plantuml, target=business-context_quality-investigation, format=svg] .... @@ -8,14 +8,14 @@ include::../../../../uml-diagrams/arc42/runtime-view/quality-investigation-recei .... == Overview -As for the sending of a quality notification also for receiving of a notification EDC is used to push data from a sender to a receiver. -To enable receiving a notification by a partner you need to +The EDC is utilized to transmit data between sender and receiver for both sending and receiving notifications. +To be able to receive notifications by a partner you need to -* Create notification endpoint for qualitynotifications/receive +* Create a notification endpoint for qualitynotifications/receive * Create EDC assets * Create EDC usage policies * Create EDC contract definitions -Trace-X implements a functionality to create the assets and their corresponding policies in the admin panel. +Trace-X implements a functionality to create assets and their corresponding policies in the admin panel. -With the notification asset it is possible to enable EDC contract negotiation and EDC data transfer based on access policies defined. Only if the sender is able to find the asset in the catalog offer and perform a successful contract negotiation there will be the possibility to push a notification to the specified http endpoint on the receiver side. +With the notification asset it is possible to enable EDC contract negotiation and EDC data transfer based on access policies defined. Only if the sender is able to find the asset in the catalog offer and perform a successful contract negotiation there will be the possibility to send a notification to the specified http endpoint on the receiver side. diff --git a/docs/src/docs/arc42/runtime-view/notifications/quality-investigation-send.adoc b/docs/src/docs/arc42/runtime-view/notifications/quality-investigation-send.adoc index 43cd666bd7..2081879022 100644 --- a/docs/src/docs/arc42/runtime-view/notifications/quality-investigation-send.adoc +++ b/docs/src/docs/arc42/runtime-view/notifications/quality-investigation-send.adoc @@ -1,6 +1,6 @@ = Send quality notification -This sequence diagram describes the process of sending a quality notification between traceability applications. +This sequence diagram describes the process of sending a quality notification between traceability applications: [plantuml, target=business-context_quality-investigation_send, format=svg] .... @@ -8,14 +8,14 @@ include::../../../../uml-diagrams/arc42/runtime-view/quality-investigation-send. .... == Overview -For the notification feature EDC is used to push data from a sender to a receiver. -To enable sending respective more precisely receiving a notification by a partner you need to +The EDC is utilized to transmit data between sender and receiver for both sending and receiving notifications. +To be able to send notifications to a partner you need to -* Create notification endpoint for qualitynotifications/receive +* Create a notification endpoint for qualitynotifications/send * Create EDC assets * Create EDC usage policies * Create EDC contract definitions -Trace-X implements a functionality to create the assets and their corresponding policies in the admin panel. With the notification asset it is possible to enable EDC contract negotiation and EDC data transfer process so that the quality investigation can be pushed by the sender. +Trace-X implements a functionality to create assets and their corresponding policies in the admin panel. -In the above UML sequence diagram the sending of quality notifications from Trace-X to a receiver (any other traceability application) is described. +With the notification asset it is possible to enable EDC contract negotiation and EDC data transfer process so that the quality investigation can be sent by the sender. diff --git a/docs/src/docs/arc42/runtime-view/policies.adoc b/docs/src/docs/arc42/runtime-view/policies.adoc index 630a2c7bd0..39f39fd24d 100644 --- a/docs/src/docs/arc42/runtime-view/policies.adoc +++ b/docs/src/docs/arc42/runtime-view/policies.adoc @@ -3,11 +3,12 @@ == Overview === Scenario 1: Startup interaction with the IRS policy store + The Trace-X instance defines a constraint which is required for data consumption and provisioning. -Trace-X retrieves all policies by IRS and validates if one of the policies contains the required constraint given by Trace-X. +Trace-X retrieves all policies from the IRS and validates if one of the policies contains the required constraint given by Trace-X. If a policy with the constraint exists and is valid, the process ends. If the policy is not valid, it will create one with the given constraint. -This sequence diagram describes the process of retrieving or creating policies within the IRS policy store based on the constraint given by Trace-X. +This sequence diagram describes the process of retrieving or creating policies from the IRS policy store based on the constraint given by Trace-X: [plantuml, target=policy-startup-configuration, format=svg] .... @@ -15,6 +16,7 @@ include::../../../uml-diagrams/arc42/runtime-view/policies/policy-startup-config .... === Scenario 2: Startup interaction with EDC + The Trace-X instance uses the policy which includes the defined constraint and transforms it into a valid EDC policy request. The EDC policy request will be used for creating a policy for the required notification contracts. @@ -26,9 +28,10 @@ include::../../../uml-diagrams/arc42/runtime-view/policies/policy-startup-notifi .... === Scenario 3: Provisioning of notifications -The Trace-X instance uses the policy which includes the defined constraint and reuses it for validation of catalog offers by the receiver EDC. -This sequence diagram describes the process of how the policy with the defined constraint will be used for validation of the catalog offers from the receiver EDC. +The Trace-X instance uses the policy which includes the defined constraint for validation of catalog offers by the receiver EDC. + +This sequence diagram describes the process of how the policy with the defined constraint will be used for validation of the catalog offers from the receiver EDC: [plantuml, target=policy-notifications, format=svg] .... @@ -36,22 +39,27 @@ include::../../../uml-diagrams/arc42/runtime-view/policies/policy-notifications. .... === Scenario 4: Provisioning of assets -The Trace-X instance uses the policy which includes the defined constraint and reuses it for creating EDC assets. -This sequence diagram describes the process of how the policy with the defined constraint will be reused for registering EDC data assets. +The Trace-X instance uses the policy which includes the defined constraint for creating EDC assets. + +This sequence diagram describes the process of how the policy with the defined constraint will be used for registering EDC data assets: [plantuml, target=policy-assets, format=svg] .... include::../../../uml-diagrams/arc42/runtime-view/policies/policy-assets.puml[] .... -=== Scenario 5: Updating notification offers when creating/deleting/updating policies +=== Scenario 5: Updating notification offers when creating / deleting / updating policies The Trace-X instance uses policies for creating the EDC catalog offers of notifications. These offers will be created on the following actions: -- on Trace-X application startup - creating a policy for the own BPN - updating a policy for the own BPN - deleting a policy for the own BPN -This sequence diagram describes the process of how the catalog offers are updated after policy update/create/delete +- on Trace-X application startup +- creating a policy for the own BPN +- updating a policy for the own BPN +- deleting a policy for the own BPN + +This sequence diagram describes the process of how the catalog offers are updated after policy update / create / delete: [plantuml,target=policy-crud-notification-contract,format=svg] .... diff --git a/docs/src/docs/arc42/runtime-view/scheduler.adoc b/docs/src/docs/arc42/runtime-view/scheduler.adoc index d3a3f868d2..78192102c6 100644 --- a/docs/src/docs/arc42/runtime-view/scheduler.adoc +++ b/docs/src/docs/arc42/runtime-view/scheduler.adoc @@ -1,4 +1,3 @@ = Scheduler include::scheduler/scheduler.adoc[leveloffset=+1] - diff --git a/docs/src/docs/arc42/runtime-view/scheduler/scheduler.adoc b/docs/src/docs/arc42/runtime-view/scheduler/scheduler.adoc index d05b60c6f1..0664fcd69c 100644 --- a/docs/src/docs/arc42/runtime-view/scheduler/scheduler.adoc +++ b/docs/src/docs/arc42/runtime-view/scheduler/scheduler.adoc @@ -3,6 +3,6 @@ An overview of the scheduler tasks configured in the system. [options="header"] |=== |Scheduler name | Execution interval | Description -|PublishAssetsJob | Every hour at 30min | Publishes assets in IN_SYNCHRONIZATION state to core services. The process combines 'as-built' and 'as-planned' assets and initiates their publication for synchronization in the traceability system. +|PublishAssetsJob | Every hour at 30min | Publishes assets in IN_SYNCHRONIZATION state to core services. The process combines as-built and as-planned assets and initiates their publication for synchronization in the traceability system. |AssetsRefreshJob | Every 2 hours | Invokes the synchronization of asset shell descriptors with the decentralized registry. It ensures the latest asset information is fetched and updated in the system from external sources. |=== diff --git a/docs/src/docs/arc42/scope-context/business-context.adoc b/docs/src/docs/arc42/scope-context/business-context.adoc index 92787c696b..938dd8f1eb 100644 --- a/docs/src/docs/arc42/scope-context/business-context.adoc +++ b/docs/src/docs/arc42/scope-context/business-context.adoc @@ -8,13 +8,17 @@ include::../../../uml-diagrams/arc42/scope-context/business-context/business-con .... == User + Trace-X can be deployed, hosted and run by every party that is part of the Catena-X network. They need to be registered, have a BPN and a technical user as well as provide valid credentials. An end-user in Trace-X can have roles provided by the CX portal (user, supervisor, admin). == IRS + The Item Relationship Service is the component that is used by Trace-X to fetch data chains from Catena-X network. Data that is provided by IRS gets extracted, aggregated, transformed and is used for further actions in Trace-X. Further information can be found in the https://eclipse-tractusx.github.io/item-relationship-service/docs/arc42/[IRS architecture documentation (arc42)]. == Catena-X network + Trace-X and IRS are retrieving necessary information and data from the Catena-X network (users, digital twins, aspects, submodels, business partner information). If CX services are unavailable, Trace-X will not be able to perform most of its work. == Any other traceability app + Trace-X interacts with any other traceability app using the CX standards. This enables sovereign data exchange as well as receiving and sending notifications to interact between different parties. diff --git a/docs/src/docs/arc42/scope-context/index.adoc b/docs/src/docs/arc42/scope-context/index.adoc index 60735c7f5c..84823fa6c3 100644 --- a/docs/src/docs/arc42/scope-context/index.adoc +++ b/docs/src/docs/arc42/scope-context/index.adoc @@ -1,6 +1,6 @@ = System scope and context -Trace-X is an end-user application to visualize and utilize data provided to the Catena-X network. This includes the traceability of manufactured parts and batches as well as the shipped and supplied components. To utilize the CX open ecosystem it is necessary to exchange information on serialized parts and batches with supply chain partners in a standardized, data-sovereign and interoperable way. This section describes the environment of Trace-X, its intended users and which systems and components it interacts with. +Trace-X is an end-user application to visualize and utilize data provided to the Catena-X network. This includes the traceability of manufactured parts and batches as well as the shipped and supplied components. To utilize the CX open ecosystem, it is necessary to exchange information on serialized parts and batches with supply chain partners in a standardized, data-sovereign and interoperable way. This section describes the environment of Trace-X, its intended users and which systems and components it interacts with. include::business-context.adoc[leveloffset=+1] diff --git a/docs/src/docs/arc42/scope-context/technical-context.adoc b/docs/src/docs/arc42/scope-context/technical-context.adoc index 2ff117e9dc..837505650e 100644 --- a/docs/src/docs/arc42/scope-context/technical-context.adoc +++ b/docs/src/docs/arc42/scope-context/technical-context.adoc @@ -3,10 +3,11 @@ == Component overview === Trace-X API + We provide a REST API that is consumed by Trace-X frontend in order to deliver Trace-X related features such as quality investigations or asset chain visibility. Since the Trace-X component is the very last component in the Catena-X ecosystem we are mostly dependent on the other services and theirs APIs in other to deliver desired functionalities. The development of the services is not a part of the Trace-X application and each of the system that we utilize exposes a REST API that we consume and interact with directly. -Trace-X is a Spring Boot based application and is secured with the OpenID connector provider Keycloak and the OAuth2. This means for the companies, that utilize Trace-X component, it is required to obtain a technical user in order to be authorized to get access to the external components within Catena-X ecosystem. +Trace-X is a Spring Boot based application and is secured with the OpenID connector provider Keycloak and OAuth2. This means for the companies that utilize the Trace-X component, it is required to obtain a technical user to be authorized to get access to the external components within the Catena-X ecosystem. In order to use the Trace-X frontend with the Trace-X backend, users need to authenticate themselves in order to be authorized to get access to the Trace-X. In the frontend UI users provide valid credentials and the system generates a bearer token that it gets from Keycloak and attaches it to the HTTP header parameter Authorization. @@ -19,8 +20,8 @@ Once a user is authorized and has a proper role in the Trace-X backend, the back include::../../../uml-diagrams/arc42/scope-context/technical-context/aas-api-view.puml[] .... -The Trace-X acts as a consumer of the asset administration shell registry component. Trace-X contains a restful client (REST template) that builds a REST call to the mentioned digital twin registry API based on its known URL (the AAS registry URL is configurable in Trace-X). -Requests contain "assetIds" provided by the component during asset synchronization. Like described in the above section, the security aspect is required in order to achieve a REST call against the AAS Registry. As a response, Trace-X gets the corresponding shells and shell descriptors utilized later for asset synchronization. +Trace-X acts as a consumer of the asset administration shell registry component. Trace-X contains a restful client (REST template) that builds a REST call to the mentioned digital twin registry API based on its known URL (the AAS registry URL is configurable in Trace-X). +Requests contain 'assetIds' provided by the component during asset synchronization. Like described in the above section, the security aspect is required in order to achieve a REST call against the AAS Registry. As a response, Trace-X gets the corresponding shells and shell descriptors utilized later for asset synchronization. The HTTP(s) transport protocol is used for the REST call communication. === IRS API @@ -54,7 +55,7 @@ include::../../../uml-diagrams/arc42/scope-context/technical-context/edc-api-vie .... The Trace-X acts as a consumer and provider of the EDC component. -In Trace-X we communicate with EDC directly only for the sake of fulfilling quality investigation functionality. -Specific use cases can be viewed in xref:../runtime-view/index.adoc[Runtime view] section. +In Trace-X we communicate with the EDC directly only for the sake of fulfilling the quality notification functionality. +Specific use cases can be viewed in the xref:../runtime-view/index.adoc[Runtime view] section. For these purposes the integrated EDC clients in Trace-X are responsible for creating restful requests to the EDC component. As mentioned above, the transport protocol HTTP(S) is used for the REST call communication. diff --git a/docs/src/docs/arc42/solution-strategy/index.adoc b/docs/src/docs/arc42/solution-strategy/index.adoc index fa8d6026d3..fe22794c69 100644 --- a/docs/src/docs/arc42/solution-strategy/index.adoc +++ b/docs/src/docs/arc42/solution-strategy/index.adoc @@ -1,6 +1,6 @@ = Solution strategy -This section contains summarized architectural overview. A comparison of the most important goals and the corresponding solution approaches. +This section contains a summarized architectural overview, a comparison of the most important goals and the corresponding solution approaches. include::introduction.adoc[leveloffset=+1] include::technology.adoc[leveloffset=+1] diff --git a/docs/src/docs/arc42/solution-strategy/introduction.adoc b/docs/src/docs/arc42/solution-strategy/introduction.adoc index d54a64bbda..3f1e37fe68 100644 --- a/docs/src/docs/arc42/solution-strategy/introduction.adoc +++ b/docs/src/docs/arc42/solution-strategy/introduction.adoc @@ -17,7 +17,7 @@ a|* Established programming languages are used. a|* Helm charts to support the deployment of the application in a Kubernetes environment. |Application reliability -a|* Data source is the Catena-X network. Data is fetched with IRS directly from the data owner and the digital twin registry of CX. +a|* Data source is the Catena-X network. Data is fetched directly from the data owner using the IRS and the digital twin registry of CX. * Trace-X can be hosted decentralized since it is an open-source reference implementation. |Security diff --git a/docs/src/docs/arc42/solution-strategy/structure.adoc b/docs/src/docs/arc42/solution-strategy/structure.adoc index 5b4f967231..39e2a6b91e 100644 --- a/docs/src/docs/arc42/solution-strategy/structure.adoc +++ b/docs/src/docs/arc42/solution-strategy/structure.adoc @@ -1,11 +1,11 @@ = Structure -Trace-X is divided into two components: frontend and backend. +Trace-X is divided into two components: Frontend and backend. It roughly can be broken down into the following parts: * Asset controllers to get asset information * Dashboard controller to get dashboard related summed up information -* Registry controller to fetch assets from the digital twin registry +* Registry controller to fetch assets from the Digital Twin Registry * Notification controller to get notification information and create EDC notification offers * Submodel controller for providing asset data functionality * Import controller for importing Trace-X data for data provisioning @@ -15,5 +15,5 @@ It roughly can be broken down into the following parts: * Policy controller to retrieve information about policies * BPN controller to retrieve information about business partners -The backend does a request to the digital twin registry utilizing the registry controller. Extracted data from the response is made available through the asset controller and the dashboard controller to the frontend. +The backend does a request to the Digital Twin Registry utilizing the registry controller. Extracted data from the response is made available through the asset controller and the dashboard controller to the frontend. diff --git a/docs/src/docs/arc42/trace-x-data-import-interface/data-import-interface.adoc b/docs/src/docs/arc42/trace-x-data-import-interface/data-import-interface.adoc index c190cff68a..b3ddc9fc97 100644 --- a/docs/src/docs/arc42/trace-x-data-import-interface/data-import-interface.adoc +++ b/docs/src/docs/arc42/trace-x-data-import-interface/data-import-interface.adoc @@ -1,18 +1,21 @@ = Concept for Trace-X data import interface (data provider) -Module 1 +== Module 1 + [plantuml, target=modul1-sequence, format=svg] .... include::../../../uml-diagrams/arc42/runtime-view/data-provisioning/trace-x-data-import-interface-modul1-sequence.puml[] .... -Module 2 +== Module 2 + [plantuml, target=modul2-sequence, format=svg] .... include::../../../uml-diagrams/arc42/runtime-view/data-provisioning/trace-x-data-import-interface-modul2-sequence.puml[] .... -Module 3 +== Module 3 + [plantuml, target=modul3-sequence, format=svg] .... include::../../../uml-diagrams/arc42/runtime-view/data-provisioning/trace-x-data-import-interface-modul3-sequence.puml[] diff --git a/docs/src/docs/index.adoc b/docs/src/docs/index.adoc index fa940251f0..0fb47eb3cc 100644 --- a/docs/src/docs/index.adoc +++ b/docs/src/docs/index.adoc @@ -1,4 +1,3 @@ - = Trace-X documentation == Notice @@ -16,6 +15,7 @@ This work is licensed under the [Apache-2.0](https://www.apache.org/licenses/LIC * Source URL: https://github.com/eclipse-tractusx/traceability-foss == Administration guide + xref:administration/administration-guide.adoc[Administration guide] == User manual diff --git a/docs/src/docs/user/user-manual.adoc b/docs/src/docs/user/user-manual.adoc index 1453168e66..bc8a001cf1 100644 --- a/docs/src/docs/user/user-manual.adoc +++ b/docs/src/docs/user/user-manual.adoc @@ -22,7 +22,7 @@ A list of user or technical roles can be found below: Available roles: https://portal.int.demo.catena-x.net/appusermanagement/3bbc88ae-5f0d-45cb-ab3e-8c7602ff58b4 -image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/general-information/app_roles.svg[] +image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/general-information/app-roles.svg[] Assignment of roles: https://portal.int.demo.catena-x.net/documentation/?path=docs%2F03.+User+Management%2F02.+Modify+User+Account%2F03.+User+Permissions.md @@ -37,22 +37,24 @@ To enable users to access an application, minimum one application app need to ge Role details: https://portal.int.demo.catena-x.net/role-details -image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/general-information/cx_portal_roles.svg[] +image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/general-information/cx-portal-roles.svg[] User accounts: https://portal.int.demo.catena-x.net/documentation/?path=docs%2F03.+User+Management%2F01.+User+Account === Technical users -Documentation portal: https://portal.int.demo.catena-x.net/documentation/?path=docs%2F03.+User+Management%2F01.+User+Account +Documentation of portal: https://portal.int.demo.catena-x.net/documentation/?path=docs%2F03.+User+Management%2F01.+User+Account To login use the credentials provided by the hosting company. - The application is configured with a technical user, which holds the required IRS roles: +The application is configured with a technical user, which holds the required IRS roles: + - Creating a policy in IRS -> admin_irs - Requesting jobs in IRS -> view_irs - For usage of an EDC it is necessary to provide another technical user. Required roles: - - role: "Identity Wallet Management" +For usage of an EDC it is necessary to provide another technical user. Required roles: + +- Role: "Identity Wallet Management" == Navigation @@ -62,7 +64,7 @@ image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main === Dashboard -Provides a fast overview about the amount of manufactured and supplied / customer (other) parts and batches, as well as the amount of open investigations and alerts. +Provides a fast overview about the amount of manufactured (own) and supplied / customer (other) parts and batches, as well as the amount of open investigations and alerts. Lists the five newest quality investigations and alerts to get an overview of the current state. === Parts @@ -71,11 +73,11 @@ Navigates to the parts and batches list view. === Quality notifications -Navigates to the inbox of (sent/received) quality notifications. +Navigates to the inbox of (sent / received) quality notifications. === About -Navigates to an overview with helpful information and links about the Catena-X Open-Source Traceability application. +Navigates to an overview with helpful information and links about Trace-X. === Help @@ -88,13 +90,13 @@ Navigates to the Catena-X portal. === Administration Only applicable for the admin user role. -Possibility to check the network status based on logfiles and will provide access to configuration possibilities for the application. +Possibility to view and change specific configuration settings of the application. Assets can be imported here and policies can be created. ==== BPN-EDC configuration In the BPN-EDC configuration screen an admin user can add URLs for BPNs. Existing configurations can be edited or removed. -image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/navigation/bpn_edc_configuration.svg[] +image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/navigation/bpn-edc-configuration.svg[] Any configured BPNs will have their URLs merged in addition to the URLs found by the DiscoveryService. The resulting list of URLs will be used whenever a notification is sent to those BPNs. In case a URL returns an error response, the remaining URLs will be used as backup. @@ -121,52 +123,46 @@ include::../../uml-diagrams/user-manual/bpn-edc-configuration.puml[] In the Contracts view an admin user can view contract agreements and sort them only by the contract ID. -With the quick filter buttons it is possible to filter out the contracts after types. -Either show contracts with notifications underneath, or only ones with parts underneath. +With the quick filter buttons it is possible to filter the contracts based on types. +Either show contracts related to notifications, or only ones related to parts. By clicking on the burger menu of a data row you can get to the detailed view of a contract. -Dependent on the contract type, you can directly navigate to the item under this contract. +Depending on the contract type, you can directly navigate to the item under this contract. -Also, it's possible to select contracts and export/download them as a .csv file. - -image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/navigation/admin_contract_view.svg[] +Also, it's possible to select contracts and export / download them as a .csv file. +image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/navigation/admin-contract-view.svg[] ===== Contract detailed view The contract detailed view is divided into two sections. -On the left, you'll find a -general overview of the contract data. +On the left, you'll find a general overview of the contract data. -On the right, policy details are -displayed in JSON format. Use the view selector to switch between -JSON view and JSON tree view. Expand the policy details card on the right -upper side for full-width display. +On the right, policy details are displayed in JSON format. Use the view selector to switch between JSON view and JSON tree view. Expand the policy details card on the right upper side for full-width display. -image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/navigation/admin_contract_detailed_view.svg[] +image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/navigation/admin-contract-detailed-view.svg[] ==== Data provisioning -With the admin user role, you have the ability to import data into the system. - +With the admin user role you have the ability to import data into the system. Click on your profile button located in the top right corner and select "Administration" from the dropdown menu. As you can see in the picture below, you can select a file to import and click on the appearing upload button. Find the example file at the following link: -https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/tx-backend/testdata/import-test-data-CML1_v0.0.12.json +https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/tx-backend/testdata/import-test-data-CML1_v0.0.14.json -image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/navigation/admin_upload_file.svg[] +image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/navigation/admin-upload-file.svg[] -The system will validate the file content. Upon successful validation, assets will be saved as either "AssetAsPlanned" or "AssetAsBuilt", with the import state set to "transient." +The system will validate the file content. Upon successful validation assets will be saved as either "AssetAsPlanned" or "AssetAsBuilt" with the import state set to "transient." -=== Policy Management +=== Policy management The policy management feature allows administrators to create, edit, view, and delete policies within the system. This section provides an overview of how to use these features effectively. -==== Policies List View +==== Policies list view The policies list view displays all the policies in a tabular format. You can perform various actions such as view, edit, and delete policies from this view. @@ -179,9 +175,9 @@ By clicking on the settings symbol in the top right corner of the table, you are In the top left corner you can initiate the creation or deletion of policies. -===== Deleting Policies +===== Deleting policies -To delete policies, follow these steps: +To delete policies follow these steps: Select the policies you wish to delete by checking the boxes next to them. Click on the delete icon to open the deletion dialog. @@ -190,22 +186,23 @@ The system will then remove the selected policies and update the list view. image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/policy-management/delete-policies-dialog.svg[] -==== Policy Editor / Detailed View +==== Policy editor / detailed view The policy editor allows you to create, edit, and view detailed information about a policy. image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/policy-management/policy-editor.svg[] -Note: For existing policies, it is currently only possible to edit the valid until date and the BPN number. +Note: For existing policies, it is currently only possible to edit the valid until date and the BPN. -===== Creating a policy +===== Creating policies To create a policy: -Navigate to the "Create Policy" section from the policies list view by clicking the plus icon in the top left corner of the table. -Fill in the policy details including policy name, validity date, BPN number(s), access type, and constraints. -Save the policy using the save button. -The system will validate the inputs and update the policy accordingly. +1. Navigate to the "Create Policy" section from the policies list view by clicking the plus icon in the top left corner of the table. +2. Fill in the policy details including policy name, validity date, BPN(s), access type, and constraints. +3. Save the policy using the save button. +4. The system will validate the inputs and update the policy accordingly. + image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/policy-management/policy-create.svg[] ==== Constraints @@ -213,11 +210,8 @@ image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main Constraints define the conditions under which the policy is applicable. You can add, edit, and remove constraints in the policy editor. -To add a constraint: +To add a constraint click the add button in the constraints section. Then fill the left operand, operator, and right operand. -Click the add button in the constraints section. -Fill in the left operand, operator, and right operand. -Save the constraint. To remove a constraint, click the delete button next to the constraint. To move constraints up or down in the list, use the up and down arrow buttons. @@ -248,11 +242,11 @@ image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main A table view split into the different BOM lifecycle phases (AsBuilt / AsPlanned) of a part. By default, both tables are displayed. Adjustment of the view of tables can be done by activating/deactivating the fullscreen width of the tables. -Between the views, there is a slider to adjust the view to make either the left or the right table more visible. +Between the views there is a slider to adjust the view to make either the left or the right table more visible. Both tables can be sorted, filtered, and searched. -Pre-filtration buttons can be toggled to only show own/supplier/customer parts in the table. +Pre-filtration buttons can be toggled to only show own / supplier / customer parts in the table. The global search bar at the top returns part results from both tables. Choosing the filter input field for any column and typing in any character will show filter suggestions. @@ -264,38 +258,41 @@ image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main List view of own parts with AsBuilt lifecycle. Gives detailed information on the assets registered in the Digital Twin Registry of Catena-X for the company. This includes data based on the aspect models of use case traceability: AsBuilt, SerialPart, Batch. -Parts that have a quality alert are highlighted yellow. +Parts that have an active quality notification are highlighted yellow. === AsPlanned lifecycle parts List view of own parts with AsPlanned lifecycle. Gives detailed information on the assets registered in the Digital Twin Registry of Catena-X for the company. This includes data based on the aspect models of use case traceability: AsPlanned, SerialPart, Batch. -Parts that have a quality alert are highlighted yellow. +Parts that have an active quality notification are highlighted yellow. === Create quality notification from parts -Select one or multiple child components/parts/batches that are built into your part. -Selection will enable you to create a quality notification to customers (alert) or to suppliers (investigation) . For this action, click on the corresponding icon on the top left of a parts table. -The quality notification will be added to a queue (quality notifications) and not directly sent to the customer/supplier. -It is also possible to create a quality notification without the selection of parts. +Select one or multiple child components / parts / batches that are built into your part. +A selection will enable you to create a quality notification for own parts (alert) or supplier parts (investigation). For this action click on the icon on the top left of a parts table. +The quality notification will be added to a queue (quality notifications) and not directly sent to the customer / supplier. +It is also possible to create a quality notification without selecting any parts. -Once the quality alert is created you will get a pop-up and can directly navigate to the inbox for further action. +Once the quality alert is created you will get a pop-up and can directly navigate to the quality notification inbox for further action. -Parts which exist in a quality notification will be highlighted as a yellow colored row in the parts table. +Parts which exist in an active quality notification will be highlighted as a yellow colored row in the parts table. === Parts selection -> Publish assets -Select one or multiple parts that are in the AsBuilt lifecycle. A button will appear on the right of the lifecycle view selection: +Only an administrator can publish parts. + +Select one or multiple parts that are in the AsBuilt lifecycle. The publish button will turn black on the right of the lifecycle view selection: -image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/parts/publish_assets_button.svg[] +image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/parts/publish-assets-button.svg[] -Selection will enable you to publish assets with the goal to persist them (import state "persistent"). With a click on the button a window will be opened, where the selected assets are displayed and a required policy must be selected: -image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/parts/publish_assets_view.svg[] +image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/parts/publish-assets-view.svg[] + +Then the selected parts will be published. -The following table explains the different import state an asset can have: +The following table explains the different import states an asset can have: [cols="1,1"] |=== @@ -306,13 +303,13 @@ The following table explains the different import state an asset can have: |Asset is ready to be published. |published_to_core_services -|Asset is published, EDC assets, DTR shell, Submodel are created +|Asset is published, EDC assets, DTR shell, Submodel are created. |persistent |Asset is successfully synchronized with the IRS. |unset -|The import state of the asset was not set +|The import state of the asset is not set. |error |An error occurred along the import state transition. @@ -325,20 +322,19 @@ With a click on it a dialog opens where you can change the settings of the corre image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/parts/other-parts-table-settings-dialog.svg[] -Hide/show table columns by clicking on the checkbox or the column name. -It is possible to hide/show all columns by clicking on the "All" - checkbox. +Hide / show table columns by clicking on the checkbox or the column name. +It is possible to hide / show all columns by clicking on the "All"-checkbox. The reset icon resets the table columns to its default view. -Reorder the table columns by selecting a list item (click on the right of the column name). -By selecting the column, you can reorder it with the up and down arrow icons to move it in the front or back of other columns. +Reorder the table columns by selecting a list item by clicking on the name. You can reorder it with the up and down arrow icons. -Apply your changes by clicking on the "Save" - button. -If you want to discard your changes, press the "ESC" - button, click anywhere else except in the dialog or close it explicitly with the close icon on the upper right of the dialog. +Apply your changes by clicking on the "Save"-button. +If you want to discard your changes, press the "ESC"-button, click anywhere else except in the dialog or close it explicitly with the close icon on the upper right of the dialog. The settings will be stored in the local storage of the browser and will be persisted until they get deleted. -=== Own Part details +=== Own part details To open the detail view, click on the three dots icon of the desired item and select "View details". More detailed information on the asset is listed as well as a part tree that visually shows the parts relations. @@ -348,7 +344,7 @@ image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main ==== Overview General production information. -Information on the quality status of the part/batch. +Information on the quality status of the part / batch. ==== Relations @@ -359,7 +355,7 @@ A yellow border indicates that the part is a piece of a batch. A black border indicates that the part is a JustInSequence part. It is possible to adjust the view of the relationships by dragging the mouse to the desired view. -Zooming in/out can be done with the corresponding control buttons. +Zooming in / out can be done with the corresponding control buttons. image:https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/parts/open-new-tab.svg[] Open part tree in new tab to zoom, scroll and focus in a larger view. A minimap on the bottom right provides an overview of the current position on the part tree. @@ -370,32 +366,29 @@ Information about the import process and state of the part. ==== Manufacturer data -Detailed information on the IDs for the manufactured part/batch. +Detailed information on the IDs for the manufactured part / batch. ==== Customer data -Information about the identifiers at the customer for the respective part/batch. +Information about the identifiers at the customer for the respective part / batch. ==== Traction battery code data If the asset has the "traction battery code" aspect model, an additional section underneath will be displayed. -In this section there is detailed information about the traction battery and a table with its subcomponents +In this section there is detailed information about the traction battery and a table with its subcomponents. ==== Creation of a quality notification from detailed view By clicking on the "announcement" icon you can create a quality notification from the detailed view, containing the part information in the currently opened detailed view. -If this -functionality is disabled, a tooltip will provide information explaining the reason. You can trigger the tooltip by hovering above the button. +If this functionality is disabled, a tooltip will provide information explaining the reason. The tooltip is visible when hovering the mouse in front of the button. ==== Publish asset from detailed view -By clicking on the "publish" icon, you can publish the currently opened part from the detailed view. If the icon is disabled, -a tooltip will provide information explaining the reason. You can trigger the tooltip by hovering above the button - +By clicking on the "publish" icon you can publish the currently opened part from the detailed view. If the icon is disabled, a tooltip will provide information explaining the reason. The tooltip is visible when hovering the mouse in front of the button. === Supplier part details -To open the detail view, click on the three dots icon of the desired item from the parts table and select "View details". +To open the detail view click on the three dots icon of the desired item from the parts table and select "View details". More detailed information on the asset is listed. image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/parts/supplier-parts-list-detailed-view.svg[] @@ -403,24 +396,24 @@ image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main ==== Overview General production information. -Information on the quality status of the supplier part/batch. +Information on the quality status of the supplier part / batch. ==== Manufacturer data -Detailed information on the IDs for the supplier part/batch. +Detailed information on the IDs for the supplier part / batch. ==== Customer data -Information about the identifiers at the customer (in this case own company) for the respective part/batch. +Information about the identifiers at the customer (in this case own company) for the respective part / batch. === Customer parts List view of customer parts and batches. -Customer Parts that are in a quality alert are highlighted yellow. +Customer parts that are in an active quality notification are highlighted yellow. === Customer part details -To open the detail view, click on the three dots icon of the desired item and select "View details". +To open the detail view click on the three dots icon of the desired item and select "View details". More detailed information on the asset is listed. image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/parts/customer-parts-list-detailed-view.svg[] @@ -428,19 +421,19 @@ image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main ==== Overview General production information. -Information on the quality status of the customer part/batch. +Information on the quality status of the customer part / batch. ==== Manufacturer data -Detailed information on the IDs for the customer part/batch. +Detailed information on the IDs for the customer part / batch. ==== Customer data -Information about the identifiers at the customer for the respective part/batch. +Information about the identifiers at the customer for the respective part / batch. == Quality notifications -Inbox for received/sent quality notifications. +Inbox for received / sent quality notifications. image:https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/quality-notifications/investigations-list-view.svg[] @@ -450,14 +443,14 @@ Choosing the filter input field for any column and typing in any character will image:https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/quality-notifications/investigations-autosuggestion-filtering.svg[] -image:https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/quality-notifications/notification-drafts.svg[] Received quality notifications. +image:https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/quality-notifications/notification-drafts.svg[] Received quality notifications Quality notifications received by a customer. Those notifications specify a defect or request to investigate on a specific part / batch on your side and give feedback to the customer. -image:https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/quality-notifications/notification-send.svg[] Sent quality notifications. +image:https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/quality-notifications/notification-send.svg[] Sent quality notifications -Notifications in the context of quality investigations that are in queued/draft status or already requested/sent to the supplier. +Notifications in the context of quality investigations that are in queued status or already sent to the supplier. Those notifications specify a defect or request to investigate on a specific part / batch on your suppliers side and give feedback back to you. * Queued status: Quality investigation is created but not yet released. @@ -465,33 +458,36 @@ Those notifications specify a defect or request to investigate on a specific par === Create a new quality notification -By clicking the announcement icon in the upper left corner of the table, you will be navigated to the notification creation view, in where you can start a quality notification from blank. +By clicking the announcement icon in the upper left corner of the table, you will be navigated to the notification creation view, where you can start a quality notification from scratch. === Table Actions -Similar to the parts table, the inbox provide a variety on actions you can apply to the listed notifications. -Some actions are related to a single notification, while other can be executed on multiple notifications at a time. +Similar to the parts table the inbox provides a variety of actions you can apply to the listed notifications. +Some actions are related to a single notification, while others can be executed on multiple notifications at a time. ==== Actions on a single notification -Through a click on the three dots on the right of a notification list row you open the menu actions, which you can choose from. -Generally, there are the actions to edit the notification (if it's not sent yet) or view details about it. -Additionally, there are the options to apply action alongside the lifecycle of a quality notification. +With a click on the three dots on the right of a notification list row you open the menu actions. +You can view details of the notification or edit it. +Additionally, there are options to choose from alongside the lifecycle of a quality notification (cancel, approve, acknowledge, accept, decline, close). ==== Actions on multiple notifications Notifications can be selected with the checkboxes on the left of the table. -With the selection, there is a context menu for actions on mulitple (selected) notifications. +With the selection there is a context menu for actions on multiple (selected) notifications. The "more" menu is opened by clicking on the horizontally aligned three dots icon. image:https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/quality-notifications/inbox-multiselect-actions.svg[] -=== Quality notification create/edit view +=== Quality notification create / edit view A quality notification can be started by the following options: -- Part detail view if a part has child elements a quality notification with type INVESTIGATION can be created. -- Part table if parts are selected a quality notification with type ALERT can be created. -- Other parts table if parts are selected a quality notification with type INVESTIGATION can be created. + +- Part detail view, if a part has child elements: A quality notification with type INVESTIGATION can be created. +- Part table, if own parts are selected: A quality notification with type ALERT can be created. +- Part table, if supplier parts are selected: A quality notification with type INVESTIGATION can be created. +- Part table, if no parts are selected: A blank quality notification can be created. +- Quality notification table: A blank quality notification can be created. A quality notification can be edited by clicking on the context menu on an item within the inbox. @@ -502,7 +498,7 @@ image:https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/ Select the three dots icon on the right side of a quality notification entry to open the context menu. From there it is possible to open the quality notification detailed view or change the status of it. -Only the possible status transition will show up. +Only possible status transitions will show up. image:https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/quality-notifications/notification-context-action.svg[] @@ -522,21 +518,13 @@ image:https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/ General information about the quality notification. -==== Affected Parts - -Listed parts that are assigned to the selected alert. - -==== Supplier parts (If type is investigation) - -Detailed information for child parts assigned to a quality notification. - -==== Own parts (If type is alert) +==== Affected parts -Detailed information for parent parts assigned to a quality notification. +Listed parts that are assigned to the selected quality notification. -==== Message History +==== Message history -Displays all state transitions including the reason/description of the transition that were done on the notification to get an overview of the correspondence between sender and receiver. +Displays all state transitions including the reason / description of the transition that were done on the notification to get an overview of the correspondence between sender and receiver. ==== Quality notification action @@ -580,10 +568,10 @@ Following status for a quality notification are possible: Quality notifications always have a status. The transition from one status to a subsequent status is described in the below state model. -The Sender can change the status to closed from any status. +The sender can change the status to closed from any status. The receiver can never change the status to closed. The legend in the below state diagram describes who can set the status. -One exception to this rule: the transition from status SENT to status RECEIVED is done automatically once the sender receives the Http status code 201. +One exception to this rule: The transition from status SENT to status RECEIVED is done automatically once the sender receives the Http status code 201. image::https://raw.githubusercontent.com/eclipse-tractusx/traceability-foss/main/docs/src/images/user-manual/quality-notifications/notificationstatemodel.svg[Notification state model] diff --git a/docs/src/images/arc42/cross-cutting/given_when_then_pattern.svg b/docs/src/images/arc42/cross-cutting/given-when-then-pattern.svg similarity index 99% rename from docs/src/images/arc42/cross-cutting/given_when_then_pattern.svg rename to docs/src/images/arc42/cross-cutting/given-when-then-pattern.svg index a00cec2fd9..5ecc16bac2 100644 --- a/docs/src/images/arc42/cross-cutting/given_when_then_pattern.svg +++ b/docs/src/images/arc42/cross-cutting/given-when-then-pattern.svg @@ -9,7 +9,7 @@ id="svg1" xml:space="preserve" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" - sodipodi:docname="given_when_then_pattern.svg" + sodipodi:docname="given-when-then-pattern.svg" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:xlink="http://www.w3.org/1999/xlink" diff --git a/docs/src/images/arc42/cross-cutting/unit_test_naming.svg b/docs/src/images/arc42/cross-cutting/unit-test-naming.svg similarity index 98% rename from docs/src/images/arc42/cross-cutting/unit_test_naming.svg rename to docs/src/images/arc42/cross-cutting/unit-test-naming.svg index a470f465da..4de57d2775 100644 --- a/docs/src/images/arc42/cross-cutting/unit_test_naming.svg +++ b/docs/src/images/arc42/cross-cutting/unit-test-naming.svg @@ -9,7 +9,7 @@ id="svg1" xml:space="preserve" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" - sodipodi:docname="unit_test_naming.svg" + sodipodi:docname="unit-test-naming.svg" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:xlink="http://www.w3.org/1999/xlink" diff --git a/docs/src/images/arc42/cross-cutting/vulnerability_level.svg b/docs/src/images/arc42/cross-cutting/vulnerability-level.svg similarity index 99% rename from docs/src/images/arc42/cross-cutting/vulnerability_level.svg rename to docs/src/images/arc42/cross-cutting/vulnerability-level.svg index 52b1e95fab..2a6a00194a 100644 --- a/docs/src/images/arc42/cross-cutting/vulnerability_level.svg +++ b/docs/src/images/arc42/cross-cutting/vulnerability-level.svg @@ -9,7 +9,7 @@ id="svg1" xml:space="preserve" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" - sodipodi:docname="vulnerability_level.svg" + sodipodi:docname="vulnerability-level.svg" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" xmlns:xlink="http://www.w3.org/1999/xlink" diff --git a/docs/src/images/user-manual/general-information/app_roles.svg b/docs/src/images/user-manual/general-information/app-roles.svg similarity index 99% rename from docs/src/images/user-manual/general-information/app_roles.svg rename to docs/src/images/user-manual/general-information/app-roles.svg index 81d13c3c8f..d3d93da65a 100644 --- a/docs/src/images/user-manual/general-information/app_roles.svg +++ b/docs/src/images/user-manual/general-information/app-roles.svg @@ -7,7 +7,7 @@ width="968.66669" height="320" viewBox="0 0 968.66669 320" - sodipodi:docname="app_roles.svg" + sodipodi:docname="app-roles.svg" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" diff --git a/docs/src/images/user-manual/general-information/assign_app_roles.svg b/docs/src/images/user-manual/general-information/assign-app-roles.svg similarity index 99% rename from docs/src/images/user-manual/general-information/assign_app_roles.svg rename to docs/src/images/user-manual/general-information/assign-app-roles.svg index c1cf3466fa..9543b8f5f4 100644 --- a/docs/src/images/user-manual/general-information/assign_app_roles.svg +++ b/docs/src/images/user-manual/general-information/assign-app-roles.svg @@ -7,7 +7,7 @@ width="686.66669" height="226" viewBox="0 0 686.66669 226" - sodipodi:docname="assign_app_roles.svg" + sodipodi:docname="assign-app-roles.svg" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" diff --git a/docs/src/images/user-manual/general-information/cx_portal_roles.svg b/docs/src/images/user-manual/general-information/cx-portal-roles.svg similarity index 99% rename from docs/src/images/user-manual/general-information/cx_portal_roles.svg rename to docs/src/images/user-manual/general-information/cx-portal-roles.svg index e6ee607a16..5e8cf056cb 100644 --- a/docs/src/images/user-manual/general-information/cx_portal_roles.svg +++ b/docs/src/images/user-manual/general-information/cx-portal-roles.svg @@ -7,7 +7,7 @@ width="932.66669" height="508.66666" viewBox="0 0 932.66669 508.66666" - sodipodi:docname="cx_portal_roles.svg" + sodipodi:docname="cx-portal-roles.svg" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" diff --git a/docs/src/images/user-manual/navigation/admin_contract_detailed_view.svg b/docs/src/images/user-manual/navigation/admin-contract-detailed-view.svg similarity index 99% rename from docs/src/images/user-manual/navigation/admin_contract_detailed_view.svg rename to docs/src/images/user-manual/navigation/admin-contract-detailed-view.svg index fd46aec5be..458f0508e6 100644 --- a/docs/src/images/user-manual/navigation/admin_contract_detailed_view.svg +++ b/docs/src/images/user-manual/navigation/admin-contract-detailed-view.svg @@ -7,7 +7,7 @@ width="1514.4" height="817.59998" viewBox="0 0 1514.4 817.59998" - sodipodi:docname="admin_contract_detailed_view.svg" + sodipodi:docname="admin-contract-detailed-view.svg" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" diff --git a/docs/src/images/user-manual/navigation/admin_contract_view.svg b/docs/src/images/user-manual/navigation/admin-contract-view.svg similarity index 99% rename from docs/src/images/user-manual/navigation/admin_contract_view.svg rename to docs/src/images/user-manual/navigation/admin-contract-view.svg index f4c516371d..30be19c7d5 100644 --- a/docs/src/images/user-manual/navigation/admin_contract_view.svg +++ b/docs/src/images/user-manual/navigation/admin-contract-view.svg @@ -7,7 +7,7 @@ width="1932" height="846" viewBox="0 0 1932 846" - sodipodi:docname="admin_contract_view.svg" + sodipodi:docname="admin-contract-view.svg" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" diff --git a/docs/src/images/user-manual/navigation/admin_upload_file.svg b/docs/src/images/user-manual/navigation/admin-upload-file.svg similarity index 99% rename from docs/src/images/user-manual/navigation/admin_upload_file.svg rename to docs/src/images/user-manual/navigation/admin-upload-file.svg index ac3fbd1a29..e68494735d 100644 --- a/docs/src/images/user-manual/navigation/admin_upload_file.svg +++ b/docs/src/images/user-manual/navigation/admin-upload-file.svg @@ -7,7 +7,7 @@ width="1521.6" height="273.60001" viewBox="0 0 1521.6 273.60001" - sodipodi:docname="admin_upload_file.svg" + sodipodi:docname="admin-upload-file.svg" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" diff --git a/docs/src/images/user-manual/navigation/bpn_edc_configuration.svg b/docs/src/images/user-manual/navigation/bpn-edc-configuration.svg similarity index 99% rename from docs/src/images/user-manual/navigation/bpn_edc_configuration.svg rename to docs/src/images/user-manual/navigation/bpn-edc-configuration.svg index f31a8f7ada..69599f45ca 100644 --- a/docs/src/images/user-manual/navigation/bpn_edc_configuration.svg +++ b/docs/src/images/user-manual/navigation/bpn-edc-configuration.svg @@ -7,7 +7,7 @@ width="1865" height="554" viewBox="0 0 1865 554" - sodipodi:docname="bpn_edc_configuration.svg" + sodipodi:docname="bpn-edc-configuration.svg" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" diff --git a/docs/src/images/user-manual/parts/publish_assets_button.svg b/docs/src/images/user-manual/parts/publish-assets-button.svg similarity index 99% rename from docs/src/images/user-manual/parts/publish_assets_button.svg rename to docs/src/images/user-manual/parts/publish-assets-button.svg index 508486d9b2..ed86cd85cc 100644 --- a/docs/src/images/user-manual/parts/publish_assets_button.svg +++ b/docs/src/images/user-manual/parts/publish-assets-button.svg @@ -7,7 +7,7 @@ width="939" height="492" viewBox="0 0 939 492" - sodipodi:docname="publish_assets_button.svg" + sodipodi:docname="publish-assets-button.svg" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd" diff --git a/docs/src/images/user-manual/parts/publish_assets_view.svg b/docs/src/images/user-manual/parts/publish-assets-view.svg similarity index 99% rename from docs/src/images/user-manual/parts/publish_assets_view.svg rename to docs/src/images/user-manual/parts/publish-assets-view.svg index f52cb84e0b..7bc3285f84 100644 --- a/docs/src/images/user-manual/parts/publish_assets_view.svg +++ b/docs/src/images/user-manual/parts/publish-assets-view.svg @@ -7,7 +7,7 @@ width="786" height="367" viewBox="0 0 786 367" - sodipodi:docname="publish_assets_view.svg" + sodipodi:docname="publish-assets-view.svg" inkscape:version="1.3.2 (091e20e, 2023-11-25, custom)" xmlns:inkscape="http://www.inkscape.org/namespaces/inkscape" xmlns:sodipodi="http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd"