Spreadsheet to LinkML Schema
Overview
Create a yaml linkml model from set of spreadsheets. It can use either tsv files or Google Sheet as an input.
The default behavior is to run the converter starting with tsv files, specifying their paths as arguments, for example, model_spreadsheets/*tsv.
If --gsheet option is used, the converter starts from downloading spreadsheets from Google Sheets.
The argument must be a YAML file that has gsheet_id and a list of sheets with gid (a unique identifier for each individual sheet)
and name (optionally) that will be used as a name of the downloaded TSV file (if not available gid wil be used).
Command Line
bkbit schema2model
$ bkbit schema2model [OPTIONS] SPREADSHEETS
Options
-o, --output <output>Path for the yaml output file.
-t, --template <template>Optional template yaml file with standard classes that will be added to the model.
--gsheet, --no-gsheetUsing Google Sheet as a source. If True, the arguments MUST be a yaml file with gsheet_id and gid of all the sheets.
- Default:
False
--gsheet-download-dir <gsheet_download_dir>Path used to download Google Sheets. If not specified a default directory will be created.
--fix_tsv, --no-fix_tsvFixing known issues with tsv files from Google Sheets.
- Default:
True
--fix_tsv_save, --no-fix_tsv_saveKeeping the fixed files, relevant only if fix_tsv is True
- Default:
False
--repair, --no-repairStandard Linkml auto-repair schema
- Default:
True
--fix_bican_model, --no-fix_bican_modelAutomated repair specifically for the BICAN YAML model
- Default:
True
Arguments
SPREADSHEETSRequired argument
Examples
Example 1: Schema defined in tsv files
# Run schema2model command
$ bkbit schema2model -o model.yaml source_model/spreadsheets/*.tsv
Example 2: Schema defined in Google Sheets
# Run schema2model command
$ bkbit schema2model -o model.yaml --gsheet --gsheet-download-dir source_model/spreadsheets source_model/gsheet.yaml