Skip to content

systems

adh.wbs.systems ¤

Modules:

Classes:

CoolingRequirements pydantic-model ¤

Bases: BaseModel

Cooling requirements for the system.

Attributes:

  • method (str) –

    Cooling method (e.g., "Air", "Liquid", "Conduction").

  • heat_dissipation (float) –

    Heat dissipation in watts.

  • max_operating_temperature (float) –

    Maximum operating temperature in Celsius.

Show JSON schema:
{
  "description": "Cooling requirements for the system.\n\nAttributes:\n    method (str): Cooling method (e.g., \"Air\", \"Liquid\", \"Conduction\").\n    heat_dissipation (float): Heat dissipation in watts.\n    max_operating_temperature (float): Maximum operating temperature in Celsius.",
  "properties": {
    "method": {
      "maxLength": 50,
      "minLength": 1,
      "title": "Method",
      "type": "string"
    },
    "heat_dissipation": {
      "minimum": 0,
      "title": "Heat Dissipation",
      "type": "number"
    },
    "max_operating_temperature": {
      "title": "Max Operating Temperature",
      "type": "number"
    }
  },
  "required": [
    "method",
    "heat_dissipation",
    "max_operating_temperature"
  ],
  "title": "CoolingRequirements",
  "type": "object"
}

Fields:

  • method (str)
  • heat_dissipation (float)
  • max_operating_temperature (float)

DataSignal pydantic-model ¤

Bases: BaseModel

Represents a data signal in the system.

Attributes:

  • name (str) –

    Name of the signal.

  • type (SignalType) –

    Type of the signal.

  • direction (SignalDirection) –

    Direction of the signal.

  • source (str) –

    Source of the signal (system or component ID).

  • destination (str) –

    Destination of the signal (system or component ID).

  • description (str) –

    Brief description of the signal.

Show JSON schema:
{
  "$defs": {
    "SignalDirection": {
      "description": "Enumeration of signal directions.",
      "enum": [
        "Input",
        "Output",
        "Bidirectional"
      ],
      "title": "SignalDirection",
      "type": "string"
    },
    "SignalType": {
      "description": "Enumeration of signal types.",
      "enum": [
        "Analog",
        "Digital",
        "Discrete",
        "Serial"
      ],
      "title": "SignalType",
      "type": "string"
    }
  },
  "description": "Represents a data signal in the system.\n\nAttributes:\n    name (str): Name of the signal.\n    type (SignalType): Type of the signal.\n    direction (SignalDirection): Direction of the signal.\n    source (str): Source of the signal (system or component ID).\n    destination (str): Destination of the signal (system or component ID).\n    description (str): Brief description of the signal.",
  "properties": {
    "name": {
      "maxLength": 100,
      "minLength": 1,
      "title": "Name",
      "type": "string"
    },
    "type": {
      "$ref": "#/$defs/SignalType"
    },
    "direction": {
      "$ref": "#/$defs/SignalDirection"
    },
    "source": {
      "maxLength": 50,
      "minLength": 1,
      "title": "Source",
      "type": "string"
    },
    "destination": {
      "maxLength": 50,
      "minLength": 1,
      "title": "Destination",
      "type": "string"
    },
    "description": {
      "maxLength": 500,
      "minLength": 1,
      "title": "Description",
      "type": "string"
    }
  },
  "required": [
    "name",
    "type",
    "direction",
    "source",
    "destination",
    "description"
  ],
  "title": "DataSignal",
  "type": "object"
}

Fields:

FluidFlowCharacteristics pydantic-model ¤

Bases: BaseModel

Represents the flow characteristics of a working fluid in the system.

Attributes:

  • fluid_type (str) –

    Type of fluid (e.g., "Hydraulic Oil", "Fuel", "Coolant").

  • flow_rate (float) –

    Nominal flow rate in liters per minute.

  • max_pressure (float) –

    Maximum operating pressure in pascals.

  • min_pressure (float) –

    Minimum operating pressure in pascals.

  • temperature_range (Tuple[float, float]) –

    Operating temperature range in Celsius (min, max).

  • viscosity (float) –

    Kinematic viscosity in centistokes at operating temperature.

  • density (float) –

    Fluid density in kg/m³ at operating temperature.

Show JSON schema:
{
  "description": "Represents the flow characteristics of a working fluid in the system.\n\nAttributes:\n    fluid_type (str): Type of fluid (e.g., \"Hydraulic Oil\", \"Fuel\", \"Coolant\").\n    flow_rate (float): Nominal flow rate in liters per minute.\n    max_pressure (float): Maximum operating pressure in pascals.\n    min_pressure (float): Minimum operating pressure in pascals.\n    temperature_range (Tuple[float, float]): Operating temperature range in Celsius (min, max).\n    viscosity (float): Kinematic viscosity in centistokes at operating temperature.\n    density (float): Fluid density in kg/m\u00b3 at operating temperature.",
  "properties": {
    "fluid_type": {
      "maxLength": 50,
      "minLength": 1,
      "title": "Fluid Type",
      "type": "string"
    },
    "flow_rate": {
      "exclusiveMinimum": 0,
      "title": "Flow Rate",
      "type": "number"
    },
    "max_pressure": {
      "exclusiveMinimum": 0,
      "title": "Max Pressure",
      "type": "number"
    },
    "min_pressure": {
      "minimum": 0,
      "title": "Min Pressure",
      "type": "number"
    },
    "temperature_range": {
      "maxItems": 2,
      "minItems": 2,
      "prefixItems": [
        {
          "type": "number"
        },
        {
          "type": "number"
        }
      ],
      "title": "Temperature Range",
      "type": "array"
    },
    "viscosity": {
      "exclusiveMinimum": 0,
      "title": "Viscosity",
      "type": "number"
    },
    "density": {
      "exclusiveMinimum": 0,
      "title": "Density",
      "type": "number"
    }
  },
  "required": [
    "fluid_type",
    "flow_rate",
    "max_pressure",
    "min_pressure",
    "temperature_range",
    "viscosity",
    "density"
  ],
  "title": "FluidFlowCharacteristics",
  "type": "object"
}

Fields:

Validators:

validate_temperature_range pydantic-validator ¤

validate_temperature_range(v: tuple[float, float]) -> tuple[float, float]

Validate that the minimum temperature is less than the maximum temperature.

Source code in src/adh/wbs/systems/systems_parameters.py
128
129
130
131
132
133
134
135
136
@field_validator("temperature_range")
@classmethod
def validate_temperature_range(cls, v: tuple[float, float]) -> tuple[float, float]:
    """Validate that the minimum temperature is less than the maximum temperature."""
    if v[0] >= v[1]:
        raise ValueError(
            "Minimum temperature must be less than maximum temperature"
        )
    return v

FunctionalBlock pydantic-model ¤

Bases: BaseModel

Represents a functional block in the system diagram.

Attributes:

  • block_id (str) –

    Unique identifier for the block.

  • name (str) –

    Name of the functional block.

  • description (str) –

    Brief description of the block's function.

  • inputs (List[str]) –

    List of input signal names.

  • outputs (List[str]) –

    List of output signal names.

Show JSON schema:
{
  "description": "Represents a functional block in the system diagram.\n\nAttributes:\n    block_id (str): Unique identifier for the block.\n    name (str): Name of the functional block.\n    description (str): Brief description of the block's function.\n    inputs (List[str]): List of input signal names.\n    outputs (List[str]): List of output signal names.",
  "properties": {
    "block_id": {
      "maxLength": 50,
      "minLength": 1,
      "title": "Block Id",
      "type": "string"
    },
    "name": {
      "maxLength": 100,
      "minLength": 1,
      "title": "Name",
      "type": "string"
    },
    "description": {
      "maxLength": 500,
      "minLength": 1,
      "title": "Description",
      "type": "string"
    },
    "inputs": {
      "items": {
        "type": "string"
      },
      "title": "Inputs",
      "type": "array"
    },
    "outputs": {
      "items": {
        "type": "string"
      },
      "title": "Outputs",
      "type": "array"
    }
  },
  "required": [
    "block_id",
    "name",
    "description"
  ],
  "title": "FunctionalBlock",
  "type": "object"
}

Fields:

PhysicalCharacteristics pydantic-model ¤

Bases: BaseModel

Physical characteristics of the system.

Attributes:

  • weight (float) –

    Weight in kilograms.

  • dimensions (Dict[str, float]) –

    Dimensions in meters (length, width, height).

  • volume (float) –

    Volume in cubic meters.

  • center_of_gravity (Dict[str, float]) –

    Center of gravity coordinates (x, y, z) in meters.

Show JSON schema:
{
  "description": "Physical characteristics of the system.\n\nAttributes:\n    weight (float): Weight in kilograms.\n    dimensions (Dict[str, float]): Dimensions in meters (length, width, height).\n    volume (float): Volume in cubic meters.\n    center_of_gravity (Dict[str, float]): Center of gravity coordinates (x, y, z) in meters.",
  "properties": {
    "weight": {
      "exclusiveMinimum": 0,
      "title": "Weight",
      "type": "number"
    },
    "dimensions": {
      "additionalProperties": {
        "type": "number"
      },
      "maxProperties": 3,
      "minProperties": 3,
      "title": "Dimensions",
      "type": "object"
    },
    "volume": {
      "exclusiveMinimum": 0,
      "title": "Volume",
      "type": "number"
    },
    "center_of_gravity": {
      "additionalProperties": {
        "type": "number"
      },
      "maxProperties": 3,
      "minProperties": 3,
      "title": "Center Of Gravity",
      "type": "object"
    }
  },
  "required": [
    "weight",
    "dimensions",
    "volume",
    "center_of_gravity"
  ],
  "title": "PhysicalCharacteristics",
  "type": "object"
}

Fields:

Validators:

validate_cog pydantic-validator ¤

validate_cog(v: dict[str, float]) -> dict[str, float]

Validate that center of gravity includes x, y, and z coordinates.

Source code in src/adh/wbs/systems/systems_parameters.py
 95
 96
 97
 98
 99
100
101
102
103
@field_validator("center_of_gravity")
@classmethod
def validate_cog(cls, v: dict[str, float]) -> dict[str, float]:
    """Validate that center of gravity includes x, y, and z coordinates."""
    if set(v.keys()) != {"x", "y", "z"}:
        raise ValueError(
            "Center of gravity must include 'x', 'y', and 'z' coordinates"
        )
    return v

validate_dimensions pydantic-validator ¤

validate_dimensions(v: dict[str, float]) -> dict[str, float]

Validate that dimensions include length, width, and height.

Source code in src/adh/wbs/systems/systems_parameters.py
87
88
89
90
91
92
93
@field_validator("dimensions")
@classmethod
def validate_dimensions(cls, v: dict[str, float]) -> dict[str, float]:
    """Validate that dimensions include length, width, and height."""
    if set(v.keys()) != {"length", "width", "height"}:
        raise ValueError("Dimensions must include 'length', 'width', and 'height'")
    return v

PowerRequirements pydantic-model ¤

Bases: BaseModel

Power requirements for the system.

Attributes:

  • voltage (float) –

    Required voltage in volts.

  • current (float) –

    Required current in amperes.

  • frequency (Optional[float]) –

    Required frequency in Hz, if applicable.

  • power_type (str) –

    Type of power (e.g., "AC", "DC").

  • peak_power (float) –

    Peak power consumption in watts.

  • average_power (float) –

    Average power consumption in watts.

Show JSON schema:
{
  "description": "Power requirements for the system.\n\nAttributes:\n    voltage (float): Required voltage in volts.\n    current (float): Required current in amperes.\n    frequency (Optional[float]): Required frequency in Hz, if applicable.\n    power_type (str): Type of power (e.g., \"AC\", \"DC\").\n    peak_power (float): Peak power consumption in watts.\n    average_power (float): Average power consumption in watts.",
  "properties": {
    "voltage": {
      "exclusiveMinimum": 0,
      "title": "Voltage",
      "type": "number"
    },
    "current": {
      "exclusiveMinimum": 0,
      "title": "Current",
      "type": "number"
    },
    "frequency": {
      "anyOf": [
        {
          "exclusiveMinimum": 0,
          "type": "number"
        },
        {
          "type": "null"
        }
      ],
      "default": null,
      "title": "Frequency"
    },
    "power_type": {
      "maxLength": 20,
      "minLength": 1,
      "title": "Power Type",
      "type": "string"
    },
    "peak_power": {
      "exclusiveMinimum": 0,
      "title": "Peak Power",
      "type": "number"
    },
    "average_power": {
      "exclusiveMinimum": 0,
      "title": "Average Power",
      "type": "number"
    }
  },
  "required": [
    "voltage",
    "current",
    "power_type",
    "peak_power",
    "average_power"
  ],
  "title": "PowerRequirements",
  "type": "object"
}

Fields:

SignalDirection ¤

Bases: str, Enum

Enumeration of signal directions.

SignalType ¤

Bases: str, Enum

Enumeration of signal types.

System pydantic-model ¤

Bases: MSoSAMixin, Architecture

Represents a system within aircraft systems, detailing its specifications, functionalities, and interrelations.

Attributes:

Show JSON schema:
{
  "$defs": {
    "Activity": {
      "description": "An individual activity or task within a behaviour sequence.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A unique name identifying the activity.",
          "title": "Name"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A brief description of the activity's purpose and objectives.",
          "title": "Description"
        },
        "state": {
          "anyOf": [
            {
              "$ref": "#/$defs/ActivityState"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The current state of the activity."
        },
        "dependencies": {
          "anyOf": [
            {
              "items": {
                "type": "string"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "List of activity names that this activity depends on.",
          "title": "Dependencies"
        }
      },
      "title": "Activity",
      "type": "object"
    },
    "ActivityState": {
      "description": "Lifecycle state of an activity.",
      "enum": [
        "pending",
        "in_progress",
        "completed",
        "cancelled"
      ],
      "title": "ActivityState",
      "type": "string"
    },
    "Author": {
      "description": "Author or contributor to an ADH node.",
      "properties": {
        "name": {
          "description": "Full name of the author.",
          "title": "Name",
          "type": "string"
        },
        "organisation": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Organisation or affiliation.",
          "title": "Organisation"
        },
        "email": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Email address.",
          "title": "Email"
        }
      },
      "required": [
        "name"
      ],
      "title": "Author",
      "type": "object"
    },
    "Behavior": {
      "description": "Behavioural model of a system, combining an activity sequence with DaveML tables.",
      "properties": {
        "variable_defs": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/VariableDef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Variable definitions",
          "title": "Variable Defs"
        },
        "breakpoint_defs": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/BreakpointDef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Breakpoint set definitions",
          "title": "Breakpoint Defs"
        },
        "gridded_table_defs": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/GriddedTableDef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Gridded table definitions",
          "title": "Gridded Table Defs"
        },
        "ungridded_table_defs": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/UngriddedTableDef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Ungridded table definitions",
          "title": "Ungridded Table Defs"
        },
        "functions": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Function"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Function definitions",
          "title": "Functions"
        },
        "check_data": {
          "anyOf": [
            {
              "$ref": "#/$defs/CheckData"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Verification check data"
        },
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A unique name identifying the behaviour.",
          "title": "Name"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A brief description of the behaviour.",
          "title": "Description"
        },
        "sequence": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Activity"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A sequence of activities that define the behaviour.",
          "title": "Sequence"
        },
        "fidelity_level": {
          "anyOf": [
            {
              "$ref": "#/$defs/FidelityLevel"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Declared analysis fidelity for this behaviour model. L0 = empirical lookup or simple rule; L1 = parameterised model; L2 = multi-condition simulation model (e.g. DaveML table set); L3 = high-fidelity non-linear or time-varying model; L4 = validated against physical test data."
        },
        "source_info": {
          "anyOf": [
            {
              "$ref": "#/$defs/SourceInfo"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Source and authorship metadata."
        }
      },
      "title": "Behavior",
      "type": "object"
    },
    "Behaviors": {
      "description": "Container for a list of behaviours.",
      "properties": {
        "behaviors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Behavior"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Behaviors"
        }
      },
      "title": "Behaviors",
      "type": "object"
    },
    "Bounds": {
      "description": "Statistical limits of a parameter.",
      "properties": {
        "value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "$ref": "#/$defs/DataTable"
            },
            {
              "$ref": "#/$defs/VariableDef"
            },
            {
              "$ref": "#/$defs/VariableRef"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The bound value or reference",
          "title": "Value"
        }
      },
      "title": "Bounds",
      "type": "object"
    },
    "BpRef": {
      "description": "Reference to a breakpoint set.",
      "properties": {
        "bp_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the referenced breakpoint set",
          "title": "Bp Id"
        }
      },
      "title": "BpRef",
      "type": "object"
    },
    "BreakpointDef": {
      "description": "Definition of a breakpoint set.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the breakpoint set",
          "title": "Name"
        },
        "bp_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The unique identifier for this breakpoint set",
          "title": "Bp Id"
        },
        "units": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The units of measure for the breakpoints",
          "title": "Units"
        },
        "description": {
          "anyOf": [
            {
              "$ref": "#/$defs/Description"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A description of the breakpoint set"
        },
        "bp_vals": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The breakpoint values",
          "title": "Bp Vals"
        }
      },
      "title": "BreakpointDef",
      "type": "object"
    },
    "Calculation": {
      "description": "Calculation using MathML content markup.",
      "properties": {
        "math": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The MathML content markup describing the calculation",
          "title": "Math"
        }
      },
      "title": "Calculation",
      "type": "object"
    },
    "CheckData": {
      "description": "Check data for model verification.",
      "properties": {
        "static_shot": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/StaticShot"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Static check cases",
          "title": "Static Shot"
        }
      },
      "title": "CheckData",
      "type": "object"
    },
    "CheckInputs": {
      "description": "Input values for a check case.",
      "properties": {
        "signal": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Signal"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The input signals for this check case",
          "title": "Signal"
        }
      },
      "title": "CheckInputs",
      "type": "object"
    },
    "CheckOutputs": {
      "description": "Expected output values for a check case.",
      "properties": {
        "signal": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Signal"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The output signals for this check case",
          "title": "Signal"
        }
      },
      "title": "CheckOutputs",
      "type": "object"
    },
    "ConfidenceBound": {
      "description": "Confidence bound for table data.",
      "properties": {
        "value": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The value of the confidence bound",
          "title": "Value"
        }
      },
      "title": "ConfidenceBound",
      "type": "object"
    },
    "CorrelatesWith": {
      "description": "Indicates correlation with another variable.",
      "properties": {
        "var_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the correlated variable",
          "title": "Var Id"
        }
      },
      "title": "CorrelatesWith",
      "type": "object"
    },
    "Correlation": {
      "description": "Correlation between variables.",
      "properties": {
        "var_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the correlated variable",
          "title": "Var Id"
        },
        "corr_coef": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The correlation coefficient",
          "title": "Corr Coef"
        }
      },
      "title": "Correlation",
      "type": "object"
    },
    "DataExchange": {
      "description": "The data exchange information of a model or tool.",
      "properties": {
        "id": {
          "description": "The identifier of the model.",
          "title": "Id",
          "type": "string"
        },
        "inputs": {
          "anyOf": [
            {
              "items": {},
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The list of input variables to the model.",
          "title": "Inputs"
        },
        "outputs": {
          "anyOf": [
            {
              "items": {},
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The list of output variables of the model.",
          "title": "Outputs"
        }
      },
      "required": [
        "id"
      ],
      "title": "DataExchange",
      "type": "object"
    },
    "DataPoint": {
      "description": "Data point in an ungridded table.",
      "properties": {
        "mod_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the modification record for this data point",
          "title": "Mod Id"
        },
        "value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The values of the data point",
          "title": "Value"
        }
      },
      "title": "DataPoint",
      "type": "object"
    },
    "DataTable": {
      "description": "Data of a gridded table as whitespace- or comma-separated values.",
      "properties": {
        "value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The table data as a string of comma- or whitespace-separated values",
          "title": "Value"
        }
      },
      "title": "DataTable",
      "type": "object"
    },
    "DependentVarPts": {
      "description": "Dependent variable points for a simple function.",
      "properties": {
        "var_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the referenced variable",
          "title": "Var Id"
        },
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the dependent variable",
          "title": "Name"
        },
        "units": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The units of the dependent variable",
          "title": "Units"
        },
        "sign": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The sign convention for the dependent variable",
          "title": "Sign"
        },
        "value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The values of the dependent variable points",
          "title": "Value"
        }
      },
      "title": "DependentVarPts",
      "type": "object"
    },
    "DependentVarRef": {
      "description": "Reference to a dependent variable for a complex function.",
      "properties": {
        "var_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the referenced variable",
          "title": "Var Id"
        }
      },
      "title": "DependentVarRef",
      "type": "object"
    },
    "Description": {
      "description": "Textual description of an entity.",
      "properties": {
        "value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The description text",
          "title": "Value"
        }
      },
      "title": "Description",
      "type": "object"
    },
    "Discipline": {
      "description": "A specific discipline organizing associated tools, models, and methodologies.",
      "properties": {
        "name": {
          "$ref": "#/$defs/PerfDisciplines",
          "description": "The name of the discipline."
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A brief description of the discipline and its scope.",
          "title": "Description"
        },
        "tools": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/ModelDescription"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A list of tools and models associated with the discipline.",
          "title": "Tools"
        },
        "fidelity_level": {
          "anyOf": [
            {
              "$ref": "#/$defs/FidelityLevel"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Declared analysis fidelity for this discipline. Drives tool selection and cross-domain mismatch detection. L0 = empirical/handbook; L1 = VLM/panel; L2 = multi-discipline at selected conditions; L3 = high-fidelity full-envelope; L4 = validated (outside MAGPIE scope)."
        },
        "source_info": {
          "anyOf": [
            {
              "$ref": "#/$defs/SourceInfo"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Source and authorship metadata."
        }
      },
      "required": [
        "name"
      ],
      "title": "Discipline",
      "type": "object"
    },
    "ExternalReference": {
      "description": "Reference to an external file or document.",
      "properties": {
        "title": {
          "description": "Title or name of the referenced resource.",
          "title": "Title",
          "type": "string"
        },
        "path": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "File path or URI to the external resource.",
          "title": "Path"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Description of the reference and its relevance.",
          "title": "Description"
        },
        "classification": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Type classification of the reference (e.g. 'STEP file', 'CFD mesh', 'test report').",
          "title": "Classification"
        }
      },
      "required": [
        "title"
      ],
      "title": "ExternalReference",
      "type": "object"
    },
    "ExtrapolateEnum": {
      "description": "Extrapolation method for table lookups.",
      "enum": [
        "neither",
        "min",
        "max",
        "both"
      ],
      "title": "ExtrapolateEnum",
      "type": "string"
    },
    "FidelityLevel": {
      "description": "L0-L4 fidelity taxonomy for ADH domain blocks.",
      "enum": [
        "L0",
        "L1",
        "L2",
        "L3",
        "L4"
      ],
      "title": "FidelityLevel",
      "type": "string"
    },
    "Function": {
      "description": "A DAVE-ML function relating independent variables to a dependent variable.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the function",
          "title": "Name"
        },
        "description": {
          "anyOf": [
            {
              "$ref": "#/$defs/Description"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A description of the function"
        },
        "independent_var_pts": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/IndependentVarPts"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The independent variable points for simple functions",
          "title": "Independent Var Pts"
        },
        "dependent_var_pts": {
          "anyOf": [
            {
              "$ref": "#/$defs/DependentVarPts"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The dependent variable points for simple functions"
        },
        "independent_var_ref": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/IndependentVarRef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "References to independent variables for complex functions",
          "title": "Independent Var Ref"
        },
        "dependent_var_ref": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/DependentVarRef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Reference to the dependent variable for complex functions",
          "title": "Dependent Var Ref"
        },
        "function_defn": {
          "anyOf": [
            {
              "$ref": "#/$defs/FunctionDefn"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The function definition for complex functions"
        }
      },
      "title": "Function",
      "type": "object"
    },
    "FunctionDefn": {
      "description": "Definition of a complex function (table-based lookup).",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the function definition",
          "title": "Name"
        },
        "gridded_table_ref": {
          "anyOf": [
            {
              "$ref": "#/$defs/GriddedTableRef"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A reference to a gridded table"
        },
        "gridded_table_def": {
          "anyOf": [
            {
              "$ref": "#/$defs/GriddedTableDef"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A gridded table definition"
        },
        "gridded_table": {
          "anyOf": [
            {
              "$ref": "#/$defs/GriddedTable"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A gridded table"
        },
        "ungridded_table_ref": {
          "anyOf": [
            {
              "$ref": "#/$defs/UngriddedTableRef"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A reference to an ungridded table"
        },
        "ungridded_table_def": {
          "anyOf": [
            {
              "$ref": "#/$defs/UngriddedTableDef"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "An ungridded table definition"
        },
        "ungridded_table": {
          "anyOf": [
            {
              "$ref": "#/$defs/UngriddedTable"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "An ungridded table"
        }
      },
      "title": "FunctionDefn",
      "type": "object"
    },
    "GriddedTable": {
      "description": "Inline gridded table.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the gridded table",
          "title": "Name"
        },
        "breakpoint_refs": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/BpRef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "References to the breakpoint sets used in this table",
          "title": "Breakpoint Refs"
        },
        "confidence_bound": {
          "anyOf": [
            {
              "$ref": "#/$defs/ConfidenceBound"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The confidence bound for the table data"
        },
        "data_table": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataTable"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The actual data of the gridded table"
        }
      },
      "title": "GriddedTable",
      "type": "object"
    },
    "GriddedTableDef": {
      "description": "Definition of a gridded table.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the gridded table",
          "title": "Name"
        },
        "gt_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The unique identifier for this gridded table",
          "title": "Gt Id"
        },
        "units": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The units of measure for the table values",
          "title": "Units"
        },
        "description": {
          "anyOf": [
            {
              "$ref": "#/$defs/Description"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A description of the gridded table"
        },
        "breakpoint_refs": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/BpRef"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "References to the breakpoint sets used in this table",
          "title": "Breakpoint Refs"
        },
        "uncertainty": {
          "anyOf": [
            {
              "$ref": "#/$defs/Uncertainty"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The uncertainty associated with the table values"
        },
        "data_table": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataTable"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The actual data of the gridded table"
        }
      },
      "title": "GriddedTableDef",
      "type": "object"
    },
    "GriddedTableRef": {
      "description": "Reference to a gridded table.",
      "properties": {
        "gt_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the referenced gridded table",
          "title": "Gt Id"
        }
      },
      "title": "GriddedTableRef",
      "type": "object"
    },
    "IndependentVarPts": {
      "description": "Independent variable points for a simple function.",
      "properties": {
        "var_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the referenced variable",
          "title": "Var Id"
        },
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the independent variable",
          "title": "Name"
        },
        "units": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The units of the independent variable",
          "title": "Units"
        },
        "sign": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The sign convention for the independent variable",
          "title": "Sign"
        },
        "extrapolate": {
          "anyOf": [
            {
              "$ref": "#/$defs/ExtrapolateEnum"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The extrapolation method"
        },
        "interpolate": {
          "anyOf": [
            {
              "$ref": "#/$defs/InterpolateEnum"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The interpolation method"
        },
        "value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The values of the independent variable points",
          "title": "Value"
        }
      },
      "title": "IndependentVarPts",
      "type": "object"
    },
    "IndependentVarRef": {
      "description": "Reference to an independent variable for a complex function.",
      "properties": {
        "var_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the referenced variable",
          "title": "Var Id"
        },
        "min": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The minimum value of the independent variable",
          "title": "Min"
        },
        "max": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The maximum value of the independent variable",
          "title": "Max"
        },
        "extrapolate": {
          "anyOf": [
            {
              "$ref": "#/$defs/ExtrapolateEnum"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The extrapolation method"
        },
        "interpolate": {
          "anyOf": [
            {
              "$ref": "#/$defs/InterpolateEnum"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The interpolation method"
        }
      },
      "title": "IndependentVarRef",
      "type": "object"
    },
    "InternalValues": {
      "description": "Internal variable values for a check case.",
      "properties": {
        "signal": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Signal"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The internal signals for this check case",
          "title": "Signal"
        }
      },
      "title": "InternalValues",
      "type": "object"
    },
    "InterpolateEnum": {
      "description": "Interpolation method for table lookups (ANSI/AIAA-S-119-2011).",
      "enum": [
        "discrete",
        "floor",
        "ceiling",
        "linear",
        "quadraticSpline",
        "cubicSpline"
      ],
      "title": "InterpolateEnum",
      "type": "string"
    },
    "ModelDescription": {
      "additionalProperties": true,
      "description": "The description of a tool or model.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A unique model name.",
          "title": "Name"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A brief description of the model.",
          "title": "Description"
        },
        "source_info": {
          "anyOf": [
            {
              "$ref": "#/$defs/SourceInfo"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Source and authorship metadata."
        },
        "uuid": {
          "anyOf": [
            {
              "format": "uuid4",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A globally unique identifier for the model.",
          "title": "Uuid"
        },
        "spec_version": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The specification version of the model.",
          "title": "Spec Version"
        },
        "generation_tool": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The tool used to generate the model.",
          "title": "Generation Tool"
        },
        "generation_time": {
          "anyOf": [
            {
              "format": "date-time",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The date and time when the model was generated.",
          "title": "Generation Time"
        },
        "data_exchange": {
          "anyOf": [
            {
              "$ref": "#/$defs/DataExchange"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The data exchange information of the model."
        },
        "license": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The license of the model.",
          "title": "License"
        },
        "copyright": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The copyright information of the model.",
          "title": "Copyright"
        },
        "author": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The author of the model.",
          "title": "Author"
        },
        "version": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The version of the model.",
          "title": "Version"
        }
      },
      "title": "ModelDescription",
      "type": "object"
    },
    "NormalPDF": {
      "description": "Normal probability distribution function.",
      "properties": {
        "num_sigmas": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The number of standard deviations",
          "title": "Num Sigmas"
        },
        "bounds": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Bounds"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The bounds of the distribution",
          "title": "Bounds"
        },
        "correlates_with": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/CorrelatesWith"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Correlations with other variables",
          "title": "Correlates With"
        },
        "correlation": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Correlation"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Correlation coefficients",
          "title": "Correlation"
        }
      },
      "title": "NormalPDF",
      "type": "object"
    },
    "PerfDisciplines": {
      "description": "Taxonomy for performance measures.",
      "enum": [
        "configuration",
        "propulsion",
        "mass properties",
        "aerodynamics",
        "signature",
        "finance",
        "payloads",
        "structures",
        "systems",
        "manufacturing",
        "mission",
        "airplane performance",
        "mdo"
      ],
      "title": "PerfDisciplines",
      "type": "string"
    },
    "Performances": {
      "description": "Container for a list of performance disciplines.",
      "properties": {
        "performances": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Discipline"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Performances"
        }
      },
      "title": "Performances",
      "type": "object"
    },
    "Priority": {
      "description": "Requirement priority levels per INCOSE guidance.",
      "enum": [
        "critical",
        "high",
        "medium",
        "low"
      ],
      "title": "Priority",
      "type": "string"
    },
    "ReqsCategories": {
      "description": "Taxonomy for system requirements based on ISO/IEC/IEEE 29148 and\nINCOSE's Guide to Writing Requirements.",
      "enum": [
        "functional",
        "performance",
        "quality and reliability",
        "security and cyber security",
        "interface",
        "constraints",
        "regulatory and compliance",
        "non-functional"
      ],
      "title": "ReqsCategories",
      "type": "string"
    },
    "Requirement": {
      "description": "A single requirement including specification, tracking and validation.",
      "properties": {
        "name": {
          "description": "A unique name identifying the requirement.",
          "title": "Name",
          "type": "string"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A detailed description of the requirement.",
          "title": "Description"
        },
        "category": {
          "anyOf": [
            {
              "$ref": "#/$defs/ReqsCategories"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The category of the requirement."
        },
        "priority": {
          "anyOf": [
            {
              "$ref": "#/$defs/Priority"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The priority of the requirement."
        },
        "verification_method": {
          "anyOf": [
            {
              "$ref": "#/$defs/VerificationMethod"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "How the requirement will be verified."
        },
        "status": {
          "anyOf": [
            {
              "$ref": "#/$defs/RequirementStatus"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The current lifecycle status of the requirement."
        },
        "source": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The originating document or stakeholder.",
          "title": "Source"
        },
        "acceptance_criteria": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Conditions that must be met for the requirement to be satisfied.",
          "title": "Acceptance Criteria"
        },
        "target_component": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The component or subsystem this requirement applies to.",
          "title": "Target Component"
        },
        "risk": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Known risks associated with this requirement.",
          "title": "Risk"
        },
        "verification_evidence": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Evidence or artefacts confirming verification.",
          "title": "Verification Evidence"
        },
        "source_info": {
          "anyOf": [
            {
              "$ref": "#/$defs/SourceInfo"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Source and authorship metadata."
        }
      },
      "required": [
        "name"
      ],
      "title": "Requirement",
      "type": "object"
    },
    "RequirementStatus": {
      "description": "Lifecycle status of a requirement.",
      "enum": [
        "draft",
        "approved",
        "implemented",
        "verified",
        "obsolete"
      ],
      "title": "RequirementStatus",
      "type": "string"
    },
    "Requirements": {
      "description": "Container for a list of requirements.",
      "properties": {
        "requirements": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Requirement"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Requirements"
        }
      },
      "title": "Requirements",
      "type": "object"
    },
    "Signal": {
      "description": "Signal (input, internal, or output) in a check case.",
      "properties": {
        "signal_name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the signal",
          "title": "Signal Name"
        },
        "signal_units": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The units of the signal",
          "title": "Signal Units"
        },
        "var_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the variable associated with this signal",
          "title": "Var Id"
        },
        "signal_value": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The value of the signal",
          "title": "Signal Value"
        },
        "tol": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The tolerance for this signal's value",
          "title": "Tol"
        }
      },
      "title": "Signal",
      "type": "object"
    },
    "SourceInfo": {
      "description": "Source and authorship metadata for an ADH node.",
      "properties": {
        "authors": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Author"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Authors or contributors.",
          "title": "Authors"
        },
        "creation_date": {
          "anyOf": [
            {
              "format": "date",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Date this node was created.",
          "title": "Creation Date"
        },
        "modification_date": {
          "anyOf": [
            {
              "format": "date",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Date this node was last modified.",
          "title": "Modification Date"
        },
        "version": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Version string.",
          "title": "Version"
        },
        "references": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/ExternalReference"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "References to external files or documents.",
          "title": "References"
        }
      },
      "title": "SourceInfo",
      "type": "object"
    },
    "StaticShot": {
      "description": "Static check case for model verification.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the static shot",
          "title": "Name"
        },
        "ref_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The reference ID for this static shot",
          "title": "Ref Id"
        },
        "description": {
          "anyOf": [
            {
              "$ref": "#/$defs/Description"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A description of the static shot"
        },
        "check_inputs": {
          "anyOf": [
            {
              "$ref": "#/$defs/CheckInputs"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The input values for this check case"
        },
        "internal_values": {
          "anyOf": [
            {
              "$ref": "#/$defs/InternalValues"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The internal variable values for this check case"
        },
        "check_outputs": {
          "anyOf": [
            {
              "$ref": "#/$defs/CheckOutputs"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The expected output values for this check case"
        }
      },
      "title": "StaticShot",
      "type": "object"
    },
    "System": {
      "additionalProperties": true,
      "description": "Represents a system within aircraft systems, detailing its specifications, functionalities, and interrelations.\n\nAttributes:\n    name (Optional[str]): The name of the system, acting as a unique identifier.\n    description (Optional[str]): A brief description of the system's purpose and functionality.\n    parameters (Optional[dict[str, Any]]): Operational or physical parameters associated with the system.\n    diagram (Optional[dict[str, Any]]): Flow diagram of the system.\n    subsystems (Optional[list[System]]): A list of sub-systems, if any, within this system.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the system.",
          "title": "Name"
        },
        "description": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A brief description of the system.",
          "title": "Description"
        },
        "source_info": {
          "anyOf": [
            {
              "$ref": "#/$defs/SourceInfo"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Source and authorship metadata."
        },
        "uuid": {
          "anyOf": [
            {
              "format": "uuid4",
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A globally unique identifier for the model.",
          "title": "Uuid"
        },
        "wbs_no": {
          "default": "",
          "title": "Wbs No",
          "type": "string"
        },
        "requirements": {
          "anyOf": [
            {
              "$ref": "#/$defs/Requirements"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Requirements child view for this architecture node."
        },
        "performance": {
          "anyOf": [
            {
              "$ref": "#/$defs/Performances"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Performance child view for this architecture node."
        },
        "behavior": {
          "anyOf": [
            {
              "$ref": "#/$defs/Behaviors"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Behavior child view for this architecture node."
        },
        "parameters": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Parameters of the system.",
          "title": "Parameters"
        },
        "diagram": {
          "anyOf": [
            {
              "additionalProperties": true,
              "type": "object"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Flow diagram of the system.",
          "title": "Diagram"
        },
        "subsystems": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/System"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Sub-systems within this system.",
          "title": "Subsystems"
        }
      },
      "title": "System",
      "type": "object"
    },
    "Uncertainty": {
      "description": "Uncertainty of a function or parameter value.",
      "properties": {
        "effect": {
          "anyOf": [
            {
              "$ref": "#/$defs/UncertaintyEffect"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The effect of the uncertainty"
        },
        "normal_pdf": {
          "anyOf": [
            {
              "$ref": "#/$defs/NormalPDF"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The normal probability distribution function"
        },
        "uniform_pdf": {
          "anyOf": [
            {
              "$ref": "#/$defs/UniformPDF"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The uniform probability distribution function"
        }
      },
      "title": "Uncertainty",
      "type": "object"
    },
    "UncertaintyEffect": {
      "description": "Effect type for uncertainty specification.",
      "enum": [
        "additive",
        "multiplicative",
        "percentage",
        "absolute"
      ],
      "title": "UncertaintyEffect",
      "type": "string"
    },
    "UngriddedTable": {
      "description": "Inline ungridded table.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the ungridded table",
          "title": "Name"
        },
        "confidence_bound": {
          "anyOf": [
            {
              "$ref": "#/$defs/ConfidenceBound"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The confidence bound for the table data"
        },
        "data_point": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/DataPoint"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The data points of the ungridded table",
          "title": "Data Point"
        }
      },
      "title": "UngriddedTable",
      "type": "object"
    },
    "UngriddedTableDef": {
      "description": "Definition of an ungridded table.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the ungridded table",
          "title": "Name"
        },
        "ut_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The unique identifier for this ungridded table",
          "title": "Ut Id"
        },
        "units": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The units of measure for the table values",
          "title": "Units"
        },
        "description": {
          "anyOf": [
            {
              "$ref": "#/$defs/Description"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A description of the ungridded table"
        },
        "uncertainty": {
          "anyOf": [
            {
              "$ref": "#/$defs/Uncertainty"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The uncertainty associated with the table values"
        },
        "data_point": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/DataPoint"
              },
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The data points of the ungridded table",
          "title": "Data Point"
        }
      },
      "title": "UngriddedTableDef",
      "type": "object"
    },
    "UngriddedTableRef": {
      "description": "Reference to an ungridded table.",
      "properties": {
        "ut_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the referenced ungridded table",
          "title": "Ut Id"
        }
      },
      "title": "UngriddedTableRef",
      "type": "object"
    },
    "UniformPDF": {
      "description": "Uniform probability distribution function.",
      "properties": {
        "bounds": {
          "anyOf": [
            {
              "items": {
                "$ref": "#/$defs/Bounds"
              },
              "minItems": 1,
              "type": "array"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The bounds of the distribution",
          "title": "Bounds"
        }
      },
      "title": "UniformPDF",
      "type": "object"
    },
    "VariableDef": {
      "description": "Definition of a variable.",
      "properties": {
        "name": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The name of the variable",
          "title": "Name"
        },
        "var_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The unique identifier for this variable",
          "title": "Var Id"
        },
        "units": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The units of measure for the variable",
          "title": "Units"
        },
        "axis_system": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The axis system for the variable",
          "title": "Axis System"
        },
        "sign": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The sign convention for the variable",
          "title": "Sign"
        },
        "alias": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "An alias for the variable",
          "title": "Alias"
        },
        "symbol": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A symbol representing the variable",
          "title": "Symbol"
        },
        "initial_value": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The initial value of the variable",
          "title": "Initial Value"
        },
        "min_value": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The minimum allowed value of the variable",
          "title": "Min Value"
        },
        "max_value": {
          "anyOf": [
            {
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The maximum allowed value of the variable",
          "title": "Max Value"
        },
        "description": {
          "anyOf": [
            {
              "$ref": "#/$defs/Description"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "A description of the variable"
        },
        "calculation": {
          "anyOf": [
            {
              "$ref": "#/$defs/Calculation"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The calculation for deriving the variable's value"
        },
        "is_input": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Indicates if the variable is an input",
          "title": "Is Input"
        },
        "is_control": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Indicates if the variable is a control parameter",
          "title": "Is Control"
        },
        "is_disturbance": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Indicates if the variable is a disturbance input",
          "title": "Is Disturbance"
        },
        "is_state": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Indicates if the variable is a state variable",
          "title": "Is State"
        },
        "is_state_deriv": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Indicates if the variable is a state derivative",
          "title": "Is State Deriv"
        },
        "is_output": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Indicates if the variable is an output",
          "title": "Is Output"
        },
        "is_std_aiaa": {
          "anyOf": [
            {
              "type": "boolean"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "Indicates if the variable is a standard AIAA variable",
          "title": "Is Std Aiaa"
        },
        "uncertainty": {
          "anyOf": [
            {
              "$ref": "#/$defs/Uncertainty"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The uncertainty associated with the variable"
        }
      },
      "title": "VariableDef",
      "type": "object"
    },
    "VariableRef": {
      "description": "Reference to a variable.",
      "properties": {
        "var_id": {
          "anyOf": [
            {
              "type": "string"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "description": "The ID of the referenced variable",
          "title": "Var Id"
        }
      },
      "title": "VariableRef",
      "type": "object"
    },
    "VerificationMethod": {
      "description": "Verification methods per ISO/IEC/IEEE 15288:2023.",
      "enum": [
        "test",
        "analysis",
        "inspection",
        "demonstration"
      ],
      "title": "VerificationMethod",
      "type": "string"
    }
  },
  "$ref": "#/$defs/System"
}

Fields:

Validators:

  • validate_wbs_nowbs_no

behavior pydantic-field ¤

behavior: Optional[Behaviors] = None

Behavior child view for this architecture node.

description pydantic-field ¤

description: Optional[str] = None

A brief description of the system.

diagram pydantic-field ¤

diagram: Optional[dict[str, Any]] = None

Flow diagram of the system.

name pydantic-field ¤

name: Optional[str] = None

The name of the system.

parameters pydantic-field ¤

parameters: Optional[dict[str, Any]] = None

Parameters of the system.

performance pydantic-field ¤

performance: Optional[Performances] = None

Performance child view for this architecture node.

requirements pydantic-field ¤

requirements: Optional[Requirements] = None

Requirements child view for this architecture node.

source_info pydantic-field ¤

source_info: Optional[SourceInfo] = None

Source and authorship metadata.

subsystems pydantic-field ¤

subsystems: Optional[list[System]] = None

Sub-systems within this system.

uuid pydantic-field ¤

uuid: Optional[UUID4] = None

A globally unique identifier for the model.

SystemAttributes pydantic-model ¤

Bases: BaseModel

Attributes specific to an aircraft system.

Attributes:

Show JSON schema:
{
  "$defs": {
    "CoolingRequirements": {
      "description": "Cooling requirements for the system.\n\nAttributes:\n    method (str): Cooling method (e.g., \"Air\", \"Liquid\", \"Conduction\").\n    heat_dissipation (float): Heat dissipation in watts.\n    max_operating_temperature (float): Maximum operating temperature in Celsius.",
      "properties": {
        "method": {
          "maxLength": 50,
          "minLength": 1,
          "title": "Method",
          "type": "string"
        },
        "heat_dissipation": {
          "minimum": 0,
          "title": "Heat Dissipation",
          "type": "number"
        },
        "max_operating_temperature": {
          "title": "Max Operating Temperature",
          "type": "number"
        }
      },
      "required": [
        "method",
        "heat_dissipation",
        "max_operating_temperature"
      ],
      "title": "CoolingRequirements",
      "type": "object"
    },
    "DataSignal": {
      "description": "Represents a data signal in the system.\n\nAttributes:\n    name (str): Name of the signal.\n    type (SignalType): Type of the signal.\n    direction (SignalDirection): Direction of the signal.\n    source (str): Source of the signal (system or component ID).\n    destination (str): Destination of the signal (system or component ID).\n    description (str): Brief description of the signal.",
      "properties": {
        "name": {
          "maxLength": 100,
          "minLength": 1,
          "title": "Name",
          "type": "string"
        },
        "type": {
          "$ref": "#/$defs/SignalType"
        },
        "direction": {
          "$ref": "#/$defs/SignalDirection"
        },
        "source": {
          "maxLength": 50,
          "minLength": 1,
          "title": "Source",
          "type": "string"
        },
        "destination": {
          "maxLength": 50,
          "minLength": 1,
          "title": "Destination",
          "type": "string"
        },
        "description": {
          "maxLength": 500,
          "minLength": 1,
          "title": "Description",
          "type": "string"
        }
      },
      "required": [
        "name",
        "type",
        "direction",
        "source",
        "destination",
        "description"
      ],
      "title": "DataSignal",
      "type": "object"
    },
    "FluidFlowCharacteristics": {
      "description": "Represents the flow characteristics of a working fluid in the system.\n\nAttributes:\n    fluid_type (str): Type of fluid (e.g., \"Hydraulic Oil\", \"Fuel\", \"Coolant\").\n    flow_rate (float): Nominal flow rate in liters per minute.\n    max_pressure (float): Maximum operating pressure in pascals.\n    min_pressure (float): Minimum operating pressure in pascals.\n    temperature_range (Tuple[float, float]): Operating temperature range in Celsius (min, max).\n    viscosity (float): Kinematic viscosity in centistokes at operating temperature.\n    density (float): Fluid density in kg/m\u00b3 at operating temperature.",
      "properties": {
        "fluid_type": {
          "maxLength": 50,
          "minLength": 1,
          "title": "Fluid Type",
          "type": "string"
        },
        "flow_rate": {
          "exclusiveMinimum": 0,
          "title": "Flow Rate",
          "type": "number"
        },
        "max_pressure": {
          "exclusiveMinimum": 0,
          "title": "Max Pressure",
          "type": "number"
        },
        "min_pressure": {
          "minimum": 0,
          "title": "Min Pressure",
          "type": "number"
        },
        "temperature_range": {
          "maxItems": 2,
          "minItems": 2,
          "prefixItems": [
            {
              "type": "number"
            },
            {
              "type": "number"
            }
          ],
          "title": "Temperature Range",
          "type": "array"
        },
        "viscosity": {
          "exclusiveMinimum": 0,
          "title": "Viscosity",
          "type": "number"
        },
        "density": {
          "exclusiveMinimum": 0,
          "title": "Density",
          "type": "number"
        }
      },
      "required": [
        "fluid_type",
        "flow_rate",
        "max_pressure",
        "min_pressure",
        "temperature_range",
        "viscosity",
        "density"
      ],
      "title": "FluidFlowCharacteristics",
      "type": "object"
    },
    "FunctionalBlock": {
      "description": "Represents a functional block in the system diagram.\n\nAttributes:\n    block_id (str): Unique identifier for the block.\n    name (str): Name of the functional block.\n    description (str): Brief description of the block's function.\n    inputs (List[str]): List of input signal names.\n    outputs (List[str]): List of output signal names.",
      "properties": {
        "block_id": {
          "maxLength": 50,
          "minLength": 1,
          "title": "Block Id",
          "type": "string"
        },
        "name": {
          "maxLength": 100,
          "minLength": 1,
          "title": "Name",
          "type": "string"
        },
        "description": {
          "maxLength": 500,
          "minLength": 1,
          "title": "Description",
          "type": "string"
        },
        "inputs": {
          "items": {
            "type": "string"
          },
          "title": "Inputs",
          "type": "array"
        },
        "outputs": {
          "items": {
            "type": "string"
          },
          "title": "Outputs",
          "type": "array"
        }
      },
      "required": [
        "block_id",
        "name",
        "description"
      ],
      "title": "FunctionalBlock",
      "type": "object"
    },
    "PhysicalCharacteristics": {
      "description": "Physical characteristics of the system.\n\nAttributes:\n    weight (float): Weight in kilograms.\n    dimensions (Dict[str, float]): Dimensions in meters (length, width, height).\n    volume (float): Volume in cubic meters.\n    center_of_gravity (Dict[str, float]): Center of gravity coordinates (x, y, z) in meters.",
      "properties": {
        "weight": {
          "exclusiveMinimum": 0,
          "title": "Weight",
          "type": "number"
        },
        "dimensions": {
          "additionalProperties": {
            "type": "number"
          },
          "maxProperties": 3,
          "minProperties": 3,
          "title": "Dimensions",
          "type": "object"
        },
        "volume": {
          "exclusiveMinimum": 0,
          "title": "Volume",
          "type": "number"
        },
        "center_of_gravity": {
          "additionalProperties": {
            "type": "number"
          },
          "maxProperties": 3,
          "minProperties": 3,
          "title": "Center Of Gravity",
          "type": "object"
        }
      },
      "required": [
        "weight",
        "dimensions",
        "volume",
        "center_of_gravity"
      ],
      "title": "PhysicalCharacteristics",
      "type": "object"
    },
    "PowerRequirements": {
      "description": "Power requirements for the system.\n\nAttributes:\n    voltage (float): Required voltage in volts.\n    current (float): Required current in amperes.\n    frequency (Optional[float]): Required frequency in Hz, if applicable.\n    power_type (str): Type of power (e.g., \"AC\", \"DC\").\n    peak_power (float): Peak power consumption in watts.\n    average_power (float): Average power consumption in watts.",
      "properties": {
        "voltage": {
          "exclusiveMinimum": 0,
          "title": "Voltage",
          "type": "number"
        },
        "current": {
          "exclusiveMinimum": 0,
          "title": "Current",
          "type": "number"
        },
        "frequency": {
          "anyOf": [
            {
              "exclusiveMinimum": 0,
              "type": "number"
            },
            {
              "type": "null"
            }
          ],
          "default": null,
          "title": "Frequency"
        },
        "power_type": {
          "maxLength": 20,
          "minLength": 1,
          "title": "Power Type",
          "type": "string"
        },
        "peak_power": {
          "exclusiveMinimum": 0,
          "title": "Peak Power",
          "type": "number"
        },
        "average_power": {
          "exclusiveMinimum": 0,
          "title": "Average Power",
          "type": "number"
        }
      },
      "required": [
        "voltage",
        "current",
        "power_type",
        "peak_power",
        "average_power"
      ],
      "title": "PowerRequirements",
      "type": "object"
    },
    "SignalDirection": {
      "description": "Enumeration of signal directions.",
      "enum": [
        "Input",
        "Output",
        "Bidirectional"
      ],
      "title": "SignalDirection",
      "type": "string"
    },
    "SignalType": {
      "description": "Enumeration of signal types.",
      "enum": [
        "Analog",
        "Digital",
        "Discrete",
        "Serial"
      ],
      "title": "SignalType",
      "type": "string"
    }
  },
  "description": "Attributes specific to an aircraft system.\n\nAttributes:\n    functional_blocks (List[FunctionalBlock]): List of functional blocks in the system.\n    data_signals (List[DataSignal]): List of data signals in the system.\n    physical_characteristics (PhysicalCharacteristics): Physical characteristics of the system.\n    cooling_requirements (CoolingRequirements): Cooling requirements for the system.\n    power_requirements (PowerRequirements): Power requirements for the system.\n    fluid_flow (Optional[FluidFlowCharacteristics]): Fluid flow characteristics, if applicable.",
  "properties": {
    "functional_blocks": {
      "items": {
        "$ref": "#/$defs/FunctionalBlock"
      },
      "title": "Functional Blocks",
      "type": "array"
    },
    "data_signals": {
      "items": {
        "$ref": "#/$defs/DataSignal"
      },
      "title": "Data Signals",
      "type": "array"
    },
    "physical_characteristics": {
      "$ref": "#/$defs/PhysicalCharacteristics"
    },
    "cooling_requirements": {
      "$ref": "#/$defs/CoolingRequirements"
    },
    "power_requirements": {
      "$ref": "#/$defs/PowerRequirements"
    },
    "fluid_flow": {
      "anyOf": [
        {
          "$ref": "#/$defs/FluidFlowCharacteristics"
        },
        {
          "type": "null"
        }
      ],
      "default": null
    }
  },
  "required": [
    "functional_blocks",
    "data_signals",
    "physical_characteristics",
    "cooling_requirements",
    "power_requirements"
  ],
  "title": "SystemAttributes",
  "type": "object"
}

Fields: