Skip to content

Cover URI schemes in $id besides URL and URN #797

@sangamon

Description

@sangamon

According to the spec, the $id attribute allows arbitrary URIs. The test suite covers URLs and URNs. It might be helpful to have a canary with another URI type, e.g. tag URI (which seems to be recommended over unregistered URNs):

"$id": "tag:foo.example,2025:bar/baz"

One of the existing URN test cases could be copied/repurposed to cover tag URI.

According to json-schema-validation-comparison as of 2025-11-25 (commit 895504e5), the following JVM implementations don't seem to handle tag URIs as expected: Jackson, Justify, Skema and Snow.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions