Skip to content

Merge to upstream/cat fr co 03 part 2 trust framework interface compliance check#40

Open
noVaSon wants to merge 21 commits into
eclipse-xfsc:mainfrom
federated-catalogue-enhancements-2026:merge-to-upstream/CAT-FR-CO-03_part-2_trust-framework-interface-compliance-check
Open

Merge to upstream/cat fr co 03 part 2 trust framework interface compliance check#40
noVaSon wants to merge 21 commits into
eclipse-xfsc:mainfrom
federated-catalogue-enhancements-2026:merge-to-upstream/CAT-FR-CO-03_part-2_trust-framework-interface-compliance-check

Conversation

@noVaSon
Copy link
Copy Markdown
Contributor

@noVaSon noVaSon commented May 19, 2026

🚀 Summary

Adds architecture documentation for the external trust framework compliance check subsystem (CAT-FR-CO-03).

This change is part of the Enhancement of XFSC Federated Catalogue.
Details can be found here (permalink):

https://github.com/eclipse-xfsc/docs/blob/f3c6e6b6fbcc87732a1dfe83f060fa58a9a97873/federated-catalogue/src/docs/CAT%20Enhancement/CAT_Enhancement_Specifications%20v1.0.pdf

✅ What's Changed

  • New Compliance Check Subsystem section in 05_building_block_view.adoc
  • Bundle properties table extended with client_type, service_url, and api_version entries consumed by the compliance subsystem
  • New Running a Compliance Check sequence diagram in 06_runtime_view.adoc covering POST /assets/{id}/compliance-check and GET /assets/{id}/compliance-checks
  • Error mapping documented

🔍 Related Issues

eclipse-xfsc/federated-catalogue#125

📋 Checklist

  • I've updated documentation if necessary

Sw3eks and others added 21 commits May 6, 2026 13:14
* [CAT-FR-CO-05] on demand validation docs

   - Add On-Demand Asset Validation Service section: AssetValidationService,
      ValidationStrategy pattern (ShaclValidationStrategy, JsonSchemaValidationStrategy,
      XmlSchemaValidationStrategy), ShaclValidationExecutor shared engine,
      multi-asset cardinality rules, max-assets-per-request and timeout config
    - Document asset deletion cascade: AssetDeletedEvent -> ValidationResultCleanupListener
      -> ValidationResultStore.deleteByAssetId (BEFORE_COMMIT atomicity)
    - validator_type column lists SHACL, JSON_SCHEMA, XML_SCHEMA, TRUST_FRAMEWORK
    - On-demand validation endpoint is POST /assets/validate
    - ValidationResultStore class diagram includes findAll, syncToGraph, deleteByAssetId
    - SchemaValidationService is scoped to the upload/revalidation path
    - Admin table reflects JSON Schema and XML Schema wiring through AssetValidationService
    - Component table refers to "asset validation"
    - Verify Credential procedure (chapter 6): on-demand validation routes through
      AssetValidationService (SHACL/JSON/XML); SchemaValidationService remains the
      upload-flow path, gated by federated-catalogue.verification.schema
    - Delete Participant sequence (chapter 6): note the AssetDeletedEvent cascade that
      cleans up validation results before commit
    - Input Parsing Security cross-cutting concept (chapter 8): XXE hardening
      (FEATURE_SECURE_PROCESSING + empty external DTD/schema access), SSRF protection
      via JSON $ref scheme allowlist, and SPARQL injection prevention via requireSafeIri

* [CAT-FR-CO-05] remove requirement ids
continued in the follow-up cleanup branch.
* introduce trust framework bundles

* correct current state about incomplete schema loading

* remove the framework-bundled ontology and shapes from defaultschemas

* remove deleted methods
…ouple-result-types-from-roles

# Conflicts:
#	federated-catalogue/src/docs/architecture/chapters/05_building_block_view.adoc
#	federated-catalogue/src/docs/architecture/chapters/08_concepts.adoc
#	federated-catalogue/src/docs/architecture/chapters/09_architecture_decisions.adoc
#	federated-catalogue/src/docs/architecture/chapters/12_glossary.adoc
* docs: asset metadata enrichment

Document the metadata enrichment path: routing on POST /assets when
the uploaded RDF's primary subject IRI matches an existing non-RDF
asset, the resulting graph and content updates, and the new
content_kind column. Adds ADR 10 covering the subject-IRI routing
decision and overwrite semantics, plus glossary entries for
ContentKind and Metadata Enrichment.

* feat(CAT-FR-AM-03): resolving comments

* feat(CAT-FR-AM-03): resolving comments

---------

Co-authored-by: saackef <fabian.saacke@msg.group>
* introduce trust framework bundles

* correct current state about incomplete schema loading

* remove the framework-bundled ontology and shapes from defaultschemas

* add role to result mapping from bundle metadata

* describe the no-adapter decision in ADR-10

* explain role declaration and the additional_roots mechanic for DSO mapping to ServiceOffering

* explain role declaration and the additional_roots mechanic for DSO mapping to ServiceOffering

* replace method name

* update documentation with partial refactoring changes

continued in the follow-up cleanup branch.

---------

Signed-off-by: Eric Nowak <eric.nowak@msg.group>
…e cascade listener (#28)

Aligns arc42 building block and runtime views with the cleanup PR:
SHACL evaluation now runs directly inside ShaclValidationStrategy and
SchemaValidationServiceImpl (no shared executor), and ProvenanceCleanupListener
joins ValidationResultCleanupListener as a second AssetDeletedEvent consumer.
…anup-credential-verification-strategy

Cleanup credential verification strategy
@sonarqubecloud
Copy link
Copy Markdown

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants