Comments (7)
Saved you hours of work there @bjdmeest 😂
from rml-core.
I have the feeling these are two issues:
- joining values of a second source as objects of a first source (which I don't think is currently feasible in RML?)
- executing a function over a join result
Right now
- it is possible to join values across data sources, but without join conditions (see eg https://github.com/RMLio/rml-fno-test-cases/blob/master/RMLFNOTC0009-CSV/mapping.ttl, also brought up by @pmaria at https://kg-construct.slack.com/archives/C01QFSW77QF/p1615717859003600)
- it is possible to nest functions (see eg https://github.com/RMLio/rml-fno-test-cases/blob/master/RMLFNOTC0018-CSV/mapping.ttl), so functions on top of functions, but not functions on top of joins.
For what you want, I think we need both (i) a function with a nested condition (in RML+FnO), and (ii) the ability to describe a join condition that does not return the subject of a triples map, but something else, maybe it returns the iteration from a different logical source that matches the condition, so that we could use a reference formulation to take any data field from that iteration (in RML) --> this is related to kg-construct/mapping-challenges#29
What I did:
- I create new issue to describe the current "it is possible to join values across data sources, but without join conditions" in this spec --> kg-construct/rml-lv#16
- I create new issue to describe the current "it is possible to nest functions" in this spec --> kg-construct/rml-fnml#3
- I create new issue to specify feature request "executing a function over a join result" here (still to be discussed, bc I think that depends on how we handle kg-construct/mapping-challenges#29) --> kg-construct/rml-fnml#4
WDYT?
from rml-core.
Isn't "joining values of a second source as objects of a first source" the same as the mapping challeng "join on literals"? At least, that's how I interpreted the latter.
I agree with the above. I also feel that it would be good to solve that issue in RML first, before deciding on how iterations in "function triples maps" should work. It might save us from making things overly complex.
from rml-core.
Isn't "joining values of a second source as objects of a first source" the same as the mapping challeng "join on literals"? At least, that's how I interpreted the latter.
You're totally right, forgot that was already in there 😅
EDIT: I refined my comment above
from rml-core.
Isn't "joining values of a second source as objects of a first source" the same as the mapping challenge "join on literals"? At least, that's how I interpreted the latter.
Totally agree with this too!
from rml-core.
@bjdmeest as this issue has been split into three new issues, where we are actually discussing all, shall we close this?
from rml-core.
awesome, yes!
from rml-core.
Related Issues (20)
- Issues with MySQL test cases HOT 10
- RFC: RMLTC0002c-JSON & RMLTC0002c-XML (bis) HOT 2
- Error in spec about referencing attributes when processing XML HOT 1
- Issues with XML test cases HOT 8
- Missing test cases for multi-valued reference maps HOT 4
- Inconsistencies, errors, ... in SHACL shapes
- OM, SM, and GM may have no reference, template, or constant HOT 6
- Implementation notes HOT 18
- Should DatatypeMap be defined as a TermMap? HOT 3
- Result of expressions should be an array/list instead of set
- Use RFC 9535 JSONPath compliant query expressions in spec and test cases
- Define ill-formed joins in the spec HOT 4
- capture a piece of JSON/XML as a literal HOT 2
- Define Logical Source in RML-Core instead of RML-IO HOT 1
- Miss-Alignment between the shapes in https://kg-construct.github.io/rml-core/ontology/rml-core-bc.ttl and R2RML specification HOT 4
- There is no notion of order in RDF mappings, and this has implications for the RDF output HOT 2
- How to construct graph object HOT 2
- Replace `sh:name` and `sh:description` in SHACL shapes HOT 2
- Issue in test case 10b-JSON HOT 3
- Enhance validation and generation error description in the spec HOT 8
Recommend Projects
-
React
A declarative, efficient, and flexible JavaScript library for building user interfaces.
-
Vue.js
🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.
-
Typescript
TypeScript is a superset of JavaScript that compiles to clean JavaScript output.
-
TensorFlow
An Open Source Machine Learning Framework for Everyone
-
Django
The Web framework for perfectionists with deadlines.
-
Laravel
A PHP framework for web artisans
-
D3
Bring data to life with SVG, Canvas and HTML. 📊📈🎉
-
Recommend Topics
-
javascript
JavaScript (JS) is a lightweight interpreted programming language with first-class functions.
-
web
Some thing interesting about web. New door for the world.
-
server
A server is a program made to process requests and deliver data to clients.
-
Machine learning
Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.
-
Visualization
Some thing interesting about visualization, use data art
-
Game
Some thing interesting about game, make everyone happy.
Recommend Org
-
Facebook
We are working to build community through open source technology. NB: members must have two-factor auth.
-
Microsoft
Open source projects and samples from Microsoft.
-
Google
Google ❤️ Open Source for everyone.
-
Alibaba
Alibaba Open Source for everyone
-
D3
Data-Driven Documents codes.
-
Tencent
China tencent open source team.
from rml-core.