#!/bin/sh [ "$1" = python3-referencing ] || exit 0 python3 - << 'EOF' from referencing import Registry, Resource import referencing.jsonschema schema = Resource.from_contents( # Parse some contents into a 2020-12 JSON Schema { "$schema": "https://json-schema.org/draft/2020-12/schema", "$id": "urn:example:a-202012-schema", "$defs": { "nonNegativeInteger": { "$anchor": "nonNegativeInteger", "type": "integer", "minimum": 0, }, }, } ) registry = schema @ Registry() # Add the resource to a new registry # From here forward, this would usually be done within a library wrapping this one, # like a JSON Schema implementation resolver = registry.resolver() resolved = resolver.lookup("urn:example:a-202012-schema#nonNegativeInteger") assert resolved.contents == { "$anchor": "nonNegativeInteger", "type": "integer", "minimum": 0, } EOF