Last modified: 2007-12-28 14:21:52 UTC

Wikimedia Bugzilla is closed!

Wikimedia has migrated from Bugzilla to Phabricator. Bug reports should be created and updated in Wikimedia Phabricator instead. Please create an account in Phabricator and add your Bugzilla email address to it.
Wikimedia Bugzilla is read-only. If you try to edit or create any bug report in Bugzilla you will be shown an intentional error message.
In order to access the Phabricator task corresponding to a Bugzilla report, just remove "static-" from its URL.
You could still run searches in Bugzilla or access your list of votes but bug reports will obviously not be up-to-date in Bugzilla.
Bug 11689 - Page names are compared case insensitively within queries
Page names are compared case insensitively within queries
Product: MediaWiki extensions
Classification: Unclassified
Semantic MediaWiki (Other open bugs)
All All
: Normal major (vote)
: ---
Assigned To: Nobody - You can work on this!
Depends on:
  Show dependency treegraph
Reported: 2007-10-17 05:32 UTC by Sergey Chernyshev
Modified: 2007-12-28 14:21 UTC (History)
1 user (show)

See Also:
Web browser: ---
Mobile Platform: ---
Assignee Huggle Beta Tester: ---


Description Sergey Chernyshev 2007-10-17 05:32:25 UTC
In SMW 1.0 page names are not compared case sensitively withing queries.

When Page1 defines [[Some page property::CAPITALIZED]] and Page2 defines [[Some page property::DeCaPiTaLiZeD]] when "Property:Some page property" has type Type:Page, following query:

  <ask>[[Some page property::Capitalized]]</ask>

returns both Page1 and Page2 as a result.

While it might be fine to compare strings case insensitively, comparing page names must follow MediaWiki configuration described at, which means that (according to *current* functionality) it must work case sensitively (including first letter if $wgCapitalLinks is set to false).
Comment 1 Markus Krötzsch 2007-12-28 14:21:52 UTC
I agree that this is a bug, though I do not see why exactly this problem is "major" ...

I have now changed all SMW created database tables to use "binary" for their VARCHAR fields, just as MediaWiki does. This should force collations to be case-sensitive on new installations.

Some old installations may not have this setting for their tables yet. To change this, these sites can now make a "full" refresh of their semantic data, which involves a complete rebuild of the DB tables. The following command should be issued to do that:

%  php SMW_refreshData.php -vpf  &&  php SMW_refreshData.php -v

This full refresh can also be used to repair/modify the collation of all SMW tables according to a changed dfault setting of the DB. It is of course also possible to issue the two command separately, or to use start (-s) and end (-e) settings to do refreshing in parallel or in smaller chunks.

Note You need to log in before you can comment on or make changes to this bug.