Following up on #3, but using LogicalViews, there's a big gap between what MappingWeaver allows to access array values, versus what RMLViewer + RMLMapper allow.
Given the following scaffolding:
:view a rml:LogicalView ;
rml:viewOn [
# JSONPath root iterator over { "key": [ "1", "2" ] }
] ;
rml:field [
rml:fieldName "key"
# insert field definition from list below
] .
:mapping a rml:TriplesMap ;
rml:logicalSource :view ;
rml:subjectMap [ rml:termType rml:BlankNode ] ;
rml:predicateObjectMap [
rml:predicate <urn:example:hasValue> ;
rml:objectMap [
# insert corresponding reference from field definitions below
]
] .
A. With direct reference rml:reference "key" in the mapping:
rml:reference "key[*]" in the view's field works
rml:reference "$.key[*]" in the view's field works
rml:reference "key" in the view's field fails in MappingWeaver
rml:reference "$.key" in the view's field fails in MappingWeaver
rml:iterator "$.key[*]" (without nested field) fails in MappingWeaver and RMLViewer+RMLMapper
B. With nested reference rml:reference "key.value" in the mapping:
- Using
rml:iterator "$.key[*]" ; rml:field [ rml:fieldName "value" ; ... ] in the view:
rml:reference "@" in the nested field works (and MappingWeaver adds canonical type)
rml:reference "[*]" in the nested field fails in MappingWeaver
rml:reference "$" in the nested field fails in MappingWeaver
-
Using rml:iterator "key[*]" [ rml:fieldName "value" ; ... ] in the view, all of the references above (@, [*], $) fail in MappingWeaver
-
Using rml:iterator "$.key" [ rml:fieldName "value" ; ... ], in the view, all of the references above fail in MappingWeaver
-
Using rml:iterator "key" [ rml:fieldName "value" ; ... ], in the view, all of the references above fail in MappingWeaver
Following up on #3, but using LogicalViews, there's a big gap between what MappingWeaver allows to access array values, versus what RMLViewer + RMLMapper allow.
Given the following scaffolding:
A. With direct reference
rml:reference "key"in the mapping:rml:reference "key[*]"in the view's field worksrml:reference "$.key[*]"in the view's field worksrml:reference "key"in the view's field fails in MappingWeaverrml:reference "$.key"in the view's field fails in MappingWeaverrml:iterator "$.key[*]"(without nested field) fails in MappingWeaver and RMLViewer+RMLMapperB. With nested reference
rml:reference "key.value"in the mapping:rml:iterator "$.key[*]" ; rml:field [ rml:fieldName "value" ; ... ]in the view:rml:reference "@"in the nested field works (and MappingWeaver adds canonical type)rml:reference "[*]"in the nested field fails in MappingWeaverrml:reference "$"in the nested field fails in MappingWeaverUsing
rml:iterator "key[*]" [ rml:fieldName "value" ; ... ]in the view, all of the references above (@,[*],$) fail in MappingWeaverUsing
rml:iterator "$.key" [ rml:fieldName "value" ; ... ], in the view, all of the references above fail in MappingWeaverUsing
rml:iterator "key" [ rml:fieldName "value" ; ... ], in the view, all of the references above fail in MappingWeaver