A template is a configuration which specifies what clean data should look like before the import is finalized. Templates are comprised of headers (columns), each of which can have a validation attached.

Each spreadsheet uploaded to OneSchema will be associated with a template, uploaded columns will be mapped to template columns, and OneSchema will validate that user-uploaded data matches the business logic contained in the template before allowing the user to finalize their data import.


Imported data will directly match the headers specified in the associated template. Templates can be used to specify which columns of data are required, if all cells in a specific column must be filled in, and if each value in a column must be unique.


For example, a template called "Conference attendees" may have the following headers: Name, Postal Code, and Occupation. A user wants to import a list of conference attendees and uploads their spreadsheet called "Meeting guests" which has the headers: Full Name, ZIP Code, and Job.

The following mapping will take place between the uploaded data and template headers:

Full Name --> Name
ZIP Code --> Postal Code
Job --> Occupation

The data will then be validated based on the rules set for each template header and, once no errors remain, the data import with column headers of Name, Postal Code, and Occupation will be finalized.