Closed lkitching closed 5 years ago
This is excellent @lkitching. Explaining each pipeline in turn with examples and specifics on how the URIs are derived makes it much clearer.
I've taken the liberty of making some small tweaks - the patch should be self-explanatory.
I think there are some other avenues for extension:
column-csv
which we're not loading at data yet).domain.com/def/concept/age/{notation}
while the notations look like nisra/4
or nrs/3-or-4
allowing namespacing within a single codelist without needing multiple column definitions etc). Perhaps we should document that approach in an example? I'm not sure how best to present patterns (I find a lot of tutorials are named by the topic not the relevant features!).Reading this I'm also beginning to wonder about making some changes to the code:
input-csv
to be more descriptive? Perhaps it should instead be components-csv
and observations-csv
(or cube-csv
).dim:age [a class:Age]
. I've since learned that the rdfs:range
property works in reverse and instead serves to imply this statement. At this point I'm inclined to remove the rdfs:range
and classize elements from table2qb and validate this elsewhere.qb:codeList
propertiesname field
in columns-csv contains no hyphens (if we don't already) or is otherwise suitable for inclusion in URI templates)qb:measureType
is not accepted." IIRC there might be a way to do this (perhaps with {+varname}
)@Robsteranium - We already valdiate the name
field doesn't contain hyphens. Ideally we could use the validation in csv2rdf
to check it's a valid variable name within a URI template. I'm wondering if having our own URI template library might be useful. I've created an issue for validating generated cubes. Agree re re-naming input-csv
, I've started referring to it as observations-csv
in parts of the code but renaming the pipeline parameter also makes sense.
The outstanding points have gone into #97, #98, #99 and #100.
Issues #62, #83, 84 - Update the table2qb documentation to describe the structure of generated URIs as well as the relationship between the pipelines.
Move the usage documentation into its own page and update the employment example to follow a similar structure.