Closed annakrystalli closed 1 year ago
Adding links to the json previews for ease of previewing:
Some of Nick's comments on the model-schema.json
file raised a bigger question for me: This file feels different in its purpose than the other two schema files, and I'm not sure we want that. The other two schema files (admin-schema.json
and tasks-schema.json
) define what a hub-specific configuration file should look like, but my understanding is that the model-schema.json
file currently attempts to define a universal standard for what model metadata files should look like across all hubs.
Several of Nick's comments indicate that this may not be the right approach. For example, include_viz
, include_ensemble
, and include_eval
may not be relevant to all hubs, and there are many metadata items like modeling_NPI
that a particular hub may want to require modelers to submit but that are certainly not relevant to all hubs. This suggests that each hub will want to define its own version of a model-schema.json
file that says what the contents of the model metadata files for that hub should look like.
If we go that route, the implication is that a file like model-schema.json
doesn't belong in this repository; this file should be hub-specific. In that case, is there any role for something related to model metadata in this repository or another repository in the Infections-Disease-Modeling-Hubs
organization? I see two levels of engagement we could have here:
model-schema.json
to the example hubs and the template hub. They might be different in each example hub. We should probably do this? Note that the current hub documentation does state that each hub will have a file like this.model-schema.json
files should look like. This would be analogous to how the admin-schema.json
file in this repository defines what the admin.json
file in each hub repository should look like.I could possibly be convinced otherwise, but I think 2 is likely a bit "extra", and at least we should not start there?
Just for reference regarding the model-schema.json
file, it was developed from the info from this docs page: https://hubdocs.readthedocs.io/en/latest/format/model-metadata.html#template-metadata-schema-file
Indeed it seems I misunderstood that the file was a template rather than a schema (my bad because I it does state it's a template in the heading, but the example also contains $schema: "http://json-schema.org/draft-07/schema"
at the top so I think that's why I treated it as a schema).
Happy with either approach suggested above by @elray1 . Indeed not being prescriptive about this would allow folks to use yml formats as well (while they are constrained to json for the time being for the other two hub level files).
Given however that individual teams will have to complete these (so many of these files will have to be produced by non-administrators), it does feel like a topic we should at least have a quick chat about how we might be able to support and make as smooth as possible?
Quick comment clarifying the status of the model-schema.json
file r.e. whether it's a template or a schema: it's both :smile: It is a template of a schema file:
So I think the most appropriate place for a file like the one we have here is in the hubTemplate repository (but as discussed above, there are also other places that related files might go).
Additionally, noting that individual teams will have to create the model metadata files that are described by a hub-specific version of a schema file like this, but only the hub administrators would have to update the "template schema" to describe the hub's needs.
Action re: model-schema.json
:
1) remove from the schema repo.
2) Add slimmed down version to hub template
Resolved model metadata schema task in 9a9b599
Resolves discussions in https://github.com/Infectious-Disease-Modeling-Hubs/hubDocs/issues/13
Also, now contributing to
v0.0.1
branch inv0.0.1
directory. When we are ready, we can mergev0.0.1
intomain
and release.