URI pattern for Procedure & Lot #74
cristianvasquez
started this conversation in
General
Replies: 0 comments
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Hello,
Building on the discussion about how URIs should be minted in these mappings, I write a bit about the relevance of the URI schemes, and then provide an alternative
Preamble
The current eForms RML mappings use the URI scheme
{ns}id_{notice-id}_{concept}_{trailer}
, where:{ns}
is a base namespace, in this casehttp://data.europa.eu/a4g/resource/
{concept}
is either (i) an ontology fragment label or (ii) source element label, with a suffix or prefix{trailer}
is either (i) an ID value (if the resource has one) or (ii) an online computed, deterministic hashThe rationale behind this is explained at: #22
Problem
The choice of URI patterns defines how the shared entities across notices are identified, and as a consequence, the query results.
Example: Currently, if we transform a Notice with the ID:
IDNOTICE1
, referring to a procedurec30d15d5
. We get:If we later transform
IDNOTICE2
, which refers to the same procedure, the triples will include a new instance of the procedure:The following query:
will yield
2
. (One can argue thatadms:identifier
can be used to identify the procedures as the same, but it's sub-optimal)Having a URI pattern for procedures which is independent of Notice, such as
{some-scheme}-{procedure-id}
, will yield triples like:epd:procedure-c30d15d5 a epo:Procedure. epd:IDNOTICE1 epo:refersToProcedure epd:procedure-c30d15d5. epd:IDNOTICE2 epo:refersToProcedure epd:procedure-c30d15d5.
The count of distinct
epo:Procedure
instances would yield1
in this case.I wrote examples of alternative URIs for procedures and lots.
Example of lot URI.
The PoC works by rewriting URIs through SPARQL queries+code.
Please comment if there are nuances I'm missing
Beta Was this translation helpful? Give feedback.
All reactions