Simon Grant wrote:
> Perhaps there is room for more clarity about the different concepts of
> imprecision and lack of knowledge.
>
> I have seen in the spec and this discussion two clear concepts:
>
> 1. a range of years/dates, meaning coverage potentially across
> the whole range
> 2. a value within the range, though that value is unknown.
Thanks. We should not confuse syntax (notation) with semantic. On the
semantic level regarding uncertainty there is:
1. You can mark parts of a datetime as questionable. The current
specification uses parentheses and question mark ? for this.
2. You can mark parts of a datetime as approximate. The current
specification uses parentheses and tilde ~ for this.
3. You can build a set of values (all of). The current specification
uses curly brackets { } to denote sets.
4. You can build a choice of values (one of). The current specification
uses square brackets [ ] to denote choices.
5. you can build an interval/range. The current specification uses the
slash / to denote ranges
6. a value may turn out to be an interval
As far as I understand, the first two cases are independent from the
other four. But we need to clarify how the other four cases relate to
each other.
For instance is value "19" (the 20th century)
the same as the set "{1901,1902...2000}"
or as the set "{1900,1902...1999}" ???
And is the interval "1964/1966"
the same as the set "{1964,1965,166}"
or the same as the set of all day/month/seconds in between
or totally incomparable with sets?
Can you combine and nest these special entities and what is the
arithmetic of combining and nesting? I'd prefer to avoid nesting, but
then you need to explicitly state which kind of nesting you forbid.
For instance "{ {X}, {Y} }" should be "{ X, Y }" (a set of two sets is
the union set of their members). And "[ [X], [Y] ]" should be "[X,Y]".
But how about, for instance:
"(A/B)/C" (the range from 'the range A to B' to C)
"[ {X,Y}, Z ]" (either the set X and Y or the value Z)
After you clarify the semantics, you can intruce syntax variants, for
instance
199u
= [1990..1999]
= [1990,1991,1992,1993,1994,1995,1996,1997,1998,1999]
or
be.1760-12
le 1760-12
= {..1760-11,1760-12}
--
Jakob Voß <[log in to unmask]>, skype: nichtich
Verbundzentrale des GBV (VZG) / Common Library Network
Platz der Goettinger Sieben 1, 37073 Göttingen, Germany
+49 (0)551 39-10242, http://www.gbv.de
|