Join GitHub today
GitHub is home to over 28 million developers working together to host and review code, manage projects, and build software together.Sign up
Geopackage references to case sensitivty for views, triggers, constraints #131
The Geopackage specification allows properly formatted tables or views to be used interchangeably.
Section 1.0 Base states:
The required capabilities specified in this clause serve as the base for options specified in clause 2 and extensions specified in clause 3. All gpkg_* tables and views and all tiles user data tables specified in this standard SHALL have only the specified columns and table constraints. Any features user data tables MAY have columns in addition to those specified. All specified table and column name values SHALL be lowercase.
While implied by the paragraph as a whole, to avoid any ambiguity, the last sentence should be updated to explicitly call out both tables and views. The sentence should be changed to read as follows:
All specified table, view and column name values SHALL be lowercase.
A related issue exists in Section 22.214.171.124.1, Table 11 Data Columns Table or View Definition. While the rest of the Geopackage specification explicitly calls for the use of lowercase object names, the Column Description for the constraint_name column reads, "Case sensitive column value constraint name specified by reference to gpkg_data_column_constraints."
If you accept that triggers and constraints are logically database objects at the same level as tables, views, and column names, then the Geopackage specification should be consistent in requirements for case sensitivity of these objects. To address this issue, the following changes are proposed:
The last sentence of “Section 1.0 Base” should be changed to read as follows:
All specified table, view, column, trigger and constraint name values SHALL be lowercase.
Section 126.96.36.199.1 Table Definition
Section 188.8.131.52.2 Table Data Values
Section 184.108.40.206.1 Table Definition