but this is ambiguous: while {id} in this template indicates the field is used, the same {id} could indicate that a reference id should be used. How can an engine know which of the two to use?
Solutions that were discussed:
Have a "fall-through syntax" or precedence rule, i.e. {id} indicates a field if a field with that name is defined, and indicates a reference otherwise.
Have a better, non-colliding syntax. For example using double braces if a field is indicated, i.e. {{id}}. -> this needs to be thought out
Use other properties than rr:template and rml:reference if fields are used, e.g. rml:fieldTemplate, rml:fieldReference. -> this means fields and references cannot be mixed
If there is a field declaration like
it would be used in a template like:
but this is ambiguous: while
{id}
in this template indicates the field is used, the same{id}
could indicate that a referenceid
should be used. How can an engine know which of the two to use?Solutions that were discussed:
{id}
indicates a field if a field with that name is defined, and indicates a reference otherwise.{{id}}
. -> this needs to be thought outrr:template
andrml:reference
if fields are used, e.g.rml:fieldTemplate
,rml:fieldReference
. -> this means fields and references cannot be mixed