Skip to content

RMLMapper does not check compatibility between value and datatype #276

@frmichel

Description

@frmichel

I have a mapping with an IP address e.g. "10.0.0.37", and I map it to a decimal:

  rr:predicateObjectMap [
    rr:predicate devinfra:ip;
    rr:objectMap [ rml:reference "$.ipv4"; rr:datatype xsd:decimal ];
  ].

I would expect RMLMapper (8.1.0) to return a parsing error. But in the end it just generates the value:
"10.0.0.37"^^xsd:decimal

I tested with value "10.0", and RMLMapper generated the right decimal term 10.0 without quotes nor ^^xsd:decimal.

After discussing this with Els, the current RML Core specification (https://kg-construct.github.io/rml-core/spec/docs/#data-errors) says that an error should be raised. There is I no test for this case in RML Core.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type
    No fields configured for issues without a type.

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions