changedOutput schema / properties / data / anyOf
Previous value: -[
- {
- "additionalProperties": {},
- "properties": {
- "blocks_in_page": {
- "type": "number"
- },
- "blocks_in_provision": {
- "type": "number"
- },
- "blocks_total": {
- "type": "number"
- },
- "cite": {
- "type": "string"
- },
- "content_hash": {
- "type": "string"
- },
- "correspondences": {
- "anyOf": [
- {
- "items": {
- "additionalProperties": {},
- "properties": {
- "derivation": {
- "type": "string"
- },
- "note": {
- "type": [
- "string",
- "null"
- ]
- },
- "paragraph_pairs": {
- "description": "A paragraph-specific mapping's verified rows, as {predecessor, successor} provision labels (\"5(3)\", \"36(4)\"); absent where the mapping is article to article; a side without a paragraph number is a printed pairing that fell back to its article.",
- "items": {
- "additionalProperties": false,
- "properties": {
- "predecessor": {
- "type": "string"
- },
- "successor": {
- "type": "string"
- }
- },
- "required": [
- "predecessor",
- "successor"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "relationship": {
- "type": "string"
- },
- "target": {
- "additionalProperties": {},
- "properties": {
- "cite": {
- "type": "string"
- },
- "instrument_id": {
- "type": "string"
- },
- "locator": {
- "additionalProperties": false,
- "properties": {
- "annex": {
- "anyOf": [
- {
- "maxLength": 32,
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Annex number, roman or arabic (\"I\", \"1\"); omit for an instrument whose single annex is unnumbered."
- },
- "article": {
- "anyOf": [
- {
- "maxLength": 32,
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Article number as printed: \"97\", \"45a\", \"69-a\"."
- },
- "kind": {
- "description": "Which kind of provision the locator names.",
- "enum": [
- "article",
- "annex",
- "recital"
- ],
- "type": "string"
- },
- "paragraph": {
- "anyOf": [
- {
- "maxLength": 32,
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Numbered paragraph within the article, e.g. \"2\"."
- },
- "point": {
- "anyOf": [
- {
- "maxLength": 32,
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Lettered point within the paragraph, e.g. \"b\"."
- },
- "recital": {
- "anyOf": [
- {
- "maxLength": 32,
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Recital number, e.g. \"95\"."
- },
- "subpoint": {
- "anyOf": [
- {
- "maxLength": 32,
- "type": "string"
- },
- {
- "type": "null"
- }
- ],
- "description": "Sub-point within the point."
- }
- },
- "required": [
- "kind"
- ],
- "type": "object"
- },
- "url": {
- "type": "string"
- },
- "version_id": {
- "type": "string"
- }
- },
- "required": [
- "instrument_id",
- "version_id",
- "cite",
- "url",
- "locator"
- ],
- "type": "object"
- }
- },
- "required": [
- "relationship",
- "derivation",
- "note",
- "target"
- ],
- "type": "object"
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ]
- },
- "deletions": {
- "anyOf": [
- {
- "items": {
- "anyOf": [
- {
- "additionalProperties": false,
- "properties": {
- "follows": {
- "type": "string"
- },
- "follows_part": {
- "description": "The bar follows the closing subparagraph of the paragraph in `follows`.",
- "enum": [
- "closing_subparagraph"
- ],
- "type": "string"
- },
- "form": {
- "const": "block",
- "type": "string"
- },
- "heading": {
- "type": "string"
- },
- "marker": {
- "const": "▌",
- "type": "string"
- },
- "page": {
- "exclusiveMinimum": 0,
- "maximum": 9007199254740991,
- "type": "integer"
- },
- "position": {
- "enum": [
- "within",
- "after"
- ],
- "type": "string"
- },
- "precedes": {
- "type": [
- "string",
- "null"
- ]
- },
- "precedes_part": {
- "description": "The bar precedes the closing subparagraph of the paragraph in `precedes`.",
- "enum": [
- "closing_subparagraph"
- ],
- "type": "string"
- },
- "source": {
- "const": "council_compromise",
- "type": "string"
- },
- "source_doc": {
- "type": "string"
- },
- "source_url": {
- "type": "string"
- }
- },
- "required": [
- "source",
- "marker",
- "form",
- "position",
- "follows",
- "precedes",
- "source_doc",
- "page",
- "source_url"
- ],
- "type": "object"
- },
- {
- "additionalProperties": false,
- "properties": {
- "act": {
- "type": "string"
- },
- "celex": {
- "type": "string"
- },
- "form": {
- "type": "string"
- },
- "heading": {
- "type": "string"
- },
- "instrument_id": {
- "type": [
- "string",
- "null"
- ]
- },
- "marker": {
- "type": "string"
- },
- "position": {
- "enum": [
- "within",
- "after",
- "title"
- ],
- "type": "string"
- }
- },
- "required": [
- "celex",
- "marker",
- "form",
- "position",
- "act",
- "instrument_id"
- ],
- "type": "object"
- }
- ]
- },
- "type": "array"
- },
- {
- "type": "null"
- }
- ],
- "description": "Deletions marked on the whole provision, in source order. A EUR-Lex deletion stub names the act that deleted what stood there: \"within\": the nth \"—————\" in the provision text; \"after\": something deleted after this provision (a whole article or chapter), with `heading` naming the Title, Chapter or Section heading it stands under when one comes between them; \"title\": in its heading. A record with source \"council_compromise\" is a ▌ the Council compromise text prints on a line of its own where it deleted a point, paragraph or passage: `follows` and `precedes` name the items it stands between (\"after\": at the end of the provision text, precedes null, with `heading` as for a stub), `follows_part` or `precedes_part` says that side is the paragraph's closing subparagraph; `page` and `source_url` give the page of the Council document that prints it; the provision text carries no mark for it. The record says where the bar stands, not what was removed, and compare_versions does not show it. Mechanically derived from the source; not part of the legal text. Null means no record is served for this provision (see the typed warning), never that nothing was deleted."
- },
- "instrument_id": {
- "type": "string"
- },
- "kind": {
- "type": "string"
- },
- "markdown": {
- "type": "string"
- },
- "narrowed": {
- "type": "boolean"
- },
- "source_notes": {
- "anyOf": [
- {
- "additionalProperties": false,
- "properties": {
- "complete": {
- "const": true,
- "description": "All notes referenced in this response's text, not the whole document or later pages.",
- "type": "boolean"
- },
- "items": {
- "items": {
- "additionalProperties": false,
- "properties": {
- "key": {
- "type": "string"
- },
- "marker": {
- "type": "string"
- },
- "text": {
- "type": "string"
- }
- },
- "required": [
- "key",
- "marker",
- "text"
- ],
- "type": "object"
- },
- "type": "array"
- },
- "scope": {
- "const": "returned_text",
- "type": "string"
- },
- "source_version_id": {
- "type": "string"
- }
- },
- "required": [
- "scope",
- "source_version_id",
- "complete",
- "items"
- ],
- "type": "object"
- },
- {
- "type": "null"
- }
- ],
- "description": "Null means unverified/unsupported coverage or an older release; consult the typed warning. Not an empty note inventory. Legal content_hash and block counts exclude this attachment."
- },
- "url": {
- "type": "string"
- },
- "version_id": {
- "type": "string"
- }
- },
- "required": [
- "instrument_id",
- "version_id",
- "cite",
- "kind",
- "markdown",
- "source_notes",
- "deletions",
- "narrowed",
- "blocks_in_page",
- "blocks_total",
- "blocks_in_provision",
- "content_hash",
- "url"
- ],
- "type": "object"
- },
- {
- "type": "null"
- }
-]New value: +[
+ {
+ "additionalProperties": {},
+ "properties": {
+ "blocks_in_page": {
+ "type": "number"
+ },
+ "blocks_in_provision": {
+ "type": "number"
+ },
+ "blocks_total": {
+ "type": "number"
+ },
+ "cite": {
+ "type": "string"
+ },
+ "content_hash": {
+ "type": "string"
+ },
+ "correspondences": {
+ "anyOf": [
+ {
+ "items": {
+ "additionalProperties": {},
+ "properties": {
+ "derivation": {
+ "type": "string"
+ },
+ "note": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "paragraph_pairs": {
+ "description": "A paragraph-specific mapping's verified rows, as {predecessor, successor} provision labels (\"5(3)\", \"36(4)\"); absent where the mapping is article to article; a side without a paragraph number is a printed pairing that fell back to its article. Correspondences are recorded on the article; where the correlation table is paragraph-specific and the pairing is verified by wording, an entry carries `paragraph_pairs`. A request narrowed to a paragraph or a point still receives the whole article's mappings, and a warning says whether any entry is paragraph-level.",
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "predecessor": {
+ "type": "string"
+ },
+ "successor": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "predecessor",
+ "successor"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "relationship": {
+ "description": "amended_from or supersedes, the analysis layer's own vocabulary, or their mechanical inverses amended_into and superseded_by.",
+ "type": "string"
+ },
+ "target": {
+ "additionalProperties": {},
+ "properties": {
+ "cite": {
+ "type": "string"
+ },
+ "instrument_id": {
+ "type": "string"
+ },
+ "locator": {
+ "additionalProperties": false,
+ "properties": {
+ "annex": {
+ "anyOf": [
+ {
+ "maxLength": 32,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Annex number, roman or arabic (\"I\", \"1\"); omit for an instrument whose single annex is unnumbered."
+ },
+ "article": {
+ "anyOf": [
+ {
+ "maxLength": 32,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Article number as printed: \"97\", \"45a\", \"69-a\"."
+ },
+ "kind": {
+ "description": "Which kind of provision the locator names.",
+ "enum": [
+ "article",
+ "annex",
+ "recital"
+ ],
+ "type": "string"
+ },
+ "paragraph": {
+ "anyOf": [
+ {
+ "maxLength": 32,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Numbered paragraph within the article, e.g. \"2\"."
+ },
+ "point": {
+ "anyOf": [
+ {
+ "maxLength": 32,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Lettered point within the paragraph, e.g. \"b\"."
+ },
+ "recital": {
+ "anyOf": [
+ {
+ "maxLength": 32,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Recital number, e.g. \"95\"."
+ },
+ "subpoint": {
+ "anyOf": [
+ {
+ "maxLength": 32,
+ "type": "string"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Sub-point within the point."
+ }
+ },
+ "required": [
+ "kind"
+ ],
+ "type": "object"
+ },
+ "url": {
+ "type": "string"
+ },
+ "version_id": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "instrument_id",
+ "version_id",
+ "cite",
+ "url",
+ "locator"
+ ],
+ "type": "object"
+ }
+ },
+ "required": [
+ "relationship",
+ "derivation",
+ "note",
+ "target"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "An annex or a recital carries an empty list. A mapping this service will not serve is omitted and correspondence_withheld names the instrument and the reason, so a short list is never silently under-claimed."
+ },
+ "deletions": {
+ "anyOf": [
+ {
+ "items": {
+ "anyOf": [
+ {
+ "additionalProperties": false,
+ "properties": {
+ "follows": {
+ "type": "string"
+ },
+ "follows_part": {
+ "description": "The bar follows the closing subparagraph of the paragraph in `follows`.",
+ "enum": [
+ "closing_subparagraph"
+ ],
+ "type": "string"
+ },
+ "form": {
+ "const": "block",
+ "type": "string"
+ },
+ "heading": {
+ "type": "string"
+ },
+ "marker": {
+ "const": "▌",
+ "type": "string"
+ },
+ "page": {
+ "exclusiveMinimum": 0,
+ "maximum": 9007199254740991,
+ "type": "integer"
+ },
+ "position": {
+ "enum": [
+ "within",
+ "after"
+ ],
+ "type": "string"
+ },
+ "precedes": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "precedes_part": {
+ "description": "The bar precedes the closing subparagraph of the paragraph in `precedes`.",
+ "enum": [
+ "closing_subparagraph"
+ ],
+ "type": "string"
+ },
+ "source": {
+ "const": "council_compromise",
+ "type": "string"
+ },
+ "source_doc": {
+ "type": "string"
+ },
+ "source_url": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "source",
+ "marker",
+ "form",
+ "position",
+ "follows",
+ "precedes",
+ "source_doc",
+ "page",
+ "source_url"
+ ],
+ "type": "object"
+ },
+ {
+ "additionalProperties": false,
+ "properties": {
+ "act": {
+ "type": "string"
+ },
+ "celex": {
+ "type": "string"
+ },
+ "form": {
+ "type": "string"
+ },
+ "heading": {
+ "type": "string"
+ },
+ "instrument_id": {
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "marker": {
+ "type": "string"
+ },
+ "position": {
+ "enum": [
+ "within",
+ "after",
+ "title"
+ ],
+ "type": "string"
+ }
+ },
+ "required": [
+ "celex",
+ "marker",
+ "form",
+ "position",
+ "act",
+ "instrument_id"
+ ],
+ "type": "object"
+ }
+ ]
+ },
+ "type": "array"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Deletions marked on the whole provision, in source order. A EUR-Lex deletion stub names the act that deleted what stood there: \"within\": the nth \"—————\" in the provision text; \"after\": something deleted after this provision (a whole article or chapter), with `heading` naming the Title, Chapter or Section heading it stands under when one comes between them; \"title\": in its heading. A record with source \"council_compromise\" is a ▌ the Council compromise text prints on a line of its own where it deleted a point, paragraph or passage: `follows` and `precedes` name the items it stands between (\"after\": at the end of the provision text, precedes null, with `heading` as for a stub), `follows_part` or `precedes_part` says that side is the paragraph's closing subparagraph; `page` and `source_url` give the page of the Council document that prints it; the provision text carries no mark for it. The record says where the bar stands, not what was removed, and compare_versions does not show it. Mechanically derived from the source; not part of the legal text. Null means no record is served for this provision (see the typed warning), never that nothing was deleted."
+ },
+ "instrument_id": {
+ "type": "string"
+ },
+ "kind": {
+ "type": "string"
+ },
+ "markdown": {
+ "description": "The provision's source text as markdown. A sub- or superscript with no Unicode form is inline <sub>/<sup> (K<sub>IRB</sub>); one with a Unicode form uses it (m²).",
+ "type": "string"
+ },
+ "narrowed": {
+ "type": "boolean"
+ },
+ "source_notes": {
+ "anyOf": [
+ {
+ "additionalProperties": false,
+ "properties": {
+ "complete": {
+ "const": true,
+ "description": "All notes referenced in this response's text, not the whole document or later pages.",
+ "type": "boolean"
+ },
+ "items": {
+ "items": {
+ "additionalProperties": false,
+ "properties": {
+ "key": {
+ "type": "string"
+ },
+ "marker": {
+ "type": "string"
+ },
+ "text": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "key",
+ "marker",
+ "text"
+ ],
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "scope": {
+ "const": "returned_text",
+ "type": "string"
+ },
+ "source_version_id": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "scope",
+ "source_version_id",
+ "complete",
+ "items"
+ ],
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+ ],
+ "description": "Null means unverified/unsupported coverage or an older release; consult the typed warning. Not an empty note inventory. Legal content_hash and block counts exclude this attachment. The verified note scope is DMD articles and recitals. Introductory citations are not an MCP provision kind: their notes remain on the website and exports, not attached to articles."
+ },
+ "title": {
+ "description": "Plain text: a script with a Unicode form uses it, one without reads flat (KCCP).",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "title_path": {
+ "description": "Plain text: a script with a Unicode form uses it, one without reads flat (KCCP).",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "url": {
+ "type": "string"
+ },
+ "version_id": {
+ "type": "string"
+ }
+ },
+ "required": [
+ "instrument_id",
+ "version_id",
+ "cite",
+ "kind",
+ "markdown",
+ "source_notes",
+ "deletions",
+ "narrowed",
+ "blocks_in_page",
+ "blocks_total",
+ "blocks_in_provision",
+ "content_hash",
+ "url"
+ ],
+ "type": "object"
+ },
+ {
+ "type": "null"
+ }
+]