From 8dde8a668cebf260cef9ba815d2afb10df405bd1 Mon Sep 17 00:00:00 2001 From: Alex Stephen Date: Fri, 14 Nov 2025 16:16:45 -0800 Subject: [PATCH 1/2] OAS guidance for AEP 159 --- aep/general/0159/aep.md.j2 | 32 +++++++++++++++++++++++++++++++- 1 file changed, 31 insertions(+), 1 deletion(-) diff --git a/aep/general/0159/aep.md.j2 b/aep/general/0159/aep.md.j2 index 130ffc14..77a1015d 100644 --- a/aep/general/0159/aep.md.j2 +++ b/aep/general/0159/aep.md.j2 @@ -39,7 +39,37 @@ guidance in [unreachable resources]. {% tab oas %} -Note: OAS guidance is yet to be written. +- The OpenAPI path pattern **must** include a parameter for the collection + identifier, rather than hard-coding the `-` character. This allows clients to + use either a specific collection ID or the wildcard `-`. +- The path parameter **should** allow the `-` character as a valid value. + +**Example:** List books across all publishers: + +```yaml +paths: + /v1/publishers/{publisher_id}/books: + get: + operationId: ListBooks + description: >- + Lists books for a specific publisher. Supports wildcard collection + lookup: use `-` as the publisher_id to list books across all + publishers. When using the wildcard, books from all publishers are + returned with their canonical resource paths (e.g., + publishers/123/books/456, not publishers/-/books/456). + parameters: + - in: path + name: publisher_id + required: true + schema: + type: string + description: >- + The publisher ID. Use `-` to list books across all publishers. +``` + +**Note:** When using wildcard collection lookup, the response **must** return +resources with their canonical paths containing actual parent collection +identifiers, not the wildcard character. {% endtabs %} From 089506086fd1a69e0c0b5ae6c6bc23b7615ec69c Mon Sep 17 00:00:00 2001 From: Alex Stephen Date: Mon, 17 Nov 2025 10:56:08 -0800 Subject: [PATCH 2/2] Fix build --- aep/general/0157/aep.md.j2 | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/aep/general/0157/aep.md.j2 b/aep/general/0157/aep.md.j2 index 9305cb11..64a40b54 100644 --- a/aep/general/0157/aep.md.j2 +++ b/aep/general/0157/aep.md.j2 @@ -116,4 +116,4 @@ parameters: metadata, FULL returns all fields. ``` -{% endtab %} +{% endtabs %}