Skip to content

RMLio/rmlweaver-js

Repository files navigation

RMLWeaver-JS

Table of content


RMLWeaver-JS is a Node.js algebraic mapping engine that works in tandem with AlgeMapLoom-rs. RMLWeaver-JS executes the mapping processes described by the mapping plan generated by AlgeMapLoom-rs. Based on RX-JS streams, RMLWeaver-JS maps the heterogeneous data to RDF knowledge graphs in streaming manner. This results in an overall lower memory usage.

Disclaimer

This implementation is used as a platform for fast iterations of implementing the underlying algebraic formalisms!

Usage

Execute a Dot File

To execute a dot file, use:

Example Execute a dot/ttl file with:

npm run execute_dot ${file}

To run in debug mode add argument -debug Like

npm run execute_dot -- ${file} -debug

Execute tests

RML test cases, for CSV input, are located under the folder ./test/rml-mapper-test-cases-csv/.

ShExML test cases are located under the folder ./test/shexml/.

To execute the tests, use:

npm test

Future works:

  • LeftJoin and RightJoin.
  • More file types for source and target.
  • (Not Sure) Fix that extend operator does not push a value if the value for the template is missing. (Test 2c)
  • Optimize code
  • Write benchmarks.

Acknowledgement

This proof of concept algebraic mapping engine is implemented by Tristan Verbeken

About

An algebraic mapping engine based on mapping algebra

Topics

Resources

License

Stars

Watchers

Forks

Packages

No packages published