Skip to main content

Given a Frictionless Table Schema, generates an Excel template with input validation

Project description

tableschema-to-template

Given a Frictionless Table Schema (like this), generate an Excel template with input validation (like this).

This is a proof of concept.

Usage

pip install tableschema-to-template
wget https://raw.githubusercontent.com/hubmapconsortium/tableschema-to-template/main/tests/fixtures/schema.yaml
ts2xl.py schema.yaml /tmp/template.xlsx
# Open with Excel:
open /tmp/template.xlsx

Development

From a checkout of the repo, run a demo:

pip install -r requirements.txt
PYTHONPATH="${PYTHONPATH}:tableschema_to_template" \
  tableschema_to_template/ts2xl.py \
  tests/fixtures/schema.yaml /tmp/template.xlsx
# Open with Excel:
open /tmp/template.xlsx

Run the tests:

pip install -r requirements-dev.txt
./test.sh

To build and publish,

  • If you haven't already, generate a token on Pypi and create a .pypirc in your checkout.
  • Increment the version number in setup.py.
  • Finally: ./publish.sh

Next steps

  • How, and whether, to validate regex patterns. Possibilities:
    • Don't even try!
    • Add VBA to provide regex support in Excel.
    • Target Google Sheets, which provides a regex function out of the box.
    • Or target OpenOffice, where regexes can be turned on in the settings.

Related work

From the Frictionless community:

For the biomedical ontologies community:

  • CEDAR: Data entry tool based on ontologies.
  • Webulous: Google sheets plugin that adds pulldowns based on ontology terms.

Project details


Download files

Download the file for your platform. If you're not sure which to choose, learn more about installing packages.

Files for tableschema-to-template, version 0.0.5
Filename, size File type Python version Upload date Hashes
Filename, size tableschema_to_template-0.0.5-py3-none-any.whl (14.9 kB) File type Wheel Python version py3 Upload date Hashes View
Filename, size tableschema-to-template-0.0.5.tar.gz (11.4 kB) File type Source Python version None Upload date Hashes View

Supported by

AWS AWS Cloud computing Datadog Datadog Monitoring DigiCert DigiCert EV certificate Facebook / Instagram Facebook / Instagram PSF Sponsor Fastly Fastly CDN Google Google Object Storage and Download Analytics Pingdom Pingdom Monitoring Salesforce Salesforce PSF Sponsor Sentry Sentry Error logging StatusPage StatusPage Status page