ISSUE-35 (case sensitivity): Case sensitivity of SQL identifiers [R2RML]

ISSUE-35 (case sensitivity): Case sensitivity of SQL identifiers [R2RML]

http://www.w3.org/2001/sw/rdb2rdf/track/issues/35

Raised by: David McNeil
On product: R2RML

In several places the R2RML spec indicates the SQL identifiers (e.g. column names) are case sensitive (e.g. section 3.3.1.8). I believe that it would be more useful to specify that the case sensitivity of the SQL identifiers needs to match the case sensitivity of the underlying database. So if the database is case _in_sensitive then it is acceptable (and good) for an R2RML implementation to interpret the SQL identifiers in a case _in_sensitive matter.

Treating the identifiers as case _in_sensitive when the underlying database is case _in_sensitive is useful for a couple of reasons:
* users of such a database are accustomed to writing case _in_sensitive SQL
* user entered SQL identifiers need to be interpreted in a way that matches the identifiers generated by the underlying database. For example, the database produces SQL identifiers when the database metadata is queried.

This issue arises in an R2RML implementation that parses the SQL in the R2RML mapping and performs validation, data type analysis, etc.

A possible way to address this is to add a section to the spec that states the "execution environment" should include an indicator of whether the underlying database is case sensitive. This is how we have addressed this issue in our implementation.

Received on Tuesday, 22 March 2011 16:53:19 UTC