popolo-project / popolo-spec

International legislative data specifications
http://www.popoloproject.com/
99 stars 18 forks source link

If a property is not set, how to determine whether it is of unknown value or known to be null? #17

Closed jpmckinney closed 11 years ago

jpmckinney commented 11 years ago

Uncertainty is a frequent topic in RDF circles - need to research. So far:

For the MongoDB and JSON serializations, we can propose that if a value is inapplicable or known to be zero/none, then that field should not be on the record; if the value is unknown, then it should be set to null.

jpmckinney commented 11 years ago

@dracos I've done a little research on how to flag a field as "unknown", see the updated issue description.

For far future dates, this Stackoverflow question suggests using impossible dates in the year 9999, e.g. 9999-12-32 or 9999-13-00. In the example you gave, I would simply not set an end_date field.

jpmckinney commented 11 years ago

Re: #7, for sorting reduced dates, we can maybe make impossible full-length versions of the reduced dates, e.g. for 2001 write 2001-13-00. Applications would have to be clever about instantiating these dates as data objects within their native language, but I don't think that's any more complicated than having to interpret two dates as describing a range.

jpmckinney commented 11 years ago

Add some of this guidance to an appendix to close the issue.

jpmckinney commented 11 years ago

Relevant issue: how to label a representative as being independent with respect to party affiliation?

It seems in such a case that an implementation should add a party or causus field.

jpmckinney commented 11 years ago

Added discussion to an appendix.