SysProM
    Preparing search index...

    Function jsonToMarkdownSingle

    • Convert a SysProM document to a single Markdown string.

      Parameters

      • doc: {
            $schema?: string;
            external_references?: {
                description?: string | string[];
                identifier: string;
                internalised?: string | string[];
                node_id?: string;
                role:
                    | "output"
                    | "input"
                    | "context"
                    | "evidence"
                    | "source"
                    | "standard"
                    | "prior_art";
            }[];
            metadata?: {
                doc_type?: string;
                scope?: string;
                status?: string;
                title?: string;
                version?: string
                | number;
                [key: string]: unknown;
            };
            nodes: {
                context?: string
                | string[];
                description?: string | string[];
                external_references?: {
                    description?: string | string[];
                    identifier: string;
                    internalised?: string | string[];
                    node_id?: string;
                    role:
                        | "output"
                        | "input"
                        | "context"
                        | "evidence"
                        | "source"
                        | "standard"
                        | "prior_art";
                }[];
                id: string;
                includes?: string[];
                lifecycle?: Record<string, string | boolean>;
                name: string;
                operations?: {
                    description?: string | string[];
                    target?: string;
                    type: "link" | "add" | "update" | "remove";
                    [key: string]: unknown;
                }[];
                options?: {
                    description: string
                    | string[];
                    id: string;
                    [key: string]: unknown;
                }[];
                propagation?: Record<string, boolean>;
                rationale?: string | string[];
                scope?: string[];
                selected?: string;
                status?: undefined;
                subsystem?: { nodes: { [x: string]: unknown; id: string; type: "intent" | "concept" | "capability" | "element" | "realisation" | "invariant" | "principle" | "policy" | "protocol" | "stage" | "role" | "gate" | ... 5 more ... | "milestone"; ... 13 more ...; subsystem?: ... | undefined; }[]; $schema?: string | undefined; metadata?...;
                type:
                    | "intent"
                    | "concept"
                    | "capability"
                    | "element"
                    | "realisation"
                    | "invariant"
                    | "principle"
                    | "policy"
                    | "protocol"
                    | "stage"
                    | "role"
                    | "gate"
                    | "mode"
                    | "artefact"
                    | "decision"
                    | "change"
                    | "view"
                    | "milestone";
                [key: string]: unknown;
            }[];
            relationships?: {
                description?: string
                | string[];
                from: string;
                polarity?: "positive" | "negative" | "neutral" | "uncertain";
                strength?: number;
                to: string;
                type:
                    | "refines"
                    | "realises"
                    | "implements"
                    | "depends_on"
                    | "constrained_by"
                    | "affects"
                    | "supersedes"
                    | "must_preserve"
                    | "part_of"
                    | "precedes"
                    | "must_follow"
                    | "governed_by"
                    | "modifies"
                    | "produces";
                [key: string]: unknown;
            }[];
        }

        The SysProM document to convert.

      • Optionaloptions: MarkdownRenderOptions
        • embedDiagrams
        • labelMode
        • relationshipLayout
        • refinementLayout
        • decisionLayout
        • dependencyLayout

      Returns string

      The Markdown representation.

      const md = jsonToMarkdownSingle(doc);
      writeFileSync("output.spm.md", md);