This page describes how metadata schemas are stored in Yoda, and how Yoda keeps track of what schema to use for each group.
Schemas are stored in collection
/zone/yoda/schemas, with each schema having
a separate subcollection.
Each schema consists of two parts:
- A JSON schema that is used to validate metadata of a data package (filename:
- A UI schema file that contains information for the web portal regarding how to display a form
for metadata with this schema, optionally including placeholders and help text for each field.
This information is stored in files named
A minimal schema is available as the
In Yoda, metadata schemas can be defined on three levels:
- On the environment level (the default schema)
- On the community (also known as category) level
- On the group level (in Yoda 1.9 and higher)
The most specific level has priority. That is: a group will use its configured schema. If it does not have one, it will fall back to the community metadata schema. If the community has no configured metadata schema, it will fall back to the default metadata schema.
The default schema and community-level schema need to be configured by a technical admin. They are
stored in a subcollection of
/zone/yoda/schemas/. The default metadata schema is located in the
default subcollection, whereas the community-level schemas are stored in a subcollection with the
same name as the community. See the page about installing metadata schemas
for instructions about how to replace a schema.
Group level schemas are configured by the user who creates the group. The schema name is stored
schema_id AVU that is set on the research group.