Corpus 1d2: the block-node pairs #7

Merged
lilleman merged 5 commits from corpus-block-nodes into main 2026-08-24 14:07:00 +02:00
34 changed files with 1261 additions and 12 deletions
@@ -0,0 +1,39 @@
{
"content": [
{
"attrs": {
"localId": "01a033d0-1393-790b-9d44-c572033ea4aa"
},
"content": [
{
"attrs": {
"width": 100
},
"content": [
{
"content": [
{
"text": "Full width.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "layoutColumn"
}
],
"marks": [
{
"attrs": {
"mode": "wide"
},
"type": "breakout"
}
],
"type": "layoutSection"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,5 @@
::::layoutSection {localId=01a033d0-1393-790b-9d44-c572033ea4aa marks="[{\"attrs\":{\"mode\":\"wide\"},\"type\":\"breakout\"}]"}
:::layoutColumn {width=100}
Full width.
:::
::::
@@ -0,0 +1,40 @@
{
"content": [
{
"attrs": {
"localId": "01a033c4-7aa0-723f-bd4b-018e0aa0103f"
},
"content": [
{
"attrs": {
"localId": "01a033c8-0df4-74df-a9f4-c2c4aa3cc2c1",
"state": "DECIDED"
},
"content": [
{
"text": "Ship on Friday.",
"type": "text"
}
],
"type": "decisionItem"
},
{
"attrs": {
"localId": "01a033cb-e13c-79b2-933f-b3cedd57e33e",
"state": "DECIDED"
},
"content": [
{
"text": "Keep the old endpoint for one release.",
"type": "text"
}
],
"type": "decisionItem"
}
],
"type": "decisionList"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,8 @@
::::decisionList {localId=01a033c4-7aa0-723f-bd4b-018e0aa0103f}
:::decisionItem {localId=01a033c8-0df4-74df-a9f4-c2c4aa3cc2c1 state=DECIDED}
Ship on Friday.
:::
:::decisionItem {localId=01a033cb-e13c-79b2-933f-b3cedd57e33e state=DECIDED}
Keep the old endpoint for one release.
:::
::::
+50
View File
@@ -0,0 +1,50 @@
{
"content": [
{
"attrs": {
"title": "Full build log"
},
"content": [
{
"content": [
{
"text": "The build ran for 11 minutes.",
"type": "text"
}
],
"type": "paragraph"
},
{
"content": [
{
"text": "Warnings: 3.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "expand"
},
{
"attrs": {
"localId": "01a03382-2ca7-745c-b85d-49b84d32cf99",
"title": "Torque values"
},
"content": [
{
"content": [
{
"text": "Bolt M8: 25 Nm.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "nestedExpand"
}
],
"type": "doc",
"version": 1
}
+9
View File
@@ -0,0 +1,9 @@
:::expand {title="Full build log"}
The build ran for 11 minutes.
Warnings: 3.
:::
:::nestedExpand {localId=01a03382-2ca7-745c-b85d-49b84d32cf99 title="Torque values"}
Bolt M8: 25 Nm.
:::
@@ -0,0 +1,76 @@
{
"content": [
{
"attrs": {
"extensionKey": "toc",
"extensionType": "com.atlassian.confluence.macro.core",
"parameters": {
"maxLevel": 2,
"minLevel": 1
},
"text": "Table of contents"
},
"type": "extension"
},
{
"attrs": {
"extensionKey": "note",
"extensionType": "com.atlassian.confluence.macro.core",
"layout": "default",
"localId": "01a033d4-123e-70ec-9a9c-f55f189b3cf7"
},
"content": [
{
"content": [
{
"text": "Handle with care.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "bodiedExtension"
},
{
"attrs": {
"extensionKey": "tabs",
"extensionType": "com.atlassian.confluence.macro.core",
"localId": "01a033de-845f-70e2-abcf-cd5d23ba6101"
},
"content": [
{
"content": [
{
"content": [
{
"text": "Tab one.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "extensionFrame"
},
{
"content": [
{
"content": [
{
"text": "Tab two.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "extensionFrame"
}
],
"type": "multiBodiedExtension"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,14 @@
::extension {extensionKey=toc extensionType="com.atlassian.confluence.macro.core" parameters="{\"maxLevel\":2,\"minLevel\":1}" text="Table of contents"}
:::bodiedExtension {extensionKey=note extensionType="com.atlassian.confluence.macro.core" layout=default localId=01a033d4-123e-70ec-9a9c-f55f189b3cf7}
Handle with care.
:::
::::multiBodiedExtension {extensionKey=tabs extensionType="com.atlassian.confluence.macro.core" localId=01a033de-845f-70e2-abcf-cd5d23ba6101}
:::extensionFrame
Tab one.
:::
:::extensionFrame
Tab two.
:::
::::
@@ -0,0 +1,89 @@
{
"content": [
{
"attrs": {
"layout": "center"
},
"content": [
{
"attrs": {
"alt": "The moon, at night.",
"type": "external",
"url": "https://example.com/moon.png"
},
"type": "media"
},
{
"content": [
{
"text": "Taken from Kiruna.",
"type": "text"
}
],
"type": "caption"
}
],
"type": "mediaSingle"
},
{
"attrs": {
"layout": "center",
"localId": "01a03394-6721-7075-bd6e-fd9a57b64b56"
},
"content": [
{
"attrs": {
"alt": "Torque chart",
"type": "external",
"url": "https://example.com/torque.png"
},
"type": "media"
}
],
"type": "mediaSingle"
},
{
"attrs": {
"layout": "center"
},
"content": [
{
"attrs": {
"height": 480,
"type": "external",
"url": "https://example.com/plan.png",
"width": 640
},
"type": "media"
}
],
"type": "mediaSingle"
},
{
"attrs": {
"layout": "center"
},
"content": [
{
"attrs": {
"alt": "The assembly drawing",
"type": "external",
"url": "https://example.com/assembly.png"
},
"marks": [
{
"attrs": {
"href": "https://example.com/assembly"
},
"type": "link"
}
],
"type": "media"
}
],
"type": "mediaSingle"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,18 @@
::::mediaSingle {layout=center}
::media {alt="The moon, at night." type=external url="https://example.com/moon.png"}
:::caption
Taken from Kiruna.
:::
::::
:::mediaSingle {layout=center localId=01a03394-6721-7075-bd6e-fd9a57b64b56}
::media {alt="Torque chart" type=external url="https://example.com/torque.png"}
:::
:::mediaSingle {layout=center}
::media {height=480 type=external url="https://example.com/plan.png" width=640}
:::
:::mediaSingle {layout=center}
::media {alt="The assembly drawing" marks="[{\"attrs\":{\"href\":\"https://example.com/assembly\"},\"type\":\"link\"}]" type=external url="https://example.com/assembly.png"}
:::
+31
View File
@@ -0,0 +1,31 @@
{
"content": [
{
"content": [
{
"text": "Taken from the roof last night.",
"type": "text"
}
],
"type": "paragraph"
},
{
"attrs": {
"layout": "center"
},
"content": [
{
"attrs": {
"alt": "The moon, at night.",
"type": "external",
"url": "https://example.com/moon.png"
},
"type": "media"
}
],
"type": "mediaSingle"
}
],
"type": "doc",
"version": 1
}
+3
View File
@@ -0,0 +1,3 @@
Taken from the roof last night.
![The moon, at night.](https://example.com/moon.png)
+50
View File
@@ -0,0 +1,50 @@
{
"content": [
{
"attrs": {
"localId": "01a033cc-4b60-7b5e-85f4-34f27f039e9a"
},
"content": [
{
"attrs": {
"localId": "01a03389-a5fb-747d-b418-e91f1b161e7f",
"width": 50
},
"content": [
{
"content": [
{
"text": "Left.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "layoutColumn"
},
{
"attrs": {
"valign": "top",
"width": 50
},
"content": [
{
"content": [
{
"text": "Right.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "layoutColumn"
}
],
"type": "layoutSection"
}
],
"type": "doc",
"version": 1
}
+8
View File
@@ -0,0 +1,8 @@
::::layoutSection {localId=01a033cc-4b60-7b5e-85f4-34f27f039e9a}
:::layoutColumn {localId=01a03389-a5fb-747d-b418-e91f1b161e7f width=50}
Left.
:::
:::layoutColumn {valign=top width=50}
Right.
:::
::::
@@ -0,0 +1,28 @@
{
"content": [
{
"content": [
{
"attrs": {
"collection": "contentId-98237",
"id": "01a03387-e300-7bcf-9a41-c27760696449",
"occurrenceKey": "01a0338a-2f44-764f-a7b7-1c1a2abbb49b",
"type": "file"
},
"type": "media"
},
{
"attrs": {
"collection": "contentId-98237",
"id": "01a03393-0b0b-71f6-89cd-dd654f42cf34",
"type": "link"
},
"type": "media"
}
],
"type": "mediaGroup"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,4 @@
:::mediaGroup
::media {collection=contentId-98237 id=01a03387-e300-7bcf-9a41-c27760696449 occurrenceKey=01a0338a-2f44-764f-a7b7-1c1a2abbb49b type=file}
::media {collection=contentId-98237 id=01a03393-0b0b-71f6-89cd-dd654f42cf34 type=link}
:::
@@ -0,0 +1,56 @@
{
"content": [
{
"attrs": {
"layout": "center",
"width": 50
},
"content": [
{
"attrs": {
"collection": "MediaServicesSample",
"id": "4478e39c-cf9b-41d1-ba92-68589487cd75",
"type": "file"
},
"type": "media"
},
{
"attrs": {
"localId": "01a03389-670b-7331-ae60-0446747ace7a"
},
"content": [
{
"text": "The moon, at night.",
"type": "text"
}
],
"type": "caption"
}
],
"type": "mediaSingle"
},
{
"attrs": {
"layout": "wrap-right",
"width": 33.33,
"widthType": "percentage"
},
"content": [
{
"attrs": {
"alt": "Torque chart",
"height": 480,
"localId": "01a03389-8683-7c05-bfbb-457bcdb0ced3",
"type": "external",
"url": "https://example.com/torque.png",
"width": 640
},
"type": "media"
}
],
"type": "mediaSingle"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,10 @@
::::mediaSingle {layout=center width=50}
::media {collection=MediaServicesSample id=4478e39c-cf9b-41d1-ba92-68589487cd75 type=file}
:::caption {localId=01a03389-670b-7331-ae60-0446747ace7a}
The moon, at night.
:::
::::
:::mediaSingle {layout=wrap-right width="33.33" widthType=percentage}
::media {alt="Torque chart" height=480 localId=01a03389-8683-7c05-bfbb-457bcdb0ced3 type=external url="https://example.com/torque.png" width=640}
:::
@@ -0,0 +1,55 @@
{
"content": [
{
"content": [
{
"content": [
{
"content": [
{
"attrs": {
"title": "Torque values"
},
"content": [
{
"content": [
{
"text": "Bolt M8: 25 Nm.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "nestedExpand"
}
],
"type": "tableCell"
},
{
"content": [
{
"attrs": {
"language": "text"
},
"content": [
{
"text": ":::::::panel warning\n:::",
"type": "text"
}
],
"type": "codeBlock"
}
],
"type": "tableCell"
}
],
"type": "tableRow"
}
],
"type": "table"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,15 @@
::::::table
:::::tableRow
::::tableCell
:::nestedExpand {title="Torque values"}
Bolt M8: 25 Nm.
:::
::::
:::tableCell
```text
:::::::panel warning
:::
```
:::
:::::
::::::
+62
View File
@@ -0,0 +1,62 @@
{
"content": [
{
"attrs": {
"panelType": "warning"
},
"content": [
{
"content": [
{
"text": "Check the collation before importing.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "panel"
},
{
"attrs": {
"localId": "01a0337c-561a-75aa-b629-3801f68839ad",
"panelType": "info"
},
"content": [
{
"content": [
{
"text": "Backups run at 02:00.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "panel"
},
{
"attrs": {
"panelColor": "#c9372c",
"panelIcon": ":rainbow:",
"panelIconId": "1f308",
"panelIconText": "🌈",
"panelType": "custom"
},
"content": [
{
"content": [
{
"text": "Weather permitting.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "panel"
}
],
"type": "doc",
"version": 1
}
+11
View File
@@ -0,0 +1,11 @@
:::panel warning
Check the collation before importing.
:::
:::panel info {localId=01a0337c-561a-75aa-b629-3801f68839ad}
Backups run at 02:00.
:::
:::panel custom {panelColor="#c9372c" panelIcon=":rainbow:" panelIconId=1f308 panelIconText="🌈"}
Weather permitting.
:::
@@ -0,0 +1,31 @@
{
"content": [
{
"attrs": {
"localId": "0198f3a2-af74-7e91-b26c-70b15f4d9ec3",
"resourceId": "ari:cloud:confluence:site/page/123"
},
"type": "syncBlock"
},
{
"attrs": {
"localId": "01a033df-0dee-7251-a710-98e76dc285e4",
"resourceId": "ari:cloud:confluence:site/page/456"
},
"content": [
{
"content": [
{
"text": "Shared release notes.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "bodiedSyncBlock"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,5 @@
::syncBlock {localId=0198f3a2-af74-7e91-b26c-70b15f4d9ec3 resourceId="ari:cloud:confluence:site/page/123"}
:::bodiedSyncBlock {localId=01a033df-0dee-7251-a710-98e76dc285e4 resourceId="ari:cloud:confluence:site/page/456"}
Shared release notes.
:::
@@ -0,0 +1,107 @@
{
"content": [
{
"attrs": {
"displayMode": "fixed",
"isNumberColumnEnabled": true,
"layout": "default",
"localId": "01a0339e-c34f-7658-9d98-eb059401b7ab",
"width": 760
},
"content": [
{
"content": [
{
"attrs": {
"colspan": 2,
"colwidth": [
340,
420
]
},
"content": [
{
"content": [
{
"text": "Assembly",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableHeader"
}
],
"type": "tableRow"
},
{
"attrs": {
"localId": "01a033a9-d034-7466-b916-68643be958ff"
},
"content": [
{
"attrs": {
"background": "#deebff",
"localId": "01a03389-c573-72a6-a036-6cd9c6865301",
"rowspan": 2
},
"content": [
{
"content": [
{
"text": "Bolt M8",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
},
{
"attrs": {
"valign": "top"
},
"content": [
{
"content": [
{
"text": "40",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
}
],
"type": "tableRow"
},
{
"content": [
{
"content": [
{
"content": [
{
"text": "60",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
}
],
"type": "tableRow"
}
],
"type": "table"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,20 @@
:::::table {displayMode=fixed isNumberColumnEnabled=true layout=default localId=01a0339e-c34f-7658-9d98-eb059401b7ab width=760}
::::tableRow
:::tableHeader {colspan=2 colwidth="[340,420]"}
Assembly
:::
::::
::::tableRow {localId=01a033a9-d034-7466-b916-68643be958ff}
:::tableCell {background="#deebff" localId=01a03389-c573-72a6-a036-6cd9c6865301 rowspan=2}
Bolt M8
:::
:::tableCell {valign=top}
40
:::
::::
::::tableRow
:::tableCell
60
:::
::::
:::::
@@ -0,0 +1,82 @@
{
"content": [
{
"content": [
{
"content": [
{
"content": [
{
"content": [
{
"text": "Pattern",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableHeader"
},
{
"content": [
{
"content": [
{
"text": "Meaning",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableHeader"
}
],
"type": "tableRow"
},
{
"content": [
{
"content": [
{
"content": [
{
"marks": [
{
"type": "code"
}
],
"text": "a|b",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
},
{
"content": [
{
"content": [
{
"text": "Either a or b",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
}
],
"type": "tableRow"
}
],
"type": "table"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,18 @@
:::::table
::::tableRow
:::tableHeader
Pattern
:::
:::tableHeader
Meaning
:::
::::
::::tableRow
:::tableCell
`a|b`
:::
:::tableCell
Either a or b
:::
::::
:::::
@@ -0,0 +1,186 @@
{
"content": [
{
"content": [
{
"content": [
{
"content": [
{
"content": [
{
"text": "Part",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableHeader"
},
{
"content": [
{
"content": [
{
"text": "Note",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableHeader"
}
],
"type": "tableRow"
},
{
"content": [
{
"content": [
{
"content": [
{
"text": "Bolt M8",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
},
{
"content": [
{
"content": [
{
"text": "Grade ",
"type": "text"
},
{
"marks": [
{
"type": "code"
}
],
"text": "8.8",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
}
],
"type": "tableRow"
},
{
"content": [
{
"content": [
{
"content": [
{
"text": "Nut | washer",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
},
{
"content": [
{
"content": [
{
"text": "Sold as a pair",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
}
],
"type": "tableRow"
},
{
"content": [
{
"content": [
{
"content": [
{
"text": "Washer M8",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
},
{
"content": [
{
"content": [
{
"text": "100 pcs",
"type": "text"
},
{
"type": "hardBreak"
},
{
"text": "zinc-plated",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
}
],
"type": "tableRow"
},
{
"content": [
{
"content": [
{
"content": [
{
"text": "Spare",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "tableCell"
},
{
"content": [
{
"type": "paragraph"
}
],
"type": "tableCell"
}
],
"type": "tableRow"
}
],
"type": "table"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,6 @@
| Part | Note |
| --- | --- |
| Bolt M8 | Grade `8.8` |
| Nut \| washer | Sold as a pair |
| Washer M8 | 100 pcs:hardBreak{}zinc-plated |
| Spare | |
@@ -0,0 +1,88 @@
{
"content": [
{
"attrs": {
"localId": "0198f3a2-7c41-7f2e-9b3a-4d8e2c1a6b90"
},
"content": [
{
"attrs": {
"localId": "0198f3a2-8d52-70b1-8c4f-5e9f3d2b7ca1",
"state": "DONE"
},
"content": [
{
"text": "Write the spec",
"type": "text"
}
],
"type": "taskItem"
},
{
"attrs": {
"localId": "0198f3a2-9e63-7d80-a15b-6fa04e3c8db2",
"state": "TODO"
},
"content": [
{
"text": "Ship it",
"type": "text"
}
],
"type": "taskItem"
},
{
"attrs": {
"localId": "01a033b2-95c8-7d62-9b9c-dee7ad510982",
"state": "TODO"
},
"content": [
{
"content": [
{
"text": "Check the torque.",
"type": "text"
}
],
"type": "paragraph"
},
{
"content": [
{
"text": "Then sign off.",
"type": "text"
}
],
"type": "paragraph"
}
],
"type": "blockTaskItem"
},
{
"attrs": {
"localId": "01a033b3-d1fa-7489-8c9f-f5846d2c249d"
},
"content": [
{
"attrs": {
"localId": "01a033bd-a22d-7fb5-be9d-89d1aa261112",
"state": "TODO"
},
"content": [
{
"text": "Nested step",
"type": "text"
}
],
"type": "taskItem"
}
],
"type": "taskList"
}
],
"type": "taskList"
}
],
"type": "doc",
"version": 1
}
@@ -0,0 +1,18 @@
:::::taskList {localId=0198f3a2-7c41-7f2e-9b3a-4d8e2c1a6b90}
:::taskItem DONE {localId=0198f3a2-8d52-70b1-8c4f-5e9f3d2b7ca1}
Write the spec
:::
:::taskItem TODO {localId=0198f3a2-9e63-7d80-a15b-6fa04e3c8db2}
Ship it
:::
:::blockTaskItem TODO {localId=01a033b2-95c8-7d62-9b9c-dee7ad510982}
Check the torque.
Then sign off.
:::
::::taskList {localId=01a033b3-d1fa-7489-8c9f-f5846d2c249d}
:::taskItem TODO {localId=01a033bd-a22d-7fb5-be9d-89d1aa261112}
Nested step
:::
::::
:::::
+12 -10
View File
@@ -18,8 +18,8 @@ normalizes to it through the round-trip.
inline, so a `~~~` line opens a CommonMark tilde code fence.
- Bullet lists `- `; ordered lists incrementing `1.` `2.` `3.`, the first number taken from the
node's `order` attribute. Continuation lines align with the first character after the marker
(two spaces for `- `, three for `1. `); blank lines inside an item are empty lines. Lists are
tight — blank lines between items normalize away; ADF does not record tightness.
(two spaces for `- `, three for `1. `); blank lines inside an item are empty lines, none before
a nested list. Blank lines between items normalize away; ADF does not record tightness.
- Blockquotes prefix lines with `> `; a blank line inside a blockquote is a bare `>`.
- ATX headings (`#``######`); setext input normalizes to ATX.
- Code fences ``` with the node's language as info string, the fence lengthened past any backtick
@@ -39,11 +39,12 @@ normalizes to it through the round-trip.
- Paragraphs on one line — no soft wrapping; a soft line break in input becomes a single space.
- Entity references in input decode to their characters; output backslash-escapes only where text
would otherwise parse as syntax, scanning the assembled line rather than each text node: escape
the leading delimiter of a construct that would otherwise open, re-scan from there, and repeat —
with the opener literal the closer parses as text, so `*not emphasis*` is `\*not emphasis*`, one
backslash.
- Blocks separated by one blank line, no trailing whitespace outside a code block's content,
single trailing newline; a document with no blocks is the empty string.
the leading delimiter of a construct that would otherwise open, re-scan from there, and
repeat — with the opener literal the closer parses as text, so `*not emphasis*` is
`\*not emphasis*`, one backslash.
- Blocks separated by one blank line at document level and between CommonMark blocks; two
directive blocks inside a container take none. No trailing whitespace outside a code block's
content, single trailing newline; a document with no blocks is the empty string.
## Directives
@@ -198,9 +199,10 @@ The moon, at night.
**The CommonMark image.** A paragraph whose entire inline content is one image `![alt](url)` is
a `mediaSingle` with attrs exactly `{"layout":"center"}` holding an `external` `media``url`
from the destination, `alt` the description's plain-text content when non-empty. `adfToMarkdown`
emits the image form for exactly that shape — those attrs and no others, no marks, no caption.
An image amid other text, or one carrying a title, is a named error: `mediaInline` carries a
media `collection` + `id`, never a URL, and no media node carries a title.
emits the image form for exactly that shape — those attrs and no others, no marks on either
node, no caption, and a `media` carrying nothing beyond `alt`, `type` and `url`. An image amid
other text, or one carrying a title, is a named error: `mediaInline` carries a media
`collection` + `id`, never a URL, and no media node carries a title.
### Tables
+7 -2
View File
@@ -38,6 +38,10 @@ detail is settled at its own milestone.
read back as href `…/a` plus literal `b)`; title `He said "hi"` emits
`[t](u "He said "hi"")`, which holds no title. Two defensible spellings each — angle
brackets or a backslash escape, and for titles `'…'` or `(…)` besides — so §8 leaves the
pick here. **Also blocked**: block separation is unstated for a CommonMark block beside a
directive block in a container body — an `expand` whose content is `paragraph` "A" then a
`panel` (`panelType` `warning`) holding "B" spells `A` and `:::panel warning` either on
consecutive lines or with a blank line between. Two defensible spellings, so §8 leaves the
pick here.
- [x] **1d1 — The CommonMark subset**: blockquote, bulletList, codeBlock, heading, orderedList,
paragraph, rule, listItem, hardBreak, text, code spans, and the `code`, `em`, `link`,
@@ -51,8 +55,9 @@ detail is settled at its own milestone.
- [ ] **1d4 — Opaque carry** (§3): an unknown node in both positions, the reserved `adf` info
string, and the `codeBlock` whose language is `adf`.
- [ ] **1d5 — Carve-outs and combinations**: the three carve-outs and their escapes, mark
nesting order and the runs a carry breaks, attribute canonicalization, and documents
combining nodes rather than isolating one.
nesting order and the runs a carry breaks, attribute canonicalization, documents
combining nodes rather than isolating one, and a paragraph line inside a container body
shaped like a closing fence (`:::`, `::: x`).
- [ ] **1d6 — Input normalization**: one-way markdown→ADF fixtures, not pairs — setext
headings, indented code, loose lists, `*`/`+` bullets, entity references, soft wraps.
- [ ] **1d7 — Error input**: also one-way, a markdown input per named error, asserting only