Skip to content

Schema Reference

SciFlow’s manuscript schema mirrors the objects emitted by the editor and consumed by downstream exporters (JATS, DOCX, etc.). While a full schema browser is on the roadmap, this page summarizes the most important parts.

  • Source: packages/schema/prosemirror (TypeScript + JSON schema artifacts).
  • Root node: doc with block-level content (sections, paragraphs, figures, tables, citations).
  • Inline marks: emphasis, strong, links, code, citation references.
  • Block nodes: headings (level 1–6), lists, block quotes, figures (with captions), math (inline/block), callouts.

Generated docs

The CLI can emit JSON schema fragments. Run:

npx nx run @sciflow/schema-prosemirror:build
The output lives under packages/schema/prosemirror/dist/.

Compatibility Notes

  • The schema is designed to round-trip to SciFlow DocumentSnapshots and is compatible with our typesetting pipeline.
  • Aligns with JATS semantics but isn’t a 1:1 copy; e.g., figures carry credit to simplify publishing workflows.
  • When you add new nodes or marks, update both the schema package and the editor features that surface them.

Upcoming Enhancements

  • JSON schema docs rendered directly in MkDocs.
  • A cookbook for mapping schema nodes to export formats.