Open e-lo opened 1 year ago
I'd like to add an option:
tides.spec.json
, it contains no information not already available in the table schemas, autogenerate table on architecture page from *.schema.json files.e.g.,
spec_summary = []
for s in schema_files:
schema = read_schema(s)
spec_summary.append({"Name": schema.get('name').split(".")[0], "Type": schema.get('_table_type'), "Description": schema.get('description')})
spec_summary.sort(key=lambda schema: schema["Name"])
md = "## Files in Specification\nTIDES consists of a package of files as defined in the following table.\n\n"
md += "| Name | Type | Description |\n|-|-|-|\n"
for table_type in TABLE_TYPES:
for schema in spec_summary:
if schema["Type"] == table_type:
md += "| {Name} | {Type} | {Description} |\n".format(**schema)
I'd like to add an option: remove tides.spec.json, it contains no information not already available in the table schemas, autogenerate table on architecture page from *.schema.json files.
Added this one to consideration.
Thinking points 🤔
User Story
As a developer and user, I want to leverage standardized functionality for listing packages of files and the interplay between them so that it is:
Context
tides.spec.json
currently lists all the schemas as frictionlessresources
, but it is not, in and of itself, conformant to a schema within the realm of frictionless.tides.spec.json
is currently used in auto-generating the documentation, but this could probably be updated to just pull in all the schema files.tabular-data-package
definition requires an additional file be shipped with each set of data (datapackage.json
) which defines a set ofresources
– which files exist and what schemas they use in addition to metadata.datapackage.json
can be structured outside the bounds of atabular-data-package
, Frictionless uses the concept ofprofiles
, which are a definition of the json-schema fordatapackage.json
.Solutions
Alternatives
Options so far:
tides.spec.json
tides.spec.json
to aprofile
(see example of how this was done for camera trap data)tides.spec.json
and autogenerate documentation from anything in the /spec folderAdditional Context