Core Prose

Prose datatypes for Kanonak. Defines Markdown (with validated inline references) and SubstitutableString, plus a universal documentation property — the Markdown counterpart of rdfs.comment that applies to any resource.

The core-prose package gives Kanonak a place for human-facing writing that is still part of the graph. Markdown is a datatype whose [[reference]] placeholders resolve through the object model and are validated, so prose can link to resources without magic strings. Substitutable String carries {{path}} substitutions for templated text. The Documentation property is the Markdown counterpart of rdfs.comment: it has no domain, so any resource — a package, a class, an instance — can describe itself richly. This very description is a documentation value.

DocumentationLong-form prose describing a resource. The Markdown counterpart of rdfs.comment: where comment is a short, plain one-liner, documentation is rich CommonMark…MarkdownA SubstitutableString whose surrounding text is CommonMark markdown. The reference contract is identical to SubstitutableString; the markdown flavour only…Substitutable StringA string that may embed [[reference]] placeholders. Each placeholder names a Kanonak resource resolved through the containing document's import closure - bare…