sbdl
Return the application name.
Return the current compiler version string.
Return the development version marker string.
Return the DSL language specification version string.
Return the REST API version string.
Return the project URL.
Return the application logo string, or empty string if pretty-print is disabled.
Return the application help text string.
Retrieve a configuration value by key, with optional environment variable override and numeric coercion.
Lock a configuration key so it cannot be modified by subsequent set_config_value calls.
Set a configuration value by key, warning if the key is new and skipping if locked.
Merge new_config_data into the global config, skipping locked and explicitly excluded keys.
Load a JSON configuration file and merge its values into the global config.
Append or merge data into an existing list or dict config value, skipping locked keys.
Snapshot the current configuration as the default state for later reset.
Reset custom type information and restore the configuration to the initial default snapshot.
Container for SBDL language parser constants, token rules, directive handling, and parsing logic.
Switch the parser lexical spec to use the formal (Unicode symbol) grammar variant.
Represents a single parsed text element with its source location and line index information.
Return a formatted string showing content with line numbers derived from the index map.
Return the full list of (content_position, line_number) index pairs for this element.
Return all index pairs whose content position is at or after the given pos.
Strip configured prefix and apply maximum-length elision to a reference string.
Build a numbered-line display string from content and its (position, line_number) index pairs.
Inherited Members
Container for SBDL semantic rules: allowed type links, type properties, type/category/property descriptions, and custom type registration.
Return a list of valid relation target type names for the given element type name.
Build and return a comprehensive dict describing all language types, properties, directives, and CLI help.
Return (and memoize) a consistent hex color string for the given element type name.
Calculate a Behavioural Specification Complexity Index (BSCI) score for the given statement text.
Derive a compact SBDL identifier from a natural-language string by applying stop-word removal, abbreviations, and vowel elision.
Derive a compact identifier using the v2 engineering standard stop-word/abbreviation set.
Derive a compact identifier using the v1 engineering standard stop-word/abbreviation set.
Derive a compact identifier using the default (v1) engineering standard rules. Delegates to v1.
Return the last shorten_length characters of input_string, aligned to a word boundary.
Generate a short, base-62-encoded unique identifier from a SHA-256 hash of the input string.
Abstract base for all parsed SBDL objects; raises on any unimplemented interface method.
Raise an Exception indicating that an abstract method was called.
Inherited Members
Concrete parsed statement holding its parser element, type, attribute data, and error state.
Return the attribute data dict, injecting the syntactic parent as a parent attribute if present.
Return the character position within the content where the error occurred.
Merge parent_data into this statement's data dict, with existing values taking precedence.
Prepend scope prefixes to matching attribute values and return the resulting scope map.
Parsed operator statement (e.g. link or source-link operator between elements).
Parsed 'using' statement that imports attributes from named element definitions into the current scope.
Parsed 'depends' statement that imports external files into the current scope.
Parsed 'scope' statement that applies a namespace prefix to identifiers in the current block.
Parsed SBDL element declaration holding an identifier, declared type, and key-value attribute data.
Return a synthetic identifier composed of statement type and source reference.
Parsed 'customtype' declaration statement that introduces a user-defined element type.
Inherited Members
Base class for all SBDL model elements, providing type, links, properties, and verification infrastructure.
Return the type name string for this element class; None for the abstract base.
Return True if this element is an instance of, or has a type matching, the given target type/class/name.
Return the element identifier, optionally including the stereotype suffix.
Return the description property of this element with escape characters resolved.
Expand all macro directives within this element's properties and links using the provided macro dict.
Return the element's full data as a plain dict, optionally including extra links.
Return an SBDL_Declaration_Statement reconstructed from this element's current state.
Return the source reference string for this element (file:line or overridden reference property).
Return the list of type names for this element's class hierarchy (from most to least derived).
Return the SBDL_Element subclass corresponding to the given type name string.
Instantiate and return the appropriate SBDL_Element subclass for the given declaration statement.
Convert a parsed statement object into the corresponding SBDL_Element instance.
Return True if a link between this element's type and the given link's type is semantically valid.
Return True if the parent link type is compatible with this element's type hierarchy.
Return True if the child link type is compatible with this element's type hierarchy.
Extended relation validation hook; returns (True, '') by default.
Verify all links on this element, checking stereotypes and hash integrity; return (is_valid, error).
Return a comma-separated string of link identifiers, optionally filtered by element type.
Remove any links (in all link lists) whose target identifier is not present in element_set.
Apply the operator in operator_element to the top two elements on element_stack (RPN context).
Inherited Members
Represents a directed link (relation) from one SBDL element to another, carrying type and optional stereotype/hash.
Return the target element identifier, optionally including stereotype and hash suffixes.
Base class for SBDL elements that carry a numerical rating (detectability, severity, or occurrence).
Return the element's rating value, returning the post-action value when post=True if available.
Return the attribute name string for this element's rating (or post-action rating if post=True).
Expand macros in rating attributes in addition to the base element's directive expansion.
Inherited Members
- SBDL_Element
- class_type_name
- Element_Link
- is_a
- identifier
- stereotype
- description
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
Mapping of element type names to their respective rating attribute names.
Programmatically constructed SBDL element not backed by a parsed declaration statement.
Create an SBDL_Element_Synthetic that is a copy of the given SBDL element.
Construct and return an SBDL_Declaration_Statement representing this synthetic element.
Set the (pre- or post-action) rating value for this synthetic element.
Convert this synthetic element back to a native SBDL_Element via a declaration round-trip.
Always returns True for synthetic elements (no parent type restrictions).
Always returns True for synthetic elements (no child type restrictions).
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- get_as_dictionary
- reference
- type
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
Element representation of a 'depends' statement that imports external files.
Return an SBDL_Declaration_Statement reconstructed from this element's current state.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
Element representation of a 'using' statement that imports shared attributes.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
Element representation of a 'scope' statement that applies namespace prefixes.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
Element representation of a 'customtype' declaration that registers a new user-defined type.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing an architectural aspect (system decomposition unit).
Return the type name string for this element class; None for the abstract base.
Return True if this aspect's stereotype is compatible with the target link's target stereotype.
Return True if the parent link type is compatible with this element's type hierarchy.
Return True if the child link type is compatible with this element's type hierarchy.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a prescriptive design definition.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a technical realisation of a design definition.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a system requirement or acceptance criterion.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a FMEA failure mode with optional detectability rating.
Return the type name string for this element class; None for the abstract base.
Return True if the parent link type is compatible with this element's type hierarchy.
Return True if the child link type is compatible with this element's type hierarchy.
Check that hierarchical FMEA link targets share a common aspect ancestry; return (is_valid, error).
Verify a failure-mode relation against FMEA aspect hierarchy rules.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a FMEA failure effect with optional severity rating.
Return the type name string for this element class; None for the abstract base.
Return True if the parent link type is compatible with this element's type hierarchy.
Extended relation validation hook; returns (True, '') by default.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_child_link_type
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a FMEA failure cause with optional occurrence rating.
Return the type name string for this element class; None for the abstract base.
Return True if the child link type is compatible with this element's type hierarchy.
Extended relation validation hook; returns (True, '') by default.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing an existing control that prevents a failure cause or mode.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing an existing detection (test) that measures failure mode occurrence.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a test instance for a particular design element.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing an improvement action to prevent a failure cause or mode.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing an improvement action to increase detection of a failure mode.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a dynamic system event, optionally with conditions and alternative branches.
Return the type name string for this element class; None for the abstract base.
Return True if the child link type is compatible with this element's type hierarchy.
Validate this event, checking condition-alternative elements and stereotype-property consistency.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_relation_extended
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a system function with optional parent/child hierarchy.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a system state with optional parent/child hierarchy.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a state transition; must reference exactly one ordered pair of states.
Return the type name string for this element class; None for the abstract base.
Verify that this transition references exactly two state links.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a system use case with an optional actor property.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing an external interface exposed by an aspect.
Return the type name string for this element class; None for the abstract base.
Return True if the parent link type is compatible with this element's type hierarchy.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a dynamic trace instance embedded in a log or execution record.
Return the type name string for this element class; None for the abstract base.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_child_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
SBDL element representing a structural grouping of other elements with no semantic implications.
Return the type name string for this element class; None for the abstract base.
Always returns True; groups accept any child element type.
Inherited Members
- SBDL_Element
- Element_Link
- is_a
- identifier
- stereotype
- description
- replace_directives_from_dict
- get_as_dictionary
- definition
- reference
- type
- types
- links
- relations
- parents
- children
- properties
- get_property
- delete_property
- set_property
- declaration_type_to_class
- declaration_to_element
- statement_to_element
- verify_link_type
- verify_parent_link_type
- verify_relation_extended
- verify_self
- get_ids_string
- prune_missing_references
- is_meta
- pragma
- hash
- apply_operator
Abstract Syntax Tree for an SBDL model: parses statements, builds elements, runs verification hooks.
Replace the internal parsed object list (used for testing or pre-built ASTs).
Report any parsing errors in the AST and return the error count.
Alias for elements(); build and return the SBDL element dict from the AST.
Build SBDL elements from parsed statements, apply directives and hooks, return (elements, error_count).
Return all parents (or children) for an element, including those declared on the other side of the link.
Return all parents for an element including those declared by child links in other elements.
Return all children for an element including those declared by parent links in other elements.
Return all relation links for an element including those declared on the other side.
Return the combined list of all parents, children, and relation links for an element.
Return the set of element identifiers that are not children of any other element.
Verify all elements and their links in sbdl_elements; report errors and return (result, error_count).
Build a cross-reference dict (keyed by identifier) of all element data for macro expansion.
Build a fully-connected cause-mode-effect graph, inserting placeholder nodes where links are absent.
Return a filtered copy of element_set containing only elements for which filter_pred_f returns True.
Register a filter predicate f(element, element_set) -> bool to be applied when retrieving elements.
Recursively traverse element links to determine whether any reachable element matches filter_id, with memoisation.
Add a filter that retains elements reachable via links from elements matching filter_id, up to depth_bound.
Add a filter that retains elements connected (parents, links, children) to elements matching filter_id, up to depth_bound.
Add a filter that retains elements whose ancestors match filter_id, up to depth_bound.
Add a filter that retains elements whose descendants match filter_id, up to depth_bound.
Add a filter that retains only elements whose type matches the regex filter_id.
Add a filter that retains only elements whose identifier matches the regex filter_id.
Read the file at filepath line-by-line, apply directives, and append SBDL_Parser.Parser_Element objects to elements_list.
Read all files/directories in input_list and return (parser_elements, error_count).
Read JSON files from input_list and return (parser_elements, error_count).
Read YAML files from input_list and return (parser_elements, error_count).
Read CSV files from input_list and return (parser_elements, error_count).
Generate a PlantUML WBS requirements diagram from the AST and write it to output_file.
Generate a PlantUML component/decomposition diagram from the AST and write it to output_file.
Generate a detailed PlantUML class/element diagram showing all element properties and relations.
Generate a PlantUML sequence diagram of function/event flows and write it to output_file.
Generate a PlantUML activity/process diagram from the AST and write it to output_file.
Generate a PlantUML state-machine diagram from the AST and write it to output_file.
Generate a PlantUML use-case diagram from the AST and write it to output_file.
Generate a networkx/matplotlib network graph of all elements and write it to output_file.
Generate an interactive Sigma.js HTML network graph from the AST and write it to output_file.
Utilities for generating FMEA table data from an SBDL AST.
Traverse the fully-connected CME graph and return a list of FMEA row dicts.
Wrap an FMEA table in an OpenFMEA metadata envelope dict.
Open an OpenFMEA JSON file and return its parsed dict content.
Serialise open_sbdl_struct as JSON to open_sbdl_file, with optional pretty-printing.
Parse and verify an OpenFMEA JSON file, raising if the format or type is incorrect.
Generate an OpenFMEA JSON file from the AST and write it to output_file.
Generate an OpenFMEA Portfolio JSON file, organising FMEA rows by aspect hierarchy.
Convert an OpenFMEA table (list of row dicts) back into a list of SBDL_Element_Synthetic objects.
Convert general (non-FMEA) OpenFMEA entries into SBDL_Element_Synthetic objects linked to fmea_elements.
Generate a CSV FMEA table from the AST and write it to output_file.
Write all AST elements as SBDL statements to output_file, optionally sorted and pretty-printed.
Send AST elements to a remote REST endpoint for processing and write the response to output_file.
Print a human-readable summary of every element in the AST to stdout.
Write a flat CSV matrix of all element attributes (from the full AST dict) to output_file.
Write the full AST as an indented JSON dict to output_file.
Write the full AST as a YAML document to output_file.
Render infile as a docxtpl Word template with template_dict context and save to outfile.
Render a Jinja2 or Office template (txt/docx/xlsx) with AST data and write the result to output_file.
Dynamically load a Python file and merge its DIRECTIVES dict into the global parser directives.
Dynamically load a Python file defining custom output modes and register them.
Print formatted output to stdout (or stderr for errors/warnings) with optional ANSI colour codes.
Entry point for a single compilation run: read inputs, build AST, apply filters, verify, and write output.