Open ashleysommer opened 6 years ago
@nicholascar I need to know whether it is important to address these limitations (by adding these features to the pyLDAPI) before rolling out the pyLDAPI to our implementations.
For each of the three points above in order:
So, just generate what you can with the RofR as a reg:Register
and ignore all dcat:Dataset
and similar properties. We will need to work out some convention like pyLDAPI installations auto-generating a top-level register that is, itself, just a reg:Register
and what you see as the dcat:Dataset
object here will have to be another object. Perhaps in re-doing the GNAF, make the RofR at linked.data.gov.au/dataset/gnaf/ and the dcat:Dataset
declaration for linked.data.gov.au/dataset/gnaf (no trailing slash). We can then think of a way to link the two perhaps with a static declaration in the dataset of <http://linked.data.gov.au/dataset/gnaf> dct:hasPart <http://linked.data.gov.au/dataset/gnaf/> .
and/or a way to inject additional triples into the RofR graph to allow for <http://linked.data.gov.au/dataset/gnaf/> dct:isPartOf <http://linked.data.gov.au/dataset/gnaf> .
We may think of better relationships than dct:hasPart/dct:isPartOf
later.
As above, push these out of the Rof R and delegate them to the Dataset object which can be static for now, as it currently is in the index.ttl file.
I think we really need reg:containedItemClass
for all registers starting with the RofR (where the reg:containedItemClass
is, of course, reg:Register
) so when building the RofR, the method used to interrogate the other Registers in the API is going to have to ask those registers for this info also.
Look at this output of the current implementation of the GNAF Register of Registers: https://pastebin.com/raw/QpL4iPYx
You will notice there are triples in that output that currently the pyLDAPI cannot be configured to output.
For example, this is what the same RofR would look like as ouput by the current version of the pyLDAPI: https://pastebin.com/raw/UiMc3krd
Comparing the two, notice:
reg:Registry
for the RofR, but the GNAF RofR specifies a class ofdcat:Dataset
as well asreg:Registry
dc:creator, contributor, publisher, modified, source
, etc, as seen in the GNAF output.reg:register
, and optionally itsrdfs:label
if one is supplied. There is currently no mechanism to add extra predicate-object pairs to each item, such as thereg:containedItemClass
as seen in the GNAF RofR. Note this final issue also affects other generated registry listings, not just an RofR.