Organization
Maastricht University
Project
No response
Contact Details
b.vriesema@maastrichtuniversity.nl
Short description
The [expandableObjects](https://github.com/open-education-api/specification/blob/main/source/enumerations/expandableObjects.yaml) schema (the vocabulary supportedExpands values must validate against) defines a singular/plural pair for "child" objects:
- child: the child object (which is an instance of the current object) can be expanded.
- children: a set of objects (which are an instance of the current object) can be expanded.
But only a singular parent exists - there is no parents counterpart:
- parent: the parent object (which is an instance of the current object) can be expanded.
GET /learning-outcomes/{learningOutcomeId}, however, declares its own expand query parameter with a literal enum that requires the plural form, since a learning outcome can have multiple parent learning outcomes:
expand:
schema:
items:
enum: [organisation, parents, children]
This puts a conformant implementation in a bind: to accurately advertise parents (matching the operation's own required enum and its actual behaviour), but parents isn't a valid value against the global expandableObjects vocabulary that supportedExpands entries are supposed to be drawn from. There's no value that is simultaneously accurate and schema-valid.
Version
v6
Usecase
No response
Which institutions support this change?
No response
Proposed solution
Fix: add a parents entry to expandableObjects, mirroring the existing child/children pair, so implementations can correctly and validly advertise support for the multi-parent-relationship case that /learning-outcomes already requires.
Requests and responses
GET /learning-outcomes/{learningOutcomeId}
What is your question for the OOAPI work group?
Can we add parents to the supported expands?
Organization
Maastricht University
Project
No response
Contact Details
b.vriesema@maastrichtuniversity.nl
Short description
The
[expandableObjects](https://github.com/open-education-api/specification/blob/main/source/enumerations/expandableObjects.yaml)schema (the vocabularysupportedExpandsvalues must validate against) defines a singular/plural pair for "child" objects:But only a singular
parentexists - there is noparentscounterpart:GET /learning-outcomes/{learningOutcomeId}, however, declares its ownexpandquery parameter with a literal enum that requires the plural form, since a learning outcome can have multiple parent learning outcomes:expand:
schema:
items:
enum: [organisation, parents, children]
This puts a conformant implementation in a bind: to accurately advertise
parents(matching the operation's own required enum and its actual behaviour), butparentsisn't a valid value against the globalexpandableObjectsvocabulary thatsupportedExpandsentries are supposed to be drawn from. There's no value that is simultaneously accurate and schema-valid.Version
v6
Usecase
No response
Which institutions support this change?
No response
Proposed solution
Fix: add a
parentsentry toexpandableObjects, mirroring the existingchild/childrenpair, so implementations can correctly and validly advertise support for the multi-parent-relationship case that/learning-outcomesalready requires.Requests and responses
GET /learning-outcomes/{learningOutcomeId}What is your question for the OOAPI work group?
Can we add
parentsto the supported expands?