Next / Previous / Contents / Shipman's homepage

3. Specification functions

Names with internal-hyphens are strictly notational macros, following the author's use of Cleanroom software engineering.

3.1. phylo-key

In class DayNotes, the child BirdForm instances can be generated in phylogenetic order. The classification of each BirdForm is specified by an abbr.BirdId instance. This instance's .txKey attribute gives us a number that sorts forms phylogenetically.

However, the same .txKey (taxonomic key) can be related to multiple different actual forms, so we use the English name of the form as a secondary key. The actual key used to order child nodes in a DayNotes instance is a 2-tuple, (taxonomic key, English name).
# phylo-key(birdId) ==
#   (birdId.txKey, str(birdId))