~sforman/jardin_botanique

0dac50dc30f95b7f1ed5f1c85af12843ed91abfa — Simon Forman 11 months ago c3d6647 trunk
Prolog DB FTW!
3 files changed, 371 insertions(+), 0 deletions(-)

A genus.pl
A idle_seesss.py
A species.pl
A genus.pl => genus.pl +49 -0
@@ 0,0 1,49 @@
genus('Acacia').
genus('Achlys').
genus('Adiantum').
genus('Allium').
genus('Arctostaphylos').
genus('Aristolochia').
genus('Astragalus').
genus('Baptisia').
genus('Beta').
genus('Brassica').
genus('Bursera').
genus('Cajanus').
genus('Calochortus').
genus('Centaurea').
genus('Ceratonia').
genus('Chlorogalum').
genus('Disporum').
genus('Erythronium').
genus('Feijoa').
genus('Helianthus').
genus('Heterotheca').
genus('Hypericum').
genus('Ipomoea').
genus('Laburnum').
genus('Lactuca').
genus('Lycopersicon').
genus('Macadamia').
genus('Mentha').
genus('Mentzelia').
genus('Myrica').
genus('Perideridia').
genus('Phacelia').
genus('Phaseolus').
genus('Prunus').
genus('Raphanus').
genus('Rubus').
genus('Sauromatum').
genus('Solanum').
genus('Stachys').
genus('Taraxacum').
genus('Trichocereus').
genus('Trichosanthes').
genus('Valeriana').
genus('Verbascum').
genus('Verbena').
genus('Vicia').
genus('Yucca').
genus('Zauschneria').
genus('Zea').

A idle_seesss.py => idle_seesss.py +268 -0
@@ 0,0 1,268 @@
Python 3.9.16 (main, Jan  3 2023, 01:14:59) 
[Clang 10.0.1 (git@github.com:llvm/llvm-project.git llvmorg-10.0.1-0-gef32c611a on freebsd12
Type "help", "copyright", "credits" or "license()" for more information.
>>> fn = '/usr/home/sforman/src/JardinBotanique/db/species_list'
>>> spec = list(open(fn))
>>> len(spec)
51
>>> spec
['Acacia dealbata\n', 'Achlys triphylla\n', 'Adiantum jordanii\n', 'Allium dichlamydeum\n', 'Arctostaphylos uva-ursi\n', 'Aristolochia californica\n', 'Astragalus membranaceus\n', 'Baptisia australis\n', 'Beta vulgaris\n', 'Brassica oleracea botrytis\n', 'Brassica oleracea gemnifera\n', 'Bursera odorata\n', 'Cajanus cajan\n', 'Calochortus luteus\n', 'Centaurea Cyanus\n', 'Ceratonia Siliqua\n', 'Chlorogalum pomeridianum\n', 'Disporum smithii\n', 'Erythronium grandiflorum\n', 'Feijoa sellowiana\n', 'Helianthus annuus\n', 'Helianthus maximiliani\n', 'Heterotheca inuloides\n', 'Hypericum androsaemum\n', 'Ipomoea leptophylla\n', 'Laburnum anagyroides\n', 'Lactuca sativa\n', 'Lycopersicon chilense\n', 'Macadamia Ritchiana\n', 'Mentha requienii\n', 'Mentzelia laevicaulis\n', 'Myrica californica\n', 'Perideridia kellogii\n', 'Phacelia campanularia\n', 'Phaseolus polystachios\n', 'Prunus tomentosa\n', 'Raphanus sativus\n', 'Rubus spectabilis\n', 'Sauromatum venosum\n', 'Solanum X Burbankii\n', 'Stachys officinalis\n', 'Taraxacum pseudoroseum\n', 'Trichocereus bridgesii X peruvianus\n', 'Trichosanthes kirilowii\n', 'Valeriana officinalis\n', 'Verbascum Thapsus\n', 'Verbena hastata\n', 'Vicia faba\n', 'Yucca baccata\n', 'Zauschneria californica\n', 'Zea mexicana\n']
>>> spec = [n.strip() for n in spec]
>>> spec
['Acacia dealbata', 'Achlys triphylla', 'Adiantum jordanii', 'Allium dichlamydeum', 'Arctostaphylos uva-ursi', 'Aristolochia californica', 'Astragalus membranaceus', 'Baptisia australis', 'Beta vulgaris', 'Brassica oleracea botrytis', 'Brassica oleracea gemnifera', 'Bursera odorata', 'Cajanus cajan', 'Calochortus luteus', 'Centaurea Cyanus', 'Ceratonia Siliqua', 'Chlorogalum pomeridianum', 'Disporum smithii', 'Erythronium grandiflorum', 'Feijoa sellowiana', 'Helianthus annuus', 'Helianthus maximiliani', 'Heterotheca inuloides', 'Hypericum androsaemum', 'Ipomoea leptophylla', 'Laburnum anagyroides', 'Lactuca sativa', 'Lycopersicon chilense', 'Macadamia Ritchiana', 'Mentha requienii', 'Mentzelia laevicaulis', 'Myrica californica', 'Perideridia kellogii', 'Phacelia campanularia', 'Phaseolus polystachios', 'Prunus tomentosa', 'Raphanus sativus', 'Rubus spectabilis', 'Sauromatum venosum', 'Solanum X Burbankii', 'Stachys officinalis', 'Taraxacum pseudoroseum', 'Trichocereus bridgesii X peruvianus', 'Trichosanthes kirilowii', 'Valeriana officinalis', 'Verbascum Thapsus', 'Verbena hastata', 'Vicia faba', 'Yucca baccata', 'Zauschneria californica', 'Zea mexicana']
>>> 
>>> genuseses = {(line.split(None, 1)[0]) for line in spec}
>>> genuseses
{'Astragalus', 'Heterotheca', 'Phaseolus', 'Helianthus', 'Mentha', 'Trichosanthes', 'Achlys', 'Myrica', 'Macadamia', 'Vicia', 'Phacelia', 'Feijoa', 'Centaurea', 'Ipomoea', 'Disporum', 'Perideridia', 'Rubus', 'Adiantum', 'Beta', 'Mentzelia', 'Lycopersicon', 'Arctostaphylos', 'Trichocereus', 'Calochortus', 'Stachys', 'Erythronium', 'Valeriana', 'Zea', 'Zauschneria', 'Taraxacum', 'Raphanus', 'Solanum', 'Allium', 'Prunus', 'Bursera', 'Verbascum', 'Verbena', 'Acacia', 'Baptisia', 'Ceratonia', 'Brassica', 'Hypericum', 'Laburnum', 'Sauromatum', 'Yucca', 'Aristolochia', 'Chlorogalum', 'Cajanus', 'Lactuca'}
>>> sorted(genuseses)
['Acacia', 'Achlys', 'Adiantum', 'Allium', 'Arctostaphylos', 'Aristolochia', 'Astragalus', 'Baptisia', 'Beta', 'Brassica', 'Bursera', 'Cajanus', 'Calochortus', 'Centaurea', 'Ceratonia', 'Chlorogalum', 'Disporum', 'Erythronium', 'Feijoa', 'Helianthus', 'Heterotheca', 'Hypericum', 'Ipomoea', 'Laburnum', 'Lactuca', 'Lycopersicon', 'Macadamia', 'Mentha', 'Mentzelia', 'Myrica', 'Perideridia', 'Phacelia', 'Phaseolus', 'Prunus', 'Raphanus', 'Rubus', 'Sauromatum', 'Solanum', 'Stachys', 'Taraxacum', 'Trichocereus', 'Trichosanthes', 'Valeriana', 'Verbascum', 'Verbena', 'Vicia', 'Yucca', 'Zauschneria', 'Zea']
>>> for g in genuseses:
	print(f"genus('{g}').")

	
genus('Astragalus').
genus('Heterotheca').
genus('Phaseolus').
genus('Helianthus').
genus('Mentha').
genus('Trichosanthes').
genus('Achlys').
genus('Myrica').
genus('Macadamia').
genus('Vicia').
genus('Phacelia').
genus('Feijoa').
genus('Centaurea').
genus('Ipomoea').
genus('Disporum').
genus('Perideridia').
genus('Rubus').
genus('Adiantum').
genus('Beta').
genus('Mentzelia').
genus('Lycopersicon').
genus('Arctostaphylos').
genus('Trichocereus').
genus('Calochortus').
genus('Stachys').
genus('Erythronium').
genus('Valeriana').
genus('Zea').
genus('Zauschneria').
genus('Taraxacum').
genus('Raphanus').
genus('Solanum').
genus('Allium').
genus('Prunus').
genus('Bursera').
genus('Verbascum').
genus('Verbena').
genus('Acacia').
genus('Baptisia').
genus('Ceratonia').
genus('Brassica').
genus('Hypericum').
genus('Laburnum').
genus('Sauromatum').
genus('Yucca').
genus('Aristolochia').
genus('Chlorogalum').
genus('Cajanus').
genus('Lactuca').
>>> genus('Phaseolus').
SyntaxError: invalid syntax
>>> spec
['Acacia dealbata', 'Achlys triphylla', 'Adiantum jordanii', 'Allium dichlamydeum', 'Arctostaphylos uva-ursi', 'Aristolochia californica', 'Astragalus membranaceus', 'Baptisia australis', 'Beta vulgaris', 'Brassica oleracea botrytis', 'Brassica oleracea gemnifera', 'Bursera odorata', 'Cajanus cajan', 'Calochortus luteus', 'Centaurea Cyanus', 'Ceratonia Siliqua', 'Chlorogalum pomeridianum', 'Disporum smithii', 'Erythronium grandiflorum', 'Feijoa sellowiana', 'Helianthus annuus', 'Helianthus maximiliani', 'Heterotheca inuloides', 'Hypericum androsaemum', 'Ipomoea leptophylla', 'Laburnum anagyroides', 'Lactuca sativa', 'Lycopersicon chilense', 'Macadamia Ritchiana', 'Mentha requienii', 'Mentzelia laevicaulis', 'Myrica californica', 'Perideridia kellogii', 'Phacelia campanularia', 'Phaseolus polystachios', 'Prunus tomentosa', 'Raphanus sativus', 'Rubus spectabilis', 'Sauromatum venosum', 'Solanum X Burbankii', 'Stachys officinalis', 'Taraxacum pseudoroseum', 'Trichocereus bridgesii X peruvianus', 'Trichosanthes kirilowii', 'Valeriana officinalis', 'Verbascum Thapsus', 'Verbena hastata', 'Vicia faba', 'Yucca baccata', 'Zauschneria californica', 'Zea mexicana']
>>> for s in spec:
	g, specific_epithet = line.split(None, 1)

	
Traceback (most recent call last):
  File "<pyshell#16>", line 2, in <module>
    g, specific_epithet = line.split(None, 1)
NameError: name 'line' is not defined
>>> for s in spec:
	g, specific_epithet = s.split(None, 1)

	
>>> g
'Zea'
>>> for s in spec:
	g, specific_epithet = s.split(None, 1)
	print(f"species('{s}', '{g}', 'specific_epithet').")

	
species('Acacia dealbata', 'Acacia', 'specific_epithet').
species('Achlys triphylla', 'Achlys', 'specific_epithet').
species('Adiantum jordanii', 'Adiantum', 'specific_epithet').
species('Allium dichlamydeum', 'Allium', 'specific_epithet').
species('Arctostaphylos uva-ursi', 'Arctostaphylos', 'specific_epithet').
species('Aristolochia californica', 'Aristolochia', 'specific_epithet').
species('Astragalus membranaceus', 'Astragalus', 'specific_epithet').
species('Baptisia australis', 'Baptisia', 'specific_epithet').
species('Beta vulgaris', 'Beta', 'specific_epithet').
species('Brassica oleracea botrytis', 'Brassica', 'specific_epithet').
species('Brassica oleracea gemnifera', 'Brassica', 'specific_epithet').
species('Bursera odorata', 'Bursera', 'specific_epithet').
species('Cajanus cajan', 'Cajanus', 'specific_epithet').
species('Calochortus luteus', 'Calochortus', 'specific_epithet').
species('Centaurea Cyanus', 'Centaurea', 'specific_epithet').
species('Ceratonia Siliqua', 'Ceratonia', 'specific_epithet').
species('Chlorogalum pomeridianum', 'Chlorogalum', 'specific_epithet').
species('Disporum smithii', 'Disporum', 'specific_epithet').
species('Erythronium grandiflorum', 'Erythronium', 'specific_epithet').
species('Feijoa sellowiana', 'Feijoa', 'specific_epithet').
species('Helianthus annuus', 'Helianthus', 'specific_epithet').
species('Helianthus maximiliani', 'Helianthus', 'specific_epithet').
species('Heterotheca inuloides', 'Heterotheca', 'specific_epithet').
species('Hypericum androsaemum', 'Hypericum', 'specific_epithet').
species('Ipomoea leptophylla', 'Ipomoea', 'specific_epithet').
species('Laburnum anagyroides', 'Laburnum', 'specific_epithet').
species('Lactuca sativa', 'Lactuca', 'specific_epithet').
species('Lycopersicon chilense', 'Lycopersicon', 'specific_epithet').
species('Macadamia Ritchiana', 'Macadamia', 'specific_epithet').
species('Mentha requienii', 'Mentha', 'specific_epithet').
species('Mentzelia laevicaulis', 'Mentzelia', 'specific_epithet').
species('Myrica californica', 'Myrica', 'specific_epithet').
species('Perideridia kellogii', 'Perideridia', 'specific_epithet').
species('Phacelia campanularia', 'Phacelia', 'specific_epithet').
species('Phaseolus polystachios', 'Phaseolus', 'specific_epithet').
species('Prunus tomentosa', 'Prunus', 'specific_epithet').
species('Raphanus sativus', 'Raphanus', 'specific_epithet').
species('Rubus spectabilis', 'Rubus', 'specific_epithet').
species('Sauromatum venosum', 'Sauromatum', 'specific_epithet').
species('Solanum X Burbankii', 'Solanum', 'specific_epithet').
species('Stachys officinalis', 'Stachys', 'specific_epithet').
species('Taraxacum pseudoroseum', 'Taraxacum', 'specific_epithet').
species('Trichocereus bridgesii X peruvianus', 'Trichocereus', 'specific_epithet').
species('Trichosanthes kirilowii', 'Trichosanthes', 'specific_epithet').
species('Valeriana officinalis', 'Valeriana', 'specific_epithet').
species('Verbascum Thapsus', 'Verbascum', 'specific_epithet').
species('Verbena hastata', 'Verbena', 'specific_epithet').
species('Vicia faba', 'Vicia', 'specific_epithet').
species('Yucca baccata', 'Yucca', 'specific_epithet').
species('Zauschneria californica', 'Zauschneria', 'specific_epithet').
species('Zea mexicana', 'Zea', 'specific_epithet').
>>> for s in spec:
	g, specific_epithet = s.split(None, 1)
	print(f"species('{s}', '{g}', '{specific_epithet}').")

	
species('Acacia dealbata', 'Acacia', 'dealbata').
species('Achlys triphylla', 'Achlys', 'triphylla').
species('Adiantum jordanii', 'Adiantum', 'jordanii').
species('Allium dichlamydeum', 'Allium', 'dichlamydeum').
species('Arctostaphylos uva-ursi', 'Arctostaphylos', 'uva-ursi').
species('Aristolochia californica', 'Aristolochia', 'californica').
species('Astragalus membranaceus', 'Astragalus', 'membranaceus').
species('Baptisia australis', 'Baptisia', 'australis').
species('Beta vulgaris', 'Beta', 'vulgaris').
species('Brassica oleracea botrytis', 'Brassica', 'oleracea botrytis').
species('Brassica oleracea gemnifera', 'Brassica', 'oleracea gemnifera').
species('Bursera odorata', 'Bursera', 'odorata').
species('Cajanus cajan', 'Cajanus', 'cajan').
species('Calochortus luteus', 'Calochortus', 'luteus').
species('Centaurea Cyanus', 'Centaurea', 'Cyanus').
species('Ceratonia Siliqua', 'Ceratonia', 'Siliqua').
species('Chlorogalum pomeridianum', 'Chlorogalum', 'pomeridianum').
species('Disporum smithii', 'Disporum', 'smithii').
species('Erythronium grandiflorum', 'Erythronium', 'grandiflorum').
species('Feijoa sellowiana', 'Feijoa', 'sellowiana').
species('Helianthus annuus', 'Helianthus', 'annuus').
species('Helianthus maximiliani', 'Helianthus', 'maximiliani').
species('Heterotheca inuloides', 'Heterotheca', 'inuloides').
species('Hypericum androsaemum', 'Hypericum', 'androsaemum').
species('Ipomoea leptophylla', 'Ipomoea', 'leptophylla').
species('Laburnum anagyroides', 'Laburnum', 'anagyroides').
species('Lactuca sativa', 'Lactuca', 'sativa').
species('Lycopersicon chilense', 'Lycopersicon', 'chilense').
species('Macadamia Ritchiana', 'Macadamia', 'Ritchiana').
species('Mentha requienii', 'Mentha', 'requienii').
species('Mentzelia laevicaulis', 'Mentzelia', 'laevicaulis').
species('Myrica californica', 'Myrica', 'californica').
species('Perideridia kellogii', 'Perideridia', 'kellogii').
species('Phacelia campanularia', 'Phacelia', 'campanularia').
species('Phaseolus polystachios', 'Phaseolus', 'polystachios').
species('Prunus tomentosa', 'Prunus', 'tomentosa').
species('Raphanus sativus', 'Raphanus', 'sativus').
species('Rubus spectabilis', 'Rubus', 'spectabilis').
species('Sauromatum venosum', 'Sauromatum', 'venosum').
species('Solanum X Burbankii', 'Solanum', 'X Burbankii').
species('Stachys officinalis', 'Stachys', 'officinalis').
species('Taraxacum pseudoroseum', 'Taraxacum', 'pseudoroseum').
species('Trichocereus bridgesii X peruvianus', 'Trichocereus', 'bridgesii X peruvianus').
species('Trichosanthes kirilowii', 'Trichosanthes', 'kirilowii').
species('Valeriana officinalis', 'Valeriana', 'officinalis').
species('Verbascum Thapsus', 'Verbascum', 'Thapsus').
species('Verbena hastata', 'Verbena', 'hastata').
species('Vicia faba', 'Vicia', 'faba').
species('Yucca baccata', 'Yucca', 'baccata').
species('Zauschneria californica', 'Zauschneria', 'californica').
species('Zea mexicana', 'Zea', 'mexicana').
>>> for s in spec:
	g, specific_epithet = s.split(None, 1)
	if not any(ch.isspace() for ch in specific_epithet):
		specific_epithet = specific_epithet.lower()
	else:
		specific_epithet = f"'{specific_epithet}'"
	print(f"species('{s}', '{g}', {specific_epithet}).")

	
species('Acacia dealbata', 'Acacia', dealbata).
species('Achlys triphylla', 'Achlys', triphylla).
species('Adiantum jordanii', 'Adiantum', jordanii).
species('Allium dichlamydeum', 'Allium', dichlamydeum).
species('Arctostaphylos uva-ursi', 'Arctostaphylos', uva-ursi).
species('Aristolochia californica', 'Aristolochia', californica).
species('Astragalus membranaceus', 'Astragalus', membranaceus).
species('Baptisia australis', 'Baptisia', australis).
species('Beta vulgaris', 'Beta', vulgaris).
species('Brassica oleracea botrytis', 'Brassica', 'oleracea botrytis').
species('Brassica oleracea gemnifera', 'Brassica', 'oleracea gemnifera').
species('Bursera odorata', 'Bursera', odorata).
species('Cajanus cajan', 'Cajanus', cajan).
species('Calochortus luteus', 'Calochortus', luteus).
species('Centaurea Cyanus', 'Centaurea', cyanus).
species('Ceratonia Siliqua', 'Ceratonia', siliqua).
species('Chlorogalum pomeridianum', 'Chlorogalum', pomeridianum).
species('Disporum smithii', 'Disporum', smithii).
species('Erythronium grandiflorum', 'Erythronium', grandiflorum).
species('Feijoa sellowiana', 'Feijoa', sellowiana).
species('Helianthus annuus', 'Helianthus', annuus).
species('Helianthus maximiliani', 'Helianthus', maximiliani).
species('Heterotheca inuloides', 'Heterotheca', inuloides).
species('Hypericum androsaemum', 'Hypericum', androsaemum).
species('Ipomoea leptophylla', 'Ipomoea', leptophylla).
species('Laburnum anagyroides', 'Laburnum', anagyroides).
species('Lactuca sativa', 'Lactuca', sativa).
species('Lycopersicon chilense', 'Lycopersicon', chilense).
species('Macadamia Ritchiana', 'Macadamia', ritchiana).
species('Mentha requienii', 'Mentha', requienii).
species('Mentzelia laevicaulis', 'Mentzelia', laevicaulis).
species('Myrica californica', 'Myrica', californica).
species('Perideridia kellogii', 'Perideridia', kellogii).
species('Phacelia campanularia', 'Phacelia', campanularia).
species('Phaseolus polystachios', 'Phaseolus', polystachios).
species('Prunus tomentosa', 'Prunus', tomentosa).
species('Raphanus sativus', 'Raphanus', sativus).
species('Rubus spectabilis', 'Rubus', spectabilis).
species('Sauromatum venosum', 'Sauromatum', venosum).
species('Solanum X Burbankii', 'Solanum', 'X Burbankii').
species('Stachys officinalis', 'Stachys', officinalis).
species('Taraxacum pseudoroseum', 'Taraxacum', pseudoroseum).
species('Trichocereus bridgesii X peruvianus', 'Trichocereus', 'bridgesii X peruvianus').
species('Trichosanthes kirilowii', 'Trichosanthes', kirilowii).
species('Valeriana officinalis', 'Valeriana', officinalis).
species('Verbascum Thapsus', 'Verbascum', thapsus).
species('Verbena hastata', 'Verbena', hastata).
species('Vicia faba', 'Vicia', faba).
species('Yucca baccata', 'Yucca', baccata).
species('Zauschneria californica', 'Zauschneria', californica).
species('Zea mexicana', 'Zea', mexicana).
>>> for s in spec:
	g, specific_epithet = s.split(None, 1)
	if not any(ch.isspace() for ch in specific_epithet):
		specific_epithet = specific_epithet.lower()
	else:
		specific_epithet = f"'{specific_epithet}'"
	print(f"species('{s}', '{g}', {specific_epithet}).")
\ No newline at end of file

A species.pl => species.pl +54 -0
@@ 0,0 1,54 @@
species('Acacia dealbata', 'Acacia', dealbata).
species('Achlys triphylla', 'Achlys', triphylla).
species('Adiantum jordanii', 'Adiantum', jordanii).
species('Allium dichlamydeum', 'Allium', dichlamydeum).
species('Arctostaphylos uva-ursi', 'Arctostaphylos', uva-ursi).
species('Aristolochia californica', 'Aristolochia', californica).
species('Astragalus membranaceus', 'Astragalus', membranaceus).
species('Baptisia australis', 'Baptisia', australis).
species('Beta vulgaris', 'Beta', vulgaris).
species('Brassica oleracea botrytis', 'Brassica', 'oleracea botrytis').
species('Brassica oleracea gemnifera', 'Brassica', 'oleracea gemnifera').
species('Bursera odorata', 'Bursera', odorata).
species('Cajanus cajan', 'Cajanus', cajan).
species('Calochortus luteus', 'Calochortus', luteus).
species('Centaurea Cyanus', 'Centaurea', cyanus).
species('Ceratonia Siliqua', 'Ceratonia', siliqua).
species('Chlorogalum pomeridianum', 'Chlorogalum', pomeridianum).
species('Disporum smithii', 'Disporum', smithii).
species('Erythronium grandiflorum', 'Erythronium', grandiflorum).
species('Feijoa sellowiana', 'Feijoa', sellowiana).
species('Helianthus annuus', 'Helianthus', annuus).
species('Helianthus maximiliani', 'Helianthus', maximiliani).
species('Heterotheca inuloides', 'Heterotheca', inuloides).
species('Hypericum androsaemum', 'Hypericum', androsaemum).
species('Ipomoea leptophylla', 'Ipomoea', leptophylla).
species('Laburnum anagyroides', 'Laburnum', anagyroides).
species('Lactuca sativa', 'Lactuca', sativa).
species('Lycopersicon chilense', 'Lycopersicon', chilense).
species('Macadamia Ritchiana', 'Macadamia', ritchiana).
species('Mentha requienii', 'Mentha', requienii).
species('Mentzelia laevicaulis', 'Mentzelia', laevicaulis).
species('Myrica californica', 'Myrica', californica).
species('Perideridia kellogii', 'Perideridia', kellogii).
species('Phacelia campanularia', 'Phacelia', campanularia).
species('Phaseolus polystachios', 'Phaseolus', polystachios).
species('Prunus tomentosa', 'Prunus', tomentosa).
species('Raphanus sativus', 'Raphanus', sativus).
species('Rubus spectabilis', 'Rubus', spectabilis).
species('Sauromatum venosum', 'Sauromatum', venosum).
species('Solanum X Burbankii', 'Solanum', 'X Burbankii').
species('Stachys officinalis', 'Stachys', officinalis).
species('Taraxacum pseudoroseum', 'Taraxacum', pseudoroseum).
species('Trichocereus bridgesii X peruvianus', 'Trichocereus', 'bridgesii X peruvianus').
species('Trichosanthes kirilowii', 'Trichosanthes', kirilowii).
species('Valeriana officinalis', 'Valeriana', officinalis).
species('Verbascum Thapsus', 'Verbascum', thapsus).
species('Verbena hastata', 'Verbena', hastata).
species('Vicia faba', 'Vicia', faba).
species('Yucca baccata', 'Yucca', baccata).
species('Zauschneria californica', 'Zauschneria', californica).
species('Zea mexicana', 'Zea', mexicana).

common_name('Vicia faba', 'Broad bean').
common_name('Vicia faba', 'Fava bean').
\ No newline at end of file