Type:URL is currently limited to 255 characters, since this is the maximum length of the string field in the standard database schema of SMW. Arbitrary length types Text and Code cannot be queried in the same way, and do therefore not provide an alternative.
As a solution, all long Text data should be stored together with a hash to allow efficient querying, and a way should be provided for URL data to use this facility (either with a new type LongURL or by changing the default behaviour of URL). It might be possible to construct the hash by using, say, 247 initial characters of the string, followed by an 8 character alphanumeric hash code. This could have some advantages:
(1) String comparison functions (that are based on lexicographic order) would produce meaningful results unless the first 247 chars agree. Even in the latter case, meaningful comparisons would be possible.
(2) It might be possible to leave the long text field set to NULL if the string is short enough for 255 letters. This should safe reduce the overhead of supporting long strings significantly.
With this method, all "long string" types should be reconcilable with the normal short versions, and String as well as URL should be storable in the same table.
Version: unspecified
Severity: major
See Also:
https://bugzilla.wikimedia.org/show_bug.cgi?id=32955