RMLio / rmlmapper-java

The RMLMapper executes RML rules to generate high quality Linked Data from multiple originally (semi-)structured data sources
http://rml.io
MIT License
147 stars 61 forks source link

Error when there is no rr:TriplesMap #98

Closed ktk closed 3 years ago

ktk commented 3 years ago

When there is no rr:TriplesMap defined in the mapping file I get an error like this:

22:41:14.251 [main] ERROR be.ugent.rml.cli.Main               .main(193) - Failed to make mapping file conformant to RML spec.
java.lang.Exception: Mapping requires at least one TriplesMap
        at be.ugent.rml.conformer.MappingConformer.detect(MappingConformer.java:80)
        at be.ugent.rml.conformer.MappingConformer.conform(MappingConformer.java:55)
        at be.ugent.rml.cli.Main.main(Main.java:187)
        at be.ugent.rml.cli.Main.main(Main.java:36)

But the XML example in the spec do not provide one either. So who is correct, spec or implementation?

thomas-delva commented 3 years ago

Hi and thanks for using RML,

Indeed, this (non-fatal) error does not align perfectly with the examples in the spec. However, for the spec's examples the implementation can infer what the triples maps are (namely: the subjects of rml:logicalSource) and the output is as intended even without explicitly using stating a rr:TriplesMap.

We are adding a rr:TriplesMap statements to the examples in the spec to make it more clear for everyone.

DylanVanAssche commented 3 years ago

This is now fixed on https://rml.io/spec. Let us know if you still have issues.

no-response[bot] commented 3 years ago

This issue has been automatically closed because there has been no response to our request for more information from the original author. With only the information that is currently in the issue, we don't have enough information to take action. Please reach out if you have or find the answers we need so that we can investigate further.