<?xml version='1.0'?>
<!DOCTYPE art SYSTEM 'http://www.biomedcentral.com/xml/article.dtd'>
<art>
   <ui>1476-072X-7-29</ui>
   <ji>1476-072X</ji>
   <fm>
      <dochead>Methodology</dochead>
      <bibl>
         <title>
            <p>Integrating open-source technologies to build low-cost information systems for improved access to public health data</p>
         </title>
         <aug>
            <au id="A1">
               <snm>Yi</snm>
               <fnm>Qian</fnm>
               <insr iid="I1"/>
               <email>qyi@u.washington.edu</email>
            </au>
            <au id="A2">
               <snm>Hoskins</snm>
               <mi>E</mi>
               <fnm>Richard</fnm>
               <insr iid="I1"/>
               <insr iid="I2"/>
               <email>Richard.Hoskins@DOH.WA.GOV</email>
            </au>
            <au id="A3">
               <snm>Hillringhouse</snm>
               <mi>A</mi>
               <fnm>Elizabeth</fnm>
               <insr iid="I1"/>
               <email>lhill2@u.washington.edu</email>
            </au>
            <au id="A4">
               <snm>Sorensen</snm>
               <mi>S</mi>
               <fnm>Svend</fnm>
               <insr iid="I1"/>
               <email>svends@u.washington.edu</email>
            </au>
            <au id="A5">
               <snm>Oberle</snm>
               <mi>W</mi>
               <fnm>Mark</fnm>
               <insr iid="I1"/>
               <email>moberle@u.washington.edu</email>
            </au>
            <au id="A6">
               <snm>Fuller</snm>
               <mi>S</mi>
               <fnm>Sherrilynne</fnm>
               <insr iid="I1"/>
               <email>sfuller@u.washington.edu</email>
            </au>
            <au id="A7" ca="yes">
               <snm>Wallace</snm>
               <mi>C</mi>
               <fnm>James</fnm>
               <insr iid="I1"/>
               <email>jwallace@u.washington.edu</email>
            </au>
         </aug>
         <insg>
            <ins id="I1">
               <p>Center for Public Health Informatics, University of Washington, Seattle, Washington, USA</p>
            </ins>
            <ins id="I2">
               <p>Washington State Department of Health, Olympia, Washington, USA</p>
            </ins>
         </insg>
         <source>International Journal of Health Geographics</source>
         <issn>1476-072X</issn>
         <pubdate>2008</pubdate>
         <volume>7</volume>
         <issue>1</issue>
         <fpage>29</fpage>
         <url>http://www.ij-healthgeographics.com/content/7/1/29</url>
         <xrefbib>
            <pubidlist>
               <pubid idtype="pmpid">18541035</pubid>
               <pubid idtype="doi">10.1186/1476-072X-7-29</pubid>
            </pubidlist>
         </xrefbib>
      </bibl>
      <history>
         <rec>
            <date>
               <day>11</day>
               <month>4</month>
               <year>2008</year>
            </date>
         </rec>
         <acc>
            <date>
               <day>09</day>
               <month>6</month>
               <year>2008</year>
            </date>
         </acc>
         <pub>
            <date>
               <day>09</day>
               <month>6</month>
               <year>2008</year>
            </date>
         </pub>
      </history>
      <cpyrt>
         <year>2008</year>
         <collab>Yi et al; licensee BioMed Central Ltd.</collab>
         <note>This is an Open Access article distributed under the terms of the Creative Commons Attribution License (<url>http://creativecommons.org/licenses/by/2.0</url>), which permits unrestricted use, distribution, and reproduction in any medium, provided the original work is properly cited.</note>
      </cpyrt>
      <abs>
         <sec>
            <st>
               <p>Abstract</p>
            </st>
            <p>Effective public health practice relies on the availability of public health data sources and assessment tools to convey information to investigators, practitioners, policy makers, and the general public. Emerging communication technologies on the Internet can deliver all components of the "who, what, when, and where" quartet more quickly than ever with a potentially higher level of quality and assurance, using new analysis and visualization tools. Open-source software provides the opportunity to build low-cost information systems allowing health departments with modest resources access to modern data analysis and visualization tools. In this paper, we integrate open-source technologies and public health data to create a web information system which is accessible to a wide audience through the Internet. Our web application, "EpiVue," was tested using two public health datasets from the Washington State Cancer Registry and Washington State Center for Health Statistics. A third dataset shows the extensibility and scalability of EpiVue in displaying gender-based longevity statistics over a twenty-year interval for 3,143 United States counties. In addition to providing an integrated visualization framework, EpiVue's highly interactive web environment empowers users by allowing them to upload their own geospatial public health data in either comma-separated text files or MS Excel&#8482; spreadsheet files and visualize the geospatial datasets with Google Maps&#8482;.</p>
         </sec>
      </abs>
   </fm>
   <bdy>
      <sec>
         <st>
            <p>Background</p>
         </st>
         <p>Information access is of critical importance for the practice of public health. Having timely, accurate and readily available information is essential to monitoring the health of communities and populations. Having access to public health data is essential to determining the association of environmental exposures to diseases, as well as measuring the progress and the efficacy of interventions. This information informs, educates and empowers people to develop a dialogue which results in effective programs and policies. It helps health authorities evaluate effectiveness, accessibility and quality of various public health services. It facilitates and supports data driven policy-making. The World Wide Web has enabled public health agencies with sufficient information technology resources to develop web-based information systems to extend their capacity for effectively using the data they collect. EpiQMS <abbrgrp><abbr bid="B1">1</abbr></abbrgrp>, developed by the state health department of Washington and the University of Washington, is currently used by health departments in Washington and Pennsylvania. It is implemented using a combination of proprietary operating systems and statistical packages. Many other information systems for analyzing, visualizing, and delivering public health data are implemented with proprietary software systems often beyond the reach of resource-constrained public health agencies. However, as open-source technologies continue to evolve, web-based information systems for collection, storage and analysis of public health data can be built quickly and efficiently with free open-source software and services. These open-source technologies can be shared with health agencies throughout the world and help resource-constrained public health agencies, including those in developing countries, utilize Internet resources with minimal development and support costs.</p>
         <p>In this work, we explore the potential of open-source technologies by creating a web-based application framework for the visualization of public domain population health data. EpiVue, Epidemiologic Visual User Environment, is built exclusively with freely available open-source software. EpiVue components include PostgresSQL <abbrgrp><abbr bid="B2">2</abbr></abbrgrp>, a relational database for data storage, JBoss <abbrgrp><abbr bid="B3">3</abbr></abbrgrp>, a widely used J2EE Java application server, JFreeChart <abbrgrp><abbr bid="B4">4</abbr></abbrgrp>, an open-source Java chart library for use in applications, applets, servlets and Java Server Pages (JSP), the R <abbrgrp><abbr bid="B5">5</abbr></abbrgrp> statistical computing and graphics toolkit and Google Maps&#8482; <abbrgrp><abbr bid="B6">6</abbr></abbrgrp> for interactive Geographic Information System (GIS) visualization. EpiVue is based on the Java programming language <abbrgrp><abbr bid="B7">7</abbr></abbrgrp>, enabling it to run on diverse computing platforms and operating systems. It is currently deployed in a conventional Linux operating system environment. EpiVue has been tested with a variety of popular web browsers and is specifically designed to require no additional application software or browser plug-ins which might limit its use. Figure <figr fid="F1">1</figr> shows EpiVue's application architecture and the integration of the above open-source components.</p>
         <fig id="F1">
            <title>
               <p>Figure 1</p>
            </title>
            <caption>
               <p>The EpiVue application architecture</p>
            </caption>
            <text>
               <p>The EpiVue application architecture.</p>
            </text>
            <graphic file="1476-072X-7-29-1"/>
         </fig>
         <p>Two reference datasets used in our EpiVue prototype are derived from accumulated Washington State Cancer Registry data <abbrgrp><abbr bid="B8">8</abbr></abbrgrp> and death registry data from the Washington State Center for Health Statistics <abbrgrp><abbr bid="B9">9</abbr></abbrgrp>. A third dataset was downloaded and incorporated into the EpiVue system from a life expectancy study covering a twenty-year interval for 3,143 United States counties <abbrgrp><abbr bid="B10">10</abbr></abbrgrp>. Geographic data for United States state, county boundaries and ZIP code information are derived from ASCII formatted cartographic boundary files of Census 2000 of the United States Census Bureau <abbrgrp><abbr bid="B11">11</abbr></abbrgrp>.</p>
      </sec>
      <sec>
         <st>
            <p>Results</p>
         </st>
         <p>EpiVue data are queried through simple web selection controls. Results may be presented in tables, charts and maps. Figure <figr fid="F2">2</figr> shows a pair of line charts displaying the trend of cancer incidence and mortality age-adjusted rates (per 100,000) over a 12-year period. Figure <figr fid="F3">3</figr> shows a pair of bar charts and a table comparing cancer incidence and mortality age-adjusted rates (per 100,000) based on race and ethnicity. EpiVue currently uses JFreeChart <abbrgrp><abbr bid="B4">4</abbr></abbrgrp> to generate charts as shown in Figure <figr fid="F2">2</figr> and <figr fid="F3">3</figr>. However, the data analysis and graphics can also be implemented with R <abbrgrp><abbr bid="B5">5</abbr></abbrgrp>, an open-source language and environment for statistical computing and graphics. It provides a wide variety of statistical analysis and graphic capability comparable to commonly used commercial statistical software packages, such as SAS <abbrgrp><abbr bid="B28">28</abbr></abbrgrp>.</p>
         <fig id="F2">
            <title>
               <p>Figure 2</p>
            </title>
            <caption>
               <p>Line charts displaying the trends of cancer incidence and mortality age-adjusted rates/100,000 in Washington State over a multi-year period</p>
            </caption>
            <text>
               <p>Line charts displaying the trends of cancer incidence and mortality age-adjusted rates/100,000 in Washington State over a multi-year period.</p>
            </text>
            <graphic file="1476-072X-7-29-2"/>
         </fig>
         <fig id="F3">
            <title>
               <p>Figure 3</p>
            </title>
            <caption>
               <p>Bar charts and the corresponding data table comparing cancer incidence and mortality age-adjusted rates/100,000 for racial and ethnic groups in Washington State in 2004</p>
            </caption>
            <text>
               <p>Bar charts and the corresponding data table comparing cancer incidence and mortality age-adjusted rates/100,000 for racial and ethnic groups in Washington State in 2004.</p>
            </text>
            <graphic file="1476-072X-7-29-3"/>
         </fig>
         <p>For visually analyzing epidemiological data to reveal geospatial trends that maybe hidden within charts and tables, EpiVue incorporates two open-source GIS utilities: the R language map utility <abbrgrp><abbr bid="B12">12</abbr></abbrgrp> and the Google Maps&#8482; Application Programming Interface (API) <abbrgrp><abbr bid="B6">6</abbr></abbrgrp>. Figure <figr fid="F4">4</figr> shows side-by-side Washington State county maps coded with cancer incidence and mortality age-adjusted rates (per 100,000) using the R map utility. EpiVue also uses Google Maps&#8482; "mashups" to overlay Google Maps&#8482; cartography data layers with deidentified public health data providing a second powerful and intuitive method for geospatial data visualization. Mashups are a new breed of web-based data integration applications which combine data from more than one source into a single integrated "virtual" application. Figure <figr fid="F5">5</figr> displays side-by-side Washington State county colored polygon maps based on cancer incidence and mortality age-adjusted rates (per 100,000) using the Google Maps&#8482; Keyhole Markup Language (KML) <abbrgrp><abbr bid="B25">25</abbr></abbrgrp>. In comparison to the R language map utility, the Google Maps API is superior in terms of usability, integration, and coverage. In addition, the R map utility currently has very limited built-in geospatial coverage. However, the R map utility has the capability of displaying geospatial data entirely within the confines of a local health agency if deployed on a local server, thereby addressing privacy and security issues with identifiable data, while the Google Maps API requires client applications open to the public.</p>
         <fig id="F4">
            <title>
               <p>Figure 4</p>
            </title>
            <caption>
               <p>Side-by-side comparisons of incidence and mortality age-adjusted rates/100,000 among counties in Washington State presented in R maps</p>
            </caption>
            <text>
               <p>Side-by-side comparisons of incidence and mortality age-adjusted rates/100,000 among counties in Washington State presented in R maps.</p>
            </text>
            <graphic file="1476-072X-7-29-4"/>
         </fig>
         <fig id="F5">
            <title>
               <p>Figure 5</p>
            </title>
            <caption>
               <p>Side-by-side comparisons of incidence and mortality age-adjusted rates/100,000 among counties in Washington State presented in Google Maps&#8482;</p>
            </caption>
            <text>
               <p>Side-by-side comparisons of incidence and mortality age-adjusted rates/100,000 among counties in Washington State presented in Google Maps&#8482;.</p>
            </text>
            <graphic file="1476-072X-7-29-5"/>
         </fig>
         <p>EpiVue also utilizes AJAX (Asynchronous JavaScript and XML) support for Google Maps which exploits client side data caching to provide a highly responsive and interactive environment for visualizing geospatial data. Figure <figr fid="F6">6</figr> shows death incidences from homicides in Washington State in 2005 grouped by ZIP codes which are represented by colored drop-shape markers. As users zoom into a region, more markers representing different levels of homicide incidences appear in the maps. This zooming capability provides a powerful way to display and manage a large amount of information in a relatively limited space.</p>
         <fig id="F6">
            <title>
               <p>Figure 6</p>
            </title>
            <caption>
               <p>Maps generated with the Google Maps&#8482; API showing death incidence data grouped by ZIP code and illustrating the EpiVue custom zoom feature</p>
            </caption>
            <text>
               <p>Maps generated with the Google Maps&#8482; API showing death incidence data grouped by ZIP code and illustrating the EpiVue custom zoom feature.</p>
            </text>
            <graphic file="1476-072X-7-29-6"/>
         </fig>
         <p>To test the scalability and performance of the EpiVue application, a dataset of life expectancy data covering all fifty U.S. states published by Murray et al. was downloaded and incorporated into EpiVue <abbrgrp><abbr bid="B10">10</abbr></abbrgrp>. This dataset includes life expectancy statistics for 3,143 counties and the District of Columbia from 1980 to 1999. EpiVue currently limits users to viewing all counties in an individual state, the largest being Texas with 254 counties. Figure <figr fid="F7">7</figr> shows a color-coded map based on the life expectancy for all genders in all Texas counties in 1999. When an individual county is clicked, an information window shows an embedded JfreeChart <abbrgrp><abbr bid="B4">4</abbr></abbrgrp> bar chart displaying the trend of life expectancy from 1980 to 1999 for this county as shown in Figure <figr fid="F7">7</figr>. The ability to simultaneously display both spatial and temporal data in a highly interactive way represents an important extension of the Google Maps&#8482; technique in its application to public health information.</p>
         <fig id="F7">
            <title>
               <p>Figure 7</p>
            </title>
            <caption>
               <p>Left panel shows a Google Maps&#8482; mashup with the life expectancy in 1999 for all genders in 254 Texas counties</p>
            </caption>
            <text>
               <p>Left panel shows a Google Maps&#8482; mashup with the life expectancy in 1999 for all genders in 254 Texas counties. Right panel is an embedded JFreeChart chart popup displaying the life expectancy trend from 1980 to 1999 for Starr County, Texas integrated into the Google Maps&#8482; information window.</p>
            </text>
            <graphic file="1476-072X-7-29-7"/>
         </fig>
         <p>EpiVue allows users to interactively upload and display their own geospatial data files as shown in Figure <figr fid="F8">8</figr>. Data files can be supplied in either comma-separated values (CSV) text format or Microsoft Excel&#8482; format with values corresponding to the U.S. ZIP code, county, state or longitude and latitude. A built-in geocoder utilizing Google Maps geocoding services converts an uploaded file of street addresses to a corresponding longitude and latitude file. Furthermore, EpiVue also includes an interactive geocoder to be used along with users' geospatial data coded on Google Maps&#8482; (see Figure <figr fid="F9">9</figr>). This feature allows the interactive addition of custom data on top of the existing geocoded data layer. Google Maps geocoding services currently cover 39 countries <abbrgrp><abbr bid="B26">26</abbr></abbrgrp>.</p>
         <fig id="F8">
            <title>
               <p>Figure 8</p>
            </title>
            <caption>
               <p>EpiVue interface to upload end-user data based on U.S. ZIP code, county, state or longitude and latitude</p>
            </caption>
            <text>
               <p>EpiVue interface to upload end-user data based on U.S. ZIP code, county, state or longitude and latitude.</p>
            </text>
            <graphic file="1476-072X-7-29-8"/>
         </fig>
         <fig id="F9">
            <title>
               <p>Figure 9</p>
            </title>
            <caption>
               <p>EpiVue interactive geocoder overlaid with users' geospatial data on Google Maps&#8482;</p>
            </caption>
            <text>
               <p>EpiVue interactive geocoder overlaid with users' geospatial data on Google Maps&#8482;.</p>
            </text>
            <graphic file="1476-072X-7-29-9"/>
         </fig>
         <p>In summary, EpiVue's upload capability allows non-GIS-expert users to quickly visualize their geospatial data without additional support of GIS expertise or additional support of software plug-ins. It also provides a complete platform and roadmap for testing and modifying EpiVue for knowledgeable computer users seeking to deploy the EpiVue package locally. Example data files for file-uploading in each format are provided in Additional files section [see Additional files <supplr sid="S1">1</supplr>, <supplr sid="S2">2</supplr>, <supplr sid="S3">3</supplr>, <supplr sid="S4">4</supplr>, <supplr sid="S5">5</supplr>, <supplr sid="S6">6</supplr>, <supplr sid="S7">7</supplr>, <supplr sid="S8">8</supplr>, <supplr sid="S9">9</supplr>, <supplr sid="S10">10</supplr>, <supplr sid="S11">11</supplr>].</p>
         <suppl id="S1">
            <title>
               <p>Additional file 1</p>
            </title>
            <text>
               <p>CountySampleFile.txt. U. S. county based geospatial public health data in comma separated value text format.</p>
            </text>
            <file name="1476-072X-7-29-S1.txt">
               <p>Click here for file</p>
            </file>
         </suppl>
         <suppl id="S2">
            <title>
               <p>Additional file 2</p>
            </title>
            <text>
               <p>CountySampleFile.xls. U. S. county based geospatial public health data in Microsoft Excel spreadsheet file format.</p>
            </text>
            <file name="1476-072X-7-29-S2.xls">
               <p>Click here for file</p>
            </file>
         </suppl>
         <suppl id="S3">
            <title>
               <p>Additional file 3</p>
            </title>
            <text>
               <p>ZipCodeSampleFile.txt. U. S. ZIP code based geospatial public health data in comma separated value text format.</p>
            </text>
            <file name="1476-072X-7-29-S3.txt">
               <p>Click here for file</p>
            </file>
         </suppl>
         <suppl id="S4">
            <title>
               <p>Additional file 4</p>
            </title>
            <text>
               <p>ZipCodeSampleFile.xls. U. S. ZIP code based geospatial public health data in Microsoft Excel spreadsheet file format.</p>
            </text>
            <file name="1476-072X-7-29-S4.xls">
               <p>Click here for file</p>
            </file>
         </suppl>
         <suppl id="S5">
            <title>
               <p>Additional file 5</p>
            </title>
            <text>
               <p>LatLngSampleFile.txt. Latitude/longitude based geospatial public health data in comma separated value text format.</p>
            </text>
            <file name="1476-072X-7-29-S5.txt">
               <p>Click here for file</p>
            </file>
         </suppl>
         <suppl id="S6">
            <title>
               <p>Additional file 6</p>
            </title>
            <text>
               <p>LatLngSampleFile.xls. Latitude/longitude based geospatial public health data in Microsoft Excel spreadsheet file format.</p>
            </text>
            <file name="1476-072X-7-29-S6.xls">
               <p>Click here for file</p>
            </file>
         </suppl>
         <suppl id="S7">
            <title>
               <p>Additional file 7</p>
            </title>
            <text>
               <p>StateSampleFile.txt. U. S. state based geospatial public health data in comma separated value text format.</p>
            </text>
            <file name="1476-072X-7-29-S7.txt">
               <p>Click here for file</p>
            </file>
         </suppl>
         <suppl id="S8">
            <title>
               <p>Additional file 8</p>
            </title>
            <text>
               <p>StateSampleFile.xls. U. S. state based geospatial public health data in Microsoft Excel spreadsheet file format.</p>
            </text>
            <file name="1476-072X-7-29-S8.xls">
               <p>Click here for file</p>
            </file>
         </suppl>
         <suppl id="S9">
            <title>
               <p>Additional file 9</p>
            </title>
            <text>
               <p>InputForGeocoderSample.txt. U. S. street address sample file in tab separated text file format.</p>
            </text>
            <file name="1476-072X-7-29-S9.txt">
               <p>Click here for file</p>
            </file>
         </suppl>
         <suppl id="S10">
            <title>
               <p>Additional file 10</p>
            </title>
            <text>
               <p>InputForGeocoderSample.xls. U. S. street address sample file in Microsoft Excel spreadsheet file format.</p>
            </text>
            <file name="1476-072X-7-29-S10.xls">
               <p>Click here for file</p>
            </file>
         </suppl>
         <suppl id="S11">
            <title>
               <p>Additional file 11</p>
            </title>
            <text>
               <p>PlaceMarkersSample.xml. locations with known latitudes/longitudes sample file in XML format.</p>
            </text>
            <file name="1476-072X-7-29-S11.xml">
               <p>Click here for file</p>
            </file>
         </suppl>
      </sec>
      <sec>
         <st>
            <p>Discussion</p>
         </st>
         <p>Access to public health data through the Internet has evolved rapidly in the past several years, especially in the United States, and many health agencies from the federal level through state and local health departments offer web access to public health data. Most of these applications are developed using proprietary software systems limited to presenting data in tabular format with no geospatial visualization capabilities. As public health awareness and interventions move beyond local, state and national boundaries towards a global health perspective, an increasing amount of public health data will need to be integrated and publicly accessible. The cost and complexity of implementing traditional proprietary solutions, however, will be a limiting factor for software system deployment in public health, especially for agencies with limited resources. For example, just the software cost alone for a web application built with Microsoft Windows server <abbrgrp><abbr bid="B27">27</abbr></abbrgrp>, Microsoft SQL database server <abbrgrp><abbr bid="B27">27</abbr></abbrgrp>, a commercial statistical package like SAS <abbrgrp><abbr bid="B28">28</abbr></abbrgrp>, and a commercial GIS package like ESRI <abbrgrp><abbr bid="B14">14</abbr></abbrgrp> can easily reach tens of thousands of dollars. In contrast, the EpiVue application framework, composed exclusively of publicly available open-source technologies, can serve as a prototype for building low-cost public health visualization and assessment systems.</p>
         <p>A recent study examining the prospects of using Internet platform GIS (or "web-GIS") with public health data indicated an overwhelming demand for the further integration of web-GIS into public health practice <abbrgrp><abbr bid="B13">13</abbr></abbrgrp>. Many organizations want to use web-GIS but lack the resources and the expertise to build in-house web-GIS capacity. Web-GIS has the potential to become a standard method for displaying spatially referenced data and for empowering public health officials to employ spatial and temporal visualization in the dissemination of public health data. In comparison to other web-GIS packages, either proprietary packages such as ESRI's arcIMS <abbrgrp><abbr bid="B14">14</abbr></abbrgrp>, or open-source packages like MapServer <abbrgrp><abbr bid="B15">15</abbr></abbrgrp>, Google Maps&#8482; has important advantages making it a candidate as a web-GIS platform for public health. These advantages include: (1) an easy to implement and ready-to-use free API for development mainly through JavaScript programming, (2) a large developer support community which makes it easy to find technical solutions and support online, (3) a generic browser interface requiring no additional software or plug-ins for most of modern browsers like Internet Explorer, Firefox, and Safari and (4) an extensive international user community who is already familiar with Google Maps&#8482; and requires little, if any, additional training.</p>
         <p>Challenges and limitations clearly exist in deploying public health data using web-GIS open-source technologies in terms of security and privacy. Google Maps&#8482; in particular requires spatial data coordinates to traverse the Internet in order to utilize web-GIS capabilities. Still, a large body of valuable public health data is not limited by privacy and security constraints, such as the publicly available cumulative datasets <abbrgrp><abbr bid="B8">8</abbr><abbr bid="B9">9</abbr><abbr bid="B10">10</abbr><abbr bid="B11">11</abbr></abbrgrp> used in this study. Many researchers are already deploying web-GIS visualization in their applications in diverse public health arenas <abbrgrp><abbr bid="B16">16</abbr><abbr bid="B17">17</abbr><abbr bid="B18">18</abbr><abbr bid="B29">29</abbr><abbr bid="B30">30</abbr></abbrgrp>. AEGIS <abbrgrp><abbr bid="B16">16</abbr></abbrgrp> uses the Google Maps&#8482; API to display simulated temporal and spatial alarms related to syndromic surveillance. HealthMap <abbrgrp><abbr bid="B17">17</abbr></abbrgrp> pinpoints world-wide infectious disease outbreak information in a web-GIS interface using Google Maps&#8482;. The WhoIsSick website <abbrgrp><abbr bid="B18">18</abbr></abbrgrp> combines an innovative social networking schema with Google Maps&#8482; mashups for voluntary anonymous reporting of infectious disease symptoms.</p>
         <p>Another limitation in using the Google Maps API for web-GIS is the size of the geocoded data sent to the Google Maps server for rendering on the client browser system. Based on our experience, the Google Maps server is able to render approximately 100,000 latitude/longitude boundary points per geocoded overlay. Although this is sufficient to display all 254 Texas county boundaries at full resolution in the life expectancy example above, it falls short of the approximately 150,000 points required to display all fifty states in the United States at full resolution using the 2000 U.S. Census data files. We were able to get around this limitation by sampling every third data point without significant compromises in performance or resolution. A larger issue in building low-cost web-GIS systems is the lack of freely available geographic data sets, particularly for use in underserved countries. Currently, the U.S. Census Bureau has made census related geographic data at levels of state, county, ZIP code, census block, and census tract available to the public through its web site <abbrgrp><abbr bid="B11">11</abbr></abbrgrp>. Canada is also providing some quality geographic data at no cost for the public through GeoBase <abbrgrp><abbr bid="B31">31</abbr></abbrgrp>.</p>
         <p>Interoperability with existing health data and software systems will be crucial if the use of web-GIS in public health is to gain acceptance among public health practitioners and the general public. EpiVue is specifically designed for simplicity and interoperability at both the web browser level and at the systems level to achieve broad end-user acceptance while at the same time promoting ease of implementation and support for local public health agency installations.</p>
         <p>At the browser level, EpiVue runs on all common web browsers without additional plug-ins or local application software. Requiring the use of specific web browsers, or browser plug-ins, introduces complexity, incompatibility and security issues which can discourage widespread adoption of web applications. However, nothing in the EpiVue applications framework precludes the use of plug-ins. For example, open-source web-GIS tools such as Scalable Vector Graphics (SVG) <abbrgrp><abbr bid="B19">19</abbr></abbrgrp> have already made their way into public health visualization applications <abbrgrp><abbr bid="B1">1</abbr><abbr bid="B20">20</abbr></abbrgrp>. SVG and other plug-in technologies such as Adobe Flash could be valuable additions to future versions of the EpiVue suite of open-source tools.</p>
         <p>EpiVue's system architecture is designed for future growth and interoperability with other software systems and services. EpiVue's Java based application framework lends itself to integration with other Java applications such as AEGIS-CCT <abbrgrp><abbr bid="B16">16</abbr><abbr bid="B21">21</abbr></abbrgrp>, an open-source software tool for creating simulated outbreak clusters in surveillance systems. The EpiVue JBoss server features built-in web services capabilities which can be used to link services to a larger public health computing grid. The R statistical language and graphics package included in the EpiVue application framework could be further exploited for its extensive capability of performing complex bio-statistical analysis <abbrgrp><abbr bid="B22">22</abbr></abbrgrp>. R is an open-source alternative to proprietary statistical packages unavailable to resource-constrained health agencies.</p>
         <p>EpiVue may be particularly well suited to public health disaster preparedness applications. The Google Maps&#8482; API now includes traffic flow information for 30 major United States cities which could be exploited for monitoring traffic conditions in areas proximal to disasters. It also features a terrain data layer which could be used to show areas susceptible to flooding and water/well contamination in flood prone regions such as Washington State.</p>
      </sec>
      <sec>
         <st>
            <p>Conclusion</p>
         </st>
         <p>We believe the EpiVue application framework can serve as a prototype for building low-cost public health visualization and assessment systems for resource-constrained environments. In the future, we envision integrating the EpiVue application framework with our public health knowledge management system, myPublicHealth <abbrgrp><abbr bid="B23">23</abbr></abbrgrp>, to create a comprehensive "dashboard" allowing public health officials to quickly assess the health of their local communities and respond rapidly to adverse public health events.</p>
      </sec>
      <sec>
         <st>
            <p>Methods</p>
         </st>
         <p>EpiVue was designed using the conventional 4-tier J2EE architecture consisting of a data source tier using a PostgreSQL database and static files, a business tier utilizing Enterprise Java Beans (EJB), a web tier using servlets and Java Server Pages (JSP), and a generic browser client tier.</p>
         <p>The three datasets used in this work were originally obtained in different formats. The Washington State cancer dataset <abbrgrp><abbr bid="B8">8</abbr></abbrgrp> was in tab-delimited ASCII format, the Washington State death dataset <abbrgrp><abbr bid="B9">9</abbr></abbrgrp> was in Xbase data file (.dbf) format, and the life expectancy dataset <abbrgrp><abbr bid="B10">10</abbr></abbrgrp> was in Microsoft Excel spreadsheet format (.xls). Each of these files was parsed using Perl <abbrgrp><abbr bid="B24">24</abbr></abbrgrp> programs with the following Perl utility packages: XBase.pm for .dbf files and Spreadsheet.pm for .xsl files. Parsed datasets were loaded into a PostgreSQL <abbrgrp><abbr bid="B2">2</abbr></abbrgrp> relational database using the Perl DBI.pm module. All Perl modules mentioned above are freely available for download from CPAN <abbrgrp><abbr bid="B32">32</abbr></abbrgrp>. The geographic data for state, county boundaries and ZIP codes were downloaded from U.S. Census 2000 by the U.S. Census Bureau <abbrgrp><abbr bid="B11">11</abbr></abbrgrp>. The ZIP code geographic data were loaded into the PostgreSQL <abbrgrp><abbr bid="B2">2</abbr></abbrgrp> database and each ZIP code is represented by its centroid latitude and longitude. County and state boundary data were stored in both the PostgreSQL database and static tab-delimited ASCII files.</p>
         <p>The web tier and the business tier are components of the JBoss J2EE application server <abbrgrp><abbr bid="B3">3</abbr></abbrgrp>. The EJB beans in the business tier interact with the database and perform all business queries. Servlets in the web tier process client requests then pass them to EJB beans and obtain the query results from EJB beans. Servlets also integrate various utility tools listed in Figure <figr fid="F1">1</figr> to generate responses to client requests. Java Server Pages (JSP) in the web tier is used to present dynamic responses to clients.</p>
         <p>The client tier is made up of static and dynamic html pages including forms, tables, charts, and embedded Javascripts with AJAX capability for Google Maps&#8482;. AJAX is a group of inter-related web development techniques used for creating interactive web applications. It is asynchronous, in that the extra data is requested from the server and loaded in the background without interfering with the display and behavior of an existing page. Most modern browsers, such as Internet Explorer, Firefox, and Safari, will work properly without any additional plug-ins. The state and county level polygon maps are implemented using Google Maps&#8482; support for KML <abbrgrp><abbr bid="B25">25</abbr></abbrgrp> or KMZ. The maps for ZIP codes or latitude/longitude data are implemented using AJAX programming with the Google Maps&#8482; API.</p>
         <p>EpiVue is accessible through its web site <abbrgrp><abbr bid="B33">33</abbr></abbrgrp>.</p>
      </sec>
   </bdy>
   <bm>
      <ack>
         <sec>
            <st>
               <p>Acknowledgements</p>
            </st>
            <p>The authors greatly appreciate the Google Maps&#8482; API tutorial web site <abbrgrp><abbr bid="B34">34</abbr></abbrgrp> for providing a wonderful tutorial to get started. We also thank Renee Risher and Missie Thurston for their help in reviewing the manuscript. This work was supported by CDC Center of Excellence in Public Health Informatics grant P01 HK 000027.</p>
         </sec>
      </ack>
      <refgrp>
         <bibl id="B1">
            <title>
               <p>EpiQMS: An Internet Application for access to Public Health Data for Citizens, Providers, and Public Health Investigators</p>
            </title>
            <aug>
               <au>
                  <snm>Hoskins</snm>
                  <fnm>RE</fnm>
               </au>
               <au>
                  <snm>O'Connor</snm>
                  <fnm>C</fnm>
               </au>
               <au>
                  <snm>Johnson</snm>
                  <fnm>C</fnm>
               </au>
               <au>
                  <snm>O'Carroll</snm>
                  <fnm>P</fnm>
               </au>
               <au>
                  <snm>Fuller</snm>
                  <fnm>S</fnm>
               </au>
            </aug>
            <source> J Public Health Manag Pract</source>
            <pubdate>2002</pubdate>
            <volume>8</volume>
            <issue>3</issue>
            <fpage>30</fpage>
            <lpage>36</lpage>
            <xrefbib>
               <pubid idtype="pmpid" link="fulltext">15156622</pubid>
            </xrefbib>
         </bibl>
         <bibl id="B2">
            <title>
               <p>PostgreSQL Relational Database</p>
            </title>
            <url>http://www.postgresql.org</url>
         </bibl>
         <bibl id="B3">
            <title>
               <p>JBoss Application Server, a J2EE application server</p>
            </title>
            <url>http://www.jboss.org</url>
         </bibl>
         <bibl id="B4">
            <title>
               <p>JFreeChart, a free 100% Java chart library</p>
            </title>
            <url>http://www.jfree.org/jfreechart/</url>
         </bibl>
         <bibl id="B5">
            <title>
               <p>R, a language and environment for statistical computing and graphics</p>
            </title>
            <url>http://www.r-project.org/</url>
         </bibl>
         <bibl id="B6">
            <title>
               <p>Google Maps API</p>
            </title>
            <url>http://www.google.com/apis/maps/index.html</url>
         </bibl>
         <bibl id="B7">
            <title>
               <p>Java Programming language</p>
            </title>
            <url>http://java.sun.com</url>
         </bibl>
         <bibl id="B8">
            <title>
               <p>Washington Cancer Registry Data</p>
            </title>
            <url>https://fortress.wa.gov/doh/wscr/</url>
         </bibl>
         <bibl id="B9">
            <title>
               <p>Washington Death Registry Data</p>
            </title>
            <url>http://www.doh.wa.gov/EHSPHL/CHS/CHS-data/death/deatmain.htm</url>
         </bibl>
         <bibl id="B10">
            <title>
               <p>Eight Americas: Investigating Mortality Disparities across Races, Counties, and Race-Counties in the United States</p>
            </title>
            <aug>
               <au>
                  <snm>Murray</snm>
                  <fnm>CJL</fnm>
               </au>
               <au>
                  <snm>Kulkarni</snm>
                  <fnm>SC</fnm>
               </au>
               <au>
                  <snm>Michaud</snm>
                  <fnm>C</fnm>
               </au>
               <au>
                  <snm>Tomijima</snm>
                  <fnm>N</fnm>
               </au>
               <au>
                  <snm>Bulzacchelli</snm>
                  <fnm>MT</fnm>
               </au>
               <au>
                  <snm>Iandiorio</snm>
                  <fnm>TJ</fnm>
               </au>
               <au>
                  <snm>Ezzati</snm>
                  <fnm>M</fnm>
               </au>
            </aug>
            <source>PloS Medicine</source>
            <pubdate>2006</pubdate>
            <volume>3</volume>
            <issue>9</issue>
            <fpage>1513</fpage>
            <lpage>1524</lpage>
            <xrefbib>
               <pubid idtype="doi">10.1371/journal.pmed.0030260</pubid>
            </xrefbib>
         </bibl>
         <bibl id="B11">
            <title>
               <p>Census 2000 of US Census Bureau</p>
            </title>
            <url>http://www.census.gov/main/www/cen2000.html</url>
         </bibl>
         <bibl id="B12">
            <title>
               <p>R map libraries</p>
            </title>
            <url>http://alumni.media.mit.edu/~tpminka/software/maps/</url>
         </bibl>
         <bibl id="B13">
            <title>
               <p>Mapping health on the Internet: A new tool for environmental justice and public health research</p>
            </title>
            <aug>
               <au>
                  <snm>Maclachlan</snm>
                  <fnm>JC</fnm>
               </au>
               <au>
                  <snm>Jerrett</snm>
                  <fnm>M</fnm>
               </au>
               <au>
                  <snm>Abernathy</snm>
                  <fnm>T</fnm>
               </au>
               <au>
                  <snm>Sears</snm>
                  <fnm>M</fnm>
               </au>
               <au>
                  <snm>Bunch</snm>
                  <fnm>MJ</fnm>
               </au>
            </aug>
            <source>Health &amp; Place</source>
            <pubdate>2007</pubdate>
            <volume>13</volume>
            <fpage>72</fpage>
            <lpage>86</lpage>
            <xrefbib>
               <pubidlist>
                  <pubid idtype="doi">10.1016/j.healthplace.2005.09.012</pubid>
                  <pubid idtype="pmpid" link="fulltext">16527510</pubid>
               </pubidlist>
            </xrefbib>
         </bibl>
         <bibl id="B14">
            <title>
               <p>ESRI ArcIMS, the solution for delivering dynamic maps and GIS data and services via the Web</p>
            </title>
            <url>http://www.esri.com/software/arcgis/arcims/index.html</url>
         </bibl>
         <bibl id="B15">
            <title>
               <p>MapServer, an open-source development environment for building spatially-enabled internet applications</p>
            </title>
            <url>http://mapserver.gis.umn.edu/</url>
         </bibl>
         <bibl id="B16">
            <title>
               <p>AEGIS: a robust and scalable real-time public health surveillance system</p>
            </title>
            <aug>
               <au>
                  <snm>Reis</snm>
                  <fnm>BY</fnm>
               </au>
               <au>
                  <snm>Kirby</snm>
                  <fnm>C</fnm>
               </au>
               <au>
                  <snm>Hadden</snm>
                  <fnm>LE</fnm>
               </au>
               <au>
                  <snm>Olson</snm>
                  <fnm>K</fnm>
               </au>
               <au>
                  <snm>McMurry</snm>
                  <fnm>AJ</fnm>
               </au>
               <au>
                  <snm>Daniel</snm>
                  <fnm>JB</fnm>
               </au>
               <au>
                  <snm>Mandl</snm>
                  <fnm>KD</fnm>
               </au>
            </aug>
            <source>J Am Med Inform Assoc</source>
            <pubdate>2007</pubdate>
            <volume>14</volume>
            <issue>5</issue>
            <fpage>581</fpage>
            <lpage>8</lpage>
            <xrefbib>
               <pubidlist>
                  <pubid idtype="doi">10.1197/jamia.M2342</pubid>
                  <pubid idtype="pmpid" link="fulltext">17600100</pubid>
               </pubidlist>
            </xrefbib>
         </bibl>
         <bibl id="B17">
            <title>
               <p>HealthMap: Global infectious disease monitoring through automated classification and visualization of Internet media reports</p>
            </title>
            <aug>
               <au>
                  <snm>Freifeld</snm>
                  <fnm>CC</fnm>
               </au>
               <au>
                  <snm>Mandl</snm>
                  <fnm>KD</fnm>
               </au>
               <au>
                  <snm>Reis</snm>
                  <fnm>BY</fnm>
               </au>
               <au>
                  <snm>Brownstein</snm>
                  <fnm>JS</fnm>
               </au>
            </aug>
            <source>J Am Med Inform Assoc</source>
            <pubdate>2007</pubdate>
            <inpress/>
            <xrefbib>
               <pubid idtype="pmpid" link="fulltext">18096908</pubid>
            </xrefbib>
         </bibl>
         <bibl id="B18">
            <title>
               <p>Who is Sick?</p>
            </title>
            <url>http://www.whoissick.org</url>
         </bibl>
         <bibl id="B19">
            <title>
               <p>Scalable Vector Graphics (SVG)</p>
            </title>
            <url>http://www.w3.org/Graphics/SVG/</url>
         </bibl>
         <bibl id="B20">
            <title>
               <p>Web-based public health geographic information systems for resources-constrained environment using scalable vector graphic technology: a proof of concept applied to the expanded program on immunization data</p>
            </title>
            <aug>
               <au>
                  <snm>Kamadjeu</snm>
                  <fnm>R</fnm>
               </au>
               <au>
                  <snm>Tolentino</snm>
                  <fnm>H</fnm>
               </au>
            </aug>
            <source>International Journal of Health Geographics</source>
            <pubdate>2006</pubdate>
            <volume>5</volume>
            <fpage>24</fpage>
            <lpage>31</lpage>
            <xrefbib>
               <pubidlist>
                  <pubid idtype="pmcid">1523338</pubid>
                  <pubid idtype="pmpid" link="fulltext">16749942</pubid>
                  <pubid idtype="doi">10.1186/1476-072X-5-24</pubid>
               </pubidlist>
            </xrefbib>
         </bibl>
         <bibl id="B21">
            <title>
               <p>A software tool for creating simulated outbreaks to benchmark surveillance systems</p>
            </title>
            <aug>
               <au>
                  <snm>Cassa</snm>
                  <fnm>CA</fnm>
               </au>
               <au>
                  <snm>Iancu</snm>
                  <fnm>K</fnm>
               </au>
               <au>
                  <snm>Olson</snm>
                  <fnm>KL</fnm>
               </au>
               <au>
                  <snm>Mandl</snm>
                  <fnm>KD</fnm>
               </au>
            </aug>
            <source>BMC Medical Informatics and Decision Making</source>
            <pubdate>2005</pubdate>
            <volume>5</volume>
            <fpage>22</fpage>
            <lpage>28</lpage>
            <xrefbib>
               <pubid idtype="doi">10.1186/1472-6947-5-22</pubid>
            </xrefbib>
         </bibl>
         <bibl id="B22">
            <title>
               <p>Bioconductor: Open software development for computational biology and bioinformatics</p>
            </title>
            <aug>
               <au>
                  <snm>Gentleman</snm>
                  <fnm>RC</fnm>
               </au>
               <au>
                  <snm>Carey</snm>
                  <fnm>VJ</fnm>
               </au>
               <au>
                  <snm>Bates</snm>
                  <fnm>DM</fnm>
               </au>
               <au>
                  <snm>Bolstad</snm>
                  <fnm>B</fnm>
               </au>
               <au>
                  <snm>Dettling</snm>
                  <fnm>M</fnm>
               </au>
            </aug>
            <source>Genome Biol</source>
            <pubdate>2004</pubdate>
            <volume>5</volume>
            <fpage>R80</fpage>
            <xrefbib>
               <pubidlist>
                  <pubid idtype="pmcid">545600</pubid>
                  <pubid idtype="pmpid" link="fulltext">15461798</pubid>
                  <pubid idtype="doi">10.1186/gb-2004-5-10-r80</pubid>
               </pubidlist>
            </xrefbib>
         </bibl>
         <bibl id="B23">
            <title>
               <p>An interactive digital knowledge management system to improve public health practitioners' access to public health resources</p>
            </title>
            <aug>
               <au>
                  <snm>Revere</snm>
                  <fnm>D</fnm>
               </au>
               <au>
                  <snm>Bugni</snm>
                  <fnm>PF</fnm>
               </au>
               <au>
                  <snm>Fuller</snm>
                  <fnm>SS</fnm>
               </au>
            </aug>
            <source>In Proc AMIA Annu Fall Symp, Washington DC</source>
            <pubdate>2006</pubdate>
         </bibl>
         <bibl id="B24">
            <title>
               <p>Perl, a cross platform programming language</p>
            </title>
            <url>http://www.perl.org/</url>
         </bibl>
         <bibl id="B25">
            <title>
               <p>Keyhole Markup Language (KML), an XML-based language for managing the display of 3D geospatial data in Google Maps&#8482; and Google Earth</p>
            </title>
            <url>http://code.google.com/apis/kml/documentation/</url>
         </bibl>
         <bibl id="B26">
            <title>
               <p>Google Spreadsheet Autofilter (API Example)</p>
            </title>
            <url>http://gmaps-samples.googlecode.com/svn/trunk/mapcoverage_filtered.html</url>
         </bibl>
         <bibl id="B27">
            <title>
               <p>Microsoft Servers</p>
            </title>
            <url>http://www.microsoft.com/servers/default.mspx</url>
         </bibl>
         <bibl id="B28">
            <title>
               <p>SAS</p>
            </title>
            <url>http://www.sas.com</url>
         </bibl>
         <bibl id="B29">
            <title>
               <p>Web GIS in practice III: creating a simple interactive map of England's Strategic Health Authorities using Google Maps API, Google Earth KML, and MSN Virtual Earth Map Control</p>
            </title>
            <aug>
               <au>
                  <snm>Boulos</snm>
                  <fnm>MNK</fnm>
               </au>
            </aug>
            <source>International Journal of Health Geographics</source>
            <pubdate>2005</pubdate>
            <volume>4</volume>
            <fpage>22</fpage>
            <xrefbib>
               <pubidlist>
                  <pubid idtype="pmcid">1242244</pubid>
                  <pubid idtype="pmpid" link="fulltext">16176577</pubid>
                  <pubid idtype="doi">10.1186/1476-072X-4-22</pubid>
               </pubidlist>
            </xrefbib>
         </bibl>
         <bibl id="B30">
            <title>
               <p>Web GIS in practice V: 3-D interactive and real-time mapping in Second Life</p>
            </title>
            <aug>
               <au>
                  <snm>Boulos</snm>
                  <fnm>MNK</fnm>
               </au>
               <au>
                  <snm>Burden</snm>
                  <fnm>D</fnm>
               </au>
            </aug>
            <source>International Journal of Health Geographics</source>
            <pubdate>2007</pubdate>
            <volume>6</volume>
            <fpage>51</fpage>
            <xrefbib>
               <pubidlist>
                  <pubid idtype="pmcid">2216085</pubid>
                  <pubid idtype="pmpid" link="fulltext">18042275</pubid>
                  <pubid idtype="doi">10.1186/1476-072X-6-51</pubid>
               </pubidlist>
            </xrefbib>
         </bibl>
         <bibl id="B31">
            <title>
               <p>GeoBase</p>
            </title>
            <url>http://www.geobase.ca</url>
         </bibl>
         <bibl id="B32">
            <title>
               <p>CPAN</p>
            </title>
            <url>http://www.cpan.org</url>
         </bibl>
         <bibl id="B33">
            <title>
               <p>EpiVue</p>
            </title>
            <url>https://epivue.cphi.washington.edu/epivue</url>
         </bibl>
         <bibl id="B34">
            <title>
               <p>Google Maps API tutorial</p>
            </title>
            <url>http://econym.googlepages.com/index.htm</url>
         </bibl>
      </refgrp>
   </bm>
</art>
