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
144 stars 61 forks source link

Reoccurrence of past issue regarding "empty cells from CSV input not getting skipped" in rmlmapper 6.1.3 #209

Closed nayaksnigdha closed 9 months ago

nayaksnigdha commented 1 year ago

Hello Dev Team,

I am using stanalone version of rmlmapper-6.1.3-r367-all.jar on Windows 10 machine.

I am facing the issue regarding empty cells in input CSV input not getting skipped.

If my input CSV has empty values, the tool execution fails with ArrayIndexOutOfBounds Exception from CSVRecord.java

As per R2RML spec here : https://www.w3.org/TR/r2rml/ (section 11.1) empty is valid input.

This issue has been reported and fixed in the past (https://github.com/RMLio/rmlmapper-java/issues/140), but still resurfaces with 6.1 version.

DylanVanAssche commented 1 year ago

Do you have maybe an example for us:

?

Thanks!

nayaksnigdha commented 1 year ago

Hello Dylan,

Please find attached the files (input csv, console error snapshot, mappings file) you requested. logs.zip

During my initial investigation I found that the issue is because of empty value in last column of csv file. If I provide a dummy value, output is generated successfully.

DylanVanAssche commented 9 months ago

Hi!

It seems that your CSV is missing a comma at the end. It has more columns in the headers than the actual data.

This CSV file worked:

name,description,sequencenumber,uniqueid,status,changerequestnumber,createddate,modifieddate,terminateddate
name1,desc,1,123456789,status1,cr123,2022-10-05T05:59:46.170Z,2022-10-07T05:59:46.170Z,