Very different behavior on iterators compared to RMLViewer + RMLMapper
Nobody has claimed this yet.
Assessment
- Difficulty
- 4/5
- Estimated time
- 3-5 days
- Newbie friendliness
- 35/100
Research direction
Start by reproducing the supplied LogicalViews scaffolding and the iterator/reference cases, then trace how MappingWeaver handles nested fields and array values. Compare the results with RMLViewer and RMLMapper; done means the differing cases have an agreed, tested behavior or the incompatibility is clearly documented.
Written by the indexing model from the issue text.
Description
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 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+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 MappingWeaverrml: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
- Dominant language
- Java
- Stars
- 3
- Forks
- 1
- PR merge metrics
- No merged PRs in 30d
Contributor guide
No contributing guide indexed for this repository
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from RMLio/MappingWeaver-java
-
Difficulty 2/5 1-3 hours Newbie friendliness 76/100
RMLio/MappingWeaver-java#11 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
RMLio/MappingWeaver-java#13 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 58/100
RMLio/MappingWeaver-java#12 · 1 comment ·
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
RMLio/MappingWeaver-java#10 ·
-
Difficulty 3/5 1-2 days Newbie friendliness 55/100
All issues in RMLio/MappingWeaver-java
Similar issues
-
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
elastic/gradle-plugins#157 ·
-
enhancement Tools
Difficulty 1/5 Under an hour Newbie friendliness 75/100
-
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
apache/rocketmq-dashboard#5008 ·
-
bug
Difficulty 2/5 1-3 hours Newbie friendliness 75/100
-
DETECT_PARAMETER_NAMES=false silently disables @ConstructorProperties-based Creator detection too Open
Difficulty 2/5 1-3 hours Newbie friendliness 70/100
FasterXML/jackson-databind#6229 ·