You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
{{ message }}
Repository navigation
Add missing keywords support for OpenAPIReference (and JsonSchemaRefernece #2903
actually I went ahead and had additional discussions with both Henry Andrews (@handrews) and Darrel (@darrelmiller) (thank you both). My understanding was wrong.
Any JSON Schema keyword can appear next to $ref, some might not be applicable (not do anything) due to their nature, some might be contradictory when appearing both in the reference and the referenced schema, in which case, it's up to the application to define what the behaviour should be.
In the case where both are present, we have a precedent of returning the reference value for annotation keywords, so being consistent here makes sense. Then the application can check the reference and the target values, and compare them, if the difference is important to the application.
a corresponding setter in the JsonSchemaReference type, and serialization code to match (use x-jsonschema prefix for OAI < 3.1)
a corresponding getter in the JsonSchemaReference type, and the deserialization code to match (use x-jsonschema prefix for OAI < 3.1)
a corresponding setter in OpenApiSchemaReference, that maps to the reference corresponding setter
a corresponding getter, which returns the reference value when present, otherwise the target value
cloning and unit test code like you've started
Now, I understand this is significant work, if you want to focus on the properties you've identified first, and punt the other properties to an additional issue, let me know.
Activity
feat(library): support schema keywords on references
Bump Microsoft.OpenApi from 2.7.5 to 2.10.0 (#1407)
Bump the nuget-dependencies group with 1 update (#2)
chore(deps): Bump the dotnet group with 30 updates (#16)
(PATCH): Bump the csharp-deps group with 6 updates (#81)