Skip to content

Extract output to a separate specification #1320

Closed
@gregsdennis

Description

@gregsdennis

This proposal by @Relequestual (via @jdesrosiers) was originally documented in this discussion.

Moving the output to a separate specification would be advantageous in several ways.

Audience-specific

One of the realizations that came out of @karenetheridge's output format proposal was that there is a difference in needs between output intended to be read by machines vs humans.

What's currently in the spec is intended for machine consumers. Karen's proposal is intended for humans.

We could have separate specifications for each, and implementations could adopt whichever is needed for their intended consumers.

Independent versioning

The current output is versioned along with the Core spec. As such, there were no changes between 2019-09 and 2020-12.

Having the output external to the Core spec allows independent versioning. With the changes coming in draft-next, there will a large burden on implementations to support the new output. This is on top of any changes to schema evaluation. Such a burden can be a deterrent for implementations to support the new schema features.

Having an independent output spec would remove that burden by allowing implementations to support new schema features while still supporting an older output format, and they could separately update the output as they have availability.

Why we maybe shouldn't

@handrews identified that there could be features in JSON Schema (such as annotations) that impose requirements on output. He maintains that such a relationship requires that the output requirements remain in Core.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    Status

    Closed

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions