RMLio / RMLio/MappingWeaver-java
Very different behavior on iterators compared to RMLViewer + RMLMapper
Dieses Issue hat noch niemand übernommen.
- Vorherrschende Sprache
- Java
- Sterne
- 3
- Forks
- 1
- PR-Merge-Kennzahlen
- Keine gemergten PRs in 30 T.
Beschreibung
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
Beitragsleitfaden
Für dieses Repository ist kein Beitragsleitfaden indexiert
Erste Schritte
- Lies das ganze Issue und danach den Beitragsleitfaden des Projekts.
- Schreib ins Issue, dass du es übernimmst — das erspart doppelte Arbeit.
- Forke das Repository und arbeite in einem Branch.
- Öffne einen Pull Request, der die Issue-Nummer nennt.
Rechercherichtung
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.
Vom Indexierungsmodell aus dem Issue-Text verfasst.
Bewertung
- Tech-Stack
- java
- Bereich
- backend
- Issue-Typ
- Bug
- Schwierigkeit
- 4/5
- Geschätzter Aufwand
- 3-5 Tage
- Aktivitätsstatus
- Ruhig
- Klarheit
- Muss geklärt werden
- Anfängerfreundlichkeit
- 35/100