Public Attributes | |
| ObjectKind | type |
| What kind of Object sits here. | |
| std::optional< JSON::StringView > | parent {std::nullopt} |
| JSON::String | default_dialect |
| JSON::String | base |
Where an Object sits in a description, and what the frame knows about it
| JSON::String sourcemeta::core::OpenAPIFrame::Location::base |
Set on a Schema Object position alone, empty elsewhere: the base its document keys every location by, which is what a relative reference inside that schema resolves against until an $id says otherwise. RFC 3986 Section 5.1.1 makes an $id the higher precedence source, so this is a default in the same way the dialect above is
| JSON::String sourcemeta::core::OpenAPIFrame::Location::default_dialect |
Set on the root of a document and on every Schema Object position it holds, empty elsewhere: the default $schema in force there, resolved against the base. A Schema Object that declares its own overrides it, so this is not what that schema is written in. The frame of the schemas a description holds answers that
| std::optional<JSON::StringView> sourcemeta::core::OpenAPIFrame::Location::parent {std::nullopt} |
The URI of the Object that holds this one, which is the nearest position above it that the frame records, with no value for the root of a document. It borrows from the key the frame keys that Object by, so the frame must outlive it