Class JsonExporter

All Implemented Interfaces:
JustificationVisitor<Void>

public class JsonExporter extends AbstractModelExporter
Serialises a single JustificationModel to JSON text.

Uses org.json (already a declared dependency) for correct string escaping. The library is used internally as a builder; the pipeline type remains String, consistent with other text exporters (ADR-0013).

Output schema:

{
  "name": "...",
  "type": "justification" | "template",
  "elements": [ { "type": "...", "id": "...", "label": "..." }, ... ],
  "relations": [ { "source": "...", "target": "..." }, ... ]
}