Skip to content

docs(annex): add informative Conformance Test Corpus (T-16)#590

Open
aorzelskiGH wants to merge 1 commit into
IDTA-01002-3-2_workingfrom
docs/conformance-test-corpus
Open

docs(annex): add informative Conformance Test Corpus (T-16)#590
aorzelskiGH wants to merge 1 commit into
IDTA-01002-3-2_workingfrom
docs/conformance-test-corpus

Conversation

@aorzelskiGH
Copy link
Copy Markdown
Contributor

Summary

Add a new informative annex Conformance Test Corpus to IDTA-01002 with a structured, technology-neutral set of acceptance tests that implementations can run to demonstrate conformance.

Problem

The specification currently has no structured catalogue of test / acceptance criteria. Reviewers and implementers rediscover the same edge cases on every review cycle (parse vs. schema errors, cast runtime errors, profile applicability, supplemental semantic IDs, PUT CREATE/UPDATE disambiguation, $and / $or identities, ...).

Solution

  • Introduce documentation/IDTA-01002-3/modules/ROOT/pages/annex/conformance-test-corpus.adoc.
  • Organize tests into four groups: Query Language, HTTP/REST API, Error handling and edge cases, and (via cross-reference) shared formula productions.
  • Each test has a stable ID (QL.parse.001, HTTP.put.001, ERR.schema.001, ...), a one-line purpose, an expected behaviour and a requirement level.
  • Register the annex in nav.adoc.
  • Aligned with a matching corpus in IDTA-01004.

Affected files

  • documentation/IDTA-01002-3/modules/ROOT/pages/annex/conformance-test-corpus.adoc (new)
  • documentation/IDTA-01002-3/modules/ROOT/nav.adoc

Review notes

  • The corpus is explicitly marked informative. No normative surface area is changed; the MUST/SHOULD columns refer back to normative requirements elsewhere in the spec.
  • Companion PR in aas-specs-security adds a matching corpus for the Access Rule Model.
  • Intent: a follow-up work stream can turn each row into an executable test case.

Refs: Review Finding T-16

Introduce a new annex that defines a structured, informative
set of acceptance tests for conforming implementations. The
corpus covers:

- Query Language parsing and evaluation
- HTTP/REST API (auth, PUT CREATE/UPDATE, invoke, files, query)
- Error handling and edge cases (parse, schema, cast errors,
  profile applicability)

Each test case has a stable ID, one-line purpose and expected
behaviour, so the corpus can be turned directly into an
executable conformance test suite. Aligned with the matching
corpus in IDTA-01004.

Refs: Review Finding T-16
Made-with: Cursor
| Status `422`, JSON-pointer in body.

| HTTP.discovery.001
| Discovery endpoints MUST honour the operation-to-RIGHT mapping of this spec (xref:annex/operation-to-right-mapping.adoc[]).
This work is licensed under a [Creative Commons Attribution 4.0 International License](
https://creativecommons.org/licenses/by/4.0/).

SPDX-License-Identifier: CC-BY-4.0
////

[#conformance-test-corpus]
= Conformance Test Corpus (informative)

This annex defines an informative but structured set of *acceptance tests* for conforming implementations of the AAS Query Language and the HTTP/REST API defined in this specification. The corpus is intentionally technology-neutral and worded as a set of test cases; an implementation is said to be conformant to a given area if it passes every required test case in that area.

The corpus is aligned with the conformance test corpus in IDTA-01004 Part 4: Security xref:bibliography.adoc#bib3[[3\]]. Tests that exercise shared formula grammar productions (logical expressions, comparisons, FieldIdentifiers, value literals, type casts, `$match`/`$and`/`$or`/`$not`) are normative for both specifications.
| Status `200 OK` if rule allows, else `403`.

| HTTP.invoke.001
| `POST /.../operations/{idShortPath}/invoke` MUST require the RIGHT `EXECUTE`.
@BirgitBoss BirgitBoss added this to the 3.2 milestone May 11, 2026
@BirgitBoss BirgitBoss added the documentation Improvements or additions to documentation label May 11, 2026
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

documentation Improvements or additions to documentation

Projects

None yet

Development

Successfully merging this pull request may close these issues.

3 participants