AWE System Schema

Complete schema for AWE system configurations with type-dependent validation. Validates wing, bridle, control system, tether, and ground station components.

Schema File

src/awesio/schemas/system_schema.yml

Example File

See: examples/ground_gen/soft_kite_pumping_ground_gen_system.yml

Validation

To validate a file against this schema:

from awesio.validator import validate

# Auto-detects schema from file metadata
data = validate("your_file.yml")

The validator automatically detects the schema type from the metadata.schema field in your YAML file.

Schema Structure

Airborne Wind Energy System Schema

system_schema

Complete schema for AWE system configurations with type-dependent validation. Validates wing, bridle, control system, tether, and ground station components.

type

object

properties

  • metadata

type

object

properties

  • name

type

string

  • description

type

string

  • note

type

string

  • awesIO_version

type

string

  • schema

type

string

enum

system_schema.yml

additionalProperties

False

  • assembly

type

object

properties

  • airborne_type

type

string

enum

soft_kite, fixed_wing_aircraft, hybrid_kite

  • generation_type

type

string

enum

pumping_ground_gen, rotary_ground_gen, fly_gen

additionalProperties

False

  • components

type

object

properties

  • wing

#/definitions/wing

  • bridle

#/definitions/bridle

  • control_system

#/definitions/control_system

  • tether

#/definitions/tether

  • ground_station

#/definitions/ground_station

additionalProperties

False

additionalProperties

False

definitions

  • wing

type

object

properties

  • name

type

string

  • type

type

string

enum

LEI_soft_kite, ram_air_soft_kite, fixed_wing_aircraft

  • version

type

string / number

  • aerodynamics

type

object

properties

  • simple_aero_model

type

object

properties

  • lift_coefficient_reel_out

type

number

  • drag_coefficient_reel_out

type

number

  • lift_coefficient_reel_in

type

number

  • drag_coefficient_reel_in

type

number

additionalProperties

True

  • lift_polynomial

type

null / array

  • drag_polynomial

type

null / array

  • wing_airfoils

type

object

properties

  • alpha_range

type

array

  • reynolds

type

number

  • headers

type

array

  • data

type

array

additionalProperties

True

additionalProperties

True

  • structure

type

object

additionalProperties

False

allOf

if

properties

  • type

const

LEI_soft_kite

then

properties

  • structure

type

object

properties

  • projected_surface_area_m2

type

number

minimum

0

  • span_m

type

number

minimum

0

  • aspect_ratio

type

number

minimum

0

  • mass_kg

type

number

minimum

0

  • flattening_factor

type

number

maximum

1

minimum

0

  • wing_sections

type

object

  • material

type

null / object

additionalProperties

True

if

properties

  • type

const

ram_air_soft_kite

then

properties

  • structure

type

object

properties

  • projected_surface_area_m2

type

number

minimum

0

  • span_m

type

number

minimum

0

  • aspect_ratio

type

number

minimum

0

  • mass_kg

type

number

minimum

0

  • flattening_factor

type

number

maximum

1

minimum

0

  • wing_sections

type

object

  • material

type

null / object

additionalProperties

True

if

properties

  • type

const

fixed_wing

then

properties

  • structure

type

object

properties

  • wing_area_m2

type

number

minimum

0

  • span_m

type

number

minimum

0

  • aspect_ratio

type

number

minimum

0

  • mass_kg

type

number

minimum

0

  • chord_m

type

number

minimum

0

  • taper_ratio

type

number

  • dihedral_angle_deg

type

number

  • sweep_angle_deg

type

number

  • wing_sections

type

object

  • material

type

object

additionalProperties

True

if

properties

  • type

const

rigid_wing

then

properties

  • structure

type

object

properties

  • wing_area_m2

type

number

minimum

0

  • span_m

type

number

minimum

0

  • aspect_ratio

type

number

minimum

0

  • mass_kg

type

number

minimum

0

  • chord_m

type

number

minimum

0

  • taper_ratio

type

number

  • dihedral_angle_deg

type

number

  • sweep_angle_deg

type

number

  • wing_sections

type

object

  • material

type

object

additionalProperties

True

  • bridle

type

object

properties

  • name

type

string

  • type

type

string

enum

LEI_soft_kite_bridle

  • version

type

string / number

  • aerodynamics

type

null / object

  • structure

type

object

properties

  • mass_kg

type

number

minimum

0

  • bridle_nodes

type

object

  • bridle_lines

type

object

  • bridle_connections

type

object

  • material

type

null / object

additionalProperties

True

additionalProperties

False

  • control_system

type

object

properties

  • name

type

string

  • type

type

string

enum

kite_control_unit

  • version

type

string / number

  • aerodynamics

type

object

properties

  • drag_coefficient

type

number

additionalProperties

True

  • structure

type

object

properties

  • mass_kg

type

number

minimum

0

  • frontal_area_m2

type

number

minimum

0

additionalProperties

True

  • actuators

type

object

properties

  • max_steering_line_speed_m_s

type

number

minimum

0

  • max_depower_line_speed_m_s

type

number

minimum

0

  • max_steering_actuator_force_n

type

number

minimum

0

  • max_depower_actuator_force_n

type

number

minimum

0

additionalProperties

True

additionalProperties

False

  • tether

type

object

properties

  • name

type

string

  • type

type

string

enum

non_conductive_tether, conductive_tether

  • version

type

string / number

  • aerodynamics

type

object

properties

  • drag_coefficient

type

number

additionalProperties

False

  • structure

type

object

allOf

if

properties

  • type

then

properties

  • structure

type

object

properties

  • length_m

type

number

minimum

0

  • diameter_m

type

number

minimum

0

  • density_kg_m3

type

number

minimum

0

  • max_tether_force_n

type

number

minimum

0

  • conductive

type

boolean

  • material

type

object

properties

  • type

type

string

  • youngs_modulus_pa

type

number

  • breaking_strength_n

type

number

  • min_breaking_strength_n

type

number

  • shear_modulus_pa

type

number

  • breaking_strain

type

number

  • poisson_ratio

type

number

additionalProperties

True

additionalProperties

False

if

properties

  • type

then

properties

  • structure

type

object

properties

  • length_m

type

number

minimum

0

  • diameter_m

type

number

minimum

0

  • density_kg_m3

type

number

minimum

0

  • max_tether_force_n

type

number

minimum

0

  • conductive

type

boolean

  • material

type

object

properties

  • type

type

string

  • youngs_modulus_pa

type

number

  • breaking_strength_n

type

number

  • min_breaking_strength_n

type

number

  • shear_modulus_pa

type

number

  • breaking_strain

type

number

  • poisson_ratio

type

number

additionalProperties

True

additionalProperties

False

  • ground_station

type

object

properties

  • name

type

string

  • type

type

string

enum

pumping_ground_gen_station, rotary_ground_gen_station, fly_gen_station

  • version

type

string / number

  • structure

type

object

properties

  • mass_kg

type

number

minimum

0

  • footprint_m2

type

number

minimum

0

  • height_m

type

number

minimum

0

additionalProperties

False

  • drum

type

object

  • generator

type

object

  • gearbox

type

object

  • storage

type

object

additionalProperties

False

allOf

if

properties

  • type

const

pumping_ground_gen_station

then

properties

  • drum

type

object

properties

  • type

type

string

const

electric_winch

  • max_tether_speed_m_s

type

number

minimum

0

  • max_tether_force_n

type

number

minimum

0

  • max_winch_acceleration_m_s2

type

number

minimum

0

  • drum_diameter_m

type

number

minimum

0

  • drum_width_m

type

number

minimum

0

additionalProperties

False

  • generator

type

object

properties

  • type

type

string

enum

permanent_magnet_synchronous, induction, dc

  • rated_power_kw

type

number

minimum

0

  • max_power_kw

type

number

minimum

0

  • rated_speed_rpm

type

number

minimum

0

  • efficiency

type

number

maximum

1

minimum

0

  • voltage_v

type

number

minimum

0

additionalProperties

False

  • gearbox

type

object

properties

  • type

type

string

enum

planetary, helical, bevel

  • gear_ratio

type

number

minimum

0

  • efficiency

type

number

maximum

1

minimum

0

additionalProperties

False

  • storage

type

object

properties

  • type

type

string

enum

battery_bank, flywheel, capacitor_bank

  • capacity_kwh

type

number

minimum

0

  • max_charge_rate_kw

type

number

minimum

0

  • max_discharge_rate_kw

type

number

minimum

0

  • efficiency

type

number

maximum

1

minimum

0

  • state_of_charge_initial

type

number

maximum

1

minimum

0

additionalProperties

False

if

properties

  • type

const

rotary_ground_gen_station

then

properties

  • generator

type

object

  • gearbox

type

object

if

properties

  • type

const

fly_gen_station

then

properties

  • storage

type

object