Tuesday, 2023/08/15
10:00 am ET
Terrell Russell, Kory Draughn, Alan King, Jessica Natonick, Lazlo Westerhof (Utrecht)
Update/Discussion:
- Utrecht has already done this separation
- UI Schema - React valid JSON-Schema form information
- Metadata Schema - valid JSON-Schema
- Research space - no metadata required, but can fill it in
- Same schemas, just ignore the 'required' errors
- Implemented in python, using the validators
- Vault space - has to be requirements, export/publication mandates
- Enforces the full schemas
- Microservices (as plugins, not irods/irods at the beginning)
- UU has a python ruleset
- When metadata file is updated, rules fire to push/pull into the iRODS AVUs and back to JSON file
- Schemas live in iRODS themselves, but are referenced by collection_name (which holds both schema files - by contract/assumption)
- Do these AVUs need to be protected by metadata_guard?
- A: irods::metadata_templates
- V: http://coolthinghere
- U: data [data/ui]
- These are on a collection? And/Or a data_object directly? Not at UU.
- UU has no recursive references yet, still flat
- Jonathan Melius also probably interested
- Attach (type, schema, object_id)
- Initially, type will just be 'url'
- Could later be 'irods_schema' and store the id from the new table
- Or 'form' for ManGO wrapper/form information
- Detach (type, schema, object_id)
- Validate (object_id, recursive)
- Run gather (below) to build the effective json schema
- Get and build json payload with all current AVUs
- Run payload and schema through validator
- Return result (OK or failure/explanation)
- Export/Collapse/Rasterize/Gather/Dump (object_id, recursive)
- Find all associated schemas and construct 'effective' schema
- Recursive would check/gather all parents up to root
- UU has a python ruleset
- Next Meeting
- Sept 2023