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
Uh oh!
There was an error while loading. Please reload this page.
Uh oh!
There was an error while loading. Please reload this page.
-
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:identifiercan 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:Procedureinstances would yield1in 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