Conserving Biodiversity through the internet: the fish example Eli E. Agbayani WorldFish Center Philippine Office Khush Hall, IRRI, Los Baños, Laguna Presented at the PNC (Pacific Neighborhood Consortium) 2004 Annual Conference, Academia Sinica, Taipei, Taiwan, October 19-22 nd 2004
- What is FishBase? - FishBase Web Architecture and Components: - Options on Using FishBase
FishBase, A Global Information System on Fishes. - On which the web version is the most utilized medium (www.fishbase.org). Available in DVD, CD-ROM and on the web http://www.fishbase.org
The Encyclopedia part of FishBase > 28,600 fish species (and associated biology) with > 80,400 synonyms, for 528 families > 204,700 common names in over 400 languages > 159,100 country records with links to ~ 400 ecosystems > 1.9 M geo-referenced records (40 museums; > 24,500 species) > 11,700 morphology records > 39,300 fish images and photos for 12,735 species > 34,200 bibliographic citations > 520 journals linked on-line > 1,053 fish identification keys > 4.48 million record database (2 Gb; 180 database tables) Book available in 5 languages (English, Spanish, French, Portuguese and Chinese) Multi-language (13) on-line access (Main Pages) 16 Non-roman scripts for common names
FishBase Web Layout Mirror sites: Germany, France, Sweden, Taiwan
Web Components Present [CGNET (USA) and mirrors] Operating system: Windows Database backend: MS Access (via ODBC) Web front-end: ColdFusion Web server: MS Internet Info. Services (IIS) or Apache Image files: gif, jpg Other web formats: HTML, PHP, ASP, XML, XSL Open Source Possibilities / Options Operating System: Database backend: Web front-end: Web server: Image files: Other web formats: Linux MySQL / PostgreSQL PHP Apache gif, jpg HTML, XML, XSL, SOAP
Software/Hardware Details [CGNET (USA) and mirrors] SITE OS Web Server CPU RAM DISK US- CGNET MS Win 2K Adv. Server IIS Pentium 4 2.4 GHz 4 GB 108 GB Germany- Kiel Univ. MS Win 2K Adv. Server Apache Pentium 4 2.4 GHz 4 GB 2x120 GB France- MNHN Paris MS Win NT Server IIS Pentium 3 800 MHz 512 MB 36 GB Sweden- NRM Stockholm MS Win 2K Server Apache Pentium 3 933 MHz 512 MB 72 GB Taiwan- Acad. Sinica MS Win 2K Adv. Server IIS Pentium 4 2x 3.3 GHz 2 GB 120 GB
FishBase and Web Services 1. FishBase offers web services and 2. makes use of web services as well - web data syndication - both XML and non-xml format
What is a web service? An entire web site and every single page in it can be considered individually as a web service. An XML Web Service utilizes XML and optionally other standards used to define an efficient way to describe the Web Service and talk to other Web Services. Simple XML web service = URL + HTTP + XML Complex XML web service = URL + HTTP + XML + (SOAP + WSDL + UDDI)
FishBase Web Service A typical sample of a web service using XML data format Requests for fish info The web user can either be: 1. end-user 2. data provider that gathers information on available web services in the internet
XML Web Services Offered by FishBase Species Summary FishBase offers data in XML format so others can readily use these data in their own systems Point Data Common Names -in XML + XSL -URL driven
Country-related XML Web Services Offered by FishBase: Species Lists for a country: Biodiversity: Uses: 1. All fishes 1. Commercial 2. Freshwater 2. Species used in Aquaculture 3. Marine 3. Species of potential use in aquaculture 4. Introduced 4. Aquarium species being exported live 5. Endemic 5. Species with potential for aquarium trade 6. Threatened 6. Game fishes 7. Dangerous 7. Fish Loss 8. Reef-associated 9. Pelagic 10. Deep-water
Country web sites can then incorporate FishBase data into their pages as if it is their own. All this is possible now thanks to XML... CHECKLIST FRESH - WATER MARINE INTRODUCED e.g. Philippine List of Species ENDEMIC
Web Services Used by FishBase a. Fish Occurrence (Point) Data b. Data Maps and Summaries c. Language Translations
Fish Occurrence Data Example: Esox lucius FishBase = 292 Provided by TSA = 299 Combined Total: FB+TSA 292 + 299 = 591 records
Web Data Syndication (FishBase + TSA) N = 1661 TSA (292 records) (299 records) - reads XML file from TSA - combines data with FishBase - displays final page with 591 records to user Program
Data Representation: Maps and Data Summary (using KGS server) Point Map for Esox lucius (n = 591 records) Sample Environmental Data Summary (n = 591 records)
SYSTRAN Translation Service: non-xml FishBase now uses SYSTRAN to translate selected fields in FishBase on the fly (Distribution, Diagnosis, Biology and other fields)
FishBase as data provider and data portal
FishBase & Open Source --- Implementation Status Developed applications written in PHP (NAEIS, Collection Search Portal, Species 2000) Exploring MySQL, PostgreSQL as possible database systems Apache Web Server being used in some FishBase servers.
(PHP Implementation) NAEIS (National Aquatic Ecosystem Information System) is a prototype site-specific database module linked to FishBase Species 2000: list of all known species in the planet A search portal for DiGIR providers (Distributed Generic Information Retrieval); good example of a distributed architecture
Options on using FishBase 1. Using the FishBase web site 2. Developing an independent site using data subsets of FishBase 3. URL links to FishBase 4. Using FishBase data thru web services (data syndication)
1. Using the FishBase web site www.fishbase.org
Fishery Trophic Level Historical Profile Fishery Trophic Analysis (Time Periods) Species Identification Key FishBase the Analytical Tools Web Tools useful In Developing Biodiversity Information Systems & Web Sites Fish Catch Length Frequency Analysis Wizard Species Key Facts Page (Species, Population Parameter Estimates)
Phil Production Prototype (P3) is a subset of FishBase that pertains only to the species found in the Philippines. 2. Developing an independent site using data subsets of FishBase National Aquatic Ecosystem Information System (NAEIS) is a prototype site-specific database module linked to FishBase. Species 2000, patterns some of its tables to FishBase, namely: Species, Common names, References and Distribution. A special search page for 'FishBase with special emphasis on the Americas. All lists are restricted to names, species, families, countries/islands, and ecosystems of the Americas.
Specific application of FishBase: Developing National Aquatic Information Systems Country Code Bangladesh 050 Cambodia 116 Iran 364 Malaysia 458 Philippines 608 Vietnam 704
3. URL links to FishBase URL = Uniform Resource Locator All items under Information by Country / Island can also be accessed via URL s like so: http://www.fishbase.org.ph/country/countrysearchlist.cfm? c_code=608&group=allfishes
Values for the group URL parameter: BIODIVERSITY USES All fishes = allfishes Commercial = commercial Freshwater = freshwater Aquaculture = aquaculture Marine = marine Aquarium trade = aquarium Introduced = introduced Game fishes = sports Endemic = endemic FAO Aquaculture = fao_aqua Threatened = threatened FAO catches = fao_catch Dangerous = dangerous ICES catches = ices_catch Reef-associated = reef Fish loss = fishloss Pelagic = pelagic Deep-water = deepwater TOOLS MISCELLANEOUS Identification keys = idkeys Country info. = information Field guide = fieldguide FAO profile = faoprofile Occurrences = speciesoccurrence ReefBase profile = reefbase Type localities = typelocal Treaties & Conv. = treaties References = references Collaborators = collaborators Ecopath data = ecoparam Fish stamps = fishstampscountry Common names = commonnames Public aquariums = publicaquariums
You can then create the other URL s in this manner: http://www.fishbase.org.ph/country/countrysearchlist.cfm? c_code=608&group=allfishes http://www.fishbase.org.ph/country/countrysearchlist.cfm? c_code=608&group=freshwater http://www.fishbase.org.ph/country/countrysearchlist.cfm? c_code=608&group=marine http://www.fishbase.org.ph/country/countrysearchlist.cfm? c_code=608&group=introduced http://www.fishbase.org.ph/country/countrysearchlist.cfm? c_code=608&group=endemic
These URL s will then produce country species lists in FishBase:
4. Using FishBase data thru web services (data syndication)
Accessing regular web pages vs. web services: This is the way to access web pages in FishBase via URL links: http://www.fishbase.org.ph/country/countrysearchlist.cfm? c_code=608&group=allfishes Now, this is the way to access web services in FishBase via URL links: http://www.fishbase.org.ph/country/countrysearchlistxml.cfm? c_code=608&group=allfishes An agreement: when accessing HTML; you are accessing web pages when accessing XML; you are accessing web services
How was it done: PHP $data = implode("",file('http://www.fishbase.org.ph/country/countrysearchlistxml.cfm?c_code=608&group=introduced')); ColdFusion <cfhttp url="http://www.fishbase.org.ph/country/countrysearchlistxml.cfm? c_code=608&group=introduced" timeout="60" method="get"> </cfhttp> <cfset data = #cfhttp.filecontent#> ASP var objsrvhttp; objsrvhttp = Server.CreateObject ("MSXML2.ServerXMLHTTP"); objsrvhttp.open ("GET","http://www.fishbase.org.ph/country/CountrySearchListXML.cfm? c_code=608&group=introduced ", false); objsrvhttp.send (); Response.ContentType = "text/xml"; data = objsrvhttp.responsexml.xml;
Lessons Learned: Summary - Web data syndication is a good and practical option for data providers like FishBase if local data are not enough to make an impact to users. - Distributed processing is a realization that projects can work together, complement each other and be of better service to users. - The web is rich with tools and methodologies; don t re-invent the wheel but adopt standards to achieve global acceptance and room for change. - XML as data exchange format is here to stay - Open Source software should be investigated as options.
THANK YOU www.fishbase.org