.. SPDX-FileCopyrightText: 2026 James Turner .. SPDX-License-Identifier: GPL-2.0-or-later Common Terms ============ .. glossary:: Subsystem A subsystem is as mostly independent processing component, with well defined lifetime semantics. Each main loop iteration, all subsystems are updated, before the next frame is rendered. Subsystems can be simple and self-contained, or they can create entire hierarchies of objects and elements. They can do networking, IO, arbitrary computation, or anything else. Because they run synchronously with the main loop, they should not take large amounts of CPU time during their :cpp:func:`SGSubsystem::update()`. Property A property is a named, typed value which can be read and written across the simulator. Because properties can be easily used in C++, scripts and XML expressions, they are the main way to move information around inside the simulator. PropertyList A property list is a valid XML document whose root (document element) is `PropertyList`. The file defines a tree of property nodes. Command A command is a named piece of functionality, implemented in C++ or Nasal. Commands have a unique name and take a collection of properties as arguments. Binding Bindings are a standard XML concept to trigger a :term:`command` when a certain event occurs. Typically the binding defines various arguments, and in some cases runtime values are also included (e.g., when a joystick axis binding is triggered)