Open mfrasca opened 8 years ago
I"m reviewing the tests and there are things I'm not so sure about. since the unit tests create situations which cannot be reproduced from the interface, I'm going to rewrite the tests, but then I need information from botanists. imagine we have »Gleditsia triacanthos var. inermis 'Sunburst'« and an accession possibly referring to it, say you want to say »cf.« at some rank. where could you possibly need to put the »cf.« depending on your uncertainty level? same question if your doubt is expressed by »aff.«, »incorrect«, »forsan«, »near«, »?« (ITF2-C25-idql)
also, according to what I read on the relevant wikipedia page, if you have a taxon like »Saxifraga aizoon var. aizoon subvar. brevifolia f. multicaulis subf. surculosa«, you would not refer to it using the full classification but just as »Saxifraga aizoon subf. surculosa«.
I've already recently added to the Species class some logic allowing us select the lowest infraspecific rank/epithet/author, so I think I should use this in the updated Species.str
instance method.
From @mfrasca on January 8, 2016 12:14
the static method
Species.str
computes the markup string for a taxon, species or infraspecific. when an accession has been identified with uncertainty, this is expressed using one of 'forsan', 'cf.', 'aff.' etc. the task to put these strings into the species markup string is solved by creating a new species object and altering the indicated rank by prefixing it with the uncertainty specifier. technically: I hope there is an other way because to do so we need create a temporary session, duplicate the object, alter it, and then roll-back everything and close the session. functionally: by this trick the uncertainty specifier is italicized like the rest of the string, which is not correct.Copied from original issue: Bauble/bauble.classic#264