changedOutput schema / (root)
Previous value: -nullNew value: +{
+ "properties": {
+ "api": {
+ "description": "API version (1.0).",
+ "type": "string"
+ },
+ "doc": {
+ "description": "The document read or written: path, sha256 and paragraph count.",
+ "properties": {
+ "characters": {
+ "description": "text.normalize of a text string: its length.",
+ "type": "integer"
+ },
+ "paragraphs": {
+ "description": "Body paragraphs.",
+ "type": "integer"
+ },
+ "path": {
+ "description": "Path of the document.",
+ "type": "string"
+ },
+ "sha256": {
+ "description": "sha256 of the file (pass as expect.sha256 to a write).",
+ "type": "string"
+ },
+ "source": {
+ "description": "A .txt/.md/.odt source's format, encoding and split mode; \"text\" for a text string (text.normalize).",
+ "type": [
+ "object",
+ "string"
+ ]
+ }
+ },
+ "type": "object"
+ },
+ "next": {
+ "description": "Cursor for the next page (pass as cursor), or null.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "ok": {
+ "description": "Always true on success.",
+ "type": "boolean"
+ },
+ "op": {
+ "description": "The operation that ran.",
+ "type": "string"
+ },
+ "result": {
+ "description": "What the operation returns.",
+ "properties": {
+ "chapters": {
+ "description": "unit chapters: this page of chapters.",
+ "items": {
+ "description": "A chapter.",
+ "properties": {
+ "at": {
+ "description": "Paragraph address, p<n>#<fingerprint> (story-prefixed in notes/headers).",
+ "type": "string"
+ },
+ "first": {
+ "description": "First paragraph number.",
+ "type": "integer"
+ },
+ "heading_last": {
+ "description": "Last paragraph number of its heading.",
+ "type": [
+ "integer",
+ "null"
+ ]
+ },
+ "id": {
+ "description": "Stable id (ch-…, sc-…, pt-…), usable as `range`.",
+ "type": "string"
+ },
+ "kind": {
+ "description": "How its heading reads: chapter, numeral, ...",
+ "type": "string"
+ },
+ "last": {
+ "description": "Last paragraph number.",
+ "type": "integer"
+ },
+ "number": {
+ "description": "Its number, when the heading has one.",
+ "type": [
+ "integer",
+ "null"
+ ]
+ },
+ "part": {
+ "description": "Id of the part holding it.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "scenes": {
+ "description": "Scenes in it.",
+ "type": "integer"
+ },
+ "signals": {
+ "description": "What detected it (heading_style, numeral, centred, scene_marker...).",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "text": {
+ "description": "Heading text (clipped).",
+ "type": "string"
+ },
+ "words": {
+ "description": "Words in it.",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "dialogue": {
+ "description": "unit dialogue: this page of dialogue lines.",
+ "items": {
+ "description": "A dialogue line.",
+ "properties": {
+ "at": {
+ "description": "Paragraph address, p<n>#<fingerprint> (story-prefixed in notes/headers).",
+ "type": "string"
+ },
+ "end": {
+ "description": "End offset.",
+ "type": "integer"
+ },
+ "parts": {
+ "description": "Its speech and narration pieces.",
+ "items": {
+ "description": "A piece.",
+ "properties": {
+ "end": {
+ "description": "End offset.",
+ "type": "integer"
+ },
+ "kind": {
+ "description": "speech or narration.",
+ "type": "string"
+ },
+ "start": {
+ "description": "Start offset.",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "start": {
+ "description": "Start offset.",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "front": {
+ "description": "chapters/parts: front matter before the first one (at, first, last, words).",
+ "type": [
+ "object",
+ "null"
+ ]
+ },
+ "parts": {
+ "description": "unit parts: this page of parts.",
+ "items": {
+ "description": "A part.",
+ "properties": {
+ "at": {
+ "description": "Paragraph address, p<n>#<fingerprint> (story-prefixed in notes/headers).",
+ "type": "string"
+ },
+ "chapters": {
+ "description": "Chapters in it.",
+ "type": "integer"
+ },
+ "first": {
+ "description": "First paragraph number.",
+ "type": "integer"
+ },
+ "heading_last": {
+ "description": "Last paragraph number of its heading.",
+ "type": [
+ "integer",
+ "null"
+ ]
+ },
+ "id": {
+ "description": "Stable id (ch-…, sc-…, pt-…), usable as `range`.",
+ "type": "string"
+ },
+ "kind": {
+ "description": "How its heading reads: chapter, numeral, ...",
+ "type": "string"
+ },
+ "last": {
+ "description": "Last paragraph number.",
+ "type": "integer"
+ },
+ "number": {
+ "description": "Its number, when the heading has one.",
+ "type": [
+ "integer",
+ "null"
+ ]
+ },
+ "signals": {
+ "description": "What detected it (heading_style, numeral, centred, scene_marker...).",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "text": {
+ "description": "Heading text (clipped).",
+ "type": "string"
+ },
+ "words": {
+ "description": "Words in it.",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "scenes": {
+ "description": "unit scenes: this page of scenes.",
+ "items": {
+ "description": "A scene.",
+ "properties": {
+ "at": {
+ "description": "Paragraph address, p<n>#<fingerprint> (story-prefixed in notes/headers).",
+ "type": "string"
+ },
+ "chapter": {
+ "description": "Id of its chapter.",
+ "type": [
+ "string",
+ "null"
+ ]
+ },
+ "first": {
+ "description": "First paragraph number.",
+ "type": "integer"
+ },
+ "id": {
+ "description": "Stable id (ch-…, sc-…, pt-…), usable as `range`.",
+ "type": "string"
+ },
+ "last": {
+ "description": "Last paragraph number.",
+ "type": "integer"
+ },
+ "signals": {
+ "description": "What detected it (heading_style, numeral, centred, scene_marker...).",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ },
+ "words": {
+ "description": "Words in it.",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "sentences": {
+ "description": "unit sentences: this page of sentences.",
+ "items": {
+ "description": "A sentence.",
+ "properties": {
+ "at": {
+ "description": "Sentence address, p<n>#<fp>.s<k>.",
+ "type": "string"
+ },
+ "end": {
+ "description": "End offset.",
+ "type": "integer"
+ },
+ "start": {
+ "description": "Start offset.",
+ "type": "integer"
+ },
+ "text": {
+ "description": "Its text (clipped).",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "suppressed": {
+ "description": "Suppressed breaks (capped).",
+ "items": {
+ "description": "A suppressed break.",
+ "properties": {
+ "at": {
+ "description": "Paragraph address, p<n>#<fingerprint> (story-prefixed in notes/headers).",
+ "type": "string"
+ },
+ "kind": {
+ "description": "chapter or scene.",
+ "type": "string"
+ },
+ "reason": {
+ "description": "Why.",
+ "type": "string"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ },
+ "suppressed_total": {
+ "description": "Breaks suppressed (by an override or rule).",
+ "type": "integer"
+ },
+ "total": {
+ "description": "Items in the whole list, across pages.",
+ "type": "integer"
+ },
+ "unit": {
+ "description": "chapters, parts or scenes.",
+ "type": "string"
+ },
+ "unmatched_overrides": {
+ "description": "Overrides that matched no paragraph.",
+ "items": {
+ "description": "An override.",
+ "properties": {
+ "action": {
+ "description": "force or suppress.",
+ "type": "string"
+ },
+ "fp": {
+ "description": "Fingerprint.",
+ "type": "string"
+ },
+ "kind": {
+ "description": "chapter or scene.",
+ "type": "string"
+ },
+ "nth": {
+ "description": "Which occurrence.",
+ "type": "integer"
+ }
+ },
+ "type": "object"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "total"
+ ],
+ "type": "object"
+ },
+ "warnings": {
+ "description": "Things to know about the result.",
+ "items": {
+ "type": "string"
+ },
+ "type": "array"
+ }
+ },
+ "required": [
+ "api",
+ "ok",
+ "op",
+ "result",
+ "warnings",
+ "next"
+ ],
+ "type": "object"
+}