Hi,

Actually it look like dBase III does not support NULL strings and using empty 
characters instead when saving is the right thing. It is also used like that in 
http://shapelib.maptools.org/dbf_api.html

 " Note that NULL fields are represented in the .dbf file as having all spaces 
in the field. Reading NULL fields will result in a value of 0.0 or an empty 
string"

dBase 7 version supports NULL as different case than empty 
http://www.dbase.com/help/Language_Definition/IDH_LDEF_NULLVALUES.htm but 
shapefiles use dBase III.

I think that when Boolean fields are saved into shapefiles the empty values 
should be automatically converted into False. If user needs to separate 
NULL/FALSE/TRUE it would be better not to trust to Boolean attribute but to use 
a string field instead.

-Jukka Rahkonen-

________________________________________
Benjamin Gudehus wrote:
Hey,

that's interesting.

The STRING data type also supports NULL. However if one saves this
attribute data into a Shapefile/dBASE and reopens this file, then all
strings will change from NULL to "".

>From this perspective it is interesting, that Shapefiles actually
support NULL. I guess it must be a misbehave of OpenJUMP on this
regard.

--Benjamin

On 3/20/15, Michaël Michaud <[email protected]> wrote:
> Hi Jukka,
>
> Good point about nullable Boolean.
> I'd like to keep the checkbox, rather than a 3 items combobox,
> but I think it will be difficult to add the capability to "nullify" it.
> Notice that boolean type is not the only one concerned.
> Once you have set a value for a String attribute type, you cannot
> nullify it back.
>
> Having null and empty values in a string attribute (or null and false)
> is always
> very confusing (either in OJ or in a database). A few years ago, I added
> the isNull
> function in the Simple Query Tool to make some queries just possible.
>
> Michaël
>
>
> Le 19/03/2015 11:00, Rahkonen Jukka (MML) a écrit :
>>
>> Hi Michael,
>>
>> Have you been thinking if OpenJUMP should support NULL as a third
>> option in Boolean attributes? Right now it seems to partly support
>> NULLs, partly not.
>>
>> -Create a new feature, do not edit attributes, save -> Boolean
>> attributes are saved as NULLs but user probably believes that they are
>> False because attribute table shows the box unchecked.
>>
>> -Edit Boolean attribute by checking/unchecking the tick box -> Value
>> is True or False but it can’t be changed back to NULL
>>
>> Current behavior does not feel correct. I can imagine two alternatives:
>>
>> -Deny NULL and initialize all Boolean attributes to False.
>>
>> -Make some clever change to user interface that makes difference
>> between the three Boolean values: NULL, TRUE, FALSE. Empty check box
>> with colored borders for null? Or three-item drop-down menu?
>>
>> Considerations about what it means on the Java side
>> http://stackoverflow.com/questions/11185321/when-should-null-values-of-boolean-be-used
>>
>> dBase format and shapefiles do support NULL
>> http://www.clicketyclick.dk/databases/xbase/format/data_types.html
>>
>> -Jukka Rahkonen-
>>
>>
>>
>> ------------------------------------------------------------------------------
>> Dive into the World of Parallel Programming The Go Parallel Website,
>> sponsored
>> by Intel and developed in partnership with Slashdot Media, is your hub for
>> all
>> things parallel software development, from weekly thought leadership blogs
>> to
>> news, videos, case studies, tutorials and more. Take a look and join the
>> conversation now. http://goparallel.sourceforge.net/
>>
>>
>> _______________________________________________
>> Jump-pilot-devel mailing list
>> [email protected]
>> https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel
>
>

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

------------------------------------------------------------------------------
Dive into the World of Parallel Programming The Go Parallel Website, sponsored
by Intel and developed in partnership with Slashdot Media, is your hub for all
things parallel software development, from weekly thought leadership blogs to
news, videos, case studies, tutorials and more. Take a look and join the 
conversation now. http://goparallel.sourceforge.net/
_______________________________________________
Jump-pilot-devel mailing list
[email protected]
https://lists.sourceforge.net/lists/listinfo/jump-pilot-devel

Reply via email to