-
Notifications
You must be signed in to change notification settings - Fork 2
Open
Description
With an XML/XPath logical source, if the iterated element has several sub-elements matching a given reference, only the first one is considered.
Example data:
<?xml version="1.0"?>
<persons>
<person>
<fname>Bob</fname>
<likes>music</likes>
</person>
<person>
<fname>Sue</fname>
<likes>tennis</likes>
<likes>chess</likes>
</person>
</persons>
Example mapping:
@prefix ex: <http://example.com/> .
@prefix rml: <http://w3id.org/rml/> .
<http://example.com/base/TriplesMap1> a rml:TriplesMap;
rml:logicalSource [ a rml:LogicalSource;
rml:source [ a rml:RelativePathSource;
rml:root rml:MappingDirectory;
rml:path "ious.xml"
];
rml:referenceFormulation rml:XPath;
rml:iterator "/persons/person";
];
rml:subjectMap [
rml:template "http://example.com/p/{fname}";
];
rml:predicateObjectMap [
rml:predicate ex:likes;
rml:objectMap [
rml:reference "likes"
];
];
.
Expected result:
<http://example.com/p/Bob> <http://example.com/likes> "music" .
<http://example.com/p/Sue> <http://example.com/likes> "tennis" .
<http://example.com/p/Sue> <http://example.com/likes> "chess" .
Obtained result:
<http://example.com/p/Bob> <http://example.com/likes> "music" .
<http://example.com/p/Sue> <http://example.com/likes> "tennis" .
Metadata
Metadata
Assignees
Labels
No labels