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 |
|||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
|
type |
string |
|||||
|
type |
string |
|||||
|
type |
string |
|||||
|
type |
string |
|||||
enum |
system_schema.yml |
||||||
additionalProperties |
False |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
enum |
soft_kite, fixed_wing_aircraft, hybrid_kite |
||||||
|
type |
string |
|||||
enum |
pumping_ground_gen, rotary_ground_gen, fly_gen |
||||||
additionalProperties |
False |
||||||
|
type |
object |
|||||
properties |
|||||||
|
#/definitions/wing |
||||||
|
#/definitions/bridle |
||||||
|
#/definitions/control_system |
||||||
|
#/definitions/tether |
||||||
|
#/definitions/ground_station |
||||||
additionalProperties |
False |
||||||
additionalProperties |
False |
||||||
definitions |
|||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
|
type |
string |
|||||
enum |
LEI_soft_kite, ram_air_soft_kite, fixed_wing_aircraft |
||||||
|
type |
string / number |
|||||
|
type |
object |
|||||
properties |
|||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
additionalProperties |
True |
||||||
|
type |
null / array |
|||||
|
type |
null / array |
|||||
|
type |
object |
|||||
properties |
|||||||
|
type |
array |
|||||
|
type |
number |
|||||
|
type |
array |
|||||
|
type |
array |
|||||
additionalProperties |
True |
||||||
additionalProperties |
True |
||||||
|
type |
object |
|||||
additionalProperties |
False |
||||||
allOf |
if |
properties |
|||||
|
const |
LEI_soft_kite |
|||||
then |
properties |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
maximum |
1 |
||||||
minimum |
0 |
||||||
|
type |
object |
|||||
|
type |
null / object |
|||||
additionalProperties |
True |
||||||
if |
properties |
||||||
|
const |
ram_air_soft_kite |
|||||
then |
properties |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
maximum |
1 |
||||||
minimum |
0 |
||||||
|
type |
object |
|||||
|
type |
null / object |
|||||
additionalProperties |
True |
||||||
if |
properties |
||||||
|
const |
fixed_wing |
|||||
then |
properties |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
object |
|||||
|
type |
object |
|||||
additionalProperties |
True |
||||||
if |
properties |
||||||
|
const |
rigid_wing |
|||||
then |
properties |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
object |
|||||
|
type |
object |
|||||
additionalProperties |
True |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
|
type |
string |
|||||
enum |
LEI_soft_kite_bridle |
||||||
|
type |
string / number |
|||||
|
type |
null / object |
|||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
object |
|||||
|
type |
object |
|||||
|
type |
object |
|||||
|
type |
null / object |
|||||
additionalProperties |
True |
||||||
additionalProperties |
False |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
|
type |
string |
|||||
enum |
kite_control_unit |
||||||
|
type |
string / number |
|||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
additionalProperties |
True |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
additionalProperties |
True |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
additionalProperties |
True |
||||||
additionalProperties |
False |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
|
type |
string |
|||||
enum |
non_conductive_tether, conductive_tether |
||||||
|
type |
string / number |
|||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
additionalProperties |
False |
||||||
|
type |
object |
|||||
allOf |
if |
properties |
|||||
|
|||||||
then |
properties |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
boolean |
|||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
additionalProperties |
True |
||||||
additionalProperties |
False |
||||||
if |
properties |
||||||
|
|||||||
then |
properties |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
boolean |
|||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
|
type |
number |
|||||
additionalProperties |
True |
||||||
additionalProperties |
False |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
|
type |
string |
|||||
enum |
pumping_ground_gen_station, rotary_ground_gen_station, fly_gen_station |
||||||
|
type |
string / number |
|||||
|
type |
object |
|||||
properties |
|||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
additionalProperties |
False |
||||||
|
type |
object |
|||||
|
type |
object |
|||||
|
type |
object |
|||||
|
type |
object |
|||||
additionalProperties |
False |
||||||
allOf |
if |
properties |
|||||
|
const |
pumping_ground_gen_station |
|||||
then |
properties |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
const |
electric_winch |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
additionalProperties |
False |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
enum |
permanent_magnet_synchronous, induction, dc |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
maximum |
1 |
||||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
additionalProperties |
False |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
enum |
planetary, helical, bevel |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
maximum |
1 |
||||||
minimum |
0 |
||||||
additionalProperties |
False |
||||||
|
type |
object |
|||||
properties |
|||||||
|
type |
string |
|||||
enum |
battery_bank, flywheel, capacitor_bank |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
minimum |
0 |
||||||
|
type |
number |
|||||
maximum |
1 |
||||||
minimum |
0 |
||||||
|
type |
number |
|||||
maximum |
1 |
||||||
minimum |
0 |
||||||
additionalProperties |
False |
||||||
if |
properties |
||||||
|
const |
rotary_ground_gen_station |
|||||
then |
properties |
||||||
|
type |
object |
|||||
|
type |
object |
|||||
if |
properties |
||||||
|
const |
fly_gen_station |
|||||
then |
properties |
||||||
|
type |
object |
|||||