UML — folio-assistant-core/core-schemas

Generated by cat-harness-tools/scripts/gen-uml-overview.ts — do not edit. The core-schemas sub-graph of folio-assistant-core (folio-assistant-core/schemas), with every attribute read from its node schema.

Sources (same model): PlantUML · Mermaid · Graphviz DOT

Layout
UML class diagram of folio-assistant-core/core-schemas: one package per named sub-graph, one class per node schema, with its data fields. Portrait layout.
UML class diagram of folio-assistant-core/core-schemas: one package per named sub-graph, one class per node schema, with its data fields. Landscape layout.

The interactive view lays this diagram out in your browser with Graphviz, and needs JavaScript. Without it, pick Portrait or Landscape, or read the DOT source.

sub-graphdirectorygraph typologiesnode schemanodescohesioninout
folio-assistant-core/core-schemasfolio-assistant-core/schemasschemas, cat-harnessschema: skills/document-authoring/input.schema.json; schema: skills/document-authoring/output.schema.json; schema: skills/document-publishing/input.schema.json; schema: skills/document-publishing/output.schema.json; schema: skills/document-structure/input.schema.json; schema: skills/document-structure/output.schema.json; schema: skills/normative-statements/input.schema.json; schema: skills/normative-statements/output.schema.json; schema: skills/public-comment/input.schema.json; schema: skills/public-comment/output.schema.json; schema: skills/quality-control/input.schema.json; schema: skills/quality-control/output.schema.json460.9701

Nodes, cohesion, in and out are the detangler’s pinned measurements for the same directory (bun run cat kg:detangle; skill graph-detanglement). Not measured means the detangler does not scan that directory, not that it has no edges.

Sub-graphs

The same model, drawn by Mermaid

Kept so the page renders even where the PlantUML image is missing, and because Mermaid nodes carry the CSS class that colours them from uml.css.

classDiagram
  direction TB
  namespace folio_assistant_core__core_schemas {
    class folio_assistant_core_core_schemas_skills_document_authoring_input_schema_json_Document_Authoring_Input["Document Authoring Input"] {
      <<schema: skills/document-authoring/input.schema.json>>
      document [1] string
      chapter [1] string
      section [1] string
      kind [1] enum(8)
      label [1] string
      title [0..1] string
      uses [0..*] string[]
      body [0..1] string
    }
    class folio_assistant_core_core_schemas_skills_document_authoring_output_schema_json_Document_Authoring_Output["Document Authoring Output"] {
      <<schema: skills/document-authoring/output.schema.json>>
      label [1] string
      filesWritten [0..*] string[]
      listedInSection [1] boolean
      validation [0..1] object
      stagingLinks [0..1] any
    }
    class folio_assistant_core_core_schemas_skills_document_publishing_input_schema_json_Document_Publishing_Input["Document Publishing Input"] {
      <<schema: skills/document-publishing/input.schema.json>>
      document [1] string
      format [1] md | html | pdf
      pdfEngine [0..1] auto | weasyprint | prince | wkhtmltopdf
      css [0..1] string
      toc [0..1] boolean
      stagingLinks [0..1] any
    }
    class folio_assistant_core_core_schemas_skills_document_publishing_output_schema_json_Issue["Issue"] {
      <<schema: skills/document-publishing/output.schema.json>>
      level [0..1] error | warn
      message [0..1] string
    }
    class folio_assistant_core_core_schemas_skills_document_publishing_output_schema_json_Document_Publishing_Output["Document Publishing Output"] {
      <<schema: skills/document-publishing/output.schema.json>>
      outputPath [1] string
      engine [0..1] string
      blockCount [1] integer
      chapterCount [0..1] integer
      issues [0..*] Issue[]
      stagingLinks [0..1] any
    }
    class folio_assistant_core_core_schemas_skills_document_structure_input_schema_json_Document_Structure_Input["Document Structure Input"] {
      <<schema: skills/document-structure/input.schema.json>>
      document [1] string
      operation [1] add-chapter | add-section | reorder-chapters | reorder-sections
      chapter [0..1] string
      title [0..1] string
      position [0..1] integer
      order [0..*] string[]
    }
    class folio_assistant_core_core_schemas_skills_document_structure_output_schema_json_Document_Structure_Output["Document Structure Output"] {
      <<schema: skills/document-structure/output.schema.json>>
      manifestsChanged [0..*] string[]
      chapters [0..*] string[]
      forwardReferences [0..*] string[]
      stagingLinks [0..1] any
    }
    class folio_assistant_core_core_schemas_skills_normative_statements_input_schema_json_Normative_Statement_Input["Normative Statement Input"] {
      <<schema: skills/normative-statements/input.schema.json>>
      label [1] string
      title [0..1] string
      statement [1] string
      strength [0..1] object
      publishedNumber [0..1] string
      uses [0..*] string[]
      about [0..*] string[]
    }
    class folio_assistant_core_core_schemas_skills_normative_statements_output_schema_json_Normative_Statement_Output["Normative Statement Output"] {
      <<schema: skills/normative-statements/output.schema.json>>
      label [1] string
      kind [1] 'recommendation'
      anchor [0..1] string
      citedBy [0..*] string[]
      strength [0..1] object
      stagingLinks [0..1] any
    }
    class folio_assistant_core_core_schemas_skills_public_comment_input_schema_json_Public_Comment_Input["Public Comment Input"] {
      <<schema: skills/public-comment/input.schema.json>>
      operation [1] enum(13)
      file [0..1] string
      ref [0..1] string
      to [0..1] string
      code [0..1] accepted | accepted-modified | not-accepted | noted | deferred
      reason [0..1] string
      branch [0..1] string
      pr [0..1] integer
      filter [0..1] object
      stagingLinks [0..1] any
    }
    class folio_assistant_core_core_schemas_skills_public_comment_output_schema_json_Public_Comment_Output["Public Comment Output"] {
      <<schema: skills/public-comment/output.schema.json>>
      changed [0..*] string[]
      unplaced [0..*] string[]
      refused [0..*] string[]
      comments [0..*] any[]
      stagingLinks [0..1] any
    }
    class folio_assistant_core_core_schemas_skills_quality_control_input_schema_json_Quality_Control_Input["Quality Control Input"] {
      <<schema: skills/quality-control/input.schema.json>>
      checkType [1] qa-report | publication-checklist | conformance-validation | functionality-test | cross-component-consistency
      targetPath [1] string
      checklistSections [0..*] list~L1 | L2 | L3 | L4 | global~
      stagingLinks [0..1] any
    }
    class folio_assistant_core_core_schemas_skills_quality_control_output_schema_json_Finding["Finding"] {
      <<schema: skills/quality-control/output.schema.json>>
      severity [1] error | warning | info
      category [1] string
      message [1] string
      location [0..1] string
      remediation [0..1] string
    }
    class folio_assistant_core_core_schemas_skills_quality_control_output_schema_json_Quality_Control_Output["Quality Control Output"] {
      <<schema: skills/quality-control/output.schema.json>>
      overallResult [1] pass | pass-with-warnings | fail
      findings [0..*] Finding[]
      checklistResults [0..1] map~pass | fail | not-applicable~
      stagingLinks [0..1] any
    }
  }
  folio_assistant_core_core_schemas_skills_document_publishing_output_schema_json_Document_Publishing_Output *-- "0..*" folio_assistant_core_core_schemas_skills_document_publishing_output_schema_json_Issue : issues
  folio_assistant_core_core_schemas_skills_quality_control_output_schema_json_Quality_Control_Output *-- "0..*" folio_assistant_core_core_schemas_skills_quality_control_output_schema_json_Finding : findings
  cssClass "folio_assistant_core_core_schemas_skills_document_authoring_input_schema_json_Document_Authoring_Input" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_document_authoring_output_schema_json_Document_Authoring_Output" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_document_publishing_input_schema_json_Document_Publishing_Input" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_document_publishing_output_schema_json_Issue" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_document_publishing_output_schema_json_Document_Publishing_Output" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_document_structure_input_schema_json_Document_Structure_Input" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_document_structure_output_schema_json_Document_Structure_Output" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_normative_statements_input_schema_json_Normative_Statement_Input" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_normative_statements_output_schema_json_Normative_Statement_Output" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_public_comment_input_schema_json_Public_Comment_Input" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_public_comment_output_schema_json_Public_Comment_Output" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_quality_control_input_schema_json_Quality_Control_Input" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_quality_control_output_schema_json_Finding" fa_uml_kind_schemas
  cssClass "folio_assistant_core_core_schemas_skills_quality_control_output_schema_json_Quality_Control_Output" fa_uml_kind_schemas

folio-assistant — code under the Apache License 2.0, documentation under CC BY 3.0. Generated schema and API references are rebuilt from source on every push to main.

deployed b08c961 · 2026-10-23T23:11:09Z