[DB-SIG] RE: Database API -- description attribute
Greg Stein (Exchange)
Wed, 29 Oct 1997 16:15:28 -0800
Being the person that actually wrote that line :-) ... Terry's
suggestion is the "right" way to phrase it.
Note: the temporal phrasing was used in reference to fetching the
attribute, not the operation that had occurred in the past (via
The DB SIG is now responsible for the maintainence of the specification.
I'm not sure who specifically. It is due for updating primarily w.r.t
the DBI module.
From: firstname.lastname@example.org [SMTP:email@example.com]
Sent: Wednesday, October 29, 1997 10:39 AM
Subject: Re: Database API -- description attribute
In article <firstname.lastname@example.org>, email@example.com says...
>In article <firstname.lastname@example.org>,
>Roy Smith <email@example.com> wrote:
>>The problem is that the API doc says "This attribute will be None for
>>operations that do not return rows...".
>>Is the API documentation just misleading?
>You are either reading too much into the documentation or just being
>damned silly. The intent is that if you do a select or similar type
>of command which returns zero or more records you will get a
>description of that view.
>Obviously common sense just isn't as common as it ought to be.
I'm tempted to say something like "Obviously curtesy just isn't as
common as it ought to be." but let us go on.
The confusion is between 'operations' as concrete specific actions
(instances) and 'operations' as abstract generic classes of actions, and
whether 'do not return rows' is an attribute of the former or the
latter. Roy appears to have been reading with the first meaning (which
is not really so silly, given the use of the temporal 'will be' instead
of the timeless 'is') while 'the intent' is that people read with the
There is another possible explanation for the confusion. Since the
arrival of 0 and its associated concept in Europe, there has been a
long-standing philosophical/mathematical argument over whether 0
'counts' as a number of rows, or of anything else. I say 'yes', or 'it
should', or 'this is the abstraction-insight that separates modern from
classical arithmetic and mathematics'. But I must acknowledge that most
commoners and some mathematicians regard '1' as the first natural
number, instead of the second. (Check out your keyboard or telephone
keypad.) As indicated by its 0-based indexing, Python (like C)
implicitly adopts the modern position that counts begin with 0, not 1,
and so it is reasonable that its documents assume this as background
information. But if Roy does not (or did not before) see 0 as a "number
of rows", he unfortunately has lots of company.
Perhaps clearer and less ambiguous would be
"This attribute is None for types of operations that never return rows."
Terry J. Reedy
DB-SIG - SIG on Tabular Databases in Python
send messages to: firstname.lastname@example.org
administrivia to: email@example.com