Code Generator¶
CLI Entry Point¶
$ xsdata --help
Usage: xsdata [OPTIONS] SOURCE
Convert schema definitions to code.
SOURCE can be either a filepath, directory or url
Options:
--package TEXT Target Package [required]
--output [pydata|plantuml] Output Format
--print Print output
--version Show the version and exit.
-v, --verbosity LVL Either CRITICAL, ERROR, WARNING, INFO or DEBUG
--help Show this message and exit.
SOURCE¶
You can pass the file path or uri to a schema or a whole directory with multiple definitions.
$ xsdata amadeus/schemas --package amadeus.models
$ xsdata air_v48_0/AirReqRsp.xsd rail_v48_0/RailReqRsp.xsd --package travelport.models
$ xsdata http://www.gstatic.com/localfeed/local_feed.xsd --package feeds --print
Package¶
The package option defines where the target module(s) will be created inside the current working directory.
If the main xsd has any parent include or import you should adjust the target package.
Note
The cli is relying on the os.path.commonpath to create the package structure and doesn’t do any conflict resolution, which shouldn’t be an issue if you use the cli with a single source (directory or remote/local file).
Output¶
The output option changes the generation format.
pydata
: Python lib dataclassesplantuml
: PlantUML class diagram
Verbosity¶
The verbosity option changes what messages will be printed.
Available options: CRITICAL
, ERROR
, WARNING
, INFO
or DEBUG
Print¶
The print flag overwrites the verbosity level to Error and print to stdOut the output result without writing to the target file.
Examples
Check the Demos and the samples repo for more ✨✨✨