[seek-dev] What to do about "nil"

Matt Jones jones at nceas.ucsb.edu
Tue Nov 9 11:24:34 PST 2004


This is closely related to the issue Chad explored earlier with the 
Ptolemy type system where types like 'double' did not allow for missing 
values.  So we had discussed creating extended types for all of the 
primary ptolemy types that permitted missing values.  I think we 
concluded that that would be clunky and ultimatley result in a large 
number fo additional type classes that would have to be added to the 
TypeLattice.  SO I htink we decided not to do it, but I think we also 
don't have a clean solution to the problem.  Chad -- do you remember the 
details?

Matt

Bertram Ludaescher wrote:
> What about the more fundamental question? How do you represent 'nil'
> in the Ptolemy and/or Java type system? I would hope that one could in
> fact have such a distinguished value... and that the XML Schema ->
> Ptolemy (or Java) type translation in fact create the correct
> representation.. Handling of that value in the workflow would than be
> quite clean, as supposed to an ad-hoc solution.
> (But then again... the world itself seems quite ad-hoc ;-)
> 
> Bertram
> 
> 
>>>>>>"MJ" == Matt Jones <jones at nceas.ucsb.edu> writes:
> 
> MJ> 
> MJ> Hi Rod,
> MJ> You're right that the data needs to be preserved even when the lat/lon 
> MJ> values are nil -- some people may want to see the rest of the Darwin 
> MJ> Core record for various workflows.  However, for the purposes of the 
> MJ> niche model example, I think we want to filter out all records that lack 
> MJ> lat/lon data.  So.... maybe the best solution is to fire some sort of 
> MJ> null or missing value code on the lat/lon ports, and then provide a 
> MJ> filter downstream in the workflow that only keeps records that have 
> MJ> legit lat/lon values -- this is what GARP ultimately needs and what 
> MJ> should be saved in the file.
> MJ> 
> MJ> Matt
> MJ> 
> MJ> Rod Spears wrote:
> 
>>>Here is the schema for Latitude per the DarwinCore spec:
>>><xsd:element name="DecimalLatitude" 
>>>substitutionGroup="digir:searchableReturnableData" nillable="true">
>>><xsd:annotation>
>>><xsd:documentation>The latitude of the location from which 
>>>the cataloged item was collected, expressed in decimal 
>>>degrees.</xsd:documentation>
>>></xsd:annotation>
>>><xsd:simpleType>
>>><xsd:restriction base="xsd:decimal">
>>><xsd:minInclusive value="-90.0"/>
>>><xsd:maxInclusive value="90.0"/>
>>></xsd:restriction>
>>></xsd:simpleType>
>>></xsd:element>
>>>
>>>Note that the value can be "nil" and it also has a restriction. When the 
>>>value reaches the DarwinCoreDataSource as a string it is either a valid 
>>>number within the range or an empty string (length zero).
>>>
>>>Currently, I convert the empty string to "0.0" which is the wrong thing 
>>>to do. The question is what should I do? As Dan suggested I could pick 
>>>an arbitray large number and pass that back, but that assumes the 
>>>consumer will know what to do with that value. I could skip any and all 
>>>rows that have empty Lat or Long values, but that may be bad for 
>>>consumers that want to see that data but don't care if it is nil (empty) 
>>>or not.
>>>
>>>Any thoughts?
>>>
>>>Rod
>>>
>>>_______________________________________________
>>>seek-dev mailing list
>>>seek-dev at ecoinformatics.org
>>>http://www.ecoinformatics.org/mailman/listinfo/seek-dev
> 
> MJ> 
> MJ> -- 
> MJ> -------------------------------------------------------------------
> MJ> Matt Jones                                     jones at nceas.ucsb.edu
> MJ> http://www.nceas.ucsb.edu/    Fax: 425-920-2439    Ph: 907-789-0496
> MJ> National Center for Ecological Analysis and Synthesis (NCEAS)
> MJ> University of California Santa Barbara
> MJ> Interested in ecological informatics? http://www.ecoinformatics.org
> MJ> -------------------------------------------------------------------
> MJ> _______________________________________________
> MJ> seek-dev mailing list
> MJ> seek-dev at ecoinformatics.org
> MJ> http://www.ecoinformatics.org/mailman/listinfo/seek-dev

-- 
-------------------------------------------------------------------
Matt Jones                                     jones at nceas.ucsb.edu
http://www.nceas.ucsb.edu/    Fax: 425-920-2439    Ph: 907-789-0496
National Center for Ecological Analysis and Synthesis (NCEAS)
University of California Santa Barbara
Interested in ecological informatics? http://www.ecoinformatics.org
-------------------------------------------------------------------



More information about the Seek-dev mailing list