I tend to forget that date filters are affected by date preferences.
So when filtering Events or Persons on date ranges, it is always disconcerting to see results with dates FAR outside my filter parameters.
i.e., when search for births “from 1900 to 1925”, it also returns “Before” dates to 1975, “After” dates after 1850, and “About” dates from 1850 to 1975.
I could temporarily tweak the 3 values in the Date tab of Preferences before Filtering (or exporting/reporting filtered datasets), but it would be nice to have something that does this temporarily AND is visible enough to remind that the dates can be fuzzy.
Could a scaling factor be added to the date Filter? When the “less fuzzy” scaling factor is enabled, the value of the Before, After & About is temporarily 10% of its normal value.
So a ±50 year “About” changes to ±5 years and the fuzziness reduces from a century to a decade.
The date modifiers (before, after, about) only have an actual affect on age calculations and filtering as you correctly point out.
I have not found any adverse results changing about to 4 +/- years and before and after to 9. This gives an effective 10 year span for each modifier.
My issue is having a filter Type=“Birth” and Date=“after 1900”. Logic says that a birth record in 2000 would be returned in the results. But to get that result you need to use “between 1900 and 2000”. Not a major problem, just need to remember this quirk.
So I would advocate that the limits remain on the date of the event, but when filtering, before and after would not be restricted but use their literal meaning. About should retain the limitations of the preference setting. After all, what does ‘about’ mean.
And while on the subject, I would take a strict literal meaning of the terms. "after 1900" should mean “when the year is no longer 1900”, or starting 1 Jan 1901. Gramps understands “after 1900” as after and including 1 Jan 1900. The same applies to “before”.
That “After” caveat is important. I did not know that it was a “≥” instead of a “>” comparison. Does that mean the “Before” is a “≤” as well?
Maybe the defaults on the Date Preferences should just be tweaked?
There are a couple others almost always needs to be changed right off the starting blocks.
The one that comes to mind is that defaults for the number of leading zeros in IDs is too low.
And it might be nice for Gramps to reserve the lowest numbers in the ID auto-numbering. That would making it easier to re-number in conformance with a Genealogical Numbering System before publication. This makes published data look cleaner and more systematic.
And a default name display format that shows a Nickname would showcase a nice feature of Gramps.
I did the test filter Type=“Birth” and Date=“before 1900”. All exact dates stopped at 31 Dec 1899. Only 1900 dates with some type of modifier were included, no exact 1900 dates. So the only problem filtering with "before <date>" is the earliest dates stopped based upon the limit set in preferences and was not an open lower limit.
Just to better understand I did between YYYY and YYYY which returned from 1 January YYYY to 31 December YYYY. Between MM/YYYY and MM/YYYY returned from 1 Month YYYY to 31 Month YYYY.
Maybe filtering on dates needs examples in the wiki with an emphasis on the preference limits of before and after searches.
As to tweaking some of the default Preference settings…
Maybe carrying over the gramps.ini file to the new user version folder would have merit. I have learned to manually copy gramps.ini (and custom_filter.xml) so I do not have recreate my preferences.
More preset name options cannot be a bad idea. But creating more default options should be considered carefully. As an example, one of the defaults is Given Surname Suffix. But I do not use it because I want the comma (,) between Surname and Suffix. Minor consideration but since defaults cannot be deleted, populating the list with configurations that would not be used creates messy/confusing lists.
You’re right. I misread your initial message on “Before” & “After”. Rather than being differences between ≤, <, ≥, and >; the variation seems to be related to how Gramps interprets an inexact date.
Painful experience teaches us to be suspicious of computerized Genealogical dates having January 1. (Or the 1st of ANY month.) This is because many file formats do not accept a yyyy or mmm-yyyy date granularity. So, even if the program accepts a year-only date for data entry, it transfers with a default day & month value of ‘1’. That has always been a problem when source records (like a gravestone or census) only provide a year.
It sounds like Gramps calculates with dates in a similar limitation.
While I consider “Jan 1957” to be an inclusive span of “from 1 Jan 1957 to 31 Jan 1957”, Gramps calculates “Before” & “After” with an re-interpreted precise date of “1 Jan 1957”. Gramps only filters an “equals” calculation with the span.
So, the left and right boundaries of rough dates are problematic in calculating date filters.