The project is composed of three independent parts:
The build tool is Maven 3.0.2. The issue tracker is at:
The project is under Continuous Integration at http://hudson.tidalwave.it/hudson/view/blueBill/.
To retrieve the sources, you need Mercurial:
hg clone https://bitbucket.org/tidalwave/bluebill-mobile-android-src hg clone https://bitbucket.org/tidalwave/bluebill-core-src hg clone https://java.net/hg/bluebill~resources-src
It should be possible to build the project on any operating system where the Java and the Android tools are available. It has been actually tested only on Linux and Mac OS X 10.5+, with a Java 6 JDK.
To build any project just run from the command line:
mvn clean install -DskipTests
A quick overview of the structure of the project is available here.
If you want to contribute to the project, please get in touch by means of the developer mailing list. In order to contribute code, you need to send us a signed copy of the Tidalwave Individual Contributor License Agreement (ICLA) - it's available in the sources of the project, under the 'docs' directory. This burocratic step is needed for you, us and the blueBill users in order to guarantee that the project will be always available under the current licensing terms.
blueBill aims at providing internationalized versions for many languages. This feature needs constant help from mother-language writers from around the world. More information about the process are here.
Please have a read of the Coding Guidelines before you look at the sources.
The two most important components of blueBill are:
Please refer to the javadoc to learn about them.
Data in blueBill is modelled using RDF, even though the Observation and Taxonomy APIs partially hide the data model under an abstraction layer.
Data sets, such as taxonomies, textual or media collections used by the application are fed into it in form of RDF. Since unfortunately at the current time none of the data providers (Wikipedia and others) natively provide RDF data, the needed resources are generated by batch procedures (in the blueBill Resources project). They are typically web scrapers, or ad-hoc converters (for instance, bird checklists are mostly distributed as Excel or text files). More information about resource generation is here.
A considerable effort is made to reuse existing ontologies and vocabularies keeping to the minimum those specifically developed for blueBill. This effort is performed in iterative way, with incremental changes at every release as soon as a fitting ontology is discovered and validated to replace a custom one. Since currently blueBill doesn't export data in RDF, no effort is done to preserve backward compatibility or RDF data. More info about RDF usage is here.
General concept, architecture, design and implementation:
Fabrizio Giudici (Tidalwave s.a.s.)
English localization: Fabrizio Giudici (Tidalwave s.a.s.)
French localization: Fabrizio Giudici (Tidalwave s.a.s.)
Italian localization: Fabrizio Giudici (Tidalwave s.a.s.)
Project logo: Sebastiano Ercoli (Stratodesign)
Anette Seiler contributed the integration of the checklist
"Roberts, VII edition" (birds of Southern Africa).
Bopanna Pattada contributed the integration of the checklist "Birds of India" (available with the upcoming 1.0 release).
If we forgot to properly mention you here, please forgive us - and let us know.