{
  "$schema": "https://json-schema.org/draft/2020-12/schema",
  "$id": "https://catalog.lintel.tools/schemas/schemastore/venvironment-yaml/versions/4.1.0.json",
  "title": "venvironment schema",
  "x-lintel": {
    "source": "https://www.schemastore.org/venvironment-schema-v4.1.0.json",
    "sourceSha256": "5b27402afe9042da4a404fc70b31b08f4cd741dd6f572fd42aa525fa954e04f6",
    "fileMatch": [
      "venvironment.yaml",
      "*.venvironment.yaml",
      "venvironment.yml",
      "*.venvironment.yml",
      "venvironment.json",
      "*.venvironment.json"
    ],
    "parsers": [
      "json",
      "yaml"
    ]
  },
  "type": "object",
  "$ref": "#/$defs/89005/full",
  "$defs": {
    "bcf85": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Application Models",
        "description": "List of application models representing some program. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/18095/full"
        },
        "examples": [
          [
            {
              "file-path": "path/to/my/file.can",
              "defines": [
                "mydefine1",
                "mydefine=2"
              ]
            }
          ]
        ]
      }
    },
    "da703": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "CAN Replay Blocks",
        "description": "List of CAN replay blocks. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/e8241/full"
        },
        "examples": [
          [
            {
              "name": "my_can_replay_block",
              "file-path": "my_logging_file.blf"
            }
          ],
          [
            {
              "name": "my_can_replay_block",
              "file-path": "my_logging_file.blf",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            },
            {
              "name": "my_can_replay_block",
              "file-path": "another_logging_file.blf",
              "when": "SCENARIO_NAME == \"another_scenario_name\""
            }
          ],
          [
            {
              "name": "ReplayBlock",
              "file-path": "MyLoggingFile.blf",
              "replay-on-measurement-start": true,
              "send-system-variables": false,
              "send-tx-messages": true,
              "send-rx-messages": false,
              "start-timing-condition": {
                "condition": "immediately"
              },
              "channel-mapping": {
                "default-mapping": "as-in-original"
              }
            }
          ]
        ]
      }
    },
    "bf74a": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Defines",
        "description": "List of defines to be passed to CAPL, .NET, Python and VCDL. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/689c5/full"
        },
        "examples": [
          [
            {
              "define": "mydefine1"
            }
          ],
          [
            {
              "define": [
                "mydefine1",
                "mydefine2"
              ]
            },
            {
              "define": [
                "mydefine1",
                "mydefine2"
              ],
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            },
            {
              "define": [
                "mydefine_with_value=42",
                "${var_with_define_name}=${var_with_define_value}"
              ]
            }
          ]
        ]
      }
    },
    "c181d": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "LIN Replay Blocks",
        "description": "List of LIN replay blocks. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/34c1f/full"
        },
        "examples": [
          [
            {
              "name": "my_lin_replay_block",
              "file-path": "my_logging_file.blf"
            }
          ],
          [
            {
              "name": "my_lin_replay_block",
              "file-path": "my_logging_file.blf",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            },
            {
              "name": "my_lin_replay_block",
              "file-path": "another_logging_file.blf",
              "when": "SCENARIO_NAME == \"another_scenario_name\""
            }
          ],
          [
            {
              "name": "ReplayBlock",
              "file-path": "MyLoggingFile.blf",
              "replay-on-measurement-start": true,
              "send-system-variables": false,
              "start-timing-condition": {
                "condition": "immediately"
              },
              "channel-mapping": {
                "default-mapping": "as-in-original"
              },
              "replay-mode": "master-responses-only",
              "send-events": [
                "tx-responses",
                "rx-responses",
                "wakeup-signals"
              ]
            }
          ]
        ]
      }
    },
    "e46c0": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Programming Modules",
        "description": "Lists of programming modules to be used by the simulation. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/17563/full"
        },
        "examples": [
          [
            {
              "capl-library-path": "path/to/my.vmodule"
            }
          ],
          [
            {
              "c-library-path": "${path_in_variable}"
            },
            {
              "c-library-path": "path/${name_in_variable}"
            }
          ],
          [
            {
              "capl-library-path": "path/to/my.vmodule",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            },
            {
              "capl-library-path": "path/to/my2.vmodule",
              "when": "SCENARIO_NAME == \"another_scenario_name\""
            },
            {
              "c-library-path": "path/to/my.vmodule",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ]
        ]
      }
    },
    "b1f68": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Security",
        "description": "Security settings",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "network-profile-assignments": {
            "$ref": "#/definitions/469f5/full"
          },
          "stack-profile-assignments": {
            "$ref": "#/definitions/6fca5/full"
          },
          "operating-system-stack-profile-id": {
            "$ref": "#/definitions/adad4/full",
            "description": "The ID of the assigned security profile to the OS Ethernet stack."
          },
          "shared-canoe-stack-profile-id": {
            "$ref": "#/definitions/adad4/full",
            "description": "The ID of the assigned security profile to the shared CANoe Ethernet stack."
          },
          "test-stack-profile-id": {
            "$ref": "#/definitions/adad4/full",
            "description": "The ID of the assigned security profile to the test Ethernet stack."
          }
        },
        "examples": [
          {
            "network-profile-assignments": [
              {
                "network": "CAN",
                "profile-id": 123456
              }
            ]
          },
          {
            "stack-profile-assignments": [
              {
                "simulation-node": "MyNode",
                "profile-id": 123456
              },
              {
                "simulation-node": "AnotherNode",
                "profile-id": 987654
              }
            ],
            "operating-system-stack-profile-id": 24680,
            "shared-canoe-stack-profile-id": 13579,
            "test-stack-profile-id": 13579
          }
        ]
      }
    },
    "e7b50": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "SIL Kit",
        "description": "SIL Kit settings. Entry can be deactivated with when.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "participant-name"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "registry-uri": {
            "description": "The URI of the registry.",
            "type": "string",
            "anyOf": [
              {
                "pattern": "^[^:]+://[^:/]+(:[0-9]+)?(/[^?#/]+)*(\\?([^=#&]+=[^=#&]+)(&([^=#&]+=[^=#&]+))*)?(#.+)?",
                "default": "silkit://localhost:8500"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              "silkit://localhost:8500"
            ]
          },
          "participant-name": {
            "description": "Name used by the simulation tool to join a simulation as a participant at the start of a measurement.",
            "anyOf": [
              {
                "type": "string"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              "CANoe4SW-SE"
            ]
          },
          "hybrid-networks": {
            "$ref": "#/definitions/9796e/full"
          },
          "config-file-path": {
            "$ref": "#/definitions/89e83/full"
          },
          "simulation-step-in-micro-sec": {
            "description": "Time length of a single simulation step. Valid only when \"time-source\" is set to \"external-sil-kit\".",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 9223372036854775,
                "default": 100
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "life-cycle-event-timeout-in-sec": {
            "description": "Maximum waiting time for the other simulation participants. Valid only when \"time-source\" is set to \"external-sil-kit\".",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 9223372036,
                "default": 30
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          }
        },
        "examples": [
          {
            "participant-name": "CANoe4SW-SE"
          },
          {
            "registry-uri": "silkit://localhost:8500",
            "participant-name": "CANoe4SW-SE",
            "config-file-path": "path/to/config-file.json"
          },
          {
            "registry-uri": "silkit://localhost:8500",
            "participant-name": "CANoe4SW-SE",
            "config-file-path": "path/to/config-file.json",
            "simulation-step-in-micro-sec": 150
          },
          {
            "registry-uri": "silkit://localhost:8500",
            "participant-name": "CANoe4SW-SE",
            "config-file-path": "path/to/config-file.json",
            "simulation-step-in-micro-sec": 150,
            "life-cycle-event-timeout-in-sec": 30,
            "hybrid-networks": [
              {
                "network": "Ethernet1",
                "sil-kit-network": "Ethernet3"
              }
            ]
          }
        ]
      }
    },
    "e721d": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Simulation Nodes",
        "description": "List of simulation nodes. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/b8608/full"
        },
        "examples": [
          [
            {
              "name": "mynode",
              "network-assignments": [
                {
                  "network": "my_can_network_1"
                }
              ]
            }
          ],
          [
            {
              "name": "mynode",
              "network-assignments": [
                {
                  "network": "my_can_network_1"
                }
              ],
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ],
          [
            {
              "name": "mynode",
              "network-assignments": [
                {
                  "network": "my_can_network_1"
                }
              ],
              "file-path": "path/to/my_capl_script.can",
              "when": "SCENARIO_NAME == \"my_scenario_name1\""
            },
            {
              "name": "programming_node",
              "file-path": "path/to/my_dotnet.cs",
              "database-node": false,
              "network-assignments": [
                {
                  "network": "my_can_network_1"
                }
              ],
              "defines": [
                "mydefine1",
                "mydefine2"
              ],
              "modeling-libraries": [
                "modeling/lib/1.vmodule",
                "${path_in_var}"
              ]
            }
          ]
        ]
      }
    },
    "c47fa": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "System Variables",
        "description": "A list of system variable files. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/8b228/full"
        },
        "examples": [
          [
            {
              "file-path": "path/to/my.vsysvar"
            }
          ],
          [
            {
              "file-path": "path/to/my.vsysvar",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ],
          [
            {
              "file-path": [
                "${path_in_variable}",
                "path/${name_in_variable}"
              ]
            },
            {
              "file-path": "path/to/my.vsysvar"
            }
          ]
        ]
      }
    },
    "f4ed6": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "User Files",
        "description": "List of user files. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/9541b/full"
        },
        "examples": [
          [
            {
              "file-path": "path/to/my.txt"
            }
          ],
          [
            {
              "file-path": "path/to/my.txt",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ],
          [
            {
              "file-path": [
                "${path_in_variable}",
                "path/${name_in_variable}"
              ]
            },
            {
              "file-path": "path/to/my_file.txt"
            }
          ]
        ]
      }
    },
    "b3d04": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "VIO System",
        "description": "VIO System settings. Entry can be deactivated with when.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "file-path",
          "ccd-folder"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "$ref": "#/definitions/0d74c/full"
          },
          "ccd-folder": {
            "description": "Absolute or relative path to the folder containing the Card Capability Description files (.ccd) of the I/O cards. Relative path specifications are resolved relative to the configuration file.",
            "anyOf": [
              {
                "type": "string"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              "path/to/folder/",
              "${folder_path_in_variable}",
              "path/${folder_name_in_variable}"
            ]
          }
        },
        "examples": [
          {
            "file-path": "path/to/config-file.viocfg",
            "ccd-folder": "path/to/ccdfiles/"
          },
          {
            "file-path": "${path_in_variable}",
            "ccd-folder": "path/to/ccdfiles/",
            "when": "SCENARIO_NAME = \"my_scenario_name\""
          }
        ]
      }
    },
    "b18cf": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "XCP files",
        "description": "List of XCP configuration files. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/2b57a/full"
        },
        "examples": [
          [
            {
              "file-path": "path/to/my.xcpcfg"
            }
          ],
          [
            {
              "file-path": "path/to/my.xcpcfg",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ],
          [
            {
              "file-path": [
                "${path_in_variable}",
                "path/${name_in_variable}"
              ]
            },
            {
              "file-path": "path/to/my.xcp.yaml"
            }
          ]
        ]
      }
    },
    "b6ab2": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "XIL API Settings",
        "description": "Enables the XIL API server. Entry can be deactivated with when.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "port"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "port": {
            "description": "TCP port to be used for the XIL API, usually set to \"3030\" for CANoe",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 65535
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          }
        },
        "examples": [
          {
            "port": 3030
          }
        ]
      }
    },
    "e8241": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "CAN replay block",
        "description": "A replay block for the CAN protocol.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "file-path"
        ],
        "properties": {
          "name": {
            "$ref": "#/definitions/9a523/full",
            "description": "A unique name that can be used to reference this CAN replay block in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
          },
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "$ref": "#/definitions/ac192/full"
          },
          "replay-on-measurement-start": {
            "description": "Replay starts with measurement start.",
            "oneOf": [
              {
                "type": "boolean",
                "default": true
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              true,
              false,
              "${variable}"
            ]
          },
          "send-system-variables": {
            "description": "Sends the system variable values.",
            "oneOf": [
              {
                "type": "boolean",
                "default": true
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              true,
              false,
              "${variable}"
            ]
          },
          "start-timing-condition": {
            "$ref": "#/definitions/548bf/full"
          },
          "channel-mapping": {
            "$ref": "#/definitions/eae4a/full"
          },
          "send-tx-messages": {
            "description": "Sends the tx messages.",
            "oneOf": [
              {
                "type": "boolean",
                "default": true
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              true,
              false,
              "${variable}"
            ]
          },
          "send-rx-messages": {
            "description": "Sends the rx messages.",
            "oneOf": [
              {
                "type": "boolean",
                "default": true
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              true,
              false,
              "${variable}"
            ]
          }
        },
        "examples": [
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf"
          },
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf",
            "when": "SCENARIO_NAME == \"MyScenario\""
          },
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf",
            "replay-on-measurement-start": true,
            "send-system-variables": false,
            "send-tx-messages": true,
            "send-rx-messages": false,
            "start-timing-condition": {
              "condition": "immediately"
            },
            "channel-mapping": {
              "default-mapping": "as-in-original"
            }
          }
        ]
      }
    },
    "e7902": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Database",
        "description": "Describes a .arxml/.dbc/.ldf. A network from the database can be selected implicitly via \"name\" or explicitly via \"network-name\".",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "file-path"
        ],
        "properties": {
          "name": {
            "$ref": "#/definitions/ee012/full"
          },
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "network-name": {
            "description": "Selects a network from the database (cluster if .arxml). Overrides the selection of the name property.",
            "type": "string"
          },
          "file-path": {
            "$ref": "#/definitions/b29db/full"
          }
        },
        "examples": [
          {
            "name": "mydbname",
            "file-path": "path/to/some.dbc"
          },
          {
            "name": "mydbname",
            "file-path": "path/to/some.arxml",
            "network-name": "network_in_db"
          },
          {
            "name": "mydbname",
            "file-path": "path/to/some.dbc",
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          }
        ]
      }
    },
    "e1d24": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Datasources",
        "description": "Defines datasources used by the application models (.vcdl/.vcodm). Input files can be deactivated with when.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "file-path"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "$ref": "#/definitions/66d5a/full"
          },
          "defines": {
            "$ref": "#/definitions/b0390/full"
          }
        },
        "examples": [
          {
            "file-path": "path/to/my.vcdl"
          },
          {
            "file-path": [
              "path/to/my.vcodm",
              "${path_in_variable}",
              "path/${name_in_variable}"
            ]
          },
          {
            "file-path": "path/to/my.vcdl",
            "defines": [
              "A",
              "B=42"
            ],
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          }
        ]
      }
    },
    "c3be2": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Diagnostic description",
        "description": "Diagnostic description with CDD, MDX or PDX.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "file-path",
          "interface",
          "variant",
          "network-assignment"
        ],
        "properties": {
          "name": {
            "$ref": "#/definitions/9a523/full",
            "description": "A unique name that can be used to reference this diagnostic description in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
          },
          "ecu-identifier": {
            "$ref": "#/definitions/09693/full"
          },
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "$ref": "#/definitions/775d7/full"
          },
          "interface": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "Interfaces in diagnostic description files define the communication parameters for accessing an ECU. Additional default interfaces are offered."
          },
          "variant": {
            "$ref": "#/definitions/39b87/full"
          },
          "network-assignment": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "Name of the network this diagnostic description is attached to."
          },
          "language": {
            "$ref": "#/definitions/a855d/full"
          },
          "seed-and-key-library-path": {
            "$ref": "#/definitions/e842d/full"
          },
          "communication-parameters": {
            "$ref": "#/definitions/576ec/full"
          },
          "doip-settings": {
            "$ref": "#/definitions/26b44/full"
          },
          "flexray-settings": {
            "$ref": "#/definitions/deffc/full"
          },
          "lin-settings": {
            "$ref": "#/definitions/0addd/full"
          },
          "additional-diag-descriptions": {
            "$ref": "#/definitions/2d2ea/full"
          }
        },
        "examples": [
          {
            "name": "DoorFL",
            "file-path": "description.cdd",
            "interface": "Normal_29BitBase_Variant",
            "variant": "Common",
            "language": "en-US",
            "network-assignment": "can_network"
          },
          {
            "name": "DoorFL",
            "file-path": "description.pdx",
            "ecu-identifier": "Door",
            "interface": "Normal_29BitBase_Variant",
            "variant": "Common",
            "network-assignment": "can_network"
          },
          {
            "name": "DoorFL",
            "when": "SCENARIO_NAME == \"MyScenario\"",
            "file-path": "description.cdd",
            "interface": "Normal_29BitBase_Variant",
            "variant": "Common",
            "network-assignment": "can_network"
          },
          {
            "name": "DoorFL",
            "file-path": "description.cdd",
            "interface": "${MyVariable}",
            "variant": "Common",
            "network-assignment": "eth_network",
            "communication-parameters": {
              "p6-client": 1000,
              "p2-server": 50
            },
            "doip-settings": {
              "tls-mode": "routing-activation",
              "tls-client": "Initial TLS Configuration",
              "tcp-ip-stack-adapter": "ref_name",
              "addressing": {
                "logical-ecu-address-func": 1,
                "logical-ecu-address-phys": 0,
                "logical-tester-address": 3584,
                "logical-gateway-address": 1
              }
            }
          },
          {
            "name": "DoorFL",
            "file-path": "description.cdd",
            "interface": "LIN",
            "variant": "Common",
            "network-assignment": "lin_network",
            "lin-settings": {
              "database-node": "Door",
              "scheduling-mode": "diagnostics-only"
            }
          },
          {
            "name": "DoorFL",
            "file-path": "description.cdd",
            "interface": "${MyVariable}",
            "variant": "Common",
            "network-assignment": "fr_cluster",
            "flexray-settings": {
              "database-node": "Door",
              "transport-protocol-type": "autosar-3-x",
              "tester-pdus-phys": [
                "PDU_a",
                "PDU_b"
              ],
              "tester-pdus-func": [
                "PDU_c",
                "PDU_d",
                "PDU_e"
              ],
              "ecu-pdus": [
                "PDU_f"
              ]
            }
          }
        ]
      }
    },
    "b34bf": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Ethernet replay block",
        "description": "A replay block for the Ethernet protocol.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "file-path"
        ],
        "properties": {
          "name": {
            "$ref": "#/definitions/9a523/full",
            "description": "A unique name that can be used to reference this ethernet replay block in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
          },
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "$ref": "#/definitions/ac192/full"
          },
          "replay-on-measurement-start": {
            "description": "Replay starts with measurement start.",
            "oneOf": [
              {
                "type": "boolean",
                "default": true
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              true,
              false,
              "${variable}"
            ]
          },
          "send-system-variables": {
            "description": "Sends the system variable values.",
            "oneOf": [
              {
                "type": "boolean",
                "default": true
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              true,
              false,
              "${variable}"
            ]
          },
          "start-timing-condition": {
            "$ref": "#/definitions/548bf/full"
          },
          "channel-mapping": {
            "$ref": "#/definitions/eae4a/full"
          }
        },
        "examples": [
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf"
          },
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf",
            "when": "SCENARIO_NAME == \"MyScenario\""
          },
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf",
            "replay-on-measurement-start": true,
            "send-system-variables": false,
            "start-timing-condition": {
              "condition": "immediately"
            },
            "channel-mapping": {
              "default-mapping": "as-in-original"
            }
          }
        ]
      }
    },
    "cee65": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "FlexRay cluster",
        "description": "A cluster using the FlexRay protocol.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "database"
        ],
        "properties": {
          "name": {
            "$ref": "#/definitions/9a523/full",
            "description": "A unique name that can be used to reference this FlexRay cluster in the configuration file or in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
          },
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "database": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "Reference to a database declared in the configuration file."
          },
          "application-channel": {
            "description": "Index of the Application Channel. Each bus type should provide consecutive indices. Starts counting at 1. Value between 1 and 32. Value \"0\" is not allowed.",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 1,
                "maximum": 32,
                "default": 1
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "mapping": {
            "$ref": "#/definitions/eaf9e/full"
          },
          "key-slot-configuration": {
            "$ref": "#/definitions/f6a56/full"
          },
          "mode": {
            "oneOf": [
              {
                "enum": [
                  "synchronous",
                  "asynchronous",
                  "mixed"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "description": "The operation mode of VN Interface. \n\"synchronous\": In synchronous cc state frames can be sent and received. \n\"asynchronous\": In all bus phases frames and symbols can be received. Sending is not possible. \n\"mixed\": In asynchronous cc phase frames and symbols can be received. In synchronous cc state frames can can be sent and received.",
            "default": "mixed"
          },
          "automatic-restart": {
            "description": "Restart of the communication controller when synchronisation is lost.",
            "oneOf": [
              {
                "type": "boolean",
                "default": false
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "send-wakeup-pattern": {
            "description": "Send Wakeup Pattern at measurement start. If true database settings are used",
            "oneOf": [
              {
                "type": "boolean",
                "default": false
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          }
        },
        "examples": [
          {
            "name": "my_flexray_cluster",
            "database": "DB_1"
          },
          {
            "name": "my_flexray_cluster",
            "when": "SCENARIO_NAME == \"my_scenario_name\"",
            "database": "FR_DB"
          },
          {
            "name": "my_flexray_cluster",
            "database": "DB_1",
            "application-channel": 12,
            "mapping": "internal-simulator",
            "key-slot-configuration": {
              "slot-1": {
                "mode": "manual",
                "usage": "startup",
                "mask": "A",
                "slot": 1,
                "leading-cold-start": true
              },
              "slot-2": {
                "mode": "automatic"
              }
            }
          },
          {
            "name": "my_flexray_cluster",
            "database": "DB_1",
            "mode": "synchronous",
            "automatic-restart": true,
            "send-wakeup-pattern": true
          }
        ]
      }
    },
    "d6ec4": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Global settings for Ethernet",
        "description": "Global settings for Ethernet.",
        "type": "object",
        "properties": {
          "access-mode": {
            "description": "Mode of the underlying Ethernet bus. Classic approach is the \"channel-based\" setup. More recent and recommended mode is the switched \"network-based\" mode (port based).",
            "oneOf": [
              {
                "enum": [
                  "network-based",
                  "channel-based"
                ],
                "default": "network-based"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              "network-based",
              "channel-based"
            ]
          },
          "signal-updates": {
            "description": "Specifies how signals are updated on Network-based access. Will be ignored on channel-based setups. \"always\": events of all ports are used to update a signal without qualified Ethernet port. \"rx-only\": only packets received by the interface are used, which leads to less duplicated updates. \"never\": signals without qualified Ethernet ports are not updated.",
            "oneOf": [
              {
                "$ref": "#/definitions/779cd/full"
              },
              {
                "const": "always",
                "description": "Events of all ports are used to update a signal without qualified Ethernet port."
              },
              {
                "const": "rx-only",
                "description": "Only packets received by the interface are used, which leads to less duplicated updates."
              },
              {
                "const": "never",
                "description": "Signals without qualified Ethernet ports are not updated."
              }
            ],
            "default": "always",
            "examples": [
              "always",
              "rx-only",
              "never"
            ]
          },
          "global-tcp-ip-stack": {
            "$ref": "#/definitions/cb124/full"
          },
          "test-tcp-ip-stack": {
            "$ref": "#/definitions/7d4a0/full",
            "description": "Configuration for the test TCP/IP stack. If individual configuration a port labeled \"TestStack\" is created automatically."
          }
        },
        "additionalProperties": false,
        "examples": [
          {
            "access-mode": "network-based"
          },
          {
            "access-mode": "channel-based",
            "signal-updates": "always"
          },
          {
            "signal-updates": "rx-only"
          },
          {
            "signal-updates": "never"
          }
        ]
      }
    },
    "e1289": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Global settings for .NET",
        "description": "Global settings for .NET",
        "type": "object",
        "properties": {
          "database-namespace-generation": {
            "description": "This setting can be used to specify that certain namespaces should be generated for all .NET symbols (regardless of their uniqueness). The options \"use-node\" and \"use-frame\" are only relevant for signals. If no value is given, the namespaces for signals are automatically generated so that each class is unique. For each frame, a class is generated in the namespace \"NetworkDB.Frames\".",
            "type": "array",
            "minItems": 1,
            "items": {
              "oneOf": [
                {
                  "type": "string",
                  "enum": [
                    "use-network",
                    "use-database",
                    "use-frame",
                    "use-node"
                  ]
                },
                {
                  "$ref": "#/definitions/779cd/full"
                }
              ]
            },
            "examples": [
              [
                "use-network",
                "use-database",
                "use-frame",
                "use-node"
              ]
            ]
          },
          "target-version": {
            "description": "The .NET target version.",
            "default": "dotnet-8",
            "oneOf": [
              {
                "enum": [
                  "dotnet-8",
                  "dotnet-4.7"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              "dotnet-8",
              "dotnet-4.7",
              "${someVariable}"
            ]
          }
        },
        "additionalProperties": false,
        "examples": [
          {
            "database-namespace-generation": [
              "use-network",
              "${someVariable}"
            ]
          }
        ]
      }
    },
    "ebecf": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Global settings for the simulation working mode.",
        "description": "Global settings for the simulation working mode.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "time-scaling-factor": {
            "description": "This property is only evaluated if \"time-source\" is set to \"internal-scaled\". If a number is provided, the measurement is slowed-down by this factor. For scaling factors between zero and one, the simulation is accelerated accordingly. For example, if you enter the value 0.1 the measurement is accelerated by a factor of 10. \n\"as-fast-as-possible\": Run the simulation as fast as possible. The simulation speed is not constant and depends on the performance of the computer and the load that is provoked by the simulation.",
            "oneOf": [
              {
                "type": "number",
                "exclusiveMinimum": 0,
                "maximum": 1e+37,
                "multipleOf": 1e-6
              },
              {
                "const": "as-fast-as-possible"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "default": "as-fast-as-possible",
            "examples": [
              0.005,
              1,
              100,
              "as-fast-as-possible"
            ]
          },
          "time-source": {
            "description": "Time source for the simulation. \nIf this property is set, \"default-network-mapping\" is also required. \n\"internal-realtime\": The time response of the measurement (time basis) is controlled internally. \n\"internal-scaled\": The simulation speed is provided through the property \"time-scaling-factor\". \n\"external-software\": The time response of the measurement (time basis) is controlled by an external program which is not Vector SIL Kit. \n\"external-sil-kit\" : The time response of the measurement (time basis) is controlled by Vector SIL Kit. \n\"external-hardware\": The time response of the measurement (time basis) is controlled by external hardware.",
            "default": "internal-realtime",
            "oneOf": [
              {
                "enum": [
                  "internal-realtime",
                  "internal-scaled",
                  "external-software",
                  "external-sil-kit",
                  "external-hardware"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              "internal-realtime",
              "internal-scaled",
              "external-software",
              "external-sil-kit",
              "external-hardware"
            ]
          },
          "default-network-mapping": {
            "$ref": "#/definitions/83eeb/full",
            "description": "Defines the default network mapping to an underlying layer. \nConnects the networks either to simulated network (\"internal-simulator\"), hardware (\"external-hardware\") or to SIL Kit (\"external-sil-kit\"). \nThis value can be overwritten on network level. If \"time-source\" is set, this property is also required. \nThe supported options depend on the time-source. \n\"internal-realtime\", \"external-software\" and \"external-sil-kit\" are supporting \"internal-simulator\" and \"external-sil-kit\".\n\"internal-scaled\" only supports \"internal-simulator\".\n\"external-hardware\" supports all mappings."
          }
        },
        "allOf": [
          {
            "$comment": "prune-node-from-doc",
            "if": {
              "required": [
                "time-source"
              ],
              "properties": {
                "time-source": {
                  "const": "internal-scaled"
                }
              }
            },
            "then": {
              "required": [
                "default-network-mapping"
              ],
              "properties": {
                "time-scaling-factor": true,
                "default-network-mapping": {
                  "const": "internal-simulator"
                }
              }
            }
          },
          {
            "$comment": "prune-node-from-doc",
            "if": {
              "required": [
                "time-source"
              ],
              "properties": {
                "time-source": {
                  "enum": [
                    "internal-realtime",
                    "external-software"
                  ]
                }
              }
            },
            "then": {
              "required": [
                "default-network-mapping"
              ],
              "properties": {
                "time-scaling-factor": false,
                "default-network-mapping": {
                  "oneOf": [
                    {
                      "const": "internal-simulator"
                    },
                    {
                      "const": "external-sil-kit"
                    }
                  ]
                }
              }
            }
          }
        ],
        "examples": [
          {
            "time-source": "internal-realtime",
            "default-network-mapping": "internal-simulator"
          },
          {
            "time-source": "external-software",
            "default-network-mapping": "external-sil-kit"
          },
          {
            "time-source": "internal-scaled",
            "time-scaling-factor": "as-fast-as-possible",
            "default-network-mapping": "internal-simulator"
          },
          {
            "time-source": "internal-scaled",
            "time-scaling-factor": 0.01,
            "default-network-mapping": "internal-simulator"
          },
          {
            "time-source": "internal-scaled",
            "time-scaling-factor": 1,
            "default-network-mapping": "internal-simulator"
          },
          {
            "time-source": "external-sil-kit",
            "default-network-mapping": "external-sil-kit"
          }
        ]
      }
    },
    "ad583": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "array",
        "description": "List of event types to be logged.",
        "default": [
          "application-layer",
          "bus",
          "diagnostic",
          "internal",
          "statistic",
          "system-variable",
          "test",
          "trigger"
        ],
        "items": {
          "anyOf": [
            {
              "type": "string",
              "enum": [
                "application-layer",
                "bus",
                "diagnostic",
                "internal",
                "statistic",
                "system-variable",
                "test",
                "trigger"
              ]
            },
            {
              "$ref": "#/definitions/779cd/full"
            }
          ]
        }
      }
    },
    "adad4": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "oneOf": [
          {
            "$ref": "#/definitions/779cd/full"
          },
          {
            "$ref": "#/definitions/1030e/full"
          }
        ]
      }
    },
    "b8608": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Simulation Node",
        "description": "Represents a simulation node.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "network-assignments"
        ],
        "properties": {
          "name": {
            "$ref": "#/definitions/9a523/full",
            "description": "A unique name that can be used to reference this simulation node block in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
          },
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "$ref": "#/definitions/8722b/full"
          },
          "network-assignments": {
            "$ref": "#/definitions/dd8c7/full"
          },
          "defines": {
            "$ref": "#/definitions/4a339/full"
          },
          "database-node": {
            "description": "Assigns explicitly a database node to a simulation node. If not set, the simulation-node name will be used as database-node. To deactivate automatic assignment, it should be set to false.",
            "oneOf": [
              {
                "type": "boolean",
                "default": true
              },
              {
                "type": "string",
                "not": {
                  "$ref": "#/definitions/779cd/full"
                }
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              false,
              true,
              "aDatabaseNodeName",
              "${var_with_path}"
            ]
          },
          "modeling-libraries": {
            "type": "array",
            "items": {
              "$ref": "#/definitions/d2ba8/full"
            },
            "description": "A list of .vmodule modeling libraries to assign to the simulation node."
          },
          "tcp-ip-stack": {
            "$ref": "#/definitions/f1459/full",
            "description": "Simulation node configuration for the TCP/IP stack."
          }
        },
        "examples": [
          {
            "name": "mynode",
            "network-assignments": [
              {
                "network": "my_can_network_1"
              }
            ],
            "file-path": "path/to/my_capl_script.can",
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          },
          {
            "name": "mynode",
            "file-path": "path/to/my_dotnet.cs",
            "database-node": true,
            "network-assignments": [
              {
                "network": "my_can_network_1"
              }
            ],
            "defines": [
              "mydefine1",
              "mydefine2"
            ],
            "modeling-libraries": [
              "modeling/lib/1.vmodule",
              "${path_in_var}"
            ],
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          },
          {
            "name": "mynode",
            "file-path": "path/to/my_dotnet.cs",
            "database-node": false,
            "network-assignments": [
              {
                "network": "my_can_network_1"
              }
            ]
          },
          {
            "name": "otherNameThanInDb",
            "file-path": "path/to/my_dotnet.cs",
            "database-node": "nameFromDB",
            "network-assignments": [
              {
                "network": "my_can_network_1"
              }
            ]
          }
        ]
      }
    },
    "ecbde": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a VT System configuration file (.vtcfg). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[vV][tT][cC][fF][gG]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/my.vtcfg",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "eaf9e": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "$ref": "#/definitions/83eeb/full",
        "description": "Defines the mapping of the network to an underlying layer. \nConnects the network either to simulated network (\"internal-simulator\"), hardware (\"external-hardware\") or to SIL Kit (\"external-sil-kit\"). \nThe supported options depend on the time-source. \n\"internal-realtime\" and \"external-software\" are supporting \"internal-simulator\" and \"external-sil-kit\".\n\"internal-scaled\" only supports \"internal-simulator\".\n\"external-hardware\" supports all mappings."
      }
    },
    "efe85": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "CAN network settings",
        "description": "Settings for the CAN network.",
        "type": "object",
        "additionalProperties": false,
        "minProperties": 1,
        "properties": {
          "bit-rate-k-bit-s": {
            "description": "Bit rate of the CAN bus in kbit/s. \n If this value is set, it has priority. \n If this value is not set, the bit rate is read from the database. If it is missing from the database, the default value is used.",
            "oneOf": [
              {
                "type": "number",
                "minimum": 5.0,
                "maximum": 2000,
                "default": 500.0,
                "multipleOf": 0.001
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "sample-point-in-percent": {
            "$ref": "#/definitions/a2e72/full"
          }
        },
        "examples": [
          {
            "bit-rate-k-bit-s": 500.0
          },
          {
            "sample-point-in-percent": 70.0
          },
          {
            "bit-rate-k-bit-s": 500.0,
            "sample-point-in-percent": 70.0
          }
        ]
      }
    },
    "ac192": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a logging file (.blf). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[bB][lL][fF]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/my.blf",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "eae4a": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Channel mapping",
        "description": "The channel mapping for a replay block.",
        "type": "object",
        "additionalProperties": false,
        "required": [],
        "properties": {
          "default-mapping": {
            "description": "The default mapping of a channel if not explicitly mapped.",
            "oneOf": [
              {
                "const": "as-in-original",
                "description": "The channel is mapped to itself if there is an active network."
              },
              {
                "const": "ignore-all",
                "description": "The channels are ignored by default."
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "mappings": {
            "title": "Explicit mappings",
            "description": "The explicitly mapped channels. Overwrites the default mapping for the source.",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "title": "Map source channel",
                  "type": "object",
                  "description": "Mapping from application channel of the replay file to a target network.",
                  "additionalProperties": false,
                  "required": [
                    "source-channel",
                    "target-network"
                  ],
                  "properties": {
                    "source-channel": {
                      "$ref": "#/definitions/37aed/full",
                      "description": "The source application channel from the replayed file."
                    },
                    "target-network": {
                      "$ref": "#/definitions/8ab6a/full",
                      "description": "The target network name."
                    }
                  }
                },
                {
                  "title": "Map source network",
                  "type": "object",
                  "description": "Mapping from a named source network of the replay file to a named target network.",
                  "additionalProperties": false,
                  "required": [
                    "source-network",
                    "target-network"
                  ],
                  "properties": {
                    "source-network": {
                      "description": "The source network name. Only works if the replay file was created by CANoe and contains the relevant metadata.",
                      "type": "string"
                    },
                    "target-network": {
                      "$ref": "#/definitions/8ab6a/full",
                      "description": "The target network name."
                    }
                  }
                },
                {
                  "title": "Ignore source channel",
                  "type": "object",
                  "description": "Ignores an application channel of the replay file.",
                  "additionalProperties": false,
                  "required": [
                    "ignore-source-channel"
                  ],
                  "properties": {
                    "ignore-source-channel": {
                      "$ref": "#/definitions/37aed/full",
                      "description": "The ignored source channel."
                    }
                  }
                },
                {
                  "title": "Ignore source network",
                  "type": "object",
                  "description": "Ignores a named source network of the replay file.",
                  "additionalProperties": false,
                  "required": [
                    "ignore-source-network"
                  ],
                  "properties": {
                    "ignore-source-network": {
                      "description": "The ignored source network name. Only works if the replay file was created by CANoe and contains the relevant metadata.",
                      "type": "string"
                    }
                  }
                }
              ]
            }
          }
        },
        "examples": [
          {
            "default-mapping": "as-in-original"
          },
          {
            "default-mapping": "ignore-all",
            "mappings": [
              {
                "source-channel": 1,
                "target-network": "CAN1"
              }
            ]
          },
          {
            "default-mapping": "as-in-original",
            "mappings": [
              {
                "source-network": "CAN1",
                "target-network": "CAN2"
              }
            ]
          },
          {
            "default-mapping": "as-in-original",
            "mappings": [
              {
                "ignore-source-channel": 2
              },
              {
                "ignore-source-network": "CAN4"
              }
            ]
          }
        ]
      }
    },
    "ee012": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "A unique name that can be used to reference this database in the configuration file.\nMust be a C-identifier (case sensitive).",
        "type": "string",
        "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$",
        "examples": [
          "myid",
          "THIS_IS_CASE_SENSITIVE",
          "__1_2_3_4_5__"
        ]
      }
    },
    "b29db": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a .arxml/.dbc/.ldf. Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[Aa][Rr][Xx][Mm][Ll]$"
          },
          {
            "pattern": "^.*\\.[Dd][Bb][Cc]$"
          },
          {
            "pattern": "^.*\\.[Ll][Dd][Ff]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/some.dbc",
          "path/to/some.arxml",
          "path/to/some.ldf",
          "path/${var_with_name}",
          "${var_with_path}"
        ]
      }
    },
    "b0390": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "List of defines to be passed to the VCDL importer.",
        "type": "array",
        "items": {
          "anyOf": [
            {
              "$ref": "#/definitions/3e203/full"
            },
            {
              "$ref": "#/definitions/779cd/full"
            }
          ]
        },
        "examples": [
          [
            "mydefine1",
            "mydefine2"
          ],
          [
            "mydefine_with_value=42",
            "${var_with_define_name}=${var_with_define_value}"
          ]
        ]
      }
    },
    "e173a": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Define to be passed to CAPL, .NET, Python and VCDL.",
        "type": "string",
        "pattern": "^([a-zA-Z_]|([a-zA-Z_][a-zA-Z0-9_]*)?\\$\\{[a-zA-Z_][a-zA-Z0-9_]*\\})[a-zA-Z0-9_]*(=([+-]?(0|[1-9][0-9]*)|(\\$\\{[a-zA-Z_][a-zA-Z0-9_]*\\})|[Tt]rue|[Ff]alse))?$",
        "examples": [
          "mydefine1",
          "mydefine2",
          "mydefine_with_value=42",
          "${var_with_define_name}=${var_with_define_value}"
        ]
      }
    },
    "a855d": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "A diagnostic description file can contain several language versions of which one has to be selected. Note, that some diagnostic descriptions only support one single language.",
        "type": "string",
        "oneOf": [
          {
            "pattern": "^[a-z]{2}[-][A-Z]{2}$"
          },
          {
            "pattern": "^[a-z]{2}$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ]
      }
    },
    "e842d": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "The seed-and-key file is used to unlock the ECU from CAPL, test units and test modules.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[dD][lL][lL]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/library.dll",
          "path/${var_with_name}",
          "${var_with_path}"
        ]
      }
    },
    "deffc": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "FlexRay Settings",
        "description": "Settings related to diagnostics of FlexRay clusters.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "database-node"
        ],
        "properties": {
          "database-node": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "Database node selected for communication."
          },
          "transport-protocol-type": {
            "description": "The following protocol types can be selected:\n \"iso-10681-2\"\n \"autosar-2-x\"\n \"autosar-3-x\"",
            "default": "iso-10681-2",
            "oneOf": [
              {
                "type": "string"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "tester-pdus-phys": {
            "type": "array",
            "description": "List of appropriate PDUs from the database for requests and responses used by the diagnostic implementation. Only PDUs with service types \"TPL\", \"DIAG-REQUEST\", DIAG-RESPONSE\" or \"DIAG-STATE\" are available.",
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "$ref": "#/definitions/779cd/full"
                }
              ]
            }
          },
          "tester-pdus-func": {
            "type": "array",
            "description": "List of appropriate PDUs from the database for requests and responses used by the diagnostic implementation. Only PDUs with service types \"TPL\", \"DIAG-REQUEST\", DIAG-RESPONSE\" or \"DIAG-STATE\" are available.",
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "$ref": "#/definitions/779cd/full"
                }
              ]
            }
          },
          "ecu-pdus": {
            "type": "array",
            "description": "List of appropriate PDUs from the database for requests and responses used by the diagnostic implementation. Only PDUs with service types \"TPL\", \"DIAG-REQUEST\", DIAG-RESPONSE\" or \"DIAG-STATE\" are available.",
            "items": {
              "anyOf": [
                {
                  "type": "string"
                },
                {
                  "$ref": "#/definitions/779cd/full"
                }
              ]
            }
          }
        }
      }
    },
    "f6a56": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Via the key slot configuration it is possible to transmit two start-up/sync frames. Thus an external start-up node is not required for the start-up of a FlexRay cluster.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "slot-1": {
            "$ref": "#/definitions/d15ff/full"
          },
          "slot-2": {
            "$ref": "#/definitions/d15ff/full"
          }
        }
      }
    },
    "d35ea": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Channel mapping",
        "description": "The channel mapping for a FlexRay replay block.",
        "type": "object",
        "additionalProperties": false,
        "required": [],
        "properties": {
          "default-mapping": {
            "description": "The default mapping of a channel if not explicitly mapped.",
            "oneOf": [
              {
                "const": "as-in-original",
                "description": "All channels linked to the network this node is attached to are mapped."
              },
              {
                "const": "ignore-all",
                "description": "The channels are ignored by default."
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "mappings": {
            "title": "Explicit mappings",
            "description": "The explicitly mapped channels. Overwrites the default mapping for the source.",
            "type": "array",
            "items": {
              "anyOf": [
                {
                  "title": "Map source network",
                  "type": "object",
                  "description": "Mapping of a named source network from the replay file to the network this node is linked to.",
                  "additionalProperties": false,
                  "required": [
                    "source-network"
                  ],
                  "properties": {
                    "source-network": {
                      "description": "The source network name. Only works if the replay file was created by CANoe and contains the relevant metadata.",
                      "type": "string"
                    }
                  }
                },
                {
                  "title": "Map source channel",
                  "type": "object",
                  "description": "Mapping of an application channel from the replay file to the network this node is linked to.",
                  "additionalProperties": false,
                  "required": [
                    "source-channel"
                  ],
                  "properties": {
                    "source-channel": {
                      "$ref": "#/definitions/37aed/full",
                      "description": "The source application channel from the replayed file."
                    }
                  }
                }
              ]
            }
          }
        },
        "examples": [
          {
            "default-mapping": "as-in-original"
          },
          {
            "default-mapping": "ignore-all",
            "mappings": [
              {
                "source-channel": 1
              }
            ]
          },
          {
            "default-mapping": "as-in-original",
            "mappings": [
              {
                "source-network": "flexray2"
              },
              {
                "source-channel": 3
              }
            ]
          }
        ]
      }
    },
    "cb124": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Global configuration for the TCP/IP stack.",
        "anyOf": [
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "selected-stack"
            ],
            "properties": {
              "selected-stack": {
                "description": "If set to \"operating-system\", the machine configuration is used. If set to \"canoe\", a custom configuration can be provided, which can be configured at ethernet-networks[]/global-tcp-ip-stack-adapter.",
                "oneOf": [
                  {
                    "const": "operating-system",
                    "description": "If set to \"operating-system\", the machine configuration is used. Use \"canoe\" if settings should be provided manually."
                  }
                ],
                "default": "operating-system",
                "examples": [
                  "canoe",
                  "operating-system"
                ]
              }
            }
          },
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "selected-stack"
            ],
            "properties": {
              "selected-stack": {
                "description": "If set to \"operating-system\", the machine configuration is used. If set to \"canoe\", a custom configuration can be provided, which can be configured at ethernet-networks[]/global-tcp-ip-stack-adapter.",
                "oneOf": [
                  {
                    "const": "canoe",
                    "description": "If set to \"canoe\", a custom configuration can be provided (remove other elements for option \"operating-system\")."
                  },
                  {
                    "$ref": "#/definitions/779cd/full"
                  }
                ],
                "default": "operating-system",
                "examples": [
                  "canoe",
                  "operating-system"
                ]
              },
              "activate-routing": {
                "$ref": "#/definitions/698c3/full"
              },
              "tcp-delayed-ack": {
                "$ref": "#/definitions/6665e/full"
              },
              "ipv4-gateway": {
                "$ref": "#/definitions/d420a/full"
              },
              "ipv6-gateway": {
                "$ref": "#/definitions/ea3d5/full"
              }
            }
          }
        ],
        "examples": [
          {
            "selected-stack": "canoe",
            "activate-routing": true,
            "tcp-delayed-ack": true,
            "ipv4-gateway": "192.168.0.33",
            "ipv6-gateway": "::1"
          },
          {
            "selected-stack": "operating-system"
          }
        ]
      }
    },
    "de949": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a .vmodule. Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[vV][mM][oO][dD][uU][lL][eE]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/my.vmodule",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "d01ad": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Hybdrid Network Mapping",
        "description": "A mapping connecting a CANoe and a SIL Kit network of type CAN or Ethernet.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "network",
          "sil-kit-network"
        ],
        "properties": {
          "network": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "Name of a CAN or Ethernet network describing a CANoe network.\nMust be a C-identifier (case sensitive)."
          },
          "sil-kit-network": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "Name of a CAN or Ethernet network describing a SIL Kit network.\nMust be a C-identifier (case sensitive)."
          },
          "when": {
            "$ref": "#/definitions/24f1f/full"
          }
        },
        "examples": [
          {
            "network": "Ethernet1",
            "sil-kit-network": "Ethernet3"
          }
        ]
      }
    },
    "dd8c7": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "List of networks this node is assigned to.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/5daac/full"
        },
        "examples": [
          [
            {
              "network": "my_can_network_1"
            }
          ]
        ]
      }
    },
    "d2ba8": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a .vmodule file. Relative paths are resolved relative to the configuration file.\n If no modeling library is found in the working directory, it is searched in the global modeling libraries.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[vV][mM][oO][dD][uU][lL][eE]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "CANoeILNLVector.vmodule",
          "SomeIP_IL.vmodule",
          "AsrPDUIL2.vmodule",
          "OSEKNM01.vmodule",
          "DMOSEKNM.vmodule",
          "AsrNM30.vmodule",
          "AsrNM33.vmodule",
          "AsrUdpNm.vmodule",
          "AVB_IL.vmodule",
          "CANoeILNL_AUTOSAR_Eth.vmodule",
          "LINtp.vmodule",
          "SCC_ChargePoint.vmodule",
          "SCC_Monitor.vmodule",
          "SCC_Vehicle.vmodule",
          "path/to/my.vmodule",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "f1459": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "anyOf": [
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "selected-stack"
            ],
            "properties": {
              "selected-stack": {
                "description": "If a linked database contains a stack configuration, it is preferred over other configurations. If set to \"operating-system\", the machine configuration is used.\n If set to \"canoe\", the configuration on the global level is used (this requires global-settings/ethernet/tcp-ip-stack/selected-stack to be set to \"canoe\").\n If set to \"individual\", a custom configuration can be provided at network-assignments[]/tcp-ip-stack-adapter.",
                "enum": [
                  "operating-system",
                  "canoe"
                ],
                "default": "individual",
                "examples": [
                  "operating-system",
                  "canoe",
                  "individual"
                ]
              }
            }
          },
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "selected-stack"
            ],
            "properties": {
              "selected-stack": {
                "description": "If a linked database contains a stack configuration, it is preferred over other configurations. If set to \"operating-system\", the machine configuration is used.\n If set to \"canoe\", the configuration on the global level is used (this requires global-settings/ethernet/tcp-ip-stack/selected-stack to be set to \"canoe\").\n If set to \"individual\", a custom configuration can be provided at network-assignments[]/tcp-ip-stack-adapter.",
                "oneOf": [
                  {
                    "enum": [
                      "individual"
                    ]
                  },
                  {
                    "$ref": "#/definitions/779cd/full"
                  }
                ],
                "default": "individual",
                "examples": [
                  "operating-system",
                  "canoe",
                  "individual"
                ]
              },
              "activate-routing": {
                "$ref": "#/definitions/698c3/full"
              },
              "tcp-delayed-ack": {
                "$ref": "#/definitions/6665e/full"
              },
              "ipv4-gateway": {
                "$ref": "#/definitions/d420a/full"
              },
              "ipv6-gateway": {
                "$ref": "#/definitions/ea3d5/full"
              }
            }
          }
        ]
      }
    },
    "dfb26": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a symbol mapping file (.vmap). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[vV][mM][aA][pP]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/my.vmap",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "c49a5": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "integer",
        "minimum": -9223372036854775808,
        "maximum": 9223372036854775807
      }
    },
    "aa785": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "$comment": "can't use 18446744073709551615 since our validator uses int64",
        "type": "integer",
        "minimum": 0,
        "maximum": 9223372036854775807
      }
    },
    "f26f2": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "number",
        "minimum": -1.79769e+308,
        "maximum": 1.79769e+308
      }
    },
    "a2e72": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Sample point in percent.",
        "oneOf": [
          {
            "type": "number",
            "minimum": 50,
            "maximum": 100,
            "default": 70.0,
            "multipleOf": 0.01
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          60.15,
          75.0,
          "${some_variable}"
        ]
      }
    },
    "d3f0b": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a datasource file (.vcdl/.vcodm). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[vV][cC][dD][lL]$"
          },
          {
            "pattern": "^.*\\.[vV][cC][oO][dD][mM]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/my.vcdl",
          "path/to/my.vcodm",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "ca6a3": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "DoIP addressing",
        "description": "Addressing parameter in conformance with the DoIP protocol.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "logical-ecu-address-func": {
            "$ref": "#/definitions/37aed/full",
            "description": "Logical address of the ECU for functional diagnostic requests."
          },
          "logical-ecu-address-phys": {
            "$ref": "#/definitions/37aed/full",
            "description": "Logical address of the ECU for physical diagnostic requests."
          },
          "logical-tester-address": {
            "$ref": "#/definitions/37aed/full",
            "description": "Defines the tester address. Messages from the tester will contain this address as source address within the message header."
          },
          "logical-gateway-address": {
            "$ref": "#/definitions/37aed/full",
            "description": "The logical address of the DoIP gateway."
          }
        }
      }
    },
    "d9feb": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "MAC address of the current TCP/IP stack (cannot be a multicast address).",
        "type": "string",
        "oneOf": [
          {
            "pattern": "[0-9a-fA-F][02468aceACE](:[0-9a-fA-F]{2}){5}"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "02:84:cf:3b:be:01",
          "aa:bb:cc:dd:ee:ff",
          "AA:BB:CC:DD:EE:FF"
        ]
      }
    },
    "cb1c2": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Maximum Transmission Unit.",
        "oneOf": [
          {
            "type": "integer",
            "minimum": 1,
            "maximum": 1500
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "default": 1500
      }
    },
    "fcc29": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Configurations for IPv4.",
        "anyOf": [
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "address-configuration"
            ],
            "properties": {
              "name": {
                "$ref": "#/definitions/9a523/full",
                "description": "A unique name that can be used to reference this IPv4 setting in the configuration file.\nMust be a C-identifier (case sensitive)."
              },
              "address-configuration": {
                "description": "Defines how the addresses are configured. Use \"static\" to configure them manually with the \"addresses\" property, \"dhcp\" for automatic configuration or \"link-local\" to provide a link-local address according to RFC3927.",
                "examples": [
                  "dhcp",
                  "static",
                  "link-local"
                ],
                "oneOf": [
                  {
                    "enum": [
                      "dhcp",
                      "link-local"
                    ]
                  },
                  {
                    "$ref": "#/definitions/779cd/full"
                  }
                ]
              }
            }
          },
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "address-configuration",
              "addresses"
            ],
            "properties": {
              "addresses": {
                "$ref": "#/definitions/42a9b/full"
              },
              "name": {
                "$ref": "#/definitions/9a523/full",
                "description": "A unique name that can be used to reference this IPv4 setting in the configuration file.\nMust be a C-identifier (case sensitive)."
              },
              "address-configuration": {
                "description": "Defines how the addresses are configured. Use \"static\" to configure them manually with the \"addresses\" property, \"dhcp\" for automatic configuration or \"link-local\" to provide a link-local address according to RFC3927.",
                "oneOf": [
                  {
                    "const": "static"
                  },
                  {
                    "$ref": "#/definitions/779cd/full"
                  }
                ],
                "examples": [
                  "dhcp",
                  "static",
                  "link-local"
                ]
              }
            }
          }
        ],
        "examples": [
          {
            "address-configuration": "dhcp",
            "name": "refNameForDoIP"
          },
          {
            "address-configuration": "static",
            "addresses": [
              {
                "address": "192.168.0.2",
                "subnet-mask": "255.255.255.0"
              },
              {
                "address": "192.168.0.3",
                "subnet-prefix-length": 24
              }
            ]
          }
        ]
      }
    },
    "f34eb": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Configurations for IPv6.",
        "anyOf": [
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "address-configuration"
            ],
            "properties": {
              "name": {
                "$ref": "#/definitions/9a523/full",
                "description": "A unique name that can be used to reference this IPv6 setting in the configuration file.\nMust be a C-identifier (case sensitive)."
              },
              "address-configuration": {
                "description": "Defines how the addresses are configured. Use \"static\" to configure them manually with the \"addresses\" property or use \"dhcp\" for automatic configuration.",
                "examples": [
                  "dhcp",
                  "static"
                ],
                "oneOf": [
                  {
                    "const": "dhcp"
                  },
                  {
                    "$ref": "#/definitions/779cd/full"
                  }
                ]
              }
            }
          },
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "address-configuration",
              "addresses"
            ],
            "properties": {
              "addresses": {
                "$ref": "#/definitions/698d7/full"
              },
              "name": {
                "$ref": "#/definitions/9a523/full",
                "description": "A unique name that can be used to reference this IPv6 setting in the configuration file.\nMust be a C-identifier (case sensitive)."
              },
              "address-configuration": {
                "description": "Defines how the addresses are configured. Use \"static\" to configure them manually with the \"addresses\" property or use \"dhcp\" for automatic configuration.",
                "oneOf": [
                  {
                    "const": "static"
                  },
                  {
                    "$ref": "#/definitions/779cd/full"
                  }
                ],
                "examples": [
                  "dhcp",
                  "static"
                ]
              }
            }
          }
        ],
        "examples": [
          {
            "address-configuration": "dhcp",
            "name": "refNameForDoIP"
          },
          {
            "address-configuration": "static",
            "addresses": [
              {
                "address": "1234::abce",
                "subnet-prefix-length": 42
              },
              {
                "address": "1234::abcf",
                "subnet-prefix-length": 24
              }
            ]
          }
        ]
      }
    },
    "d15ff": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Configuration of a key slot node.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "mode"
        ],
        "properties": {
          "mode": {
            "description": "Key slot operating modes. \n\"automatic\": the key slot is possibly active. Any active frame in the Tx buffer will be selected for this key slot, if marked as start-up and/or sync frame. \n\"deactivated\": the key slot is not used. \n\"manual\": explicit definition of the key slot properties.  If set to \"manual\" the properties \"usage\", \"slot\", \"mask\" and \"leading-cold-start\" are mandatory.",
            "default": "automatic",
            "oneOf": [
              {
                "const": "automatic"
              },
              {
                "const": "deactivated"
              },
              {
                "const": "manual"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              "manual",
              "automatic"
            ]
          },
          "usage": {
            "oneOf": [
              {
                "enum": [
                  "startup",
                  "sync"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "description": "The frame in this slot can be send as start-up or only as sync frame. Only allowed if property \"mode\" is set to \"manual\".",
            "default": "startup"
          },
          "slot": {
            "oneOf": [
              {
                "type": "integer",
                "minimum": 1,
                "maximum": 2047,
                "default": 1
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "description": "Explicit slot number of the static segment that will be used as the key slot. Only allowed if property \"mode\" is set to \"manual\"."
          },
          "mask": {
            "oneOf": [
              {
                "enum": [
                  "A",
                  "B",
                  "AB"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "description": "Explicit channel mask used for the key slot. Only allowed if property \"mode\" is set to \"manual\".",
            "default": "A"
          },
          "leading-cold-start": {
            "oneOf": [
              {
                "type": "boolean"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "description": "If deactivated the key slot can only act as a following start-up or integrating sync frame. Only allowed if property \"mode\" is set to \"manual\".",
            "default": true
          }
        },
        "allOf": [
          {
            "$comment": "prune-node-from-doc",
            "if": {
              "required": [
                "mode"
              ],
              "properties": {
                "mode": {
                  "const": "manual"
                }
              }
            },
            "then": {
              "required": [
                "usage",
                "slot",
                "mask",
                "leading-cold-start"
              ],
              "properties": {
                "mask": true,
                "usage": true,
                "slot": true,
                "leading-cold-start": true
              }
            }
          },
          {
            "$comment": "prune-node-from-doc",
            "if": {
              "required": [
                "mode"
              ],
              "properties": {
                "mode": {
                  "anyOf": [
                    {
                      "const": "deactivated"
                    },
                    {
                      "const": "automatic"
                    }
                  ]
                }
              }
            },
            "then": {
              "properties": {
                "usage": false,
                "slot": false,
                "mask": false,
                "leading-cold-start": false
              }
            }
          }
        ],
        "examples": [
          {
            "mode": "automatic"
          },
          {
            "mode": "manual",
            "usage": "startup",
            "slot": 2,
            "mask": "A",
            "leading-cold-start": true
          }
        ]
      }
    },
    "d420a": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "IPv4-Address of the Gateway",
        "anyOf": [
          {
            "$ref": "#/definitions/779cd/full"
          },
          {
            "$ref": "#/definitions/6dbd8/full"
          }
        ],
        "default": "0.0.0.0"
      }
    },
    "ea3d5": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "IPv6-Address of the Gateway",
        "anyOf": [
          {
            "$ref": "#/definitions/779cd/full"
          },
          {
            "$ref": "#/definitions/47638/full"
          }
        ],
        "default": "::"
      }
    },
    "f3ec9": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "$ref": "#/definitions/47638/full",
        "description": "IPv6 address"
      }
    },
    "89005": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "venvironment schema",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "version"
        ],
        "properties": {
          "version": {
            "$ref": "#/definitions/92753/full"
          },
          "application-models": {
            "$ref": "#/definitions/bcf85/full"
          },
          "can-networks": {
            "$ref": "#/definitions/53f6a/full"
          },
          "can-replay-blocks": {
            "$ref": "#/definitions/da703/full"
          },
          "databases": {
            "$ref": "#/definitions/0e884/full"
          },
          "datasources": {
            "$ref": "#/definitions/96ca3/full"
          },
          "defines": {
            "$ref": "#/definitions/bf74a/full"
          },
          "diag-descriptions": {
            "$ref": "#/definitions/7ed2a/full"
          },
          "ethernet-networks": {
            "$ref": "#/definitions/23445/full"
          },
          "ethernet-replay-blocks": {
            "$ref": "#/definitions/68194/full"
          },
          "fdx": {
            "$ref": "#/definitions/59a17/full"
          },
          "flexray-clusters": {
            "$ref": "#/definitions/1f18c/full"
          },
          "flexray-replay-blocks": {
            "$ref": "#/definitions/9a697/full"
          },
          "functional-mockup-units": {
            "$ref": "#/definitions/85173/full"
          },
          "global-settings": {
            "$ref": "#/definitions/0e55f/full"
          },
          "includes": {
            "$ref": "#/definitions/8e88e/full"
          },
          "lin-networks": {
            "$ref": "#/definitions/18fc9/full"
          },
          "lin-replay-blocks": {
            "$ref": "#/definitions/c181d/full"
          },
          "logging": {
            "$ref": "#/definitions/8b644/full"
          },
          "programming-modules": {
            "$ref": "#/definitions/e46c0/full"
          },
          "scenarios": {
            "$ref": "#/definitions/72c68/full"
          },
          "security": {
            "$ref": "#/definitions/b1f68/full"
          },
          "sil-kit": {
            "$ref": "#/definitions/e7b50/full"
          },
          "simulation-nodes": {
            "$ref": "#/definitions/e721d/full"
          },
          "symbol-mappings": {
            "$ref": "#/definitions/0fe8c/full"
          },
          "system-variables": {
            "$ref": "#/definitions/c47fa/full"
          },
          "user-files": {
            "$ref": "#/definitions/f4ed6/full"
          },
          "variables": {
            "$ref": "#/definitions/6cf52/full"
          },
          "vio-system": {
            "$ref": "#/definitions/b3d04/full"
          },
          "vt-system": {
            "$ref": "#/definitions/5620d/full"
          },
          "xcp-configuration-files": {
            "$ref": "#/definitions/b18cf/full"
          },
          "xil": {
            "$ref": "#/definitions/b6ab2/full"
          }
        }
      }
    },
    "92753": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Version",
        "description": "Schema version for the venvironment.yaml configuration file. Acceptance criteria: equal major version, less/equal minor and patch version.",
        "const": "4.1.0",
        "type": "string",
        "examples": [
          "4.1.0"
        ]
      }
    },
    "53f6a": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "CAN and CAN FD Networks",
        "description": "List of CAN and CAN FD networks. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/2416f/full"
        },
        "examples": [
          [
            {
              "name": "my_can_network",
              "database": "DB_1",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ],
          [
            {
              "name": "my_canfd",
              "database": "DB_1",
              "mapping": "internal-simulator"
            }
          ],
          [
            {
              "name": "my_can_network",
              "database": "DB_1",
              "application-channel": 42,
              "mapping": "internal-simulator",
              "can-settings": {
                "bit-rate-k-bit-s": 500.0,
                "sample-point-in-percent": 75.0
              }
            }
          ],
          [
            {
              "name": "my_canfd",
              "database": "databaseName",
              "can-fd-settings": {
                "mode": "iso",
                "arbitration-bit-rate-k-bit-s": 500.0,
                "data-bit-rate-k-bit-s": 1000.0,
                "arbitration-sample-point-in-percent": 75.0,
                "data-sample-point-in-percent": 80.0
              }
            }
          ]
        ]
      }
    },
    "0e884": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Databases",
        "description": "List of databases. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/e7902/full"
        },
        "examples": [
          [
            {
              "name": "mydbname",
              "file-path": "path/to/some.dbc"
            }
          ],
          [
            {
              "name": "mydbname",
              "file-path": "path/to/some.dbc"
            },
            {
              "name": "mydbname",
              "file-path": "path/to/some.arxml",
              "network-name": "network_in_db"
            },
            {
              "name": "mydbname",
              "file-path": "path/to/some.dbc",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ]
        ]
      }
    },
    "96ca3": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Datasources",
        "description": "List of datasources. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/e1d24/full"
        },
        "examples": [
          [
            {
              "file-path": "path/to/my.vcdl"
            }
          ],
          [
            {
              "file-path": [
                "path/to/my.vcodm",
                "${path_in_variable}",
                "path/${name_in_variable}"
              ]
            }
          ],
          [
            {
              "file-path": "path/to/my.vcdl",
              "defines": [
                "A",
                "B=42"
              ],
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ]
        ]
      }
    },
    "7ed2a": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Diagnostic description",
        "description": "Diagnostic description with CDD.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/c3be2/full"
        },
        "examples": [
          [
            {
              "name": "DoorFL",
              "file-path": "description.cdd",
              "interface": "Normal_29BitBase_Variant",
              "variant": "Common",
              "network-assignment": "can_network"
            },
            {
              "name": "DoorFL",
              "when": "SCENARIO_NAME == \"MyScenario\"",
              "file-path": "description.cdd",
              "interface": "Normal_29BitBase_Variant",
              "variant": "Common",
              "network-assignment": "can_network"
            }
          ]
        ]
      }
    },
    "23445": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "CAN Networks",
        "description": "List of Ethernet networks. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/3db18/full"
        },
        "examples": [
          [
            {
              "name": "my_eth_network"
            }
          ],
          [
            {
              "name": "my_eth_network",
              "database": "DB",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ],
          [
            {
              "name": "my_eth_network",
              "mapping": "internal-simulator",
              "global-tcp-ip-stack-adapter": {
                "mtu": 1500,
                "ipv4-settings": {
                  "address-configuration": "static",
                  "addresses": [
                    {
                      "address": "192.168.0.1",
                      "subnet-mask": "255.255.0.0"
                    }
                  ]
                },
                "ipv6-settings": {
                  "address-configuration": "dhcp"
                },
                "vlans": [
                  {
                    "id": 42,
                    "priority": 0
                  }
                ]
              }
            }
          ],
          [
            {
              "name": "my_eth_network",
              "database": "DB",
              "measurement-ports": [
                "port1",
                "port2"
              ]
            }
          ]
        ]
      }
    },
    "68194": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Ethernet Replay Blocks",
        "description": "List of Ethernet replay blocks. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/b34bf/full"
        },
        "examples": [
          [
            {
              "name": "my_ethernet_replay_block",
              "file-path": "my_logging_file.blf"
            }
          ],
          [
            {
              "name": "my_ethernet_replay_block",
              "file-path": "my_logging_file.blf",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            },
            {
              "name": "my_ethernet_replay_block",
              "file-path": "another_logging_file.blf",
              "when": "SCENARIO_NAME == \"another_scenario_name\""
            }
          ],
          [
            {
              "name": "ReplayBlock",
              "file-path": "MyLoggingFile.blf",
              "replay-on-measurement-start": true,
              "send-system-variables": false,
              "start-timing-condition": {
                "condition": "immediately"
              },
              "channel-mapping": {
                "default-mapping": "as-in-original"
              }
            }
          ]
        ]
      }
    },
    "59a17": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "FDX",
        "description": "FDX settings. Entry can be deactivated with when.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "transport-layer",
          "port"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "transport-layer": {
            "description": "Protocol to be used as transport layer for the FDX protocol",
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "udp/ipv4",
                  "udp/ipv6",
                  "tcp/ipv4",
                  "tcp/ipv6"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "port": {
            "description": "UDP or TCP port to be used for the FDX protocol",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 65535
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "description-files": {
            "description": "List of FDX description files (.xml) that describe which signals or variables are to be exchanged and the manner in which this is to occur (e.g., with regard to grouping).",
            "type": "array",
            "items": {
              "type": "object",
              "additionalProperties": false,
              "required": [
                "file-path"
              ],
              "properties": {
                "when": {
                  "$ref": "#/definitions/24f1f/full"
                },
                "file-path": {
                  "$ref": "#/definitions/4c810/full"
                }
              }
            }
          }
        },
        "examples": [
          {
            "transport-layer": "udp/ipv4",
            "port": 2809
          },
          {
            "transport-layer": "tcp/ipv4",
            "port": 1859,
            "when": "SCENARIO_NAME == \"MyScenario\""
          },
          {
            "transport-layer": "tcp/ipv6",
            "port": 5555,
            "description-files": [
              {
                "file-path": "path/to/first.xml"
              },
              {
                "file-path": "path/to/second.xml"
              }
            ]
          }
        ]
      }
    },
    "1f18c": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "FlexRay Clusters",
        "description": "List of FlexRay clusters. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/cee65/full"
        },
        "examples": [
          [
            {
              "name": "my_flexray_cluster",
              "database": "DB_1",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ],
          [
            {
              "name": "my_flexray_cluster",
              "database": "DB_1",
              "key-slot-configuration": {
                "slot-1": {
                  "mode": "manual",
                  "usage": "startup",
                  "mask": "A",
                  "slot": 1,
                  "leading-cold-start": true
                },
                "slot-2": {
                  "mode": "automatic"
                }
              },
              "mapping": "internal-simulator"
            }
          ],
          [
            {
              "name": "my_flexray_cluster",
              "database": "DB_1",
              "mode": "synchronous",
              "automatic-restart": true,
              "send-wakeup-pattern": true
            }
          ]
        ]
      }
    },
    "9a697": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "FlexRay Replay Blocks",
        "description": "List of FlexRay replay blocks. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/4ffdc/full"
        },
        "examples": [
          [
            {
              "name": "my_flexray_replay_block",
              "file-path": "my_logging_file.blf",
              "network": "frCluster"
            }
          ],
          [
            {
              "name": "my_flexray_replay_block",
              "file-path": "my_logging_file.blf",
              "when": "SCENARIO_NAME == \"my_scenario_name\"",
              "network": "frCluster"
            },
            {
              "name": "my_flexray_replay_block",
              "file-path": "another_logging_file.blf",
              "when": "SCENARIO_NAME == \"another_scenario_name\"",
              "network": "frCluster"
            }
          ]
        ]
      }
    },
    "85173": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Functional mockup units",
        "description": "List of functional mockup units. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/25adc/full"
        },
        "examples": [
          [
            {
              "file-path": "path/to/some.fmu",
              "stepsize-in-sec": 0.00001
            }
          ],
          [
            {
              "file-path": "path/to/some.fmu",
              "stepsize-in-sec": 2.0,
              "debug-output": true,
              "when": "SCENARIO_NAME == \"MyScenario\"",
              "inactive-model-variables": [
                "Variable3"
              ]
            }
          ],
          [
            {
              "file-path": "path/to/some.fmu",
              "stepsize-in-sec": 100.0,
              "debug-output": false,
              "active-model-variables": [
                "Variable1",
                "Variable2"
              ]
            }
          ]
        ]
      }
    },
    "0e55f": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Global Settings",
        "description": "Global settings for all scenarios.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "ethernet": {
            "$ref": "#/definitions/d6ec4/full"
          },
          "flexray": {
            "$ref": "#/definitions/29784/full"
          },
          "database": {
            "$ref": "#/definitions/9b9c0/full"
          },
          "dotnet": {
            "$ref": "#/definitions/e1289/full"
          },
          "working-mode": {
            "$ref": "#/definitions/ebecf/full"
          },
          "python": {
            "$ref": "#/definitions/7f875/full"
          }
        },
        "examples": [
          {
            "ethernet": {
              "access-mode": "channel-based",
              "signal-updates": "always",
              "global-tcp-ip-stack": {
                "selected-stack": "canoe",
                "activate-routing": true,
                "tcp-delayed-ack": true,
                "ipv4-gateway": "192.168.0.33",
                "ipv6-gateway": "::"
              },
              "test-tcp-ip-stack": {
                "selected-stack": "individual"
              }
            }
          },
          {
            "flexray": {
              "enable-dual-channel-support": false,
              "postfixes-for-ambiguous-pdus-on-channel": "no-postfixes"
            }
          },
          {
            "database": {
              "autosar-pdu-layer": "no-pdus",
              "autosar-text-table-entries": "short-label",
              "some-ip-pdus-without-service-context": "generate-service",
              "use-application-layer-objects": [
                "ethernet"
              ]
            }
          },
          {
            "working-mode": {
              "time-source": "${source}",
              "default-network-mapping": "${mapping}"
            }
          },
          {
            "working-mode": {
              "time-source": "internal-realtime",
              "default-network-mapping": "internal-simulator"
            }
          },
          {
            "working-mode": {
              "time-source": "external-software",
              "default-network-mapping": "internal-simulator"
            }
          },
          {
            "working-mode": {
              "time-source": "external-sil-kit",
              "default-network-mapping": "external-sil-kit"
            }
          },
          {
            "working-mode": {
              "time-source": "internal-scaled",
              "time-scaling-factor": "as-fast-as-possible",
              "default-network-mapping": "internal-simulator"
            }
          },
          {
            "working-mode": {
              "time-source": "internal-scaled",
              "time-scaling-factor": 0.01,
              "default-network-mapping": "internal-simulator"
            }
          },
          {
            "working-mode": {
              "time-source": "internal-scaled",
              "time-scaling-factor": 1,
              "default-network-mapping": "internal-simulator"
            }
          },
          {
            "dotnet": {
              "target-version": "dotnet-8",
              "database-namespace-generation": [
                "use-network",
                "${someVariable}"
              ]
            }
          },
          {
            "python": {
              "interpreter": "3.10.0"
            }
          }
        ]
      }
    },
    "4f043": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "$ref": "#/definitions/6dbd8/full",
        "description": "IPv4 address"
      }
    },
    "18fc9": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "LIN Networks",
        "description": "List of LIN networks. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/207cb/full"
        },
        "examples": [
          [
            {
              "name": "my_lin_network"
            }
          ],
          [
            {
              "name": "my_lin_network",
              "database": "DB_1",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ],
          [
            {
              "name": "my_lin_network",
              "database": "DB_1",
              "application-channel": 42,
              "mapping": "internal-simulator",
              "mode": "responder"
            }
          ]
        ]
      }
    },
    "8b644": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Logging Block",
        "description": "Configuration of the logging.",
        "oneOf": [
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "file-name"
            ],
            "properties": {
              "file-name": {
                "$ref": "#/definitions/53b00/full"
              },
              "when": {
                "$ref": "#/definitions/24f1f/full"
              },
              "logging-events": {
                "$ref": "#/definitions/ad583/full"
              },
              "advanced": {
                "$ref": "#/definitions/34a76/full"
              }
            }
          },
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "file-name",
              "toggle-trigger"
            ],
            "properties": {
              "file-name": {
                "$ref": "#/definitions/53b00/full"
              },
              "when": {
                "$ref": "#/definitions/24f1f/full"
              },
              "logging-events": {
                "$ref": "#/definitions/ad583/full"
              },
              "advanced": {
                "$ref": "#/definitions/34a76/full"
              },
              "toggle-trigger": {
                "$ref": "#/definitions/8cc99/full"
              }
            }
          },
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "file-name",
              "test-trigger"
            ],
            "properties": {
              "file-name": {
                "$ref": "#/definitions/53b00/full"
              },
              "when": {
                "$ref": "#/definitions/24f1f/full"
              },
              "logging-events": {
                "$ref": "#/definitions/ad583/full"
              },
              "advanced": {
                "$ref": "#/definitions/34a76/full"
              },
              "test-trigger": {
                "$ref": "#/definitions/0a579/full"
              }
            }
          }
        ],
        "examples": [
          {
            "file-name": "file-name.blf",
            "logging-events": [
              "bus",
              "diagnostic",
              "internal",
              "${someVariable}"
            ],
            "advanced": {
              "warn-overwritten-log-file": true,
              "show-error-on-data-loss": false
            }
          },
          {
            "file-name": "log_{IncTrigger|001}.blf",
            "test-trigger": {
              "scope": "test-unit",
              "verdict": [
                "fail",
                "error-in-test-system"
              ],
              "pre-trigger-time-ms": 1000,
              "post-trigger-time-ms": 1000,
              "buffer-size": 5000
            }
          },
          {
            "file-name": "log_{TriggerCondition}_{LocalTime}.blf",
            "toggle-trigger": {
              "pre-trigger-time-ms": 1000,
              "post-trigger-time-ms": 1000,
              "buffer-size": 5000
            }
          }
        ]
      }
    },
    "72c68": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Scenarios",
        "description": "List of scenarios with the option to define or override variables and defines.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/51ba8/full"
        },
        "examples": [
          [
            {
              "name": "my_scenario_name"
            }
          ],
          [
            {
              "name": "my_scenario_name"
            },
            {
              "name": "override_variables",
              "variables": [
                {
                  "name": "three",
                  "value": 3
                }
              ]
            },
            {
              "name": "override_defines",
              "defines": [
                "mydefine",
                "mydevine_with_value=42"
              ]
            }
          ],
          [
            {
              "name": "internal",
              "variables": [
                {
                  "name": "source",
                  "value": "internal-realtime"
                },
                {
                  "name": "mapping",
                  "value": "internal-simulator"
                }
              ]
            },
            {
              "name": "externalHardware",
              "variables": [
                {
                  "name": "source",
                  "value": "external-hardware"
                },
                {
                  "name": "mapping",
                  "value": "external-hardware"
                }
              ]
            },
            {
              "name": "externalSoftware",
              "variables": [
                {
                  "name": "source",
                  "value": "external-software"
                },
                {
                  "name": "mapping",
                  "value": "external-sil-kit"
                }
              ]
            }
          ]
        ]
      }
    },
    "0fe8c": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Symbol mappings",
        "description": "List of symbol mapping files. Please ensure that the mappings are valid for the environment. No symbol validation will be performed. Entries can be deactivated with when.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/72fc8/full"
        },
        "examples": [
          [
            {
              "file-path": "path/to/my.vmap"
            }
          ],
          [
            {
              "file-path": [
                "${path_in_variable}",
                "path/${name_in_variable}"
              ]
            },
            {
              "file-path": "path/to/my.vmap",
              "when": "SCENARIO_NAME == \"my_scenario_name\""
            }
          ]
        ]
      }
    },
    "6cf52": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Variables",
        "description": "List of variables to be used in this configuration file.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/9d153/full"
        },
        "examples": [
          [
            {
              "name": "var",
              "value": -42
            }
          ],
          [
            {
              "name": "my_string",
              "value": "implicit-type"
            },
            {
              "name": "var",
              "value": 422200000000.0,
              "type": "float"
            },
            {
              "name": "path_var",
              "value": "path/to/somewhere",
              "type": "path"
            },
            {
              "name": "uint_enum",
              "value": 43,
              "type": "uint",
              "options": [
                1,
                43,
                127
              ]
            }
          ]
        ]
      }
    },
    "5620d": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "VT System",
        "description": "VT System settings. Entry can be deactivated with when.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "file-path",
          "module-description-folder"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "$ref": "#/definitions/ecbde/full"
          },
          "module-description-folder": {
            "description": "Absolute or relative path to the folder containing the VT System module description files. Relative path specifications are resolved relative to the configuration file.",
            "anyOf": [
              {
                "type": "string"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              "path/to/folder/",
              "${folder_path_in_variable}",
              "path/${folder_name_in_variable}"
            ]
          }
        },
        "examples": [
          {
            "file-path": "path/to/config-file.vtcfg",
            "module-description-folder": "path/to/moduledescriptions/"
          },
          {
            "file-path": "${path_in_variable}",
            "module-description-folder": "path/to/moduledescriptions/",
            "when": "SCENARIO_NAME = \"my_scenario_name\""
          }
        ]
      }
    },
    "18095": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Application Model",
        "description": "Describes an application model (.can/.canencr/.cs/.sln/.py/.vmodule/.dll (dotnet assembly)). Also supports local defines.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "file-path"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "$ref": "#/definitions/925c3/full"
          },
          "defines": {
            "$ref": "#/definitions/4a339/full"
          }
        },
        "examples": [
          {
            "file-path": "path/to/my/file.can",
            "defines": [
              "mydefine1",
              "mydefine=2"
            ]
          },
          {
            "file-path": "path/to/my/file.can",
            "defines": [
              "mydefine1",
              "mydefine=2"
            ],
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          }
        ]
      }
    },
    "2416f": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "CAN or CAN FD network",
        "description": "A network using the CAN or CAN FD protocol.",
        "oneOf": [
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "name",
              "database"
            ],
            "properties": {
              "name": {
                "$ref": "#/definitions/9a523/full",
                "description": "A unique name that can be used to reference this CAN/CAN FD network in the configuration file or in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
              },
              "when": {
                "$ref": "#/definitions/24f1f/full"
              },
              "database": {
                "$ref": "#/definitions/8ab6a/full",
                "description": "Reference to a database declared in the configuration file."
              },
              "mapping": {
                "$ref": "#/definitions/eaf9e/full"
              },
              "application-channel": {
                "description": "Index of the application channel. Each bus type should provide consecutive indices. Starts counting at 1. Value between 1 and 255. Value \"0\" is not allowed.",
                "oneOf": [
                  {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 255,
                    "default": 1
                  },
                  {
                    "$ref": "#/definitions/779cd/full"
                  }
                ]
              }
            }
          },
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "name",
              "database",
              "can-settings"
            ],
            "properties": {
              "name": {
                "$ref": "#/definitions/9a523/full",
                "description": "A unique name that can be used to reference this CAN/CAN FD network in the configuration file or in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
              },
              "when": {
                "$ref": "#/definitions/24f1f/full"
              },
              "database": {
                "$ref": "#/definitions/8ab6a/full",
                "description": "Reference to a database declared in the configuration file."
              },
              "mapping": {
                "$ref": "#/definitions/eaf9e/full"
              },
              "application-channel": {
                "description": "Index of the application channel. Each bus type should provide consecutive indices. Starts counting at 1. Value between 1 and 255. Value \"0\" is not allowed.",
                "oneOf": [
                  {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 255,
                    "default": 1
                  },
                  {
                    "$ref": "#/definitions/779cd/full"
                  }
                ]
              },
              "can-settings": {
                "$ref": "#/definitions/efe85/full"
              }
            }
          },
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "name",
              "database",
              "can-fd-settings"
            ],
            "properties": {
              "name": {
                "$ref": "#/definitions/9a523/full",
                "description": "A unique name that can be used to reference this CAN/CAN FD network in the configuration file or in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
              },
              "when": {
                "$ref": "#/definitions/24f1f/full"
              },
              "database": {
                "$ref": "#/definitions/8ab6a/full",
                "description": "Reference to a database declared in the configuration file."
              },
              "mapping": {
                "$ref": "#/definitions/eaf9e/full"
              },
              "application-channel": {
                "description": "Index of the application channel. Each bus type should provide consecutive indices. Starts counting at 1. Value between 1 and 255. Value \"0\" is not allowed.",
                "oneOf": [
                  {
                    "type": "integer",
                    "minimum": 1,
                    "maximum": 255,
                    "default": 1
                  },
                  {
                    "$ref": "#/definitions/779cd/full"
                  }
                ]
              },
              "can-fd-settings": {
                "$ref": "#/definitions/7c619/full"
              }
            }
          }
        ],
        "examples": [
          {
            "name": "my_can_network",
            "database": "databaseName"
          },
          {
            "name": "my_can_network",
            "database": "databaseName",
            "can-settings": {
              "bit-rate-k-bit-s": 500.0,
              "sample-point-in-percent": 70.0
            }
          },
          {
            "name": "my_canfd",
            "database": "databaseName",
            "can-fd-settings": {
              "mode": "iso",
              "arbitration-bit-rate-k-bit-s": 500.0,
              "data-bit-rate-k-bit-s": 1000.0,
              "arbitration-sample-point-in-percent": 75.0,
              "data-sample-point-in-percent": 80.0
            }
          },
          {
            "name": "my_can_network",
            "database": "databaseName",
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          }
        ]
      }
    },
    "689c5": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Define",
        "description": "Defines to be passed to CAPL, .NET, Python and VCDL.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "define"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "define": {
            "anyOf": [
              {
                "$ref": "#/definitions/e173a/full"
              },
              {
                "$ref": "#/definitions/4a339/full"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          }
        },
        "examples": [
          {
            "define": "mydefine1"
          },
          {
            "define": [
              "mydefine1",
              "mydefine2"
            ]
          },
          {
            "define": [
              "mydefine1",
              "mydefine2"
            ],
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          },
          {
            "define": [
              "mydefine_with_value=42",
              "${var_with_define_name}=${var_with_define_value}"
            ]
          }
        ]
      }
    },
    "3db18": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Ethernet network",
        "description": "A network using the Ethernet protocol.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "$ref": "#/definitions/9a523/full",
            "description": "A unique name that can be used to reference this ethernet network in the configuration file or in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
          },
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "database": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "Reference to a database declared in the configuration file."
          },
          "global-tcp-ip-stack-adapter": {
            "$ref": "#/definitions/75a70/full",
            "description": "Address configuration for the global TCP/IP stack. This setting is relevant if global-settings/ethernet/global-tcp-ip-stack/selected-stack is set to \"canoe\"."
          },
          "test-tcp-ip-stack-adapter": {
            "$ref": "#/definitions/75a70/full",
            "description": "Address configuration for the test TCP/IP stack. This setting is relevant if global-settings/ethernet/test-tcp-ip-stack/selected-stack is set to \"individual\"."
          },
          "mapping": {
            "$ref": "#/definitions/eaf9e/full"
          },
          "application-channel": {
            "description": "Index of the application channel. Each bus type should provide consecutive indices. Starts counting at 1. Value between 1 and 32. Value \"0\" is not allowed.",
            "oneOf": [
              {
                "$ref": "#/definitions/779cd/full"
              },
              {
                "type": "integer",
                "minimum": 1,
                "maximum": 32
              }
            ]
          },
          "measurement-ports": {
            "description": "A List of measurement ports whose data you want to measure (e.g. for logging).",
            "type": "array",
            "items": {
              "type": "string",
              "oneOf": [
                {
                  "pattern": "^[a-zA-Z][a-zA-Z0-9_]*$"
                },
                {
                  "pattern": "^([a-zA-Z][a-zA-Z0-9_]*)?\\$\\{[a-zA-Z_][a-zA-Z0-9_]*\\}[a-zA-Z0-9_]*$"
                }
              ],
              "examples": [
                "Port1",
                "Port2",
                "${var_with_port}"
              ]
            }
          }
        },
        "examples": [
          {
            "name": "my_eth_network"
          },
          {
            "name": "my_eth_network",
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          },
          {
            "name": "my_eth_network",
            "database": "DB",
            "application-channel": 12,
            "global-tcp-ip-stack-adapter": {
              "mac-address": "02:84:cf:3b:be:01"
            },
            "test-tcp-ip-stack-adapter": {
              "mtu": 1200,
              "mac-address": "02:84:cf:3b:be:01"
            },
            "mapping": "external-sil-kit"
          },
          {
            "name": "my_eth_network",
            "database": "DB",
            "application-channel": 12,
            "mapping": "internal-simulator",
            "global-tcp-ip-stack-adapter": {
              "mtu": 1500,
              "ipv4-settings": {
                "address-configuration": "static",
                "addresses": [
                  {
                    "address": "192.168.0.1",
                    "subnet-mask": "255.255.0.0"
                  }
                ]
              },
              "ipv6-settings": {
                "address-configuration": "dhcp"
              },
              "vlans": [
                {
                  "id": 42,
                  "priority": 0
                }
              ]
            }
          }
        ]
      }
    },
    "24f1f": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Node is added to the environment only if the specified condition is true.",
        "oneOf": [
          {
            "$comment": "impossible to express this grammar as a regex",
            "description": "A condition containing logical operators (e.g., ` (intvar > 0 && boolvar) || strvar != \"setup_a\"`). Variables do not have to be escaped. The additional variable \"SCENARIO_NAME\" always contains the current scenario name.",
            "type": "string"
          },
          {
            "description": "A boolean constant.",
            "type": "boolean"
          }
        ],
        "examples": [
          "SCENARIO_NAME == \"my_scenario_name\"",
          "some_variable == \"somevalue\"",
          "some_int_variable > 42 && some_other_int_variable <= 42",
          true
        ]
      }
    },
    "779cd": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "string",
        "pattern": "\\$\\{[a-zA-Z_][a-zA-Z0-9_]*\\}",
        "examples": [
          "${myvarname}"
        ]
      }
    },
    "4c810": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a FDX description file (.xml). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[xX][mM][lL]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/myDescriptionFile.xml",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "4ffdc": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "FlexRay replay block",
        "description": "A replay block for the FlexRay protocol.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "file-path",
          "network"
        ],
        "properties": {
          "name": {
            "$ref": "#/definitions/9a523/full",
            "description": "A unique name that can be used to reference this FlexRay replay block in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
          },
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "$ref": "#/definitions/ac192/full"
          },
          "network": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "Name of the FlexRay cluster, this replay node is attached to."
          },
          "replay-on-measurement-start": {
            "description": "Replay starts with measurement start.",
            "oneOf": [
              {
                "type": "boolean",
                "default": true
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              true,
              false,
              "${variable}"
            ]
          },
          "channel-mapping": {
            "$ref": "#/definitions/d35ea/full"
          },
          "replay-nodes": {
            "description": "List of nodes, whose transmitted messages should be replayed from the logging file. If not set, all are active by default.",
            "default": [],
            "type": "array",
            "items": {
              "$ref": "#/definitions/8ab6a/full"
            }
          }
        },
        "examples": [
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf",
            "network": "flexRay1"
          },
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf",
            "network": "flexRay1",
            "when": "SCENARIO_NAME == \"MyScenario\""
          },
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf",
            "network": "flexRay1",
            "replay-on-measurement-start": true,
            "channel-mapping": {
              "default-mapping": "as-in-original"
            },
            "replay-nodes": [
              "ECU1",
              "ECU2"
            ]
          },
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf",
            "network": "flexRay1",
            "channel-mapping": {
              "default-mapping": "ignore-all",
              "mappings": [
                {
                  "source-network": "flexray2"
                }
              ]
            }
          }
        ]
      }
    },
    "815f9": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "integer",
        "minimum": 0,
        "maximum": 9223372036854775807
      }
    },
    "29784": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Global settings for FlexRay",
        "description": "Global settings for FlexRay controlling the interpretation of frames and PDUs of FlexRay configurations with channels A and B.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "enable-dual-channel-support": {
            "description": "If active, PDUs on both channels will be configured with channel mask \"AB\" and channel postfixes (e.g. xy_Ch_A, xy_Ch_B) will be created for ambiguous objects. If this property is provided \"postfixes-for-ambiguous-pdus-on-channel\" is forbidden.",
            "oneOf": [
              {
                "$ref": "#/definitions/779cd/full"
              },
              {
                "type": "boolean"
              }
            ],
            "default": true
          },
          "postfixes-for-ambiguous-pdus-on-channel": {
            "description": "Definition of postfix settings if dual channel support is not activated. If this property is provided \"enable-dual-channel-support\" is forbidden.",
            "oneOf": [
              {
                "enum": [
                  "A",
                  "B",
                  "A&B",
                  "no-postfixes"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "default": "A&B"
          }
        },
        "allOf": [
          {
            "$comment": "prune-node-from-doc",
            "if": {
              "required": [
                "enable-dual-channel-support"
              ],
              "properties": {
                "enable-dual-channel-support": {
                  "const": true
                }
              }
            },
            "then": {
              "properties": {
                "postfixes-for-ambiguous-pdus-on-channel": false
              }
            }
          },
          {
            "$comment": "prune-node-from-doc",
            "if": {
              "required": [
                "enable-dual-channel-support"
              ],
              "properties": {
                "enable-dual-channel-support": {
                  "const": false
                }
              }
            },
            "then": {
              "required": [
                "postfixes-for-ambiguous-pdus-on-channel"
              ],
              "properties": {
                "postfixes-for-ambiguous-pdus-on-channel": true
              }
            }
          }
        ],
        "examples": [
          {
            "enable-dual-channel-support": true
          },
          {
            "enable-dual-channel-support": false,
            "postfixes-for-ambiguous-pdus-on-channel": "no-postfixes"
          }
        ]
      }
    },
    "9b9c0": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Global settings for database",
        "description": "Global settings for database.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "autosar-pdu-layer": {
            "default": "from-autosar-4.2",
            "description": "Configures the PDU layer in relation to AUTOSAR databases.\n\"no-pdus\" : Creation of frames only \n\"from-autosar-4.0\" : Creation of AUTOSAR PDUs for AUTOSAR DBs >= 4.0 \n\"from-autosar-4.2\" : Creation of AUTOSAR PDUs for AUTOSAR DBs >= 4.2 ",
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "no-pdus",
                  "from-autosar-4.0",
                  "from-autosar-4.2"
                ],
                "examples": [
                  "no-pdus",
                  "from-autosar-4.0",
                  "from-autosar-4.2"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "autosar-text-table-entries": {
            "description": "Controls naming of text table entries and influences signal qualification.\n\"compu-const\": uses text from COMPU-CONST nodes.\n \"short-label\": uses text from SHORT-LABEL nodes.",
            "default": "compu-const",
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "compu-const",
                  "short-label"
                ],
                "examples": [
                  "compu-const",
                  "short-label"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "some-ip-pdus-without-service-context": {
            "description": "Controls the generation of services for SOME/IP PDUs without service context.",
            "default": "ignore",
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "ignore",
                  "generate-service"
                ],
                "examples": [
                  "ignore",
                  "generate-service"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "use-application-layer-objects": {
            "description": "Generates application layer objects for the specified network types.",
            "type": "array",
            "default": [
              "ethernet"
            ],
            "minItems": 0,
            "items": {
              "oneOf": [
                {
                  "type": "string",
                  "enum": [
                    "ethernet"
                  ]
                },
                {
                  "$ref": "#/definitions/779cd/full"
                }
              ]
            },
            "examples": [
              [
                "ethernet"
              ],
              [
                "${my_variable}"
              ]
            ]
          },
          "split-overlapping-nm-flexray-frames": {
            "description": "If active, FlexRay network management frames whose slot cycles overlap are split into several frames. If necessary, new frames/PDUs are created and optimally distributed to the free slot cycles found in the schedule table.",
            "oneOf": [
              {
                "$ref": "#/definitions/779cd/full"
              },
              {
                "type": "boolean"
              }
            ],
            "default": true
          }
        },
        "examples": [
          {
            "autosar-pdu-layer": "no-pdus"
          },
          {
            "autosar-text-table-entries": "compu-const"
          },
          {
            "some-ip-pdus-without-service-context": "generate-service"
          },
          {
            "use-application-layer-objects": [
              "ethernet"
            ]
          },
          {
            "autosar-pdu-layer": "no-pdus",
            "autosar-text-table-entries": "short-label",
            "some-ip-pdus-without-service-context": "generate-service",
            "use-application-layer-objects": [
              "ethernet"
            ]
          },
          {
            "split-overlapping-nm-flexray-frames": false
          }
        ]
      }
    },
    "7f875": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Global settings for Python",
        "description": "Global settings for Python",
        "type": "object",
        "properties": {
          "interpreter": {
            "description": "The Python interpreter version. If no interpreter is specified, one is selected automatically. Version greater than or equal to 3.10.0 are supported.",
            "anyOf": [
              {
                "$ref": "#/definitions/779cd/full"
              },
              {
                "type": "string",
                "pattern": "^(3)\\.([1-9][0-9]{1,3})\\.([0-9]{1,4})$"
              }
            ],
            "examples": [
              "3.10.0",
              "3.11.0",
              "3.12.0",
              "3.13.0"
            ]
          }
        },
        "additionalProperties": false,
        "examples": [
          {
            "interpreter": "3.10.0"
          }
        ]
      }
    },
    "207cb": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "LIN network",
        "description": "A network using the LIN protocol.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "$ref": "#/definitions/9a523/full",
            "description": "A unique name that can be used to reference this LIN network in the configuration file or in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
          },
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "database": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "Reference to a database declared in the configuration file."
          },
          "application-channel": {
            "description": "Index of the application channel. Each bus type should provide consecutive indices. Starts counting at 1. Value between 1 and 255. Value \"0\" is not allowed.",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 1,
                "maximum": 255,
                "default": 1
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "mapping": {
            "$ref": "#/definitions/eaf9e/full"
          },
          "mode": {
            "description": "Working mode of the LIN interface.\n \"commander\": the LIN network interface is able to output message headers on the network.\n\"responder\": the LIN network interface responds to received LIN headers if a response to the LIN ID contained within the header has been configured.\n \"commander-no-resistor\": commander but with disabled resistor.",
            "oneOf": [
              {
                "enum": [
                  "commander",
                  "responder",
                  "commander-no-resistor"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "default": "commander",
            "examples": [
              "commander",
              "responder",
              "commander-no-resistor"
            ]
          }
        },
        "examples": [
          {
            "name": "my_lin_network"
          },
          {
            "name": "my_lin_network",
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          },
          {
            "name": "my_lin_network",
            "database": "DB_1",
            "application-channel": 42,
            "mapping": "internal-simulator",
            "mode": "responder"
          }
        ]
      }
    },
    "34c1f": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "LIN replay block",
        "description": "A replay block for the LIN protocol.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name",
          "file-path"
        ],
        "properties": {
          "name": {
            "$ref": "#/definitions/9a523/full",
            "description": "A unique name that can be used to reference this LIN replay block in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
          },
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "$ref": "#/definitions/ac192/full"
          },
          "replay-on-measurement-start": {
            "description": "Replay starts with measurement start.",
            "oneOf": [
              {
                "type": "boolean",
                "default": true
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              true,
              false,
              "${variable}"
            ]
          },
          "send-system-variables": {
            "description": "Sends the system variable values.",
            "oneOf": [
              {
                "type": "boolean",
                "default": true
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              true,
              false,
              "${variable}"
            ]
          },
          "start-timing-condition": {
            "$ref": "#/definitions/548bf/full"
          },
          "channel-mapping": {
            "$ref": "#/definitions/eae4a/full"
          },
          "replay-mode": {
            "description": "Selects events to be replayed. \n\"all-responses\": replay all the responses.\n\"master-responses-only\": replay the responses only for frames published by the Master node.\n\"master-requests-only\": replay only 0x3c responses.\n\"no-headers\": disable replay of the LIN frame headers.",
            "default": "all-responses",
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "all-responses",
                  "master-responses-only",
                  "master-requests-only",
                  "no-headers"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "send-events": {
            "description": "Selects which events from \"rx-responses\", \"tx-responses\" and \"wakeup-signals\" are replayed. If not set, the default value depends on the value of replay-mode.\n For \"all-responses\" or \"master-responses-only\": all events are sent.\n For \"master-requests-only\": only wakeup-events are sent.\n For \"no-headers\": none of the events are sent.",
            "oneOf": [
              {
                "type": "array",
                "items": {
                  "anyOf": [
                    {
                      "type": "string",
                      "enum": [
                        "tx-responses",
                        "rx-responses",
                        "wakeup-signals"
                      ]
                    },
                    {
                      "$ref": "#/definitions/779cd/full"
                    }
                  ]
                }
              }
            ]
          }
        },
        "examples": [
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf"
          },
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf",
            "when": "SCENARIO_NAME == \"MyScenario\""
          },
          {
            "name": "ReplayBlock",
            "file-path": "MyLoggingFile.blf",
            "replay-on-measurement-start": true,
            "send-system-variables": false,
            "start-timing-condition": {
              "condition": "immediately"
            },
            "channel-mapping": {
              "default-mapping": "as-in-original"
            },
            "replay-mode": "master-responses-only",
            "send-events": [
              "tx-responses",
              "rx-responses",
              "wakeup-signals"
            ]
          }
        ]
      }
    },
    "53b00": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Name of a .blf file, supporting the field codes: {ComputerName}, {LocalTime}, {MeasurementIndex}, {MeasurementStart}, {IncSize|001|100MB}, {IncTime|001|01h00m}, {IncTrigger|001}, {TriggerCondition} and {IncTrigger|001}_{TriggerCondition}",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^(?!.*(\\{LoggingBlock\\}|\\{IncMeasurement\\}|\\{ConfigName\\}|[\"<>*?:/\\\\])).*\\.[bB][lL][fF]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "fileName.blf",
          "file_${SCENARIO_NAME}.blf",
          "${name_in_variable}",
          "log_{ComputerName}.blf",
          "log_{LocalTime}.blf",
          "log_{MeasurementIndex}.blf",
          "log_{MeasurementStart}.blf",
          "log_{IncTrigger|001}.blf",
          "log_{TriggerCondition}.blf"
        ]
      }
    },
    "34a76": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Advanced logging configurations.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "warn-overwritten-log-file": {
            "description": "Specifies whether a warning is shown at the start of measurement before overwriting an existing logging file.",
            "oneOf": [
              {
                "type": "boolean"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "default": true
          },
          "show-error-on-data-loss": {
            "description": "Specifies whether an error is shown after the measurement if data loss occurred during the measurement. Lines in the logging file marked with a * as a special symbol have corrupted lines around them.",
            "oneOf": [
              {
                "type": "boolean"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "default": true
          }
        },
        "examples": [
          {
            "warn-overwritten-log-file": false,
            "show-error-on-data-loss": true
          },
          {
            "warn-overwritten-log-file": true
          }
        ]
      }
    },
    "8cc99": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Toggle trigger settings. The user can control the start and stop of logging. For example via CAPL.\n Must not be used together with \"test-trigger\".",
        "type": "object",
        "additionalProperties": false,
        "minProperties": 1,
        "properties": {
          "pre-trigger-time-ms": {
            "description": "Time before triggering that should also be logged.",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 21000000,
                "default": 0
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "post-trigger-time-ms": {
            "description": "Time after the triggered stopped that should also be logged.",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 21000000,
                "default": 0
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "buffer-size": {
            "description": "Event buffer size for events pre-trigger-time-ms",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 1,
                "maximum": 2097152,
                "default": 5000
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          }
        },
        "examples": [
          {
            "pre-trigger-time-ms": 100
          },
          {
            "pre-trigger-time-ms": 1000,
            "post-trigger-time-ms": 1000,
            "buffer-size": 5000
          }
        ]
      }
    },
    "0a579": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Test trigger settings. The execution period of test elements controls the start and stop of logging.",
        "type": "object",
        "required": [
          "scope"
        ],
        "additionalProperties": false,
        "properties": {
          "scope": {
            "description": "Scope of the test trigger, for each a logging file is created.",
            "oneOf": [
              {
                "enum": [
                  "test-unit",
                  "test-implementation-entity",
                  "test-case"
                ]
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": [
              "test-unit",
              "test-implementation-entity",
              "test-case"
            ]
          },
          "verdict": {
            "type": "array",
            "description": "List of test verdicts for which logging files will remain stored.",
            "default": [
              "none",
              "pass",
              "inconclusive",
              "fail",
              "error-in-test-system"
            ],
            "items": {
              "anyOf": [
                {
                  "type": "string",
                  "enum": [
                    "none",
                    "pass",
                    "inconclusive",
                    "fail",
                    "error-in-test-system"
                  ]
                },
                {
                  "$ref": "#/definitions/779cd/full"
                }
              ]
            },
            "examples": [
              [
                "none"
              ],
              [
                "pass"
              ],
              [
                "inconclusive"
              ],
              [
                "fail"
              ],
              [
                "error-in-test-system"
              ]
            ]
          },
          "pre-trigger-time-ms": {
            "description": "Time before triggering that should also be logged.",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 21000000,
                "default": 0
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ],
            "examples": []
          },
          "post-trigger-time-ms": {
            "description": "Time after the triggered stopped that should also be logged.",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 0,
                "maximum": 21000000,
                "default": 0
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "buffer-size": {
            "description": "Event buffer size for events pre-trigger-time-ms",
            "oneOf": [
              {
                "type": "integer",
                "minimum": 1,
                "maximum": 2097152,
                "default": 5000
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          }
        },
        "examples": [
          {
            "scope": "test-unit",
            "verdict": [
              "none",
              "pass",
              "inconclusive",
              "fail",
              "error-in-test-system"
            ]
          },
          {
            "scope": "test-unit",
            "verdict": [
              "fail",
              "error-in-test-system"
            ],
            "pre-trigger-time-ms": 1000,
            "post-trigger-time-ms": 1000,
            "buffer-size": 5000
          }
        ]
      }
    },
    "17563": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Programming modules",
        "description": "Describes a CAPL or C library (.vmodule).",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "capl-library-path": {
            "description": "Absolute or relative path to a CAPL library (.vmodule). Relative path specifications are resolved relative to the configuration file.",
            "oneOf": [
              {
                "$ref": "#/definitions/de949/full"
              },
              {
                "type": "array",
                "items": {
                  "$ref": "#/definitions/de949/full"
                }
              }
            ]
          },
          "c-library-path": {
            "description": "Absolute or relative path to a C-library (.vmodule). Relative path specifications are resolved relative to the configuration file.",
            "oneOf": [
              {
                "$ref": "#/definitions/de949/full"
              },
              {
                "type": "array",
                "items": {
                  "$ref": "#/definitions/de949/full"
                }
              }
            ]
          }
        }
      }
    },
    "51ba8": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Scenario",
        "description": "A scenario with the option to define or override variables and defines.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "name"
        ],
        "properties": {
          "name": {
            "description": "Name of the scenario",
            "type": "string",
            "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$",
            "not": {
              "const": "Default"
            }
          },
          "variables": {
            "$ref": "#/definitions/6cf52/full"
          },
          "defines": {
            "$ref": "#/definitions/4a339/full"
          }
        },
        "examples": [
          {
            "name": "my_scenario_name"
          },
          {
            "name": "override_variables",
            "variables": [
              {
                "name": "three",
                "value": 3
              }
            ]
          },
          {
            "name": "override_defines",
            "defines": [
              "mydefine",
              "mydevine_with_value=42"
            ]
          }
        ]
      }
    },
    "469f5": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Network Security Profile Assignments",
        "description": "List with security profile to network assignments. The security profile is used for SecOC, Diagnostics and Backend Access.",
        "type": "array",
        "items": {
          "title": "Network Security Profile Assignment",
          "type": "object",
          "description": "Assignment of a security profile to a network.",
          "additionalProperties": false,
          "required": [
            "network",
            "profile-id"
          ],
          "properties": {
            "network": {
              "$ref": "#/definitions/8ab6a/full",
              "description": "The name of the network to which the security profile shall be assigned."
            },
            "profile-id": {
              "$ref": "#/definitions/adad4/full",
              "description": "The ID of the assigned security profile."
            },
            "when": {
              "$ref": "#/definitions/24f1f/full"
            }
          }
        },
        "examples": [
          [
            {
              "network": "CAN1",
              "profile-id": 123456
            },
            {
              "network": "CAN2",
              "profile-id": 654321
            }
          ],
          [
            {
              "network": "CAN",
              "profile-id": "${SECURITY_PROFILE_ID}"
            }
          ],
          [
            {
              "network": "CAN",
              "profile-id": 123456,
              "when": "SCENARIO_NAME == \"MyScenarioWithEnabledSecurity\""
            }
          ]
        ]
      }
    },
    "6fca5": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema",
        "title": "Ethernet Stack Security Profile Assignments",
        "description": "List with security profile to Ethernet stack assignments. The security profile is used for TLS and IPSec.",
        "type": "array",
        "items": {
          "title": "Ethernet Stack Security Profile Assignment",
          "type": "object",
          "description": "Assignment of a security profile to an Ethernet stack.",
          "additionalProperties": false,
          "required": [
            "simulation-node",
            "profile-id"
          ],
          "properties": {
            "simulation-node": {
              "$ref": "#/definitions/8ab6a/full",
              "description": "The name of the simulation node. The security profile will be assigned to the Ethernet stack of the simulation node."
            },
            "profile-id": {
              "$ref": "#/definitions/adad4/full",
              "description": "The ID of the assigned security profile."
            },
            "when": {
              "$ref": "#/definitions/24f1f/full"
            }
          }
        },
        "examples": [
          [
            {
              "simulation-node": "MySimulationNode",
              "profile-id": 123456
            },
            {
              "simulation-node": "AnotherSimulationNode",
              "profile-id": 654321
            }
          ],
          [
            {
              "simulation-node": "MySimulationNode",
              "profile-id": "${SECURITY_PROFILE_ID}"
            }
          ],
          [
            {
              "simulation-node": "MySimulationNode",
              "profile-id": 123456,
              "when": "SCENARIO_NAME == \"MyScenarioWithEnabledSecurity\""
            }
          ]
        ]
      }
    },
    "9796e": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Hybdrid Network Mappings",
        "description": "Mappings connecting CANoe and SIL Kit networks of type CAN or Ethernet.",
        "type": "array",
        "items": {
          "$ref": "#/definitions/d01ad/full"
        },
        "examples": [
          [
            {
              "network": "Ethernet1",
              "sil-kit-network": "Ethernet3"
            }
          ],
          [
            {
              "network": "canA",
              "sil-kit-network": "canB"
            }
          ]
        ]
      }
    },
    "89e83": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a SIL Kit config file (.yaml/.json). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[yY][aA][mM][lL]$"
          },
          {
            "pattern": "^.*\\.[jJ][sS][oO][nN]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/myConfigFile.json",
          "path/to/myConfigFile.yaml",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "72fc8": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "System variables",
        "description": "Describes a symbol mapping file (.vmap). Please ensure that the mappings are valid for the environment. No symbol validation will be performed.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "file-path"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "oneOf": [
              {
                "$ref": "#/definitions/dfb26/full"
              },
              {
                "type": "array",
                "items": {
                  "$ref": "#/definitions/dfb26/full"
                }
              }
            ]
          }
        },
        "examples": [
          {
            "file-path": "path/to/my.vmap"
          },
          {
            "file-path": [
              "${path_in_variable}",
              "path/${name_in_variable}"
            ]
          },
          {
            "file-path": "path/to/my.vmap",
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          }
        ]
      }
    },
    "8b228": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "System variables",
        "description": "Describes a system variable file (.vsysvar/.xml).",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "file-path"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "oneOf": [
              {
                "$ref": "#/definitions/16f8a/full"
              },
              {
                "type": "array",
                "items": {
                  "$ref": "#/definitions/16f8a/full"
                }
              }
            ]
          }
        },
        "examples": [
          {
            "file-path": "path/to/my.vsysvar"
          },
          {
            "file-path": "path/to/my.xml"
          },
          {
            "file-path": [
              "${path_in_variable}",
              "path/${name_in_variable}"
            ]
          },
          {
            "file-path": "path/to/my.vsysvar",
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          }
        ]
      }
    },
    "9541b": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "User files",
        "description": "Describes a user file that can be read/written by CAPL/.NET scripts.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "file-path"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "description": "Absolute or relative path to a user file. Relative path specifications are resolved relative to the configuration file.",
            "oneOf": [
              {
                "type": "string",
                "examples": [
                  "path/to/my.txt",
                  "${path_in_variable}",
                  "path/${name_in_variable}"
                ]
              },
              {
                "type": "array",
                "items": {
                  "type": "string"
                },
                "examples": [
                  [
                    "path/to/my.txt"
                  ],
                  [
                    "${path_in_variable}",
                    "path/${name_in_variable}"
                  ]
                ]
              }
            ]
          }
        },
        "examples": [
          {
            "file-path": "path/to/my.txt"
          },
          {
            "file-path": [
              "${path_in_variable}",
              "path/${name_in_variable}"
            ]
          },
          {
            "file-path": "path/to/my_file.ini",
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          }
        ]
      }
    },
    "47638": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "string",
        "oneOf": [
          {
            "pattern": "^([0-9A-Fa-f]{1,4}(:[0-9A-Fa-f]{1,4}){7}|:(:[0-9A-Fa-f]{1,4}){1,7}|([0-9A-Fa-f]{1,4}:){1,7}:|::|([0-9A-Fa-f]{1,4}:){1}(:[0-9A-Fa-f]{1,4}){1,6}|([0-9A-Fa-f]{1,4}:){2}(:[0-9A-Fa-f]{1,4}){1,5}|([0-9A-Fa-f]{1,4}:){3}(:[0-9A-Fa-f]{1,4}){1,4}|([0-9A-Fa-f]{1,4}:){4}(:[0-9A-Fa-f]{1,4}){1,3}|([0-9A-Fa-f]{1,4}:){5}(:[0-9A-Fa-f]{1,4}){1,2}|([0-9A-Fa-f]{1,4}:){6}(:[0-9A-Fa-f]{1,4}){1})$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "1234:0000:0000:0000:0000:0000:0000:abcd",
          "1234::abcd",
          "::"
        ]
      }
    },
    "0d74c": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a VIO System configuration file (.viocfg). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[vV][iI][oO][cC][fF][gG]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/my.viocfg",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "2b57a": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "XCP files",
        "description": "Describes a XCP configuration file (.xcp.yaml/.xcpcfg).",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "file-path"
        ],
        "properties": {
          "when": {
            "$ref": "#/definitions/24f1f/full"
          },
          "file-path": {
            "oneOf": [
              {
                "$ref": "#/definitions/011dc/full"
              },
              {
                "type": "array",
                "items": {
                  "$ref": "#/definitions/011dc/full"
                }
              }
            ]
          }
        },
        "examples": [
          {
            "file-path": "path/to/my.xcpcfg"
          },
          {
            "file-path": [
              "${path_in_variable}",
              "path/${name_in_variable}"
            ]
          },
          {
            "file-path": "path/to/my.xcpcfg",
            "when": "SCENARIO_NAME == \"my_scenario_name\""
          }
        ]
      }
    },
    "925c3": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to an application model (.can/.canencr/.cs/.sln/.py/.vmodule/.dll (dotnet assembly)). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[Cc][Ss]$"
          },
          {
            "pattern": "^.*\\.[Pp][Yy]$"
          },
          {
            "pattern": "^.*\\.[Ss][Ll][Nn]$"
          },
          {
            "pattern": "^.*\\.[Cc][Aa][Nn]$"
          },
          {
            "pattern": "^.*\\.[Cc][Aa][Nn][Ee][Nn][Cc][Rr]$"
          },
          {
            "pattern": "^.*\\.[vV][mM][oO][dD][uU][lL][eE]$"
          },
          {
            "pattern": "^.*\\.[dD][lL][lL]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "my_dotnet.cs",
          "my_python.py",
          "my_visual_studio.sln",
          "my_capl_file.can",
          "my_encrypted_capl_file.canencr",
          "my_module.vmodule",
          "my_dotnet.dll",
          "${some_variable}"
        ]
      }
    },
    "4a339": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "List of defines to be passed to CAPL, .NET, Python and VCDL.",
        "type": "array",
        "items": {
          "anyOf": [
            {
              "$ref": "#/definitions/e173a/full"
            },
            {
              "$ref": "#/definitions/779cd/full"
            }
          ]
        },
        "examples": [
          [
            "mydefine1",
            "mydefine2"
          ],
          [
            "mydefine_with_value=42",
            "${var_with_define_name}=${var_with_define_value}"
          ]
        ]
      }
    },
    "9a523": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "string",
        "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$",
        "examples": [
          "myid",
          "THIS_IS_CASE_SENSITIVE",
          "__1_2_3_4_5__"
        ]
      }
    },
    "8ab6a": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "string",
        "oneOf": [
          {
            "pattern": "^[a-zA-Z_][a-zA-Z0-9_]*$"
          },
          {
            "pattern": "^([a-zA-Z_][a-zA-Z0-9_]*)?\\$\\{[a-zA-Z_][a-zA-Z0-9_]*\\}[a-zA-Z0-9_]*$"
          }
        ],
        "examples": [
          "myid",
          "THIS_IS_CASE_SENSITIVE",
          "__1_2_3_4_5__",
          "${id_in_variable}"
        ]
      }
    },
    "7c619": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "CAN FD network settings",
        "description": "Settings for the CAN FD network.",
        "type": "object",
        "additionalProperties": false,
        "minProperties": 1,
        "properties": {
          "mode": {
            "description": "Operation mode setting (iso or non-iso mode).",
            "oneOf": [
              {
                "type": "string",
                "enum": [
                  "iso",
                  "non-iso"
                ],
                "default": "iso"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "arbitration-bit-rate-k-bit-s": {
            "description": "Bit rate for the CAN FD arbitration phase in kbit/s. \n If this value is set, it has priority. \n If this value is not set, the arbitration bit rate is read from the database. If it is missing from the database, the default value is used.",
            "oneOf": [
              {
                "type": "number",
                "minimum": 5.0,
                "maximum": 2000,
                "default": 500.0,
                "multipleOf": 0.001
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "data-bit-rate-k-bit-s": {
            "description": "Bit rate for the CAN FD data phase in kbit/s. \n If this value is set, it has priority. \n If this value is not set, the data bit rate is read from the database. If it is missing from the database, the default value is used.",
            "oneOf": [
              {
                "type": "number",
                "minimum": 5.0,
                "maximum": 10000,
                "default": 1000.0,
                "multipleOf": 0.001
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "arbitration-sample-point-in-percent": {
            "$ref": "#/definitions/a2e72/full"
          },
          "data-sample-point-in-percent": {
            "$ref": "#/definitions/a2e72/full"
          }
        },
        "oneOf": [
          {
            "required": [
              "arbitration-sample-point-in-percent",
              "data-sample-point-in-percent",
              "arbitration-bit-rate-k-bit-s",
              "data-bit-rate-k-bit-s"
            ],
            "properties": {
              "arbitration-sample-point-in-percent": true,
              "data-sample-point-in-percent": true,
              "arbitration-bit-rate-k-bit-s": true,
              "data-bit-rate-k-bit-s": true
            }
          },
          {
            "required": [
              "arbitration-sample-point-in-percent",
              "data-sample-point-in-percent"
            ],
            "properties": {
              "arbitration-sample-point-in-percent": true,
              "data-sample-point-in-percent": true,
              "arbitration-bit-rate-k-bit-s": false,
              "data-bit-rate-k-bit-s": false
            }
          },
          {
            "required": [
              "arbitration-bit-rate-k-bit-s",
              "data-bit-rate-k-bit-s"
            ],
            "properties": {
              "arbitration-sample-point-in-percent": false,
              "data-sample-point-in-percent": false,
              "arbitration-bit-rate-k-bit-s": true,
              "data-bit-rate-k-bit-s": true
            }
          },
          {
            "properties": {
              "arbitration-sample-point-in-percent": false,
              "data-sample-point-in-percent": false,
              "arbitration-bit-rate-k-bit-s": false,
              "data-bit-rate-k-bit-s": false
            }
          }
        ],
        "examples": [
          {
            "arbitration-bit-rate-k-bit-s": 500.0,
            "data-bit-rate-k-bit-s": 1000.0
          },
          {
            "mode": "non-iso",
            "arbitration-sample-point-in-percent": 60.0,
            "data-sample-point-in-percent": 70.0
          },
          {
            "mode": "iso",
            "arbitration-bit-rate-k-bit-s": 500.0,
            "data-bit-rate-k-bit-s": 1000.0,
            "arbitration-sample-point-in-percent": 75.0,
            "data-sample-point-in-percent": 80.0
          }
        ]
      }
    },
    "548bf": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Timing conditions",
        "description": "Timing conditions for a replay block.",
        "type": "object",
        "additionalProperties": false,
        "required": [],
        "properties": {
          "condition": {
            "description": "The condition when the replay shall start.",
            "oneOf": [
              {
                "const": "immediately",
                "description": "The first event of the replayed file occurs with measurement start."
              },
              {
                "const": "first-event-time",
                "description": "The original timestamp of the replayed file is used."
              },
              {
                "const": "delayed",
                "description": "The first event is delayed. Can be configured by the \"delayed-ms\" element."
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "delay-ms": {
            "$ref": "#/definitions/230ce/full",
            "description": "The delay in ms if the condition \"delayed\" is selected. No effect otherwise."
          }
        },
        "examples": [
          {
            "condition": "immediately"
          },
          {
            "condition": "first-event-time"
          },
          {
            "condition": "delayed",
            "delay-ms": 1000
          },
          {
            "condition": "${variable}"
          }
        ]
      }
    },
    "66d5a": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "oneOf": [
          {
            "$ref": "#/definitions/d3f0b/full"
          },
          {
            "type": "array",
            "items": {
              "$ref": "#/definitions/d3f0b/full"
            },
            "examples": [
              [
                "path/to/my.vcdl"
              ],
              [
                "path/to/my.vcodm"
              ],
              [
                "path/to/my.vcdl",
                "path/to/my.vcodm",
                "${path_in_variable}",
                "path/${name_in_variable}"
              ]
            ]
          }
        ],
        "examples": [
          "path/to/my.vcdl",
          [
            "path/to/my.vcodm"
          ],
          [
            "path/to/my.vcdl",
            "path/to/my.vcodm",
            "${path_in_variable}",
            "path/${name_in_variable}"
          ]
        ]
      }
    },
    "09693": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "$ref": "#/definitions/8ab6a/full",
        "description": "If a diagnostic description file contains more than one ECU definition, the ECU identifier selects the one to utilize. Note that this setting is optional for diagnostic description files containing only one ECU definition."
      }
    },
    "775d7": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a diagnostic description file (.cdd/.mdx/.pdx). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[cC][dD][dD]$"
          },
          {
            "pattern": "^.*\\.[mM][dD][xX]$"
          },
          {
            "pattern": "^.*\\.[pP][dD][xX]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/some.cdd",
          "path/${var_with_name}",
          "path/to/some.pdx",
          "${var_with_path}"
        ]
      }
    },
    "39b87": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "$ref": "#/definitions/8ab6a/full",
        "description": "The variant determines which services and parameters are available for diagnostics and communication."
      }
    },
    "576ec": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Communications parameters for diagnostics",
        "description": "Parameters from diagnostic description for transport and diagnostic layer.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "st-min": {
            "type": "integer",
            "description": "StMin (separation time) defines the minimum time gap between consecutive frames which are to be sent from the Ecu to the Tester.",
            "minimum": 0,
            "maximum": 249
          },
          "s3-client": {
            "type": "integer",
            "description": "Time between functionally addressed TesterPresent (0x3E) request messages transmitted by the client to keep a diagnostic session other than the defaultSession active in multiple servers (functional communication) or maximum time between physically transmitted request messages to a single server (physical communication).\nAlias: tester-present-time",
            "minimum": 0,
            "maximum": 65535
          },
          "s3-server": {
            "type": "integer",
            "description": "Time for the server to keep a diagnostic session other than the defaultSession active while not receiving any diagnostic request message.\nAlias: tester-present-time-ecu",
            "minimum": 0,
            "maximum": 65535
          },
          "p2-client": {
            "type": "integer",
            "description": "Timeout for the client to wait after the successful transmission of a request message for the start of incoming response messages.\nAlias: p2-max",
            "minimum": 0,
            "maximum": 65535
          },
          "p2-ex-client": {
            "type": "integer",
            "description": "Enhanced timeout for the client to wait after the reception of a negative response message with negative response code 0x78 for the start of incoming response messages.\nAlias: p2-star",
            "minimum": 0,
            "maximum": 65535
          },
          "p2-server": {
            "type": "integer",
            "description": "Performance requirement for the server to start with the response message after the reception of a request message.\nAlias: p2-max-ecu",
            "minimum": 0,
            "maximum": 65535
          },
          "p2-ex-server": {
            "type": "integer",
            "description": "Performance requirement for the server to start with the response message after the transmission of a negative response message with negative response code 0x78 (enhanced response timing).\nAlias: p2-star-ecu",
            "minimum": 0,
            "maximum": 65535
          },
          "p6-client": {
            "type": "integer",
            "description": "Timeout for the client to wait after the successful transmission of a request message for the end of complete response messages.\nAlias: p6-max",
            "minimum": 0,
            "maximum": 65535
          },
          "p6-ex-client": {
            "type": "integer",
            "description": "Enhanced timeout for the client to wait after the reception of a negative response message with negative response code 0x78 for the end of complete response messages.\nAlias: p6-star",
            "minimum": 0,
            "maximum": 65535
          }
        }
      }
    },
    "26b44": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "DoIP Settings",
        "description": "Settings related to diagnostics over IP.",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "tls-mode": {
            "description": "Behavior of the diagnostic tester for encrypted communication via TLS.\n \"deactivated\": The tester does not use TLS even if a security profile for TLS is configured.\n \"routing-activation\": The tester at first tries to set up an unencrypted TCP connection. If not successful, the tester tries to connect via TLS.\n \"secure-connection-only\": The tester at first tries to set up an unencrypted TCP connection. On success the tester stops communication. \n\"direct-connection\": The tester directly tries to connect to the ECU via TLS.",
            "default": "deactivated",
            "oneOf": [
              {
                "const": "deactivated"
              },
              {
                "const": "routing-activation"
              },
              {
                "const": "secure-connection-only"
              },
              {
                "const": "direct-connection"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "tls-client": {
            "description": "TLS client name.",
            "oneOf": [
              {
                "type": "string"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          },
          "tcp-ip-stack-adapter": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "The \"name\" of an ip-setting or an ip-address declared in this environment, referencing a local network interface or IP address via which CANoe or a simulated tester shall communicate."
          },
          "addressing": {
            "$ref": "#/definitions/ca6a3/full"
          }
        }
      }
    },
    "0addd": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "LIN Settings",
        "description": "Settings related to diagnostics of LIN buses.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "database-node"
        ],
        "properties": {
          "database-node": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "Database node selected for communication."
          },
          "scheduling-mode": {
            "description": "Scheduling of master request and slave response frames.\n \"selected-scheduling\": The currently running schedule table is used.\n \"diagnostics-only\": Switching between master request and slave response tables found in ldf file.\n \"interleaved\": Between every segment of a request or response the table, which was running before, is run once.\n\"direct-sending\": The master request header is generated automatically, independent of the scheduling.",
            "default": "selected-scheduling",
            "oneOf": [
              {
                "const": "selected-scheduling"
              },
              {
                "const": "diagnostics-only"
              },
              {
                "const": "interleaved"
              },
              {
                "const": "direct-sending"
              },
              {
                "$ref": "#/definitions/779cd/full"
              }
            ]
          }
        }
      }
    },
    "2d2ea": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "title": "Additional descriptions",
        "description": "Additional diagnostic descriptions used to extend a so called master description.",
        "type": "array",
        "items": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "name",
            "file-path",
            "variant"
          ],
          "properties": {
            "name": {
              "$ref": "#/definitions/9a523/full",
              "description": "A unique name that can be used to reference this diagnostic description in programming APIs such as CAPL.\nMust be a C-identifier (case sensitive)."
            },
            "file-path": {
              "$ref": "#/definitions/775d7/full"
            },
            "variant": {
              "$ref": "#/definitions/39b87/full"
            },
            "language": {
              "$ref": "#/definitions/a855d/full"
            },
            "ecu-identifier": {
              "$ref": "#/definitions/09693/full"
            }
          }
        }
      }
    },
    "75a70": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "object",
        "additionalProperties": false,
        "properties": {
          "mac-address": {
            "$ref": "#/definitions/d9feb/full"
          },
          "mtu": {
            "$ref": "#/definitions/cb1c2/full"
          },
          "ipv4-settings": {
            "$ref": "#/definitions/fcc29/full"
          },
          "ipv6-settings": {
            "$ref": "#/definitions/f34eb/full"
          },
          "vlans": {
            "$ref": "#/definitions/64761/full"
          }
        },
        "examples": [
          {
            "mac-address": "02:84:cf:3b:be:01"
          },
          {
            "mtu": 1500,
            "ipv4-settings": {
              "address-configuration": "static",
              "addresses": [
                {
                  "address": "192.168.0.1",
                  "subnet-mask": "255.255.0.0"
                }
              ]
            },
            "ipv6-settings": {
              "address-configuration": "dhcp"
            },
            "vlans": [
              {
                "id": 42,
                "priority": 0
              }
            ]
          }
        ]
      }
    },
    "325f7": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a functional mockup unit file (.fmu). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[Ff][Mm][Uu]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "my_functional_mockup_unit.fmu",
          "Inputs/MyFmu.FMU",
          "${some_variable}"
        ]
      }
    },
    "7d4a0": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "anyOf": [
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "selected-stack"
            ],
            "properties": {
              "selected-stack": {
                "description": "If a linked database contains a stack configuration, it is preferred over other configurations. If set to \"operating-system\", the machine configuration is used.\n If set to \"canoe\", the configuration on the global level is used (this requires global-settings/ethernet/tcp-ip-stack/selected-stack to be set to \"canoe\").\n If set to \"individual\", a custom configuration can be provided at ethernet-networks[]/test-tcp-ip-stack-adapter.",
                "enum": [
                  "operating-system",
                  "canoe"
                ],
                "default": "individual",
                "examples": [
                  "operating-system",
                  "canoe",
                  "individual"
                ]
              },
              "name": {
                "$ref": "#/definitions/9a523/full",
                "description": "The name of the test stack, used as name of the test port.\nMust be a C-identifier.",
                "default": "Test_Configuration_1"
              }
            }
          },
          {
            "type": "object",
            "additionalProperties": false,
            "required": [
              "selected-stack"
            ],
            "properties": {
              "selected-stack": {
                "description": "If a linked database contains a stack configuration, it is preferred over other configurations. If set to \"operating-system\", the machine configuration is used.\n If set to \"canoe\", the configuration on the global level is used (this requires global-settings/ethernet/tcp-ip-stack/selected-stack to be set to \"canoe\").\n If set to \"individual\", a custom configuration can be provided at ethernet-networks[]/test-tcp-ip-stack-adapter.",
                "oneOf": [
                  {
                    "enum": [
                      "individual"
                    ]
                  },
                  {
                    "$ref": "#/definitions/779cd/full"
                  }
                ],
                "default": "individual",
                "examples": [
                  "operating-system",
                  "canoe",
                  "individual"
                ]
              },
              "activate-routing": {
                "$ref": "#/definitions/698c3/full"
              },
              "tcp-delayed-ack": {
                "$ref": "#/definitions/6665e/full"
              },
              "ipv4-gateway": {
                "$ref": "#/definitions/d420a/full"
              },
              "ipv6-gateway": {
                "$ref": "#/definitions/ea3d5/full"
              },
              "name": {
                "$ref": "#/definitions/9a523/full",
                "description": "The name of the test stack, used as name of the test port.\nMust be a C-identifier.",
                "default": "Test_Configuration_1"
              }
            }
          }
        ]
      }
    },
    "83eeb": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "oneOf": [
          {
            "enum": [
              "internal-simulator",
              "external-sil-kit",
              "external-hardware"
            ]
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "internal-simulator",
          "external-sil-kit",
          "external-hardware"
        ]
      }
    },
    "1030e": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "integer",
        "minimum": 0,
        "maximum": 4294967295
      }
    },
    "8722b": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a program (.can/.canencr/.cs/.sln/.dll). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[Cc][Aa][Nn]$"
          },
          {
            "pattern": "^.*\\.[Cc][Aa][Nn][Ee][Nn][Cc][Rr]$"
          },
          {
            "pattern": "^.*\\.[Cc][Ss]$"
          },
          {
            "pattern": "^.*\\.[Ss][Ll][Nn]$"
          },
          {
            "pattern": "^.*\\.[Dd][Ll][Ll]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/my_capl_script.can",
          "path/to/my_encrypted_capl_file.canencr",
          "path/to/my_dotnet.cs",
          "path/to/my_visual_studio.sln",
          "path/to/my_dotnet.dll",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "16f8a": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a system variable file (.vsysvar/.xml). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[vV][sS][yY][sS][vV][aA][rR]$"
          },
          {
            "pattern": "^.*\\.[xX][mM][lL]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/my.vsysvar",
          "path/to/my.xml",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "011dc": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Absolute or relative path to a XCP configuration file (.xcp.yaml/.xcpcfg). Relative path specifications are resolved relative to the configuration file.",
        "type": "string",
        "anyOf": [
          {
            "pattern": "^.*\\.[Yy][Aa]?[Mm][Ll]$"
          },
          {
            "pattern": "^.*\\.[xX][cC][pP][cC][fF][gG]$"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "path/to/my.xcp.yaml",
          "path/to/my.xcp.yml",
          "path/to/my.xcpcfg",
          "${path_in_variable}",
          "path/${name_in_variable}"
        ]
      }
    },
    "230ce": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "$ref": "#/definitions/4f5d5/full",
        "default": 0
      }
    },
    "37aed": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "oneOf": [
          {
            "$ref": "#/definitions/779cd/full"
          },
          {
            "$ref": "#/definitions/09338/full"
          }
        ]
      }
    },
    "3e203": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Define to be passed to the VCDL importer.",
        "type": "string",
        "pattern": "^([a-zA-Z_]|([a-zA-Z_][a-zA-Z0-9_]*)?\\$\\{[a-zA-Z_][a-zA-Z0-9_]*\\})[a-zA-Z0-9_]*(=((0|[1-9][0-9]*)|(\\$\\{[a-zA-Z_][a-zA-Z0-9_]*\\})|[Tt]rue|[Ff]alse))?$",
        "examples": [
          "mydefine1",
          "mydefine2",
          "mydefine_with_value=42",
          "${var_with_define_name}=${var_with_define_value}"
        ]
      }
    },
    "6dbd8": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "string",
        "oneOf": [
          {
            "pattern": "((1?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])\\.){3}(1?[0-9]?[0-9]|2[0-4][0-9]|25[0-5])"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "examples": [
          "127.0.0.1",
          "192.168.0.0",
          "172.16.0.0",
          "10.0.0.0"
        ]
      }
    },
    "698c3": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Activates TCP Routing",
        "oneOf": [
          {
            "type": "boolean"
          },
          {
            "$ref": "#/definitions/779cd/full"
          }
        ],
        "default": false
      }
    },
    "6665e": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Activates the TCP Delayed Ack Option.",
        "oneOf": [
          {
            "$ref": "#/definitions/779cd/full"
          },
          {
            "type": "boolean"
          }
        ],
        "default": true
      }
    },
    "5daac": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "Assigns the simulation node to a network declared in the configuration file. For an Ethernet network a TCP/IP stack can be provided.",
        "type": "object",
        "additionalProperties": false,
        "required": [
          "network"
        ],
        "properties": {
          "network": {
            "$ref": "#/definitions/8ab6a/full",
            "description": "Assigns the simulation node to a network declared in the configuration file.",
            "examples": [
              "network_name"
            ]
          },
          "tcp-ip-stack-adapter": {
            "$ref": "#/definitions/75a70/full",
            "description": "Address configuration for the associated tcp-ip-stack. Is overwritten by a configuration from a linked database."
          }
        },
        "examples": [
          {
            "network": "my_can_network_1"
          }
        ]
      }
    },
    "4f5d5": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "oneOf": [
          {
            "$ref": "#/definitions/779cd/full"
          },
          {
            "$ref": "#/definitions/815f9/full"
          }
        ]
      }
    },
    "09338": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "type": "integer",
        "minimum": 0,
        "maximum": 65535
      }
    },
    "698d7": {
      "full": {
        "$schema": "http://json-schema.org/draft-07/schema#",
        "description": "List of IPv6 addresses with their subnet definition",
        "type": "array",
        "items": {
          "type": "object",
          "additionalProperties": false,
          "required": [
            "address",
            "subnet-prefix-length"
          ],
          "properties": {
            "address": {
              "$ref": "#/definitions/f3ec9/full"
            },
            "name": {
              "$ref": "#/definitions/9a523/full",
              "description": "A unique name that can be used to reference this IPv6 address in the configuration file.\nMust be a C-identifier (case sensitive)."
            },
            "subnet-prefix-length": {
              "description": "Subnetprefix of an IPv6 Address",
              "oneOf": [
                {
                  "type": "integer",
                  "minimum": 0,
                  "maximum": 128
                },
                {
                  "$ref": "#/definitions/779cd/full"
                }
              ],
              "examples": [
                0,
                48,
                128
              ]
            }
          }
        },
        "examples": [
          [
            {
              "address": "1234::abce",
              "subnet-prefix-length": 42
            }
          ],
          [
            {
              "address": "1234::abcf",
              "subnet-prefix-length": 24,
              "name": "refNameForDoIP"
            }
          ]
        ]
      }
    },
    "local": {
      "one": {
        "type": "string",
        "pattern": "\\.([Yy][Aa]?[Mm][Ll]|[Jj][Ss][Oo][Nn])$"
      }
    },
    "full": {
      "$schema": "http://json-schema.org/draft-07/schema",
      "title": "Include files",
      "description": "Include a different file (similar to #include of the c preprocessor). The order of includes does not matter. Circular/multiple includes are resolved correctly.",
      "oneOf": [
        {
          "$ref": "#/$defs/8e88e/local/one"
        },
        {
          "type": "array",
          "items": {
            "$ref": "#/$defs/8e88e/local/one"
          }
        }
      ],
      "examples": [
        "my_include.yaml",
        [
          "my_include.yml",
          "my_other_include.json"
        ]
      ]
    }
  }
}
