Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support container-format for tabby record #79

Open
mih opened this issue Jul 19, 2023 · 0 comments
Open

Support container-format for tabby record #79

mih opened this issue Jul 19, 2023 · 0 comments

Comments

@mih
Copy link
Contributor

mih commented Jul 19, 2023

Here is the the layout of a single, not so complex, tabby record:

❯ ls -1 datalad_tabby/tests/data/demorecord
 tabbydemo.ctx.jsonld
 tabbydemo_authors.ctx.jsonld
 tabbydemo_authors.override.json
 tabbydemo_authors.tsv
 tabbydemo_data-controller.ctx.jsonld
 tabbydemo_data-controller.override.json
 tabbydemo_data-controller.tsv
 tabbydemo_dataset.ctx.jsonld
 tabbydemo_dataset.tsv
 tabbydemo_files.tsv
 tabbydemo_funding.ctx.jsonld
 tabbydemo_funding.override.json
 tabbydemo_funding.tsv
 tabbydemo_publications.ctx.jsonld
 tabbydemo_publications.override.json
 tabbydemo_publications.tsv

In XLSX format, the tsv files collapse into one, but still leave a sizable crowd:

 tabbydemo.ctx.jsonld
 tabbydemo_authors.ctx.jsonld
 tabbydemo_authors.override.json
 tabbydemo_data-controller.ctx.jsonld
 tabbydemo_data-controller.override.json
 tabbydemo_dataset.ctx.jsonld
 tabbydemo_funding.ctx.jsonld
 tabbydemo_funding.override.json
 tabbydemo_publications.ctx.jsonld
 tabbydemo_publications.override.json

In many cases (not in all though), the context files could be expressed as a single context. But even that would leave the overrides -- they cannot be reasonably be collapsed without complicating their internal structure.

To me it would make sense to support a "container-format", where all these files are put into a ZIP file. One could (again #50) consider remove the prefix part from all files inside the container. In that case, we could have a leading directory in the container (with the prefix), and also use the prefix for the ZIP file name.

mih added a commit that referenced this issue Jul 19, 2023
In preparation for
#79 and
despite the conclusion in
#50 this
change adds support for a simplified set of files that form a tabby
record.

The only thing that is simplified is that the common prefix is removed
from all filename. The demo record is not also included in this format.

This layout is what we would like put into a ZIP file container.

The prefix continues to exist (this was the main concern in #50), but is
now the name of the parent directory.

In #55
this simplifies the setup for the self-description of a dataset. All
files could go into `.datalad/tabby/self/` and have short names like:

- `dataset.tsv`
- `dataset.override.json`
- ...

There is no particular additional markup necessary to distinguish
single-item-dir format from the prefixed-layout. The absence of an
underscore char, is evidence enough.

Closes #50 (for real)
mih added a commit that referenced this issue Jul 19, 2023
In preparation for
#79 and
despite the conclusion in
#50 this
change adds support for a simplified set of files that form a tabby
record.

The only thing that is simplified is that the common prefix is removed
from all filename. The demo record is not also included in this format.

This layout is what we would like put into a ZIP file container.

The prefix continues to exist (this was the main concern in #50), but is
now the name of the parent directory.

In #55
this simplifies the setup for the self-description of a dataset. All
files could go into `.datalad/tabby/self/` and have short names like:

- `dataset.tsv`
- `dataset.override.json`
- ...

There is no particular additional markup necessary to distinguish
single-item-dir format from the prefixed-layout. The absence of an
underscore char, is evidence enough.

Closes #50 (for real)
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant