<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss xmlns:content="http://purl.org/rss/1.0/modules/content/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:atom="http://www.w3.org/2005/Atom" xmlns:sy="http://purl.org/rss/1.0/modules/syndication/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:georss="http://www.georss.org/georss" xmlns:geo="http://www.w3.org/2003/01/geo/wgs84_pos#" xmlns:ymaps="http://api.maps.yahoo.com/Maps/V2/AnnotatedMaps.xsd" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>Adam Estrada</title>
	
	<link>http://www.adamestrada.com</link>
	<description>Mapping the planet 7.5 minutes at a time...</description>
	<lastBuildDate>Tue, 17 Aug 2010 17:19:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/AdamEstrada" /><feedburner:info uri="adamestrada" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:emailServiceId>AdamEstrada</feedburner:emailServiceId><feedburner:feedburnerHostname>http://feedburner.google.com</feedburner:feedburnerHostname><item>
		<title>Solr and Geonames</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/C31kojuG5a4/</link>
		<comments>http://www.adamestrada.com/2010/08/17/solr-and-geonames/#comments</comments>
		<pubDate>Tue, 17 Aug 2010 16:40:54 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[Apache Project]]></category>
		<category><![CDATA[GeoSpatial]]></category>
		<category><![CDATA[Geonames]]></category>
		<category><![CDATA[Solr]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=429</guid>
		<description><![CDATA[Solr is the popular, blazing fast open source enterprise search platform from the Apache Lucene project. Its major features include powerful full-text search, hit highlighting, faceted search, dynamic clustering, database integration, and rich document (e.g., Word, PDF) handling. Solr is highly scalable, providing distributed search and index replication, and it powers the search and navigation features of many of the world's largest internet sites. <a href="http://www.adamestrada.com/2010/08/17/solr-and-geonames/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I have been very interested in <a href="http://lucene.apache.org/java/docs/index.html">Lucene</a> and <a href="http://lucene.apache.org/solr/">Solr</a> over the past few weeks and look at it as a great alternate way to store and query for data over the web. Think of Solr as a free version of Google&#8230;</p>
<blockquote><p>Solr is the popular, blazing fast open source enterprise search platform from the Apache Lucene project. Its major features include powerful full-text search, hit highlighting, faceted search, dynamic clustering, database integration, and rich document (e.g., Word, PDF) handling. Solr is highly scalable, providing distributed search and index replication, and it powers the search and navigation features of many of the world&#8217;s largest internet sites.</p>
<p>Solr is written in Java and runs as a standalone full-text search server within a servlet container such as Tomcat. Solr uses the Lucene Java search library at its core for full-text indexing and search, and has REST-like HTTP/XML and JSON APIs that make it easy to use from virtually any programming language. Solr&#8217;s powerful external configuration allows it to be tailored to almost any type of application without Java coding, and it has an extensive plugin architecture when more advanced customization is required.</p>
<p>See the complete <a href="http://lucene.apache.org/solr/features.html">feature list</a> for more details.</p></blockquote>
<p>You get the ability to ingest the Solr example data set out of the box so with that comes predefined schema.xml and solrconfig.xml which are the core Solr configuration files. I tested the version from the Apache website but also tested against the distribution found at the <a href="http://www.lucidimagination.com/enterprise-software-solutions-download">Lucid Imagination</a> website and that seems to be a little more comprehensive as far as what is included.</p>
<p>Lucid actually provides a cross platform installer so you do not have to run the <a href="http://ant.apache.org/">ant build mechanism</a>. I like that a lot better <img src='http://www.adamestrada.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> .</p>
<p>Anyway, I tried to find an easy way to ingest spatial data without any serious effort and I found that you can easily update a Solr index with little to no effort with a properly formed <a href="http://wiki.apache.org/solr/UpdateCSV">CSV file</a>. I downloaded one of the <a href="http://download.geonames.org/export/dump/">Geonames databases</a> and converted it to CSV and voila&#8230;in a matter of minutes I had the whole thing ingested and ready to be queried through the Solr web interface.</p>
<p>There are a couple caveats that I would like to share&#8230;</p>
<ol>
<li>The CSV must be comma delimited. There are provisions through Solr that will allow you to use different delimiters but none of them work unless there is an actual character in the file (eg a comma or backslash)</li>
<li>You must modify the file called schema.xml to reflect the following.</li>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p429code1'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p4291"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
</pre></td><td class="code" id="p429code1"><pre class="xml" style="font-family:monospace;">   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;geonameid&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;name&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;text&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;asciiname&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;text&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;alternatenames&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;text&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;latitude&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;longitude&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;featureclass&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;text&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;featurecode&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;countrycode&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;cc2&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;admin1code&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;admin2code&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;admin3code&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;admin4code&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;population&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;elevation&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;gtopo30&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;timezone&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
   <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;field</span> <span style="color: #000066;">name</span>=<span style="color: #ff0000;">&quot;modificationdate&quot;</span> <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;string&quot;</span> <span style="color: #000066;">indexed</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000066;">stored</span>=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #000000; font-weight: bold;">/&gt;</span></span>
&nbsp;
 <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;uniquekey<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>geonameid<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/uniquekey<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<li> You can then import the CSV using the following commands. The key is to define the column names using the parameter &#8220;fieldnames&#8221;.<br />
<blockquote><p>
curl &#8216;http://localhost:8983/solr/update/csv?commit=true&#038;separator=%2C&#038;fieldnames=geonameid,name,asciiname,alternatenames,latitude,longitude,featureclass,featurecode,countrycode,cc2,admin1code,admin2code,admin3code,admin4code,population,elevation,gtopo30,timezone,modificationdate&#038;stream.file=/Users/Adam/LucidWorks/cities5000.csv&#038;overwrite=true&#038;stream.contentType=text/plain;charset=utf-8&#8242;
</p></blockquote>
<p>Next, run the &#8220;optimize&#8221; command.</p>
<blockquote><p>
curl http://localhost:8983/solr/update -H &#8220;Content-Type: text/xml&#8221; &#8211;data-binary &#8220;&#60;optimize /&#62;&#8221;
</p></blockquote>
</li>
<li> Now you have an index that can be queried against using the build-in Solr query page (http://localhost:8983/solr/admin). Please read the Solr page on what params to use. A good example query is as follows which shows how to use the &#8220;mlt&#8221; or MoreLikeThis params.<br />
<blockquote>
<p>http://localhost:8983/solr/select/?q=alternatenames%3A%22el+Paso%22&#038;version=2.2&#038;start=0&#038;rows=10&#038;indent=on&#038;mlt=true&#038;mlt.fl=name&#038;mlt.mindf=1&#038;mlt.mintf=1&#038;wt=json</p>
</blockquote>
</li>
</ol>
<p>There are quite a bit of things you can do once you get the data in the index. You can perform many different kinds of standard searches, faceted searches, MoreLikeThis, etc&#8230; For Geospatial data, we will have to extend the queryresponder classes to return KML rather than standard XML, JSON or CSV. More on that later&#8230;</p>
<p>Enjoy! </p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1876141, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1876141, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1876141, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/14/spatialite-and-smart-phones/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786019" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1876141, 786019);">SpatiaLite and Smart Phones</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1876141, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2008/11/14/generic-host-process-for-win32-services-has-encountered-a-problem-and-needs-to-close/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-1080260" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1876141, 1080260);">
        
        
        Generic Host Process for Win32 Services and internet stops
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=6&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-579504" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1876141, 579504);">
        
        
        Jailbreaking and unlocking your iphone for T-mobile
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=114&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-615235" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1876141, 615235);">
        
        
        How To Upload Videos From Your Iphone Using PixelPipe, PPVideoEnabler, and Cyrecorder 2010
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/1876141.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/C31kojuG5a4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2010/08/17/solr-and-geonames/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<georss:point>38.8799697 -77.1067698</georss:point><geo:lat>38.8799697</geo:lat><geo:long>-77.1067698</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2010/08/17/solr-and-geonames/</feedburner:origLink></item>
		<item>
		<title>FOSS4Geo Software Lists</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/WdAI5C8llzE/</link>
		<comments>http://www.adamestrada.com/2010/06/11/foss4geo-software-lists/#comments</comments>
		<pubDate>Fri, 11 Jun 2010 22:50:39 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[The GIS Forum]]></category>
		<category><![CDATA[ramblings]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=421</guid>
		<description><![CDATA[I am a "moderator" at the GIS Forum and when we were setting up the site I figured what better way to get the message out about free and open source software for the Geospatial industry than to add the list at http://opensourcegis.org/ to the Forum wiki.  <a href="http://www.adamestrada.com/2010/06/11/foss4geo-software-lists/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I am a &#8220;moderator&#8221; at <a href="http://www.thegisforum.com">the GIS Forum</a> and when we were setting up the site I figured what better way to get the message out about free and open source software for the Geospatial industry than to add the list at <a href="http://opensourcegis.org/">http://opensourcegis.org/</a> to the <a href="http://www.thegisforum.com/wikis/" target="_blank">Forum wiki</a>. No worries, I got full permission from the author before posting it as a live wiki page&#8230;Anyway, the page can me <a href="http://www.thegisforum.com/wikis/software/free-and-open-source-software-foss.aspx">found here</a> and we really encourage everyone to post the projects you come across so that other people become aware of it. After all, free and open software projects thrive on the community who use them. I for one have become an absolute nut when it comes to FOSS technologies. Chances are that if you have a problem, someone else has solved it and posted their source code to the <a href="http://code.google.com/" target="_blank">web</a> in some shape or form. Of course, that isn&#8217;t always true because lets face it, sometimes you or your client simply have to pay for software and services. I wrote a little article a while back with my thoughts on <a href="http://geopdf.blogspot.com/2008/04/choosing-gis-that-is-right-for-you.html" target="_blank">Choosing the GIS that&#8217;s Right for You</a>. Sometimes paying for what you&#8217;re looking for is worth it, right? After all, time is money&#8230;What are your thoughts on this?</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1744745, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1744745, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1744745, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1744745, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1744745, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=213&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-443959" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1744745, 443959);">
        
        
        Routing with the new Google Maps Data
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2009/11/12/windows-7-tricks-and-secrets/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928380" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1744745, 928380);">
        
        
        Windows 7 tricks and secrets
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://blog.marcchung.com/2009/08/24/my-software-opinions.html?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-442710" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1744745, 442710);">
        
        
        My software opinions
        
        
      </a><span>&nbsp;(Marc Chung)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/1744745.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/WdAI5C8llzE" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2010/06/11/foss4geo-software-lists/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<georss:point>38.8799697 -77.1067698</georss:point><geo:lat>38.8799697</geo:lat><geo:long>-77.1067698</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2010/06/11/foss4geo-software-lists/</feedburner:origLink></item>
		<item>
		<title>MapProxy Project for Accelerating your WMS</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/LGg3rgCrSMM/</link>
		<comments>http://www.adamestrada.com/2010/05/21/mapproxy-project-wms/#comments</comments>
		<pubDate>Fri, 21 May 2010 22:50:00 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[OSGeo]]></category>
		<category><![CDATA[Web Mapping]]></category>
		<category><![CDATA[MapProxy]]></category>
		<category><![CDATA[WMS]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=416</guid>
		<description><![CDATA[Using MapProxy to accelerate your existing WMS <a href="http://www.adamestrada.com/2010/05/21/mapproxy-project-wms/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>There are a few Open Source WMS caching proxys that are freely available for anyone to download and use. <a href="http://geowebcache.org/trac">GeoWebCache</a> and <a href="http://www.tilecache.org">TileCache</a> have been the two leaders in the MapCache game for a while now. The problem with these is that they only output <a href="http://wiki.osgeo.org/wiki/WMS_Tile_Caching">WMS-C</a> which most WMS readers can&#8217;t read. <a href="http://www.mapproxy.org">MapProxy</a> can ingest <a href="http://www.opengeospatial.org/standards/wms">WMS</a>, <a href="http://wiki.osgeo.org/wiki/Tile_Map_Service_Specification">TMS</a> and <a href="http://code.google.com/apis/kml/documentation/">KML</a> <em><strong>then</strong></em> spit it back out as a valid WMS service so that ALL modern GIS clients can read it. </p>
<p>MapProxy can perform a wide variety of other services that will help to ensure that the WMS that is produced is fully optimized to meet your needs.</p>
<blockquote><p>
<strong>MapProxy</strong> can:</p>
<p>    * accelerate existing WMS<br />
    * reproject to other SRS (i.e. cache in EPSG:4326, requests in EPSG:31467)<br />
    * combine individual map layers from different WMS services<br />
    * hide the origin WMS servers<br />
    * fill caches dynamic, in advance or both<br />
    * add watermarks and/or attributions to all responses</p>
<p><strong>Some of the features of the new release (from the <a href="http://lists.osgeo.org/pipermail/mapproxy/">Mailing List</a>):</strong></p>
<p>  * There is a new seed tool that is far more advanced than existing tools.<br />
    See below for more information.</p>
<p>  * There is a new link_single_color_images option for layers. If enabled<br />
    MapProxy will not store tiles that only contain a single color as a<br />
    separate file. With the new option MapProxy stores these tiles only<br />
    once and uses links to this file for every occurrence. This can reduce<br />
    the size of your tile cache if you have larger areas with no data<br />
    (e.g. water areas, areas with no roads, etc.). This feature is only<br />
    available on Unix since Windows has no support for symbolic links.</p>
<p>  * We have added some performance improvements for servers with multiple<br />
    layers and layers with smaller BBOXs.</p>
<p>  * You can configure you own proj4 definition files. For example, if you<br />
    need to tweak some projection parameters.</p>
<p><strong>More information about the new seeding tool:</strong></p>
<p>  * Fine control of the seeding area. You are not restricted to BBOX<br />
    anymore and can now load polygons that define the area you want to<br />
    seed. You can load the geometries from text files (WKT) and any data<br />
    source that is supported by OGR (Shapefile, PostGIS, etc.). This can<br />
    reduce the number of tiles to seed dramatically.<br />
    See <a href="http://mapproxy.org/docs/0.8.3.dev-20100430/seed.html#geographical-extend">http://mapproxy.org/docs/0.8.3.dev-20100430/seed.html#geographical-extend</a></p>
<p>  * Uses multiple processes for the whole seeding chain (request images,<br />
    split, process, encode and store tiles) for better performance on<br />
    multi-core systems. A new &#8211;concurrency option lets you define the<br />
    number of processes.</p>
<p>  * New sophisticated seeding strategy. The existing tools (MapProxy,<br />
    TileCache, GeoWebCache) seed from top level to bottom level, from<br />
    north to south, from east to west. This simple strategy works against<br />
    the caches of your operating system and database and results in<br />
    unneeded IO load and thus slower seeding performance. If you have<br />
    large datasets your database will have to drop cached data when your<br />
    seeding area moves to the south. When one level is seeded and the<br />
    seeding tool starts in the north of the next level all data cached by<br />
    you database and operating system is gone and needs to be loaded from<br />
    hard disk again.
</p></blockquote>
<p>This is another fine example of a project that far exceeds the needs of the community who uses it! Thanks Guys&#8230;   </p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1629033, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/02/26/drupal-vs-wordpress-for-geo/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-968184" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1629033, 968184);">Drupal vs. Wordpress for Geo</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1629033, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1629033, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1629033, 786014);">Open Street Map (take 1)</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=32&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-592420" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1629033, 592420);">
        
        
        Top Free Useful Cydia applications for your IPhone
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/05/15-killer-hacks-for-wordpress-that-are-extremely-useful/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-930971" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1629033, 930971);">
        
        
        15 Killer Hacks for WordPress that Are Extremely Useful
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=6&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-579504" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1629033, 579504);">
        
        
        Jailbreaking and unlocking your iphone for T-mobile
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/1629033.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/LGg3rgCrSMM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2010/05/21/mapproxy-project-wms/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<georss:point>38.8799697 -77.1067698</georss:point><geo:lat>38.8799697</geo:lat><geo:long>-77.1067698</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2010/05/21/mapproxy-project-wms/</feedburner:origLink></item>
		<item>
		<title>OpenSearching with Geocommons</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/Yq7K5wZb2nw/</link>
		<comments>http://www.adamestrada.com/2010/05/19/opensearching-with-geocommons/#comments</comments>
		<pubDate>Thu, 20 May 2010 03:02:24 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[GeoSpatial]]></category>
		<category><![CDATA[GeoCommons]]></category>
		<category><![CDATA[python]]></category>
		<category><![CDATA[wget]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=411</guid>
		<description><![CDATA[Bulk downloading data from Geocommons using python and wget. <a href="http://www.adamestrada.com/2010/05/19/opensearching-with-geocommons/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>If you are familiar with <a href="http://geocommons.com" target="_blank">Geocommons</a> you probably know that it&#8217;s very difficult to bulk download data. After chatting with <a href="http://www.maploser.com" target="_blank">Kate</a> this past week, I came to realize that Geocommons does allow you to perform an <a href="http://www.opensearch.org/Specifications/OpenSearch/Extensions/Geo/1.0/Draft_1" target="_blank">OpenSearch-style search</a> on it&#8217;s data back end. This prompted me to do a little hacking and the result is the following Python script. It&#8217;s not very sophisticated and I wish I knew more about  Python but it does get the job done. You&#8217;ll note right away that it makes the OpenSearch-style query to <a href="http://finder.geocommons.com" target="_blank">Finder</a> and returns a KML of the data within the bounds of your search. For example, if you want to find all the data with the query term &#8216;Haiti&#8217; within the bounds of the island nation the request would resemble the following:</p>
<blockquote><p>http://finder.geocommons.com/search.kml?query=Haiti&#038;limit=100&#038;bbox=-72.725,17.993,-71.715,19.049</p></blockquote>
<p>You have to parse the KML to get to the page that holds the data set. Then you have to convert the &#8216;.html&#8217; extension to &#8216;.zip&#8217;. <a href="http://www.gnu.org/software/wget/">Wget</a> can then be employed to do the actual downloading from the parsed KML. You can also recursively search through the directory and unzip the all the ZIP files but I have not got that far yet&#8230;</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p411code2'); return false;">View Code</a> PYTHON</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p4112"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
</pre></td><td class="code" id="p411code2"><pre class="python" style="font-family:monospace;"><span style="color: #808080; font-style: italic;">#!/usr/bin/python</span>
<span style="color: #483d8b;">''</span><span style="color: #483d8b;">'
Created on May 17, 2010
&nbsp;
@author: adamestrada
'</span><span style="color: #483d8b;">''</span>
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">sys</span>, <span style="color: #dc143c;">os</span>
<span style="color: #ff7700;font-weight:bold;">import</span> <span style="color: #dc143c;">urllib</span>, <span style="color: #dc143c;">urllib2</span>
<span style="color: #ff7700;font-weight:bold;">from</span> <span style="color: #dc143c;">xml</span>.<span style="color: black;">dom</span> <span style="color: #ff7700;font-weight:bold;">import</span> minidom
<span style="color: #ff7700;font-weight:bold;">from</span> <span style="color: #dc143c;">optparse</span> <span style="color: #ff7700;font-weight:bold;">import</span> OptionParser
&nbsp;
<span style="color: #808080; font-style: italic;">#URL = 'http://finder.geocommons.com/search.kml?query=Haiti&amp;limit=100&amp;bbox=-72.725,17.993,-71.715,19.049'</span>
FINDER_URL = <span style="color: #483d8b;">'http://finder.geocommons.com/search.kml'</span>
&nbsp;
<span style="color: #ff7700;font-weight:bold;">class</span> getGeocommons:
<span style="color: #808080; font-style: italic;"># =============================================================================</span>
<span style="color: #808080; font-style: italic;"># Parse Command Line Args</span>
<span style="color: #808080; font-style: italic;"># =============================================================================</span>
    <span style="color: #ff7700;font-weight:bold;">def</span> main<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, <span style="color: #008000;">object</span><span style="color: black;">&#41;</span>:
        <span style="color: #ff7700;font-weight:bold;">try</span>:
            <span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #008000;">object</span> <span style="color: #ff7700;font-weight:bold;">is</span> <span style="color: #ff7700;font-weight:bold;">not</span> <span style="color: #008000;">None</span>:
                <span style="color: #dc143c;">parser</span> = OptionParser<span style="color: black;">&#40;</span>usage=<span style="color: #483d8b;">&quot;%prog [-q] [-l] [-b]&quot;</span>, version=<span style="color: #483d8b;">&quot;%prog 1.0&quot;</span><span style="color: black;">&#41;</span>
                <span style="color: #dc143c;">parser</span>.<span style="color: black;">add_option</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;-q&quot;</span>, <span style="color: #483d8b;">&quot;--query&quot;</span>, <span style="color: #008000;">help</span>=<span style="color: #483d8b;">&quot;Enter a query term (eg. Haiti)&quot;</span><span style="color: black;">&#41;</span>
                <span style="color: #dc143c;">parser</span>.<span style="color: black;">add_option</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;-l&quot;</span>, <span style="color: #483d8b;">&quot;--limit&quot;</span>, <span style="color: #008000;">help</span>=<span style="color: #483d8b;">&quot;Record limit is set to &gt; 1 (eg. 100)&quot;</span><span style="color: black;">&#41;</span>
                <span style="color: #dc143c;">parser</span>.<span style="color: black;">add_option</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">&quot;-b&quot;</span>, <span style="color: #483d8b;">&quot;--bbox&quot;</span>, <span style="color: #008000;">help</span>=<span style="color: #483d8b;">&quot;Enter the Query Extent (eg. -74.049,17.841,-71.874,20.052&quot;</span><span style="color: black;">&#41;</span>
                <span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #008000;">object</span> == -<span style="color: #ff4500;">1</span>:
                    <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #dc143c;">parser</span>.<span style="color: black;">print_help</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
                    <span style="color: #dc143c;">sys</span>.<span style="color: black;">exit</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">0</span><span style="color: black;">&#41;</span>
            <span style="color: #808080; font-style: italic;">#print parser.parse_args()</span>
            getGeocommons<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>.<span style="color: black;">buildURL</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
        <span style="color: #ff7700;font-weight:bold;">except</span>:
            <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #dc143c;">parser</span>.<span style="color: black;">print_help</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
&nbsp;
<span style="color: #808080; font-style: italic;"># =============================================================================</span>
<span style="color: #808080; font-style: italic;"># Build URL with appropriate querystring params.</span>
<span style="color: #808080; font-style: italic;"># =============================================================================</span>
    <span style="color: #ff7700;font-weight:bold;">def</span> buildURL<span style="color: black;">&#40;</span><span style="color: #008000;">self</span><span style="color: black;">&#41;</span>:
        <span style="color: #ff7700;font-weight:bold;">try</span>:
            <span style="color: #808080; font-style: italic;"># ghetto makin it work!</span>
            query = <span style="color: #dc143c;">sys</span>.<span style="color: black;">argv</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">2</span><span style="color: black;">&#93;</span>
            limit = <span style="color: #dc143c;">sys</span>.<span style="color: black;">argv</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">4</span><span style="color: black;">&#93;</span>
            bbox = <span style="color: #dc143c;">sys</span>.<span style="color: black;">argv</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">6</span><span style="color: black;">&#93;</span>
&nbsp;
            <span style="color: #808080; font-style: italic;"># Build query string</span>
            params = <span style="color: black;">&#123;</span><span style="color: black;">&#125;</span>
            params<span style="color: black;">&#91;</span><span style="color: #483d8b;">'query'</span><span style="color: black;">&#93;</span> = query
            params<span style="color: black;">&#91;</span><span style="color: #483d8b;">'limit'</span><span style="color: black;">&#93;</span> = limit
            params<span style="color: black;">&#91;</span><span style="color: #483d8b;">'bbox'</span><span style="color: black;">&#93;</span>  = bbox
            urlParams = <span style="color: #dc143c;">urllib</span>.<span style="color: black;">urlencode</span><span style="color: black;">&#40;</span>params<span style="color: black;">&#41;</span>
            url = FINDER_URL
            full_url = url + <span style="color: #483d8b;">'?'</span> + urlParams
            <span style="color: #ff7700;font-weight:bold;">print</span> full_url
            getGeocommons<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>.<span style="color: black;">parseKML</span><span style="color: black;">&#40;</span>full_url<span style="color: black;">&#41;</span>
        <span style="color: #ff7700;font-weight:bold;">except</span>:
            <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">'Something happend when building your querystring!'</span>
&nbsp;
<span style="color: #808080; font-style: italic;"># =============================================================================</span>
<span style="color: #808080; font-style: italic;"># Get KML from Finder, parse it, then download ZIP files...</span>
<span style="color: #808080; font-style: italic;"># =============================================================================</span>
    <span style="color: #ff7700;font-weight:bold;">def</span> parseKML<span style="color: black;">&#40;</span><span style="color: #008000;">self</span>, full_url<span style="color: black;">&#41;</span>:
        params = full_url
        <span style="color: #ff7700;font-weight:bold;">try</span>:
            request = <span style="color: #dc143c;">urllib2</span>.<span style="color: black;">urlopen</span><span style="color: black;">&#40;</span>params<span style="color: black;">&#41;</span>.<span style="color: black;">read</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>
            <span style="color: #dc143c;">xml</span> = minidom.<span style="color: black;">parseString</span><span style="color: black;">&#40;</span>request<span style="color: black;">&#41;</span>
&nbsp;
            <span style="color: #ff7700;font-weight:bold;">for</span> node <span style="color: #ff7700;font-weight:bold;">in</span> <span style="color: #dc143c;">xml</span>.<span style="color: black;">getElementsByTagName</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'atom:link'</span><span style="color: black;">&#41;</span>:
                getString = <span style="color: #008000;">str</span><span style="color: black;">&#40;</span>node.<span style="color: black;">toxml</span><span style="color: black;">&#40;</span><span style="color: black;">&#41;</span><span style="color: black;">&#41;</span>
                subString = getString<span style="color: black;">&#91;</span>getString.<span style="color: black;">find</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'href'</span><span style="color: black;">&#41;</span>+<span style="color: #ff4500;">5</span>:getString.<span style="color: black;">find</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'rel'</span><span style="color: black;">&#41;</span><span style="color: black;">&#93;</span>
                files = subString.<span style="color: black;">replace</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'html'</span>, <span style="color: #483d8b;">'zip'</span><span style="color: black;">&#41;</span>.<span style="color: black;">replace</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'<span style="color: #000099; font-weight: bold;">\&quot;</span>'</span>, <span style="color: #483d8b;">''</span><span style="color: black;">&#41;</span>
                <span style="color: #808080; font-style: italic;"># Use Wget to download the files.</span>
                <span style="color: #808080; font-style: italic;"># Download wget here: http://www.gnu.org/software/wget/</span>
                <span style="color: #dc143c;">os</span>.<span style="color: black;">system</span><span style="color: black;">&#40;</span><span style="color: #483d8b;">'wget -r -nd -A zip -P Files '</span> + files<span style="color: black;">&#41;</span>
&nbsp;
        <span style="color: #ff7700;font-weight:bold;">except</span> <span style="color: #dc143c;">urllib2</span>.<span style="color: black;">HTTPError</span>, e:
            <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;Cannot retrieve URL: HTTP Error Code&quot;</span>, e.<span style="color: #dc143c;">code</span>
        <span style="color: #ff7700;font-weight:bold;">except</span> <span style="color: #dc143c;">urllib2</span>.<span style="color: black;">URLError</span>, e:
            <span style="color: #ff7700;font-weight:bold;">print</span> <span style="color: #483d8b;">&quot;Cannot retrieve URL: &quot;</span> + e.<span style="color: black;">reason</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span><span style="color: black;">&#93;</span>
&nbsp;
<span style="color: #808080; font-style: italic;"># =============================================================================</span>
<span style="color: #808080; font-style: italic;"># Program mainline.</span>
<span style="color: #808080; font-style: italic;"># =============================================================================</span>
<span style="color: #ff7700;font-weight:bold;">if</span> __name__ == <span style="color: #483d8b;">'__main__'</span>:
    <span style="color: #ff7700;font-weight:bold;">if</span> <span style="color: #ff7700;font-weight:bold;">not</span> <span style="color: #dc143c;">sys</span>.<span style="color: black;">argv</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span>:<span style="color: black;">&#93;</span>:
        getGeocommons<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>.<span style="color: black;">main</span><span style="color: black;">&#40;</span>-<span style="color: #ff4500;">1</span><span style="color: black;">&#41;</span>
        <span style="color: #dc143c;">sys</span>.<span style="color: black;">exit</span><span style="color: black;">&#40;</span><span style="color: #ff4500;">0</span><span style="color: black;">&#41;</span>
    <span style="color: #ff7700;font-weight:bold;">else</span>:
        params = <span style="color: #dc143c;">sys</span>.<span style="color: black;">argv</span><span style="color: black;">&#91;</span><span style="color: #ff4500;">1</span>:<span style="color: black;">&#93;</span>
        getGeocommons<span style="color: black;">&#40;</span><span style="color: black;">&#41;</span>.<span style="color: black;">main</span><span style="color: black;">&#40;</span>params<span style="color: black;">&#41;</span></pre></td></tr></table></div>

<blockquote><p>python getfiles.py -q Haiti -l 100 -b -72.725,17.993,-71.715,19.049</p></blockquote>
<p>This script will download all the .zip files associated to you query to a directory called &#8220;Files&#8221;. Enjoy!  </p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1621072, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1621072, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/02/06/gmapez/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785993" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1621072, 785993);">GmapEZ</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/12/15/more-on-flex-and-config-xml/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785997" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1621072, 785997);">More on ESRI Flex and Config.xml</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1621072, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2008/11/14/generic-host-process-for-win32-services-has-encountered-a-problem-and-needs-to-close/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-1080260" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1621072, 1080260);">
        
        
        Generic Host Process for Win32 Services and internet stops
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/05/15-killer-hacks-for-wordpress-that-are-extremely-useful/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-930971" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1621072, 930971);">
        
        
        15 Killer Hacks for WordPress that Are Extremely Useful
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2008/02/15/fixed-generic-host-process-for-win32-services-has-encountered-a-problem/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928608" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1621072, 928608);">
        
        
        FIXED Generic Host Process for Win32 Services has encountered a problem........
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/1621072.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/Yq7K5wZb2nw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2010/05/19/opensearching-with-geocommons/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2010/05/19/opensearching-with-geocommons/</feedburner:origLink></item>
		<item>
		<title>Web Crawling with Nutch</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/AUlPnsA7iXM/</link>
		<comments>http://www.adamestrada.com/2010/04/24/web-crawling-with-nutch/#comments</comments>
		<pubDate>Sat, 24 Apr 2010 18:40:57 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[Apache Project]]></category>
		<category><![CDATA[Apache]]></category>
		<category><![CDATA[Nutch]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=405</guid>
		<description><![CDATA[Crawling websites with Nutch <a href="http://www.adamestrada.com/2010/04/24/web-crawling-with-nutch/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I came across <a href="http://lucene.apache.org/nutch/" target="_blank">Nutch</a> the other day and finally got to the point where I can actually crawl and index web pages. The following are the steps needed to get you up and running.</p>
<ol>
<li><a href="http://www.apache.org/dyn/closer.cgi/lucene/nutch/" target="_blank">Download Nutch</a> and build it. For this you will need <a href="http://ant.apache.org/" target="_blank">Ant</a> installed and configured properly.</li>
<blockquote><p>adam:nutch-1.0 adamestrada$ ant</p></blockquote>
<p>This will automatically detect the build.xml that manages the build process.</p>
<li>Test to see if Nutch is properly installed</li>
<p>You may have to set your JAVA_HOME environment variable if it&#8217;s not already set.</p>
<blockquote><p>JAVA_HOME=/Library/Java/Home<br />
export JAVA_HOME</p></blockquote>
<p>Now JAVA_HOME should be set and you are ready to move forward&#8230;</p>
<blockquote><p>adam:nutch-1.0 adamestrada$ bin/nutch<br />
Usage: nutch [-core] COMMAND<br />
where COMMAND is one of:<br />
crawl             one-step crawler for intranets<br />
readdb            read / dump crawl db<br />
convdb            convert crawl db from pre-0.9 format<br />
mergedb           merge crawldb-s, with optional filtering<br />
readlinkdb        read / dump link db<br />
inject            inject new urls into the database<br />
generate          generate new segments to fetch from crawl db<br />
freegen           generate new segments to fetch from text files<br />
fetch             fetch a segment&#8217;s pages<br />
parse             parse a segment&#8217;s pages<br />
readseg           read / dump segment data<br />
mergesegs         merge several segments, with optional filtering and slicing<br />
updatedb          update crawl db from segments after fetching<br />
invertlinks       create a linkdb from parsed segments<br />
mergelinkdb       merge linkdb-s, with optional filtering<br />
index             run the indexer on parsed segments and linkdb<br />
solrindex         run the solr indexer on parsed segments and linkdb<br />
merge             merge several segment indexes<br />
dedup             remove duplicates from a set of segment indexes<br />
solrdedup         remove duplicates from solr<br />
plugin            load a plugin and run one of its classes main()<br />
server            run a search server<br />
or<br />
CLASSNAME         run the class named CLASSNAME<br />
Most commands print help when invoked w/o parameters.</p>
<p>Expert: -core option is for developers only. It avoids building the job jar,<br />
instead it simply includes classes compiled with ant compile-core.<br />
NOTE: this works only for jobs executed in &#8216;local&#8217; mode</p></blockquote>
<li> We now have to create a directory called &#8220;urls&#8221; and a flat file that will hold all the URL&#8217;s that we are going to crawl.</li>
<p>This is simple&#8230;Just create a file called &#8220;nutch&#8221; call add a single url to it. </p>
<blockquote><p>I added http://www.thegisforum.com to mine&#8230;</p></blockquote>
<li> Now we need to modify the file located at conf/crawl-urlfilter.txt.</li>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p405code3'); return false;">View Code</a> DOS</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p4053"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
</pre></td><td class="code" id="p405code3"><pre class="dos" style="font-family:monospace;"># Licensed to the Apache Software Foundation <span style="color: #66cc66;">&#40;</span>ASF<span style="color: #66cc66;">&#41;</span> under one or more
# contributor license agreements.  See the NOTICE file distributed with
# this work <a href="http://www.ss64.com/nt/for.html"><span style="color: #00b100; font-weight: bold;">for</span></a> additional information regarding copyright ownership.
# The ASF licenses this file to You under the Apache License, Version <span style="color: #cc66cc;">2.0</span>
# <span style="color: #66cc66;">&#40;</span>the &quot;License&quot;<span style="color: #66cc66;">&#41;</span>; you may <a href="http://www.ss64.com/nt/not.html"><span style="color: #000000; font-weight: bold;">not</span></a> use this file except <a href="http://www.ss64.com/nt/in.html"><span style="color: #00b100; font-weight: bold;">in</span></a> compliance with
# the License.  You may obtain a <a href="http://www.ss64.com/nt/copy.html"><span style="color: #b1b100; font-weight: bold;">copy</span></a> of the License at
#
#     http://www.apache.org/licenses/LICENSE-<span style="color: #cc66cc;">2.0</span>
#
# Unless required by applicable law or agreed to <a href="http://www.ss64.com/nt/in.html"><span style="color: #00b100; font-weight: bold;">in</span></a> writing, software
# distributed under the License is distributed on an &quot;AS IS&quot; BASIS,
# WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
# See the License <a href="http://www.ss64.com/nt/for.html"><span style="color: #00b100; font-weight: bold;">for</span></a> the specific language governing permissions and
# limitations under the License.
&nbsp;
# The url filter file used by the crawl command.
&nbsp;
# Better <a href="http://www.ss64.com/nt/for.html"><span style="color: #00b100; font-weight: bold;">for</span></a> intranet crawling.
# Be sure to change MY.DOMAIN.NAME to your domain name.
&nbsp;
# Each non-comment, non-blank line contains a regular expression
# prefixed by '+' or '-'.  The first matching pattern <a href="http://www.ss64.com/nt/in.html"><span style="color: #00b100; font-weight: bold;">in</span></a> the file
# determines whether a URL is included or ignored.  <a href="http://www.ss64.com/nt/if.html"><span style="color: #00b100; font-weight: bold;">If</span></a> no pattern
# matches, the URL is ignored.
&nbsp;
# skip file:, ftp:, &amp;amp; mailto: urls
-^<span style="color: #66cc66;">&#40;</span>file|ftp|mailto<span style="color: #66cc66;">&#41;</span>:
&nbsp;
# skip image and other suffixes we can't yet parse
-\.<span style="color: #66cc66;">&#40;</span>gif|GIF|jpg|JPG|png|PNG|ico|ICO|css|sit|eps|wmf|mpg|xls|gz|rpm|tgz|mov|MOV|exe|jpeg|JPEG|bmp|BMP<span style="color: #66cc66;">&#41;</span>$
&nbsp;
# skip URLs containing certain characters as probable queries, etc.
#-<span style="color: #66cc66;">&#91;</span>?*!<span style="color: #33cc33;">@</span>=<span style="color: #66cc66;">&#93;</span>
-<span style="color: #66cc66;">&#91;</span>*!<span style="color: #66cc66;">&#93;</span>
&nbsp;
# skip URLs with slash-delimited segment that repeats <span style="color: #cc66cc;">3</span>+ times, to break loops
-.*<span style="color: #66cc66;">&#40;</span>/<span style="color: #66cc66;">&#91;</span>^/<span style="color: #66cc66;">&#93;</span>+<span style="color: #66cc66;">&#41;</span>/<span style="color: #66cc66;">&#91;</span>^/<span style="color: #66cc66;">&#93;</span>+\<span style="color: #cc66cc;">1</span>/<span style="color: #66cc66;">&#91;</span>^/<span style="color: #66cc66;">&#93;</span>+\<span style="color: #cc66cc;">1</span>/
&nbsp;
# accept hosts <a href="http://www.ss64.com/nt/in.html"><span style="color: #00b100; font-weight: bold;">in</span></a> MY.DOMAIN.NAME
+^http://<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#91;</span>a-z0-<span style="color: #cc66cc;">9</span><span style="color: #66cc66;">&#93;</span>*\.<span style="color: #66cc66;">&#41;</span>*thegisforum.com/
&nbsp;
# skip everything <a href="http://www.ss64.com/nt/else.html"><span style="color: #00b100; font-weight: bold;">else</span></a>
-.</pre></td></tr></table></div>

<li> Now set a few properties in conf/nutch-sites.xml</li>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p405code4'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p4054"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
</pre></td><td class="code" id="p405code4"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;">&lt; ?xml <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;">&lt; ?xml-stylesheet <span style="color: #000066;">type</span>=<span style="color: #ff0000;">&quot;text/xsl&quot;</span> <span style="color: #000066;">href</span>=<span style="color: #ff0000;">&quot;configuration.xsl&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
&nbsp;
<span style="color: #808080; font-style: italic;">&lt;!-- Put site-specific property overrides in this file. --&gt;</span>
&nbsp;
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;configuration<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>http.agent.name<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>awe<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;description<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>HTTP 'User-Agent' request header. MUST NOT be empty - 
  please set this to a single word uniquely related to your organization.
&nbsp;
  NOTE: You should also check other related properties:
&nbsp;
	http.robots.agents
	http.agent.description
	http.agent.url
	http.agent.email
	http.agent.version
&nbsp;
  and set their values appropriately.
&nbsp;
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/description<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>http.agent.description<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Adam's Awesome Bot!!!<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;description<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Further description of our bot- this text is used in
  the User-Agent header.  It appears in parenthesis after the agent name.
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/description<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>http.agent.url<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>http://www.adamestrada.com<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;description<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>A URL to advertise in the User-Agent header.  This will 
   appear in parenthesis after the agent name. Custom dictates that this
   should be a URL of a page explaining the purpose and behavior of this
   crawler.
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/description<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
&nbsp;
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>http.agent.email<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>estrada.adam@gmail.com<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/value<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;description<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>An email address to advertise in the HTTP 'From' request
   header and User-Agent header. A good practice is to mangle this
   address (e.g. 'info at example dot com') to avoid spamming.
  <span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/description<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/property<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/configuration<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<li> You&#8217;re ready to start crawling now!</li>
<blockquote><p>adam:nutch-1.0 adamestrada$ bin/nutch crawl urls -depth 5 -topN 100</p></blockquote>
</ol>
<p>There are many many more options to choose from with Nutch so I may explore them in future posts. Enjoy&#8230;</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1453781, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1453781, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1453781, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1453781, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/14/spatialite-and-smart-phones/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786019" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1453781, 786019);">SpatiaLite and Smart Phones</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/05/15-killer-hacks-for-wordpress-that-are-extremely-useful/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-930971" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1453781, 930971);">
        
        
        15 Killer Hacks for WordPress that Are Extremely Useful
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=114&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-615235" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1453781, 615235);">
        
        
        How To Upload Videos From Your Iphone Using PixelPipe, PPVideoEnabler, and Cyrecorder 2010
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=213&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-443959" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1453781, 443959);">
        
        
        Routing with the new Google Maps Data
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/1453781.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/AUlPnsA7iXM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2010/04/24/web-crawling-with-nutch/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2010/04/24/web-crawling-with-nutch/</feedburner:origLink></item>
		<item>
		<title>OpenStreetMap Planet.osm Processing Statistics</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/n975dmdGqgQ/</link>
		<comments>http://www.adamestrada.com/2010/03/30/openstreetmap-planet-osm-processing-statistics/#comments</comments>
		<pubDate>Tue, 30 Mar 2010 22:58:16 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[OSM]]></category>
		<category><![CDATA[Processing]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=401</guid>
		<description><![CDATA[Processing OpenStreetMap Planet.osm file <a href="http://www.adamestrada.com/2010/03/30/openstreetmap-planet-osm-processing-statistics/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I have really been putting a lot of effort into importing an <a href="http://wiki.openstreetmap.org/wiki/Planet.osm" target="_blank">OSM Planet</a> to my Postgresql Database and it wasn&#8217;t until I came across <a href="http://blog.peter-johnson.com.au/?p=161">this blog post</a> before I learned how long it actually takes to do. My process was running on a Windows 7 Laptop with 4 gigs of RAM and a DuoCore processor. I also used a 1TB 7200RPM hard drive with a USB2 connection to my machine. I configured my tablespace so that the DB was physically on the external drive so the following statistics reflect that. The whole process took approximately 89 hours to run&#8230;</p>
<blockquote><p>osm2pgsql -c -d OSM -l -s -S &#8220;C:\Program Files (x86)\osm2pgsql\default.style&#8221; -U postgres -W -H localhost C:\Workspace\OSM\planet100324.osm.bz2 -v<br />
osm2pgsql SVN version 0.66-16423M</p>
<p>Password:<br />
Using projection SRS 4326 (Latlong)<br />
Setting up table: planet_osm_point<br />
Setting up table: planet_osm_line<br />
Setting up table: planet_osm_polygon<br />
Setting up table: planet_osm_roads<br />
Mid: pgsql, scale=10000000, cache=800MB, maxblocks=102401*8192<br />
Setting up table: planet_osm_nodes<br />
*** WARNING: intarray contrib module not installed<br />
*** The resulting database will not be usable for applying diffs.<br />
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index &#8220;planet_osm_nodes_pkey&#8221; for table &#8220;planet_osm_nodes&#8221;<br />
Setting up table: planet_osm_ways<br />
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index &#8220;planet_osm_ways_pkey&#8221; for table &#8220;planet_osm_ways&#8221;<br />
Setting up table: planet_osm_rels<br />
NOTICE:  CREATE TABLE / PRIMARY KEY will create implicit index &#8220;planet_osm_rels_pkey&#8221; for table &#8220;planet_osm_rels&#8221;</p>
<p>Reading in file: C:\Workspace\OSM\planet-100324.osm.bz2<br />
Processing: Node(574797k) Way(43465k) Relation(465k)<br />
Node stats: total(574797076), max(673005476)<br />
Way stats: total(43465572), max(53189409)<br />
Relation stats: total(465800), max(533629)</p>
<p>Going over pending ways<br />
processing way (12176k)</p>
<p>Going over pending relations</p>
<p>node cache: stored: 104772187(18.23%), storage efficiency: 99.92%, hit rate: 17.57%<br />
Stopping table: planet_osm_nodes<br />
Stopped table: planet_osm_nodes<br />
Stopping table: planet_osm_ways<br />
Stopped table: planet_osm_ways<br />
Stopping table: planet_osm_rels<br />
Stopped table: planet_osm_rels<br />
Committing transaction for planet_osm_point<br />
Sorting data and creating indexes for planet_osm_point<br />
Completed planet_osm_point<br />
Committing transaction for planet_osm_line<br />
Sorting data and creating indexes for planet_osm_line<br />
Completed planet_osm_line<br />
Committing transaction for planet_osm_polygon<br />
Sorting data and creating indexes for planet_osm_polygon<br />
Completed planet_osm_polygon<br />
Committing transaction for planet_osm_roads<br />
Sorting data and creating indexes for planet_osm_roads<br />
Completed planet_osm_roads</p></blockquote>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1227423, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1227423, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1227423, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/02/06/gmapez/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785993" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1227423, 785993);">GmapEZ</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/06/11/foss4geo-software-lists/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-1744745" target="_parent" onclick="return Arkayne.go(event, this, 'link', 1227423, 1744745);">FOSS4Geo Software </a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/15/adam-the-indian-ipad-killer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928459" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1227423, 928459);">
        
        
        Adam – The Indian iPad killer
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=213&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-443959" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1227423, 443959);">
        
        
        Routing with the new Google Maps Data
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=221&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-449791" target="_blank" onclick="return Arkayne.go(event, this, 'link', 1227423, 449791);">
        
        
        Layar for the iPhone
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/1227423.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/n975dmdGqgQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2010/03/30/openstreetmap-planet-osm-processing-statistics/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	<georss:point>38.8903896 -77.0841446</georss:point><geo:lat>38.8903896</geo:lat><geo:long>-77.0841446</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2010/03/30/openstreetmap-planet-osm-processing-statistics/</feedburner:origLink></item>
		<item>
		<title>Drupal vs. WordPress for Geo</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/z6A3sAw86C8/</link>
		<comments>http://www.adamestrada.com/2010/02/26/drupal-vs-wordpress-for-geo/#comments</comments>
		<pubDate>Sat, 27 Feb 2010 01:58:23 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Drupal]]></category>
		<category><![CDATA[Wordpress]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=395</guid>
		<description><![CDATA[Drupal vs. Wordpress for Geo <a href="http://www.adamestrada.com/2010/02/26/drupal-vs-wordpress-for-geo/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Both <a href="http://www.drupal.org">Drupal</a> and <a href="http://www.wordpress.org">WordPress</a> are very popular content publishing platforms. I&#8217;ve been dorking around with WordPress for a while now (this is a WordPress site) and I was recently able to work on a project based on the Drupal API. This gave me a very good perspective on both platforms&#8230;Keep in mind that both are very powerful and very robust web publishing platforms that can do a <a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/" target="_self">variety of different things.</a> This post is intended to express my findings with a little geospatial flavour <img src='http://www.adamestrada.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<h2><strong>WordPress:</strong></h2>
<p>It doesn&#8217;t get any easier than WordPress! With the <a href="http://bitnami.org/stack/wordpress" target="_blank">stack installer</a>, you can literally be up and running in a matter of minutes. The thing I like the most about WordPress is that there are</p>
<ul>
<li><a href="http://wordpress.org/extend/plugins/" target="_blank">8,516 Free Plugins</a></li>
<li><a href="http://wordpress.org/extend/themes/" target="_blank">1,136 Free Themes</a></li>
</ul>
<p>Wow! To top it all off, you simply have to search for the plugin or theme want (inside of the WP Admin Panel) and then click on an &#8220;Install&#8221; button to add it to your instance. Bang! Done! End of story&#8230;Well, there are always some configuration options but that depends on what you install.</p>
<p>Again, WordPress is great if you want to blog or set up a huge social network ala <a href="http://buddypress.org/" target="_blank">BuddyPress</a> and <a href="http://mu.wordpress.org/" target="_blank">WordPress MU</a>. You can set up advanced user roles using <a href="http://wordpress.org/extend/plugins/capsman/" target="_blank">Capability Manager</a> and then use those roles to provide restricted access to parts of your site via <a href="http://wordpress.org/extend/plugins/user-access-manager/" target="_blank">User Access Manager</a>. Of course there are many more ways to do this, but I&#8217;ve used these and they appear to really work well.</p>
<p>Now, what if you want to add custom data and then retriee it from your blog? Hmmm&#8230;Yes you can do this by either extending your user profile or maybe by generating custom fields for a form on your site. Getting the data back out is the hard part and honestly, I really don&#8217;t know of a plugin to do this. (Insert Help Here!!!)</p>
<p>There are a ton of cool Geospatial Plugins too which is always something I tend to gravitate to first. Here are a couple that really caught my attention.</p>
<ul>
<li><a href="http://www.wpgeo.com/" target="_blank">WP Geo</a> &#8211; This one is really cool but limited in what it can do. If you want to geocode your blog post and add <a href="http://www.georss.org">GeoRSS</a> to your blog, this is the plugin for you.</li>
<li><a href="http://wordpress.org/extend/plugins/visitor-maps/" target="_blank">Visitor Maps</a> &#8211; This plugin sniffs out the IP Address of your site visitors and then uses an <a href="http://www.maxmind.com/" target="_blank">internal database</a> to geocode (approximately of course) and then plot them out on a map that you can monitor in your administration panel.</li>
<li>Of course&#8230;if you are serious about getting your info out there, make sure to install <a href="http://wordpress.org/extend/plugins/all-in-one-seo-pack/" target="_blank">All in one SEO Pack</a>.</li>
</ul>
<p>So that&#8217;s WordPress. You can see that you can publish basic information and extend the look and feel of the site with themes and plugins. There are a lot of plugins out there to choose from but the bottom line is that WordPress is <strong><em>EASY</em></strong>!</p>
<h2><strong>Drupal:</strong></h2>
<p>At first glimpse, Drupal is a nightmare to manage and maintain. Actually, that is very true! Drupal has it&#8217;s own language and intricacies that take a while to get used to. Luckily, I had <a href="http://twitter.com/hugoestr" target="_blank">@hugoestr</a> there to explain it all and believe me&#8230;there was a lot to explain. Like WordPress, there are many plugins (modules in Drupal) and themes to choose from. There certainly are not as many as WordPress but it&#8217;s gotta be close. I found a nice site to browse through to find the modules we needed. Check out the <a href="http://www.drupalmodules.com" target="_blank">Drupal Modules</a> website for a pretty good list of all the modules that the community has submitted.</p>
<p>Drupal too has a <a href="http://bitnami.org/stack/drupal" target="_blank">Bitnami stack</a> that you can download but we decided to go with the <a href="http://acquia.com/downloads" target="_blank">Acquia stack</a> for our solution. Why you ask? Well, <a href="http://drupal.org/user/1" target="_blank">the founder of Drupal</a> is heavily involved with Acquia and has created a stack with what appears to be a pretty comprehensive set of included module. Also, for whatever reason&#8230;<a href="http://www.microsoft.com/web/gallery/AcquiaDrupal.aspx" target="_blank">Microsoft seems to support this stack</a> which is very strange to me <img src='http://www.adamestrada.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' /> </p>
<p>OK, so Drupal does everything that WordPress doesn&#8217;t. First, Drupal is more of an API or framework than a high-level publishing platform. It&#8217;s probably meant more for the develop-type who doesn&#8217;t mind getting their hands dirty to learn what is going on. Drupal is based on a series of &#8220;nodes&#8221; which are actually just pages. There is also a complex but very powerful <a href="http://drupal.org/handbook/modules/taxonomy" target="_blank">taxonomy mechanism</a> built in that allows the user to categorize the content.</p>
<p><strong>Searching:</strong> The Aquia Stack comes installed with a <a href="http://lucene.apache.org/java/docs/" target="_blank">Lucene API</a> that adds some serious search power to your site. I really like the fact that you can add the &#8220;Did you mean&#8221; and &#8220;More results like this&#8221; functionality to you site. It gives it a bit of a Google-esque feel. <a href="http://lucene.apache.org/solr/" target="_blank">Solr</a> is installed by default too which will crawl any files attached to a node but setting it up requires that you have a Solr server up and running. There are a handful of other modules out there that will also allow you to search the content in your file attachments too&#8230;</p>
<p><strong>CCK and WebForms:</strong> Drupal gives you the ability to create your own content types using the <a href="http://drupal.org/project/cck" target="_blank">Content Construction Kit (CCK)</a>. You can create your own forms and extend current ones using the CCK module. Wow! This is awesome! There is even a <a href="http://drupal.org/project/webform" target="_blank">Web Form</a> module that will let you set up your forms in a wizard-type approach where the pages are related to each other. By using the <a href="http://drupal.org/project/conditional_fields" target="_blank">Conditional Fields</a> module you can add a decision tree to your workflow. Very nice stuff!!!</p>
<p><strong>Views:</strong> Once you get your data in to the Drupal data model you will want to get it out, right? <a href="http://drupal.org/project/views" target="_blank">Views</a> allow you to create what is literally a view of any content in the database you want. You can return the results in a variety of different formats ranging from whole pages to a simple table.</p>
<p>Now let&#8217;s get to the Geo&#8230;There are 3 that are a must have</p>
<ul>
<li><a href="http://drupal.org/project/location" target="_blank">Location</a> &#8211; Location is sort of like the WP Geo WordPress plugin I mentioned earlier only it does a heck of a lot more. With this module you can create your own location content type and add it to nodes across your site. This basically allows you to geocode everything in your site&#8230;from the users to the individual nodes.</li>
<li><a href="http://drupal.org/project/gmap" target="_blank">GMap</a> &#8211; This module works with the other spatially-aware modules on your site by adding the slippy map interface.</li>
<li><a href="http://drupal.org/project/geo" target="_blank">Geo</a> &#8211; I have not had a chance to do anything with this one but it looks like the daddy.</li>
</ul>
<blockquote><p>The geo module is the next generation geospatial module for Drupal. Like Location, it provides storage for points, but it also supports lines and polygons.</p>
<p>Why is this useful? Because locations are more than addresses or dots on a map. Windmills in a field, for example, don&#8217;t have a postal address for geocoding, but still need their coordinates stored and mapped. And data such as routes, city boundaries, or flight patterns all have storage and search requirements that cannot be expressed by simple dots. Fortunately, there is an <a rel="nofollow" href="http://en.wikipedia.org/wiki/Simple_Features">open standard</a> for expressing this type of data, and Geo takes advantage of spatially enabled databases (<a rel="nofollow" href="http://postgis.refractions.net/">PostGIS</a> and <a rel="nofollow" href="http://dev.mysql.com/doc/refman/5.0/en/spatial-extensions.html">MySQL Spatial</a>) for native storage, which leads to faster, more informational queries.</p></blockquote>
<p>I would love to hear some feedback from anyone who&#8217;s used this module. <a href="http://en.wikipedia.org/wiki/Spatial_query" target="_blank">Spatial Queries</a> by default in your CMS? That is very intriguing to me!</p>
<h2><strong>Overview:</strong></h2>
<p>Both Drupal and WordPress are excellent applications. WordPress is for very entry level users who have something to say while Drupal is a full blown <a href="http://en.wikipedia.org/wiki/Content_management_system" target="_blank">Content Management System</a>. Both have communities full of developers who contribute to making the project better but it looks like WordPress is a bit ahead of the curve. I suspect that it&#8217;s because WordPress is <a href="http://scrapetv.com/News/News%20Pages/usa/images-2/geico-caveman-relaxing.jpg" target="_blank">Caveman</a> easy and even though the plugins may be complicated to develop, the user footprint is huge which is incentive to develop that most ego-starved programmer can&#8217;t pass up. Drupal is not any better or any worse&#8230;it&#8217;s just different. There is also definitely a learning curve so if you&#8217;re familiar with WordPress and want to dive in to Drupal and expect to get it right away, you&#8217;re in for a real treat <img src='http://www.adamestrada.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  I would love some feedback on this topic so please hit me up if you&#8217;ve got the time&#8230;</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 968184, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 968184, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 968184, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/05/21/mapproxy-project-wms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-1629033" target="_parent" onclick="return Arkayne.go(event, this, 'link', 968184, 1629033);">MapProxy Project for Accelerating your WMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 968184, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=32&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-592420" target="_blank" onclick="return Arkayne.go(event, this, 'link', 968184, 592420);">
        
        
        Top Free Useful Cydia applications for your IPhone
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/05/15-killer-hacks-for-wordpress-that-are-extremely-useful/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-930971" target="_blank" onclick="return Arkayne.go(event, this, 'link', 968184, 930971);">
        
        
        15 Killer Hacks for WordPress that Are Extremely Useful
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=28&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-590464" target="_blank" onclick="return Arkayne.go(event, this, 'link', 968184, 590464);">
        
        
        Top Wordpress Plugins/Widgets for traffic and layout
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/968184.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/z6A3sAw86C8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2010/02/26/drupal-vs-wordpress-for-geo/feed/</wfw:commentRss>
		<slash:comments>12</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2010/02/26/drupal-vs-wordpress-for-geo/</feedburner:origLink></item>
		<item>
		<title>GmapEZ</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/agBp3mroers/</link>
		<comments>http://www.adamestrada.com/2010/02/06/gmapez/#comments</comments>
		<pubDate>Sat, 06 Feb 2010 19:09:42 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[Web Mapping]]></category>
		<category><![CDATA[GmapEZ]]></category>
		<category><![CDATA[Google Maps]]></category>
		<category><![CDATA[HTML]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=388</guid>
		<description><![CDATA[I have been using GMapEZ for a few years now and it continues to impress me by how easy it is to use. The GMapEZ  script completely eliminates the need for any javascript programming which in my opinion is a [...]]]></description>
			<content:encoded><![CDATA[<div id="attachment_389" class="wp-caption alignleft" style="width: 169px"><a href="http://n01se.net/gmapez/"><img class="size-full wp-image-389" title="logo3main" src="http://www.adamestrada.com/wp-content/uploads/2010/02/logo3main.png" alt="" width="159" height="38" /></a><p class="wp-caption-text">Using GMapEZ</p></div>
<p>I have been using <a href="http://n01se.net/gmapez/">GMapEZ</a> for a few years now and it continues to impress me by how easy it is to use. The <a href="http://n01se.net/gmapez/gmapez-2.5.js" target="_blank">GMapEZ  script</a> completely eliminates the need for any javascript programming which in my opinion is a really good thing. I have used it in the past to add pushpins that are returned form any number of data sources. I like classic ASP so I&#8217;ve returned data from an ASP RecordSet or now a days from a .NET DataReader. At any rate, you simply have to read data from the DB and then write out the HTML to represent the structure needed to put pushpins on your map. Here is a C# example of what I am talking about.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p388code6'); return false;">View Code</a> CSHARP</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p3886"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
</pre></td><td class="code" id="p388code6"><pre class="csharp" style="font-family:monospace;"><span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #0600FF; font-weight: bold;">partial</span> <span style="color: #6666cc; font-weight: bold;">class</span> Pages_mapPanel <span style="color: #008000;">:</span> <span style="color: #000000;">System.<span style="color: #0000FF;">Web</span><span style="color: #008000;">.</span><span style="color: #0000FF;">UI</span></span><span style="color: #008000;">.</span><span style="color: #0000FF;">UserControl</span>
<span style="color: #008000;">&#123;</span>
    <span style="color: #008080;">#region Page Props</span>
&nbsp;
    <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">String</span> defaultGmapPage <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;http://maps.google.com/maps&quot;</span><span style="color: #008000;">;</span>
    <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">String</span> defaultPage <span style="color: #008000;">=</span> ConfigurationSettings<span style="color: #008000;">.</span><span style="color: #0000FF;">AppSettings</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;defaultPage&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">;</span>
&nbsp;
    <span style="color: #008080;">#endregion</span>
&nbsp;
    <span style="color: #0600FF; font-weight: bold;">protected</span> <span style="color: #6666cc; font-weight: bold;">void</span> Page_Load<span style="color: #008000;">&#40;</span><span style="color: #6666cc; font-weight: bold;">object</span> sender, EventArgs e<span style="color: #008000;">&#41;</span>
    <span style="color: #008000;">&#123;</span>
        <span style="color: #0600FF; font-weight: bold;">try</span>
        <span style="color: #008000;">&#123;</span>
            <span style="color: #6666cc; font-weight: bold;">string</span> mapPlaceHolder <span style="color: #008000;">=</span> <span style="color: #0600FF; font-weight: bold;">this</span><span style="color: #008000;">.</span><span style="color: #0000FF;">loadMapData</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF; font-weight: bold;">this</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ctlPlaceHolder</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Controls</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Add</span><span style="color: #008000;">&#40;</span><a href="http://www.google.com/search?q=new+msdn.microsoft.com"><span style="color: #008000;">new</span></a> LiteralControl<span style="color: #008000;">&#40;</span>mapPlaceHolder<span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span> 
        <span style="color: #008000;">&#125;</span>
        <span style="color: #0600FF; font-weight: bold;">catch</span> <span style="color: #008000;">&#40;</span>Exception ex<span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            <span style="color: #0600FF; font-weight: bold;">throw</span> <span style="color: #008000;">&#40;</span>ex<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
    <span style="color: #008000;">&#125;</span>
&nbsp;
    <span style="color: #008080;">#region loadMapData()</span>
    <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">String</span> loadMapData<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
    <span style="color: #008000;">&#123;</span>
        <span style="color: #0600FF; font-weight: bold;">try</span>
        <span style="color: #008000;">&#123;</span>
            OracleConnection conn <span style="color: #008000;">=</span> <a href="http://www.google.com/search?q=new+msdn.microsoft.com"><span style="color: #008000;">new</span></a> OracleConnection<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #6666cc; font-weight: bold;">String</span> mainConn <span style="color: #008000;">=</span> ConfigurationManager<span style="color: #008000;">.</span><span style="color: #0000FF;">ConnectionStrings</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;MainConnStr&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ConnectionString</span><span style="color: #008000;">;</span>
            conn<span style="color: #008000;">.</span><span style="color: #0000FF;">ConnectionString</span> <span style="color: #008000;">=</span> mainConn<span style="color: #008000;">;</span>
            conn<span style="color: #008000;">.</span><span style="color: #0000FF;">Open</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            OracleCommand cmd <span style="color: #008000;">=</span> <a href="http://www.google.com/search?q=new+msdn.microsoft.com"><span style="color: #008000;">new</span></a> OracleCommand<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            cmd<span style="color: #008000;">.</span><span style="color: #0000FF;">CommandType</span> <span style="color: #008000;">=</span> CommandType<span style="color: #008000;">.</span><span style="color: #0000FF;">Text</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #6666cc; font-weight: bold;">String</span> query <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;SELECT * FROM MYTABLE ORDER BY DATEIN DESC&quot;</span><span style="color: #008000;">;</span>
            cmd<span style="color: #008000;">.</span><span style="color: #0000FF;">CommandText</span> <span style="color: #008000;">=</span> query<span style="color: #008000;">;</span>
            cmd<span style="color: #008000;">.</span><span style="color: #0000FF;">Connection</span> <span style="color: #008000;">=</span> conn<span style="color: #008000;">;</span>
&nbsp;
            cmd<span style="color: #008000;">.</span><span style="color: #0000FF;">ExecuteReader</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            OracleDataReader dr <span style="color: #008000;">=</span> cmd<span style="color: #008000;">.</span><span style="color: #0000FF;">ExecuteReader</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            StringBuilder map <span style="color: #008000;">=</span> <a href="http://www.google.com/search?q=new+msdn.microsoft.com"><span style="color: #008000;">new</span></a> StringBuilder<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            QueryString qs <span style="color: #008000;">=</span> <a href="http://www.google.com/search?q=new+msdn.microsoft.com"><span style="color: #008000;">new</span></a> QueryString<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF; font-weight: bold;">while</span> <span style="color: #008000;">&#40;</span>dr<span style="color: #008000;">.</span><span style="color: #0000FF;">Read</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span>
            <span style="color: #008000;">&#123;</span>
                qs<span style="color: #008000;">.</span><span style="color: #0000FF;">Add</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;fid&quot;</span>, <span style="color: #666666;">&quot;ms&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                qs<span style="color: #008000;">.</span><span style="color: #0000FF;">Add</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;id&quot;</span>, dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;ID&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;a id=<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;ID&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span> href=<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span> <span style="color: #008000;">+</span> defaultGmapPage <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;?ll=&quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;LATITUDE&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;,&quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;LONGITUDE&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&amp;amp;t=k&amp;amp;hl=en<span style="color: #008080; font-weight: bold;">\&quot;</span>&gt;GREEN MINI&lt;/a&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;div title=<span style="color: #008080; font-weight: bold;">\&quot;</span>Event<span style="color: #008080; font-weight: bold;">\&quot;</span>&gt;&lt;font size=<span style="color: #008080; font-weight: bold;">\&quot;</span>1<span style="color: #008080; font-weight: bold;">\&quot;</span> face=<span style="color: #008080; font-weight: bold;">\&quot;</span>Arial, Helvetica, sans-serif<span style="color: #008080; font-weight: bold;">\&quot;</span>&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;strong&gt;Name:&lt;/strong&gt; &quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;NAME&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&lt;br /&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;strong&gt;Type:&lt;/strong&gt; &quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;TYPE&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&lt;br /&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;strong&gt;Description:&lt;/strong&gt; &quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;DESC&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&lt;br /&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;a href=<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span> <span style="color: #008000;">+</span> defaultPage <span style="color: #008000;">+</span> qs <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&gt;Go To Main Page...&lt;/a&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;/font&gt;&lt;/div&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;div title=<span style="color: #008080; font-weight: bold;">\&quot;</span>Dates<span style="color: #008080; font-weight: bold;">\&quot;</span>&gt;&lt;font size=<span style="color: #008080; font-weight: bold;">\&quot;</span>1<span style="color: #008080; font-weight: bold;">\&quot;</span> face=<span style="color: #008080; font-weight: bold;">\&quot;</span>Arial, Helvetica, sans-serif<span style="color: #008080; font-weight: bold;">\&quot;</span>&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;strong&gt;Date In:&lt;/strong&gt; &quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;DATEIN&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&lt;br /&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;strong&gt;Date Out:&lt;/strong&gt; &quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;DATEOUT&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&lt;br /&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;a href=<span style="color: #008080; font-weight: bold;">\&quot;</span>&quot;</span> <span style="color: #008000;">+</span> defaultPage <span style="color: #008000;">+</span> qs <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\&quot;</span>&gt;Go To Main Page...&lt;/a&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                    map<span style="color: #008000;">.</span><span style="color: #0000FF;">Append</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;/font&gt;&lt;/div&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                <span style="color: #008000;">&#125;</span>
            <span style="color: #008000;">&#125;</span>
&nbsp;
            conn<span style="color: #008000;">.</span><span style="color: #0000FF;">Close</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF; font-weight: bold;">return</span> map<span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
        <span style="color: #0600FF; font-weight: bold;">catch</span> <span style="color: #008000;">&#40;</span>Exception ex<span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
            Zekiah<span style="color: #008000;">.</span><span style="color: #0000FF;">Logging</span><span style="color: #008000;">.</span><span style="color: #0000FF;">LoggingManager</span><span style="color: #008000;">.</span><span style="color: #0000FF;">WebApplication</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Error</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;A Fatal Error has occured in the Map Control&quot;</span>, ex<span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            redirectToFailure<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            <span style="color: #0600FF; font-weight: bold;">return</span> <span style="color: #0600FF; font-weight: bold;">null</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
    <span style="color: #008000;">&#125;</span>
    <span style="color: #008080;">#endregion</span>
&nbsp;
	<span style="color: #008080;">#region Failure Notice </span>
    <span style="color: #0600FF; font-weight: bold;">private</span> <span style="color: #6666cc; font-weight: bold;">void</span> redirectToFailure<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
    <span style="color: #008000;">&#123;</span>
        QueryString qs <span style="color: #008000;">=</span> <a href="http://www.google.com/search?q=new+msdn.microsoft.com"><span style="color: #008000;">new</span></a> QueryString<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
        qs<span style="color: #008000;">.</span><span style="color: #0000FF;">Add</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;fid&quot;</span>, <span style="color: #666666;">&quot;ERROR&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
        Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Redirect</span><span style="color: #008000;">&#40;</span>defaultPage <span style="color: #008000;">+</span> qs, <span style="color: #0600FF; font-weight: bold;">false</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
    <span style="color: #008000;">&#125;</span>    
    <span style="color: #008080;">#endregion </span>
<span style="color: #008000;">&#125;</span></pre></td></tr></table></div>

<p>Please note that I am reading data from an Oracle Database and simply returning it as a properly formatted String in HTML format. Each pushpin also has two tabs which can hold extra data including another URL. For more information on what you can do with GMapEZ, <a href="http://n01se.net/gmapez/start.html">check out the examples</a> on the hosted site. You&#8217;ll also note that I <a href="http://www.csharper.net/blog/querystring_class_useful_for_querystring_manipulation__appendage__etc.aspx" target="_blank">used a class written by Bobby ReRosa called &#8220;QueryString&#8221;</a>. What a freaking time saver this thing is! Thanks Bobby&#8230;I actually want to write more on how to use it in another blog post so look for that one too.</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785993, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785993, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785993, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785993, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/05/28/jquery-tabs-view-state/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786048" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785993, 786048);">jQuery tabs view state</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=6&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-579504" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785993, 579504);">
        
        
        Jailbreaking and unlocking your iphone for T-mobile
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=177&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-651469" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785993, 651469);">
        
        
        Replace IPhone Carrier T-Mobile and AT&amp;T with SKYPE 2010
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/15/adam-the-indian-ipad-killer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928459" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785993, 928459);">
        
        
        Adam – The Indian iPad killer
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/785993.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/agBp3mroers" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2010/02/06/gmapez/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<georss:point>38.8903896 -77.0841446</georss:point><geo:lat>38.8903896</geo:lat><geo:long>-77.0841446</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2010/02/06/gmapez/</feedburner:origLink></item>
		<item>
		<title>Oracle Spatial and USER_SDO_GEOM_METADATA</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/0a1J0NymIUs/</link>
		<comments>http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/#comments</comments>
		<pubDate>Fri, 15 Jan 2010 18:42:44 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[ESRI]]></category>
		<category><![CDATA[Oracle Spatial]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=380</guid>
		<description><![CDATA[Oracle is a very powerful database but at the same time VERY difficult to use. I&#8217;m guessing that&#8217;s why Oracle DBA&#8217;s get all the money and women&#8230;hehe. Oracle Spatial is also an incredibly powerful tool, if you know how to [...]]]></description>
			<content:encoded><![CDATA[<p>Oracle is a very powerful database but at the same time <em>VERY</em> difficult to use. I&#8217;m guessing that&#8217;s why Oracle DBA&#8217;s get all the money and women&#8230;hehe. Oracle Spatial is also an incredibly powerful tool, if you know how to use it. I&#8217;ve talked before about how to <a href="http://www.adamestrada.com/2009/06/14/how-to-load-a-shapefile-in-to-oracle-spatial/" target="_blank">get your spatial data in to the Database</a>, but what happens if the database doesn&#8217;t like the data? See, in Oracle you must have an SDO_GEOMETRY type to actually perform spatial queries on your data. What they don&#8217;t make so apparent is the fact that you must also Insert a record in to the USER_SDO_GEOM_METADATA table (they call it a view) and also create a Spatial Index to perform the query. SHP2SDO will create the Update/Insert statement for USER_SDO_GEOM_METADATA but if you already Inserted the data and don&#8217;t have the original you can use the following to Insert in to your table</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p380code12'); return false;">View Code</a> SQL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p38012"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
</pre></td><td class="code" id="p380code12"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">INSERT</span> <span style="color: #993333; font-weight: bold;">INTO</span> USER_SDO_GEOM_METADATA
<span style="color: #993333; font-weight: bold;">VALUES</span><span style="color: #66cc66;">&#40;</span>
<span style="color: #ff0000;">'EVENTS'</span><span style="color: #66cc66;">,</span><span style="color: #ff0000;">'GEOM'</span><span style="color: #66cc66;">,</span>
    MDSYS<span style="color: #66cc66;">.</span>SDO_DIM_ARRAY<span style="color: #66cc66;">&#40;</span>   
    MDSYS<span style="color: #66cc66;">.</span>SDO_DIM_ELEMENT<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'X'</span><span style="color: #66cc66;">,</span> <span style="color: #66cc66;">-</span><span style="color: #cc66cc;">180</span><span style="color: #66cc66;">,</span> <span style="color: #cc66cc;">180</span><span style="color: #66cc66;">,</span> <span style="color: #cc66cc;">0.000000005</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span>
    MDSYS<span style="color: #66cc66;">.</span>SDO_DIM_ELEMENT<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'Y'</span><span style="color: #66cc66;">,</span> <span style="color: #66cc66;">-</span><span style="color: #cc66cc;">90</span><span style="color: #66cc66;">,</span> <span style="color: #cc66cc;">90</span><span style="color: #66cc66;">,</span> <span style="color: #cc66cc;">0.000000005</span><span style="color: #66cc66;">&#41;</span>
     <span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span>
  <span style="color: #cc66cc;">4326</span>   <span style="color: #808080; font-style: italic;">-- SRID (reserved for future Spatial releases)</span>
<span style="color: #66cc66;">&#41;</span>;</pre></td></tr></table></div>

<p>Once you&#8217;ve Inserted that record you can look at it using the following Query:</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p380code13'); return false;">View Code</a> SQL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p38013"><td class="line_numbers"><pre>1
2
</pre></td><td class="code" id="p380code13"><pre class="sql" style="font-family:monospace;">&nbsp;
<span style="color: #993333; font-weight: bold;">SELECT</span> <span style="color: #66cc66;">*</span> <span style="color: #993333; font-weight: bold;">FROM</span> USER_SDO_GEOM_METADATA</pre></td></tr></table></div>

<p>The Update query is simple&#8230;</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p380code14'); return false;">View Code</a> SQL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p38014"><td class="line_numbers"><pre>1
2
3
4
5
6
7
</pre></td><td class="code" id="p380code14"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">UPDATE</span> EVENTS S <span style="color: #993333; font-weight: bold;">set</span> S<span style="color: #66cc66;">.</span>GEOM<span style="color: #66cc66;">.</span>SDO_SRID <span style="color: #66cc66;">=</span> <span style="color: #cc66cc;">4326</span>
&nbsp;
<span style="color: #993333; font-weight: bold;">UPDATE</span> USER_SDO_GEOM_METADATA <span style="color: #993333; font-weight: bold;">SET</span> SRID <span style="color: #66cc66;">=</span> <span style="color: #cc66cc;">4326</span> <span style="color: #993333; font-weight: bold;">WHERE</span> TABLE_NAME<span style="color: #66cc66;">=</span><span style="color: #ff0000;">'EVENTS'</span>
&nbsp;
<span style="color: #993333; font-weight: bold;">UPDATE</span> USER_SDO_GEOM_METADATA <span style="color: #993333; font-weight: bold;">SET</span> DIMINFO <span style="color: #66cc66;">=</span> 
MDSYS<span style="color: #66cc66;">.</span>SDO_DIM_ARRAY<span style="color: #66cc66;">&#40;</span>MDSYS<span style="color: #66cc66;">.</span>SDO_DIM_ELEMENT<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'X'</span><span style="color: #66cc66;">,-</span><span style="color: #cc66cc;">180</span><span style="color: #66cc66;">,</span><span style="color: #cc66cc;">180</span><span style="color: #66cc66;">,</span><span style="color: #cc66cc;">0.000000005</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span>
MDSYS<span style="color: #66cc66;">.</span>SDO_DIM_ELEMENT<span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">'Y'</span><span style="color: #66cc66;">,-</span><span style="color: #cc66cc;">90</span><span style="color: #66cc66;">,</span><span style="color: #cc66cc;">90</span><span style="color: #66cc66;">,</span><span style="color: #cc66cc;">0.000000005</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">WHERE</span> TABLE_NAME <span style="color: #66cc66;">=</span> <span style="color: #ff0000;">'EVENTS'</span></pre></td></tr></table></div>

<p>If you want to make sure your geometries are valid, you may use Oracle&#8217;s ST_IsValid() command.</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p380code15'); return false;">View Code</a> SQL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p38015"><td class="line_numbers"><pre>1
2
</pre></td><td class="code" id="p380code15"><pre class="sql" style="font-family:monospace;">&nbsp;
<span style="color: #993333; font-weight: bold;">SELECT</span> s<span style="color: #66cc66;">.</span>GEOM<span style="color: #66cc66;">.</span>st_isvalid<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span> <span style="color: #993333; font-weight: bold;">FROM</span> EVENTS s</pre></td></tr></table></div>

<p>Finally, do you want to generate a GEOM column from latitude/longitude fields?</p>

<div class="wp_codebox_msgheader"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p380code16'); return false;">View Code</a> SQL</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p38016"><td class="line_numbers"><pre>1
2
3
4
5
6
</pre></td><td class="code" id="p380code16"><pre class="sql" style="font-family:monospace;"><span style="color: #993333; font-weight: bold;">UPDATE</span> EVENTS
<span style="color: #993333; font-weight: bold;">SET</span> GEOM <span style="color: #66cc66;">=</span> MDSYS<span style="color: #66cc66;">.</span>SDO_GEOMETRY<span style="color: #66cc66;">&#40;</span>
<span style="color: #cc66cc;">2001</span><span style="color: #66cc66;">,</span> <span style="color: #808080; font-style: italic;">-- 3-dimensional point or use 2001 for 2-dimensional point</span>
<span style="color: #993333; font-weight: bold;">NULL</span><span style="color: #66cc66;">,</span>
MDSYS<span style="color: #66cc66;">.</span>SDO_POINT_TYPE<span style="color: #66cc66;">&#40;</span>EVENTS<span style="color: #66cc66;">.</span>LON<span style="color: #66cc66;">,</span> EVENTS<span style="color: #66cc66;">.</span>LAT<span style="color: #66cc66;">,</span> <span style="color: #993333; font-weight: bold;">NULL</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">,</span> <span style="color: #808080; font-style: italic;">-- X,Y,Z</span>
<span style="color: #993333; font-weight: bold;">NULL</span><span style="color: #66cc66;">,</span> <span style="color: #993333; font-weight: bold;">NULL</span> <span style="color: #66cc66;">&#41;</span>;</pre></td></tr></table></div>

<p>Have fun!</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/11/25/spatialite-2-4-0-rc-0/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785998" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785994, 785998);">SpatiaLite 2.4.0 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785994, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785994, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/14/spatialite-and-smart-phones/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786019" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785994, 786019);">SpatiaLite and Smart Phones</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/07/16/geodc-kickoff/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786012" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785994, 786012);">GeoDC Kickoff…</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2008/11/14/generic-host-process-for-win32-services-has-encountered-a-problem-and-needs-to-close/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-1080260" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785994, 1080260);">
        
        
        Generic Host Process for Win32 Services and internet stops
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=6&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-579504" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785994, 579504);">
        
        
        Jailbreaking and unlocking your iphone for T-mobile
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=177&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-651469" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785994, 651469);">
        
        
        Replace IPhone Carrier T-Mobile and AT&amp;T with SKYPE 2010
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/785994.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/0a1J0NymIUs" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
	<georss:point>38.5292877 -76.9752514</georss:point><geo:lat>38.5292877</geo:lat><geo:long>-76.9752514</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/</feedburner:origLink></item>
		<item>
		<title>GIS for the “Have Nots”</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/HnjV0RkpmtI/</link>
		<comments>http://www.adamestrada.com/2009/12/17/gis-for-the-have-nots/#comments</comments>
		<pubDate>Thu, 17 Dec 2009 22:59:47 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[GeoDC]]></category>
		<category><![CDATA[GIS in the Rockies]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=373</guid>
		<description><![CDATA[A colleague of mine, Marshall Worthey, gave this presentation at GIS in the Rockies earlier this year. Last night, I did it at a GeoDC event at FortiusOne.
GIS in the Rockies Presentation
View more presentations from geodawg.

For more information on embedding [...]]]></description>
			<content:encoded><![CDATA[<p>A colleague of mine, <a href="http://www.linkedin.com/pub/dir/Marshall/Worthey/" target="_blank">Marshall Worthey</a>, gave this presentation at GIS in the Rockies earlier this year. Last night, I did it at a <a href="http://geo-dc.ning.com/" target="_blank">GeoDC</a> event at <a href="http://www.fortiusone.com" target="_blank">FortiusOne</a>.</p>
<div style="width:425px;text-align:left" id="__ss_2739974"><a style="font:14px Helvetica,Arial,Sans-serif;display:block;margin:12px 0 3px 0;text-decoration:underline;" href="http://www.slideshare.net/geodawg/gis-in-the-rockies-presentation" title="GIS in the Rockies Presentation">GIS in the Rockies Presentation</a><object style="margin:0px" width="425" height="355"><param name="movie" value="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=gisrpresentation09-091217164700-phpapp02&#038;rel=0&#038;stripped_title=gis-in-the-rockies-presentation" /><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slidesharecdn.com/swf/ssplayer2.swf?doc=gisrpresentation09-091217164700-phpapp02&#038;rel=0&#038;stripped_title=gis-in-the-rockies-presentation" type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="425" height="355"></embed></object>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;">View more <a style="text-decoration:underline;" href="http://www.slideshare.net/">presentations</a> from <a style="text-decoration:underline;" href="http://www.slideshare.net/geodawg">geodawg</a>.</div>
</div>
<p>For more information on embedding maps from Geocommons in to WordPress, check out this <a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/">previous post of mine</a>.</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/04/04/iphone-test/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786050" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785995, 786050);">iPhone Test</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/05/29/make-a-google-wave/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786047" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785995, 786047);">Make a Google Wave…</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/25/selenium-for-web-site-testing/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786002" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785995, 786002);">Automated web site testing </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/05/31/jquery-and-prototype-overview/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786043" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785995, 786043);">jQuery and Prototype Overview</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/07/16/geodc-kickoff/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786012" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785995, 786012);">GeoDC Kickoff…</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/15/adam-the-indian-ipad-killer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928459" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785995, 928459);">
        
        
        Adam – The Indian iPad killer
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=213&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-443959" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785995, 443959);">
        
        
        Routing with the new Google Maps Data
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=221&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-449791" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785995, 449791);">
        
        
        Layar for the iPhone
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/785995.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/HnjV0RkpmtI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/12/17/gis-for-the-have-nots/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<georss:point>38.89156726911702 -77.08402633666992</georss:point><geo:lat>38.89156726911702</geo:lat><geo:long>-77.08402633666992</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2009/12/17/gis-for-the-have-nots/</feedburner:origLink></item>
		<item>
		<title>More on ESRI Flex and Config.xml</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/Wqs7p75wkIY/</link>
		<comments>http://www.adamestrada.com/2009/12/15/more-on-flex-and-config-xml/#comments</comments>
		<pubDate>Wed, 16 Dec 2009 01:59:38 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[ESRI]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[e4x]]></category>
		<category><![CDATA[ExternalInterface]]></category>
		<category><![CDATA[MapMouseEvent]]></category>
		<category><![CDATA[MouseEvent.CLICK]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=365</guid>
		<description><![CDATA[ESRI, Flex and Actionscript <a href="http://www.adamestrada.com/2009/12/15/more-on-flex-and-config-xml/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>More often than not, when building a Flex application that includes a URL that references a map service, you&#8217;ll have to swap out that URL from your development environment to production when you go live. The following script/technique is intended to alleviate having to completely rebuild your application during deployment.</p>
<p>Take a look at the following mxml file and note that there are 3 things in particular to note.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p365code17'); return false;">View Code</a> ACTIONSCRIPT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p36517"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
</pre></td><td class="code" id="p365code17"><pre class="actionscript" style="font-family:monospace;"><span style="color: #66cc66;">&lt;</span> ?<span style="color: #0066CC;">xml</span> <span style="color: #0066CC;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span> encoding=<span style="color: #ff0000;">&quot;utf-8&quot;</span>?<span style="color: #66cc66;">&gt;</span>
<span style="color: #66cc66;">&lt;</span>mx :Application
    xmlns:mx=<span style="color: #ff0000;">&quot;http://www.adobe.com/2006/mxml&quot;</span>
    xmlns:esri=<span style="color: #ff0000;">&quot;http://www.esri.com/2008/ags&quot;</span>
    layout=<span style="color: #ff0000;">&quot;absolute&quot;</span>
    initialize=<span style="color: #ff0000;">&quot;init()&quot;</span>
    styleName=<span style="color: #ff0000;">&quot;plain&quot;</span>
    <span style="color: #66cc66;">&gt;</span>
  <span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;&lt;</span>mx :Script<span style="color: #66cc66;">&gt;</span>
    <span style="color: #66cc66;">&lt;</span> <span style="color: #66cc66;">!</span><span style="color: #66cc66;">&#91;</span>CDATA<span style="color: #66cc66;">&#91;</span>
    	<span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">collections</span>.<span style="color: #006600;">XMLListCollection</span>;
    	<span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">collections</span>.<span style="color: #006600;">ArrayCollection</span>;
        	<span style="color: #0066CC;">import</span> com.<span style="color: #006600;">esri</span>.<span style="color: #006600;">ags</span>.<span style="color: #006600;">Graphic</span>;
        	<span style="color: #0066CC;">import</span> com.<span style="color: #006600;">esri</span>.<span style="color: #006600;">ags</span>.<span style="color: #006600;">events</span>.<span style="color: #006600;">MapMouseEvent</span>;        	
        	<span style="color: #0066CC;">import</span> com.<span style="color: #006600;">esri</span>.<span style="color: #006600;">ags</span>.<span style="color: #006600;">geometry</span>.<span style="color: #006600;">MapPoint</span>;
        	<span style="color: #0066CC;">import</span> com.<span style="color: #006600;">esri</span>.<span style="color: #006600;">ags</span>.<span style="color: #006600;">geometry</span>.<span style="color: #006600;">Extent</span>;
            <span style="color: #0066CC;">import</span> com.<span style="color: #006600;">esri</span>.<span style="color: #006600;">ags</span>.<span style="color: #006600;">events</span>.<span style="color: #006600;">ExtentEvent</span>;
            <span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">rpc</span>.<span style="color: #006600;">events</span>.<span style="color: #006600;">FaultEvent</span>;
        	<span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">rpc</span>.<span style="color: #006600;">events</span>.<span style="color: #006600;">ResultEvent</span>;
            <span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">controls</span>.<span style="color: #006600;">Alert</span>;
            <span style="color: #0066CC;">import</span> flash.<span style="color: #006600;">external</span>.<span style="color: #66cc66;">*</span>;
            <span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">events</span>.<span style="color: #006600;">FlexEvent</span>;
            <span style="color: #0066CC;">import</span> com.<span style="color: #006600;">esri</span>.<span style="color: #006600;">ags</span>.<span style="color: #006600;">layers</span>.<span style="color: #006600;">TiledMapServiceLayer</span>;
            <span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">controls</span>.<span style="color: #0066CC;">Button</span>;
            <span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">controls</span>.<span style="color: #0066CC;">Text</span>;
            <span style="color: #0066CC;">import</span> com.<span style="color: #006600;">esri</span>.<span style="color: #006600;">ags</span>.<span style="color: #006600;">layers</span>.<span style="color: #006600;">ArcGISDynamicMapServiceLayer</span>;
            <span style="color: #0066CC;">import</span> mx.<span style="color: #006600;">rpc</span>.<span style="color: #006600;">http</span>.<span style="color: #006600;">HTTPService</span>;
&nbsp;
            <span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> initXML<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
        	<span style="color: #66cc66;">&#123;</span>
        		<span style="color: #000000; font-weight: bold;">var</span> configService:HTTPService = <span style="color: #000000; font-weight: bold;">new</span> HTTPService<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
        		configService.<span style="color: #0066CC;">url</span> = <span style="color: #ff0000;">&quot;config.xml&quot;</span>;
        		configService.<span style="color: #006600;">resultFormat</span> = <span style="color: #ff0000;">&quot;e4x&quot;</span>;
        		configService.<span style="color: #006600;">addEventListener</span><span style="color: #66cc66;">&#40;</span>ResultEvent.<span style="color: #006600;">RESULT</span>, configResult<span style="color: #66cc66;">&#41;</span>;
        		configService.<span style="color: #006600;">addEventListener</span><span style="color: #66cc66;">&#40;</span>FaultEvent.<span style="color: #006600;">FAULT</span>, configFault<span style="color: #66cc66;">&#41;</span>;
        		configService.<span style="color: #0066CC;">send</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
        	<span style="color: #66cc66;">&#125;</span>
&nbsp;
            <span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> configResult<span style="color: #66cc66;">&#40;</span>event:ResultEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
            <span style="color: #66cc66;">&#123;</span>
            	<span style="color: #000000; font-weight: bold;">var</span> configXML:<span style="color: #0066CC;">XML</span> = event.<span style="color: #006600;">result</span> as <span style="color: #0066CC;">XML</span>;
            	<span style="color: #000000; font-weight: bold;">var</span> serviceList:XMLList = configXML..<span style="color: #006600;">service</span>;
            	<span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #000000; font-weight: bold;">var</span> i:<span style="color: #0066CC;">int</span> = <span style="color: #cc66cc;">0</span>; i <span style="color: #66cc66;">&lt;</span> serviceList.<span style="color: #0066CC;">length</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; i++<span style="color: #66cc66;">&#41;</span>
            	<span style="color: #66cc66;">&#123;</span>
             		<span style="color: #000000; font-weight: bold;">var</span> serviceName:<span style="color: #0066CC;">String</span> = serviceList<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span>.<span style="color: #0066CC;">name</span>;
            		<span style="color: #000000; font-weight: bold;">var</span> serviceURL:<span style="color: #0066CC;">String</span> = serviceList<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span>.<span style="color: #0066CC;">url</span>;
            		<span style="color: #000000; font-weight: bold;">var</span> serviceAlpha:<span style="color: #0066CC;">int</span> = serviceList<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">alpha</span>;
            		<span style="color: #000000; font-weight: bold;">var</span> serviceVisible:<span style="color: #0066CC;">Boolean</span> = serviceList<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span>.<span style="color: #0066CC;">visible</span>;
            		<span style="color: #000000; font-weight: bold;">var</span> serviceLayers:ArrayCollection = <span style="color: #000000; font-weight: bold;">new</span> ArrayCollection<span style="color: #66cc66;">&#40;</span>serviceList<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">layers</span>.<span style="color: #0066CC;">split</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;,&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
&nbsp;
            		<span style="color: #000000; font-weight: bold;">var</span> tLayer:ArcGISDynamicMapServiceLayer = <span style="color: #000000; font-weight: bold;">new</span> ArcGISDynamicMapServiceLayer<span style="color: #66cc66;">&#40;</span>serviceURL<span style="color: #66cc66;">&#41;</span>; 
            		tLayer.<span style="color: #006600;">id</span> = serviceName;
            		tLayer.<span style="color: #0066CC;">visible</span> = serviceVisible;
            		tLayer.<span style="color: #006600;">alpha</span> = serviceAlpha;
            		tLayer.<span style="color: #006600;">visibleLayers</span> = serviceLayers;
            		myMap.<span style="color: #006600;">addLayer</span><span style="color: #66cc66;">&#40;</span>tLayer<span style="color: #66cc66;">&#41;</span>;	
            	<span style="color: #66cc66;">&#125;</span>          	
            <span style="color: #66cc66;">&#125;</span>
&nbsp;
            <span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> configFault<span style="color: #66cc66;">&#40;</span>event:FaultEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
            <span style="color: #66cc66;">&#123;</span>
            	Alert.<span style="color: #0066CC;">show</span><span style="color: #66cc66;">&#40;</span>event.<span style="color: #006600;">fault</span>.<span style="color: #006600;">faultString</span><span style="color: #66cc66;">&#41;</span>;
            <span style="color: #66cc66;">&#125;</span>
&nbsp;
&nbsp;
            <span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> layerShowHandler<span style="color: #66cc66;">&#40;</span>event:FlexEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
            <span style="color: #66cc66;">&#123;</span>
                <span style="color: #808080; font-style: italic;">// update the LODs/zoomslider to use/show the levels for the selected base map</span>
                <span style="color: #000000; font-weight: bold;">var</span> tiledLayer:TiledMapServiceLayer = event.<span style="color: #0066CC;">target</span> as TiledMapServiceLayer;
                myMap.<span style="color: #006600;">lods</span> = tiledLayer.<span style="color: #006600;">tileInfo</span>.<span style="color: #006600;">lods</span>;
            <span style="color: #66cc66;">&#125;</span>
&nbsp;
			<span style="color: #808080; font-style: italic;">//add a callback for js to flex communication</span>
			<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> init<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
			<span style="color: #66cc66;">&#123;</span>
				initXML<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
			  <span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>flash.<span style="color: #006600;">external</span>.<span style="color: #006600;">ExternalInterface</span>.<span style="color: #006600;">available</span><span style="color: #66cc66;">&#41;</span>
			    flash.<span style="color: #006600;">external</span>.<span style="color: #006600;">ExternalInterface</span>.<span style="color: #006600;">addCallback</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;changeExtent&quot;</span>, changeExtent<span style="color: #66cc66;">&#41;</span>;     
			<span style="color: #66cc66;">&#125;</span>
&nbsp;
			<span style="color: #808080; font-style: italic;">//call from js</span>
			<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> changeExtent<span style="color: #66cc66;">&#40;</span>sextent:<span style="color: #0066CC;">String</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>	
			<span style="color: #66cc66;">&#123;</span>
				<span style="color: #808080; font-style: italic;">//var avals = sextent.split(&quot;|&quot;);</span>
				<span style="color: #808080; font-style: italic;">//var ext:Extent = new Extent(new Number(avals[0]),new Number(avals[2]),new Number(avals[1]),new Number(avals[3]));</span>
				<span style="color: #808080; font-style: italic;">//ext.spatialReference = myMap.spatialReference;</span>
				<span style="color: #808080; font-style: italic;">//myMap.extent = ext;</span>
			<span style="color: #66cc66;">&#125;</span>
&nbsp;
            <span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> onBasemapCreationComplete<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
			<span style="color: #66cc66;">&#123;</span>
            	myMap.<span style="color: #006600;">addEventListener</span><span style="color: #66cc66;">&#40;</span>MouseEvent.<span style="color: #006600;">CLICK</span>, pushExtentEvent<span style="color: #66cc66;">&#41;</span>;
            <span style="color: #66cc66;">&#125;</span>
&nbsp;
     		<span style="color: #808080; font-style: italic;">//send extents to html/js</span>
     		<span style="color: #0066CC;">public</span> <span style="color: #000000; font-weight: bold;">function</span> pushExtentEvent<span style="color: #66cc66;">&#40;</span>event:MouseEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>           
      	 	<span style="color: #66cc66;">&#123;</span>
      	 		<span style="color: #b1b100;">if</span> <span style="color: #66cc66;">&#40;</span>flash.<span style="color: #006600;">external</span>.<span style="color: #006600;">ExternalInterface</span>.<span style="color: #006600;">available</span><span style="color: #66cc66;">&#41;</span>
			     <span style="color: #66cc66;">&#123;</span>
			       const mapPoint:MapPoint = myMap.<span style="color: #006600;">toMapFromStage</span><span style="color: #66cc66;">&#40;</span>event.<span style="color: #006600;">stageX</span>, event.<span style="color: #006600;">stageY</span><span style="color: #66cc66;">&#41;</span>;
			       <span style="color: #000000; font-weight: bold;">var</span> extent:<span style="color: #0066CC;">Array</span> = <span style="color: #000000; font-weight: bold;">new</span> <span style="color: #0066CC;">Array</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
			       flash.<span style="color: #006600;">external</span>.<span style="color: #006600;">ExternalInterface</span>.<span style="color: #0066CC;">call</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;displayExtent&quot;</span>, mapPoint.<span style="color: #006600;">y</span>.<span style="color: #006600;">toFixed</span><span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">6</span><span style="color: #66cc66;">&#41;</span>, mapPoint.<span style="color: #006600;">x</span>.<span style="color: #006600;">toFixed</span><span style="color: #66cc66;">&#40;</span><span style="color: #cc66cc;">6</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
			     <span style="color: #66cc66;">&#125;</span>        
      	 	<span style="color: #66cc66;">&#125;</span>
      	 	<span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> onMapClick<span style="color: #66cc66;">&#40;</span>event:MapMouseEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
      	 	<span style="color: #66cc66;">&#123;</span>    	 		
      	 		myMap.<span style="color: #006600;">infoWindow</span>.<span style="color: #006600;">label</span> = <span style="color: #ff0000;">&quot;Event Location &quot;</span>;
      	 		myMap.<span style="color: #006600;">infoWindow</span>.<span style="color: #0066CC;">show</span><span style="color: #66cc66;">&#40;</span>event.<span style="color: #006600;">mapPoint</span><span style="color: #66cc66;">&#41;</span>;
      	 	<span style="color: #66cc66;">&#125;</span>
        <span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">&#93;</span><span style="color: #66cc66;">&gt;</span>
    <span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;</span>
    <span style="color: #66cc66;">&lt;</span>esri :Map id=<span style="color: #ff0000;">&quot;myMap&quot;</span> <span style="color: #0066CC;">width</span>=<span style="color: #ff0000;">&quot;100%&quot;</span> <span style="color: #0066CC;">height</span>=<span style="color: #ff0000;">&quot;100%&quot;</span> mapClick=<span style="color: #ff0000;">&quot;onMapClick(event)&quot;</span> <span style="color: #66cc66;">&gt;</span>
      <span style="color: #66cc66;">&lt;/</span>esri<span style="color: #66cc66;">&gt;&lt;</span>esri :extent<span style="color: #66cc66;">&gt;</span>
        <span style="color: #66cc66;">&lt;/</span>esri<span style="color: #66cc66;">&gt;&lt;</span>esri :Extent xmin=<span style="color: #ff0000;">&quot;-122.2&quot;</span> ymin=<span style="color: #ff0000;">&quot;24.89&quot;</span> xmax=<span style="color: #ff0000;">&quot;-70.59&quot;</span> ymax=<span style="color: #ff0000;">&quot;46.92&quot;</span>  <span style="color: #66cc66;">&gt;</span>
          <span style="color: #66cc66;">&lt;</span>esri :SpatialReference wkid=<span style="color: #ff0000;">&quot;4326&quot;</span><span style="color: #66cc66;">/&gt;</span>
        <span style="color: #66cc66;">&lt;/</span>esri<span style="color: #66cc66;">&gt;</span>
&nbsp;
        <span style="color: #66cc66;">&lt;</span>esri :ArcGISTiledMapServiceLayer
            <span style="color: #0066CC;">visible</span>=<span style="color: #ff0000;">&quot;{bb.selectedIndex == 0}&quot;</span>
            <span style="color: #0066CC;">show</span>=<span style="color: #ff0000;">&quot;layerShowHandler(event)&quot;</span>
            <span style="color: #0066CC;">url</span>=<span style="color: #ff0000;">&quot;http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer&quot;</span> 
            creationComplete=<span style="color: #ff0000;">&quot;onBasemapCreationComplete()&quot;</span> <span style="color: #66cc66;">/&gt;</span>
        <span style="color: #66cc66;">&lt;</span>esri :ArcGISTiledMapServiceLayer
            <span style="color: #0066CC;">visible</span>=<span style="color: #ff0000;">&quot;{bb.selectedIndex == 1}&quot;</span>
            <span style="color: #0066CC;">show</span>=<span style="color: #ff0000;">&quot;layerShowHandler(event)&quot;</span>
            <span style="color: #0066CC;">url</span>=<span style="color: #ff0000;">&quot;http://server.arcgisonline.com/ArcGIS/rest/services/NGS_Topo_US_2D/MapServer&quot;</span> 
            creationComplete=<span style="color: #ff0000;">&quot;onBasemapCreationComplete()&quot;</span><span style="color: #66cc66;">/&gt;</span>
        <span style="color: #66cc66;">&lt;</span>esri :ArcGISTiledMapServiceLayer
            <span style="color: #0066CC;">visible</span>=<span style="color: #ff0000;">&quot;{bb.selectedIndex == 2}&quot;</span>
            <span style="color: #0066CC;">show</span>=<span style="color: #ff0000;">&quot;layerShowHandler(event)&quot;</span>
            <span style="color: #0066CC;">url</span>=<span style="color: #ff0000;">&quot;http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer&quot;</span> 
            creationComplete=<span style="color: #ff0000;">&quot;onBasemapCreationComplete()&quot;</span> <span style="color: #66cc66;">/&gt;</span>
&nbsp;
    <span style="color: #66cc66;">&lt;</span>mx :ToggleButtonBar id=<span style="color: #ff0000;">&quot;bb&quot;</span> horizontalGap=<span style="color: #ff0000;">&quot;2&quot;</span> selectedIndex=<span style="color: #ff0000;">&quot;0&quot;</span> themeColor=<span style="color: #ff0000;">&quot;0x00FF00&quot;</span> <span style="color: #0066CC;">right</span>=<span style="color: #ff0000;">&quot;5&quot;</span> top=<span style="color: #ff0000;">&quot;5&quot;</span><span style="color: #66cc66;">&gt;</span>
        <span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;&lt;</span>mx :dataProvider<span style="color: #66cc66;">&gt;</span>
            <span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;&lt;</span>mx :Array<span style="color: #66cc66;">&gt;</span>
                <span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;&lt;</span>mx :String<span style="color: #66cc66;">&gt;</span>Streets<span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;</span>
                <span style="color: #66cc66;">&lt;</span>mx :String<span style="color: #66cc66;">&gt;</span>Topo<span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;</span>
                <span style="color: #66cc66;">&lt;</span>mx :String<span style="color: #66cc66;">&gt;</span>Imagery<span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;</span></pre></td></tr></table></div>

<p>First, note the code block that references an external XML file (config.xml). It really doesn&#8217;t get any easier than this. What&#8217;s really cool about this XML file is that basically, all the web service configuration options from the ArcGIS Service are configured through here. You can traverse through the config.xml file by referencing the node you want in the XMLList or serviceList:XMLList.</p>
<blockquote><p>  var serviceName:String = serviceList[i].name;<br />
            		var serviceURL:String = serviceList[i].url;<br />
            		var serviceAlpha:int = serviceList[i].alpha;<br />
            		var serviceVisible:Boolean = serviceList[i].visible;<br />
            		var serviceLayers:ArrayCollection = new ArrayCollection(serviceList[i].layers.split(&#8220;,&#8221;));
</p></blockquote>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p365code18'); return false;">View Code</a> ACTIONSCRIPT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p36518"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
</pre></td><td class="code" id="p365code18"><pre class="actionscript" style="font-family:monospace;"><span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> initXML<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
        	<span style="color: #66cc66;">&#123;</span>
        		<span style="color: #000000; font-weight: bold;">var</span> configService:HTTPService = <span style="color: #000000; font-weight: bold;">new</span> HTTPService<span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
        		configService.<span style="color: #0066CC;">url</span> = <span style="color: #ff0000;">&quot;config.xml&quot;</span>;
        		configService.<span style="color: #006600;">resultFormat</span> = <span style="color: #ff0000;">&quot;e4x&quot;</span>;
        		configService.<span style="color: #006600;">addEventListener</span><span style="color: #66cc66;">&#40;</span>ResultEvent.<span style="color: #006600;">RESULT</span>, configResult<span style="color: #66cc66;">&#41;</span>;
        		configService.<span style="color: #006600;">addEventListener</span><span style="color: #66cc66;">&#40;</span>FaultEvent.<span style="color: #006600;">FAULT</span>, configFault<span style="color: #66cc66;">&#41;</span>;
        		configService.<span style="color: #0066CC;">send</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>;
        	<span style="color: #66cc66;">&#125;</span>
&nbsp;
            <span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> configResult<span style="color: #66cc66;">&#40;</span>event:ResultEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
            <span style="color: #66cc66;">&#123;</span>
            	<span style="color: #000000; font-weight: bold;">var</span> configXML:<span style="color: #0066CC;">XML</span> = event.<span style="color: #006600;">result</span> as <span style="color: #0066CC;">XML</span>;
            	<span style="color: #000000; font-weight: bold;">var</span> serviceList:XMLList = configXML..<span style="color: #006600;">service</span>;
            	<span style="color: #b1b100;">for</span> <span style="color: #66cc66;">&#40;</span><span style="color: #000000; font-weight: bold;">var</span> i:<span style="color: #0066CC;">int</span> = <span style="color: #cc66cc;">0</span>; i <span style="color: #66cc66;">&lt;</span> serviceList.<span style="color: #0066CC;">length</span><span style="color: #66cc66;">&#40;</span><span style="color: #66cc66;">&#41;</span>; i++<span style="color: #66cc66;">&#41;</span>
            	<span style="color: #66cc66;">&#123;</span>
             		<span style="color: #000000; font-weight: bold;">var</span> serviceName:<span style="color: #0066CC;">String</span> = serviceList<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span>.<span style="color: #0066CC;">name</span>;
            		<span style="color: #000000; font-weight: bold;">var</span> serviceURL:<span style="color: #0066CC;">String</span> = serviceList<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span>.<span style="color: #0066CC;">url</span>;
            		<span style="color: #000000; font-weight: bold;">var</span> serviceAlpha:<span style="color: #0066CC;">int</span> = serviceList<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">alpha</span>;
            		<span style="color: #000000; font-weight: bold;">var</span> serviceVisible:<span style="color: #0066CC;">Boolean</span> = serviceList<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span>.<span style="color: #0066CC;">visible</span>;
            		<span style="color: #000000; font-weight: bold;">var</span> serviceLayers:ArrayCollection = <span style="color: #000000; font-weight: bold;">new</span> ArrayCollection<span style="color: #66cc66;">&#40;</span>serviceList<span style="color: #66cc66;">&#91;</span>i<span style="color: #66cc66;">&#93;</span>.<span style="color: #006600;">layers</span>.<span style="color: #0066CC;">split</span><span style="color: #66cc66;">&#40;</span><span style="color: #ff0000;">&quot;,&quot;</span><span style="color: #66cc66;">&#41;</span><span style="color: #66cc66;">&#41;</span>;
&nbsp;
            		<span style="color: #000000; font-weight: bold;">var</span> tLayer:ArcGISDynamicMapServiceLayer = <span style="color: #000000; font-weight: bold;">new</span> ArcGISDynamicMapServiceLayer<span style="color: #66cc66;">&#40;</span>serviceURL<span style="color: #66cc66;">&#41;</span>; 
            		tLayer.<span style="color: #006600;">id</span> = serviceName;
            		tLayer.<span style="color: #0066CC;">visible</span> = serviceVisible;
            		tLayer.<span style="color: #006600;">alpha</span> = serviceAlpha;
            		tLayer.<span style="color: #006600;">visibleLayers</span> = serviceLayers;
            		myMap.<span style="color: #006600;">addLayer</span><span style="color: #66cc66;">&#40;</span>tLayer<span style="color: #66cc66;">&#41;</span>;	
            	<span style="color: #66cc66;">&#125;</span>          	
            <span style="color: #66cc66;">&#125;</span>
&nbsp;
            <span style="color: #0066CC;">private</span> <span style="color: #000000; font-weight: bold;">function</span> configFault<span style="color: #66cc66;">&#40;</span>event:FaultEvent<span style="color: #66cc66;">&#41;</span>:<span style="color: #0066CC;">void</span>
            <span style="color: #66cc66;">&#123;</span>
            	Alert.<span style="color: #0066CC;">show</span><span style="color: #66cc66;">&#40;</span>event.<span style="color: #006600;">fault</span>.<span style="color: #006600;">faultString</span><span style="color: #66cc66;">&#41;</span>;
            <span style="color: #66cc66;">&#125;</span></pre></td></tr></table></div>

<p>The XML is below: Note the configuration options that you would normally have to set in your compiled code. I just included the service name, url, alpha and visibility in this demonstration. There are many more options to choose from&#8230;</p>
</pre>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p365code19'); return false;">View Code</a> XML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p36519"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
</pre></td><td class="code" id="p365code19"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;">&lt; ?xml <span style="color: #000066;">version</span>=<span style="color: #ff0000;">&quot;1.0&quot;</span><span style="color: #000000; font-weight: bold;">?&gt;</span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;configuration<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;service<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	Service Name
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/name<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;url<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	http://yoururl.com/yourserver/rest/services/BaseMap/MapServer/
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/url<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;alpha<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	1.0
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/alpha<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;visible<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	true
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/visible<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;layers<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	0,1
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/layers<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/service<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/configuration<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></td></tr></table></div>

<p>The next thing to take a look at is the fact that there is an Event that grabs the Latitude and Longitude from your map when it's clicked on (MouseEvent.CLICK). Moreover, it passes them to an HTML Input text box in the host page through an ExternalInterface call. The corresponding javascript should resemble the following. Note the < %= this.latitude.ClientID %> and < %= this.longitude.ClientID %> as they are required if you are embedding this in a ASP.NET for C# application.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p365code20'); return false;">View Code</a> JAVASCRIPT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p36520"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
</pre></td><td class="code" id="p365code20"><pre class="javascript" style="font-family:monospace;">&lt;script language=&quot;JavaScript&quot; type=&quot;text/javascript&quot;&gt;
//call flex function changeExtent
function mapextentchange(value)
{
	if(value != ''){
		getFlexApp('FlexMaps').changeExtent(value);
	}	
}
&nbsp;
//called from flex
function displayExtent(latitude,longitude)
{
	document.getElementById(&quot;&lt; %= this.latitude.ClientID %&gt;&quot;).value = latitude;
	document.getElementById(&quot;&lt; %= this.longitude.ClientID %&gt;&quot;).value = longitude;
}
&lt;/script&gt;</pre></td></tr></table></div>

<p>Finally, I snagged an example off of the ESRI Flex Community page that allowed me to toggle between Streetmap, Topographic Maps and Imagery data. As the selected Index changes, the base map changes...</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p365code21'); return false;">View Code</a> ACTIONSCRIPT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p36521"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
</pre></td><td class="code" id="p365code21"><pre class="actionscript" style="font-family:monospace;">        <span style="color: #66cc66;">&lt;</span>esri :ArcGISTiledMapServiceLayer
            <span style="color: #0066CC;">visible</span>=<span style="color: #ff0000;">&quot;{bb.selectedIndex == 0}&quot;</span>
            <span style="color: #0066CC;">show</span>=<span style="color: #ff0000;">&quot;layerShowHandler(event)&quot;</span>
            <span style="color: #0066CC;">url</span>=<span style="color: #ff0000;">&quot;http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_StreetMap_World_2D/MapServer&quot;</span> 
            creationComplete=<span style="color: #ff0000;">&quot;onBasemapCreationComplete()&quot;</span> <span style="color: #66cc66;">/&gt;</span>
        <span style="color: #66cc66;">&lt;</span>esri :ArcGISTiledMapServiceLayer
            <span style="color: #0066CC;">visible</span>=<span style="color: #ff0000;">&quot;{bb.selectedIndex == 1}&quot;</span>
            <span style="color: #0066CC;">show</span>=<span style="color: #ff0000;">&quot;layerShowHandler(event)&quot;</span>
            <span style="color: #0066CC;">url</span>=<span style="color: #ff0000;">&quot;http://server.arcgisonline.com/ArcGIS/rest/services/NGS_Topo_US_2D/MapServer&quot;</span> 
            creationComplete=<span style="color: #ff0000;">&quot;onBasemapCreationComplete()&quot;</span><span style="color: #66cc66;">/&gt;</span>
        <span style="color: #66cc66;">&lt;</span>esri :ArcGISTiledMapServiceLayer
            <span style="color: #0066CC;">visible</span>=<span style="color: #ff0000;">&quot;{bb.selectedIndex == 2}&quot;</span>
            <span style="color: #0066CC;">show</span>=<span style="color: #ff0000;">&quot;layerShowHandler(event)&quot;</span>
            <span style="color: #0066CC;">url</span>=<span style="color: #ff0000;">&quot;http://server.arcgisonline.com/ArcGIS/rest/services/ESRI_Imagery_World_2D/MapServer&quot;</span> 
            creationComplete=<span style="color: #ff0000;">&quot;onBasemapCreationComplete()&quot;</span> <span style="color: #66cc66;">/&gt;</span>
&nbsp;
    <span style="color: #66cc66;">&lt;</span>mx :ToggleButtonBar id=<span style="color: #ff0000;">&quot;bb&quot;</span> horizontalGap=<span style="color: #ff0000;">&quot;2&quot;</span> selectedIndex=<span style="color: #ff0000;">&quot;0&quot;</span> themeColor=<span style="color: #ff0000;">&quot;0x00FF00&quot;</span> <span style="color: #0066CC;">right</span>=<span style="color: #ff0000;">&quot;5&quot;</span> top=<span style="color: #ff0000;">&quot;5&quot;</span><span style="color: #66cc66;">&gt;</span>
        <span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;&lt;</span>mx :dataProvider<span style="color: #66cc66;">&gt;</span>
            <span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;&lt;</span>mx :Array<span style="color: #66cc66;">&gt;</span>
                <span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;&lt;</span>mx :String<span style="color: #66cc66;">&gt;</span>Streets<span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;</span>
                <span style="color: #66cc66;">&lt;</span>mx :String<span style="color: #66cc66;">&gt;</span>Topo<span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;</span>
                <span style="color: #66cc66;">&lt;</span>mx :String<span style="color: #66cc66;">&gt;</span>Imagery<span style="color: #66cc66;">&lt;/</span>mx<span style="color: #66cc66;">&gt;</span></pre></td></tr></table></div>

<p>So, I've had fun playing with this an I've actually been able to use the entire script in a project I was a part of. I hope that someone else gets as much use out of it as I did.</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785997, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785997, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/02/06/gmapez/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785993" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785997, 785993);">GmapEZ</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785997, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/05/28/jquery-tabs-view-state/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786048" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785997, 786048);">jQuery tabs view state</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2008/11/14/generic-host-process-for-win32-services-has-encountered-a-problem-and-needs-to-close/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-1080260" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785997, 1080260);">
        
        
        Generic Host Process for Win32 Services and internet stops
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=6&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-579504" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785997, 579504);">
        
        
        Jailbreaking and unlocking your iphone for T-mobile
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=236&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-509465" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785997, 509465);">
        
        
        Update from Google Map on my Problem
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/785997.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/Wqs7p75wkIY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/12/15/more-on-flex-and-config-xml/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2009/12/15/more-on-flex-and-config-xml/</feedburner:origLink></item>
		<item>
		<title>SpatiaLite 2.4.0 RC-0</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/Bw3BADA98MM/</link>
		<comments>http://www.adamestrada.com/2009/11/25/spatialite-2-4-0-rc-0/#comments</comments>
		<pubDate>Wed, 25 Nov 2009 14:38:35 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[Database]]></category>
		<category><![CDATA[SpatiaLite]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=361</guid>
		<description><![CDATA[SpatiaLite 2.4.0 ReleaseCandidate-0 [2009-11-23] work in progress <a href="http://www.adamestrada.com/2009/11/25/spatialite-2-4-0-rc-0/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>Alessando announced today that the latest version of <a href="http://www.gaia-gis.it/spatialite-2.4.0/index.html" target="_blank">SpatiaLite</a> is ready for download. This is a Release Candidate so he is really looking for feedback! Please download it and test if you can&#8230;Check out the impressive RoadMap for this Open Source project.</p>
<blockquote><table border="1" cellpadding="8">
<tr>
<td rowspan="6"><b>Road Map</b></td>
<td>
<table border="1" cellpadding="4" cellspacing="4" width="100%" >
<tr>
<td><b>libspatialite</b></td>
<td>
<ul>
<li>supporting <b>3D</b> geometries [<b>XY</b>, <b>XYZ</b>, <b>XYM</b>, <b>XYZM</b>]</li>
<li>implementing <b>compressed</b> geometries</li>
<li>supporting <b>ST_</b><i>alias-names</i> for <b>OGC</b> functions</li>
<li>supporting <b>SQLite v.3.6.20</b>, and consequently truely enforcing <b>Foreign Key</b> constraints</li>
<li>supporting <b>libproj 4.7.0</b> [lots of new SRIDs added]</li>
<li>added SQL functions supporting <b>GreatCircle</b> and <b>Geodesic</b> distance/lenght computation</li>
<li>added SQL functions for unit conversions [<b>meter</b> to <b>feet</b> and alike]</li>
<li>fixed several <b>SHP</b> related issues</li>
<li>supporting <b>3D</b> shapefiles</li>
</ul>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table border="1" cellpadding="4" cellspacing="4" width="100%" >
<tr>
<td><b>spatialite-tools</b></td>
<td>
<ul>
<li>added a new CLI tool <b>spatialite_osm</b> supporting direct acquisition of<br /> <br />
								<b>road networks</b> from <b>Open Street Map</b> XML/OSM datasets</li>
</ul>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table border="1" cellpadding="4" cellspacing="4" width="100%">
<tr>
<td rowspan="2"><b>librasterlite</b></td>
<td>
<ul>
<li>minor bug-fixing and code cleaning</li>
<li>now supporting the <b>MSVC</b> compiler as well</li>
</ul>
</td>
</tr>
<tr>
<td class="info"><b>Important notice</b>:<br />Alexender Simakov [the Wavelet codec developer]<br /> <br />
						is currently evaluating my proposal to re-release his <b>libepsilon</b> under the LPGL.<br /> <br />
						accordingly to this	<b>librasterlite</b> will be re-released under <b>LGPL</b> as soon as possible</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table border="1" cellpadding="4" cellspacing="4" width="100%">
<tr>
<td><b>spatialite-gui</b></td>
<td>
<ul>
<li>supporting an interactive <b>Query / View builder</b> tool</li>
<li>added the capability to <b>DROP</b> or <b>RENAME</b> columns</li>
</ul>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table border="1" cellpadding="4" cellspacing="4" width="100%" >
<tr>
<td><b>spatialite-gis</b></td>
<td>
<ul>
<li>supporting <b>View</b>-based layers [<i>read-only</i>]</li>
<li>supporting <b>VirtualSHP</b>-based layers [<i>read-only</i>]</li>
<li>supporting <b>map labeling</b> with optional <b>anti-overlap</b> optimization</li>
<li>supporting interactive <b>routing</b></li>
<li>supporting <b>map output</b> generation as:
<ul>
<li><b>PNG</b>, <b>JPEG</b>, <b>TIFF</b> images</li>
<li><b>PDF</b> documents</li>
<li><b>SVG</b> documents</li>
</ul>
</li>
</ul>
</td>
</tr>
</table>
</td>
</tr>
<tr>
<td>
<table border="1" cellpadding="4" cellspacing="4" width="100%" >
<tr>
<td>Quantum GIS <b>QGis</b></td>
<td>
<ul>
<li>updated data provider released on QGis <b>trunk</b> SVN</li>
</ul>
</td>
</tr>
</table>
</td>
</tr>
</table>
</blockquote>
<p>I particularly like the fact that it now supports routing using <a href="http://www.gaia-gis.it/spatialite-2.4.0/Using-Routing.pdf" target="_blank">OpenStreetMap</a>! Way cool, Sando!</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785998, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/07/16/geodc-kickoff/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786012" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785998, 786012);">GeoDC Kickoff…</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/04/04/iphone-test/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786050" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785998, 786050);">iPhone Test</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/25/selenium-for-web-site-testing/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786002" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785998, 786002);">Automated web site testing </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785998, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/15/adam-the-indian-ipad-killer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928459" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785998, 928459);">
        
        
        Adam – The Indian iPad killer
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=236&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-509465" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785998, 509465);">
        
        
        Update from Google Map on my Problem
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=217&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-445867" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785998, 445867);">
        
        
        Update to my Google Maps Error Report
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/785998.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/Bw3BADA98MM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/11/25/spatialite-2-4-0-rc-0/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2009/11/25/spatialite-2-4-0-rc-0/</feedburner:origLink></item>
		<item>
		<title>Geographic to UTM Converter</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/PuuyMPoYeYU/</link>
		<comments>http://www.adamestrada.com/2009/10/25/geographic-to-utm-converter/#comments</comments>
		<pubDate>Sun, 25 Oct 2009 19:16:55 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[GeoSpatial]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Converter]]></category>
		<category><![CDATA[geographic]]></category>
		<category><![CDATA[UTM]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=344</guid>
		<description><![CDATA[Geographic to UTM Javascript Coordinate Converter <a href="http://www.adamestrada.com/2009/10/25/geographic-to-utm-converter/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>A few years ago, I came across an algorithm (written in javascript) to convert <a href="http://en.wikipedia.org/wiki/Decimal_degrees" target="_blank">Decimal Degrees</a> to <a href="http://en.wikipedia.org/wiki/Universal_Transverse_Mercator_coordinate_system" target="_blank">Universal Transverse Mercator (UTM)</a> coordinates. At the time, I really needed this functionality because I had to perform some basic QA/QC tasks on data that was all referenced to UTM in North America. Of course, I didn&#8217;t know if all my other reference data in UTM was accurate to client specifications so I needed to convert them to Geographic in decimal degrees to display over a Google Map. See below:</p>
<p><iframe src ="http://www.adamestrada.com/wp-content/uploads/2009/10/UTM2GEO.html" width="100%" height="300"></p>
<p>Your browser does not support iframes.</p>
<p></iframe></p>
<p>I hope that someone else find this as useful as I did for spot checking large amounts of data&#8230;</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p344code22'); return false;">View Code</a> HTML</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p34422"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
320
321
322
323
324
325
326
327
328
329
330
331
332
333
334
335
336
337
338
339
340
341
342
343
344
345
346
347
348
349
350
351
352
353
354
355
356
357
358
359
360
361
362
363
364
365
366
367
368
369
370
371
372
373
374
375
376
377
378
379
380
381
382
383
384
385
386
387
388
389
390
391
392
393
394
395
396
397
398
399
400
401
402
403
404
405
406
407
408
409
410
411
412
413
414
415
416
417
418
419
420
421
422
423
424
425
426
427
428
429
430
431
432
433
434
435
436
437
438
439
440
441
442
443
444
445
446
447
448
449
450
451
452
453
454
455
456
457
458
459
460
461
462
463
464
465
466
467
468
469
470
471
472
473
474
475
476
477
478
479
480
481
482
483
484
485
486
487
488
489
490
491
492
493
494
495
496
497
498
499
500
501
502
503
504
505
506
507
508
509
510
511
512
513
514
515
516
517
518
519
520
521
522
523
524
525
526
527
528
529
530
531
532
533
534
535
536
537
538
539
540
541
542
543
544
545
546
547
548
549
550
551
552
553
554
555
556
557
558
559
560
561
562
563
564
565
566
567
568
569
570
571
572
573
574
575
576
577
578
579
580
581
582
583
584
585
586
587
588
589
590
591
592
593
594
595
596
597
598
599
600
601
602
603
604
605
606
607
608
609
610
611
612
613
614
615
616
617
618
619
620
621
622
623
624
625
626
627
628
629
630
631
632
633
634
635
636
637
638
639
640
641
642
643
644
645
646
647
648
649
650
651
652
653
654
655
656
657
658
659
660
661
662
663
664
665
666
667
668
669
670
671
672
673
674
675
676
677
678
679
680
681
682
683
684
685
686
687
688
689
690
691
692
693
694
695
696
697
698
699
700
701
702
703
704
705
706
707
708
709
710
711
712
713
714
715
716
717
718
719
720
721
722
723
724
725
726
727
728
729
730
731
732
733
734
735
736
737
738
739
740
741
742
743
744
745
746
747
748
749
750
751
752
</pre></td><td class="code" id="p344code22"><pre class="html" style="font-family:monospace;">&lt; !DOCTYPE HTML PUBLIC &quot;-//W3C//DTD HTML 4.0//EN&quot;&gt;
&lt;html&gt;
&lt;head&gt;
&lt;title&gt;Geographic/UTM Coordinate Converter&lt;/title&gt;
&lt;style TYPE=&quot;text/css&quot;&gt;
&lt;!--
TD { text-align: left; }
--&gt;
&lt;/style&gt;
&lt;script TYPE=&quot;text/javascript&quot;&gt;
&lt;!--
var pi = 3.14159265358979;
/* Ellipsoid model constants (actual values here are for WGS84) */
var sm_a = 6378137.0;
var sm_b = 6356752.314;
var sm_EccSquared = 6.69437999013e-03;
var UTMScaleFactor = 0.9996;
&nbsp;
/*
* DegToRad
*
* Converts degrees to radians.
*
*/
&nbsp;
function DegToRad (deg)
{
return (deg / 180.0 * pi)
}
/*
* RadToDeg
*
* Converts radians to degrees.
*
*/
&nbsp;
function RadToDeg (rad)
{
return (rad / pi * 180.0)
}
&nbsp;
&nbsp;
/*
* ArcLengthOfMeridian
*
* Computes the ellipsoidal distance from the equator to a point at a
* given latitude.
*
* Reference: Hoffmann-Wellenhof, B., Lichtenegger, H., and Collins, J.,
* GPS: Theory and Practice, 3rd ed. New York: Springer-Verlag Wien, 1994.
*
* Inputs:
* phi - Latitude of the point, in radians.
*
* Globals:
* sm_a - Ellipsoid model major axis.
* sm_b - Ellipsoid model minor axis.
*
* Returns:
* The ellipsoidal distance of the point from the equator, in meters.
*
*/
&nbsp;
function ArcLengthOfMeridian (phi)
{
var alpha, beta, gamma, delta, epsilon, n;
var result;
&nbsp;
/* Precalculate n */
n = (sm_a - sm_b) / (sm_a + sm_b);
&nbsp;
/* Precalculate alpha */
alpha = ((sm_a + sm_b) / 2.0)
* (1.0 + (Math.pow (n, 2.0) / 4.0) + (Math.pow (n, 4.0) / 64.0));
&nbsp;
/* Precalculate beta */
beta = (-3.0 * n / 2.0) + (9.0 * Math.pow (n, 3.0) / 16.0)
+ (-3.0 * Math.pow (n, 5.0) / 32.0);
&nbsp;
/* Precalculate gamma */
gamma = (15.0 * Math.pow (n, 2.0) / 16.0)
+ (-15.0 * Math.pow (n, 4.0) / 32.0);
&nbsp;
/* Precalculate delta */
delta = (-35.0 * Math.pow (n, 3.0) / 48.0)
+ (105.0 * Math.pow (n, 5.0) / 256.0);
&nbsp;
/* Precalculate epsilon */
epsilon = (315.0 * Math.pow (n, 4.0) / 512.0);
&nbsp;
/* Now calculate the sum of the series and return */
result = alpha
* (phi + (beta * Math.sin (2.0 * phi))
+ (gamma * Math.sin (4.0 * phi))
+ (delta * Math.sin (6.0 * phi))
+ (epsilon * Math.sin (8.0 * phi)));
&nbsp;
return result;
&nbsp;
}
&nbsp;
/*
* UTMCentralMeridian
*
* Determines the central meridian for the given UTM zone.
*
* Inputs:
* zone - An integer value designating the UTM zone, range [1,60].
*
* Returns:
* The central meridian for the given UTM zone, in radians, or zero
* if the UTM zone parameter is outside the range [1,60].
* Range of the central meridian is the radian equivalent of [-177,+177].
*
*/
&nbsp;
function UTMCentralMeridian (zone)
{
var cmeridian;
&nbsp;
cmeridian = DegToRad (-183.0 + (zone * 6.0));
&nbsp;
return cmeridian;
&nbsp;
}
&nbsp;
/*
* FootpointLatitude
*
* Computes the footpoint latitude for use in converting transverse
* Mercator coordinates to ellipsoidal coordinates.
*
* Reference: Hoffmann-Wellenhof, B., Lichtenegger, H., and Collins, J.,
* GPS: Theory and Practice, 3rd ed. New York: Springer-Verlag Wien, 1994.
*
* Inputs:
* y - The UTM northing coordinate, in meters.
*
* Returns:
* The footpoint latitude, in radians.
*
*/
&nbsp;
function FootpointLatitude (y)
{
var y_, alpha_, beta_, gamma_, delta_, epsilon_, n;
var result;
&nbsp;
/* Precalculate n (Eq. 10.18) */
n = (sm_a - sm_b) / (sm_a + sm_b);
&nbsp;
/* Precalculate alpha_ (Eq. 10.22) */
/* (Same as alpha in Eq. 10.17) */
alpha_ = ((sm_a + sm_b) / 2.0)
* (1 + (Math.pow (n, 2.0) / 4) + (Math.pow (n, 4.0) / 64));
&nbsp;
/* Precalculate y_ (Eq. 10.23) */
y_ = y / alpha_;
&nbsp;
/* Precalculate beta_ (Eq. 10.22) */
beta_ = (3.0 * n / 2.0) + (-27.0 * Math.pow (n, 3.0) / 32.0)
+ (269.0 * Math.pow (n, 5.0) / 512.0);
&nbsp;
/* Precalculate gamma_ (Eq. 10.22) */
gamma_ = (21.0 * Math.pow (n, 2.0) / 16.0)
+ (-55.0 * Math.pow (n, 4.0) / 32.0);
&nbsp;
/* Precalculate delta_ (Eq. 10.22) */
delta_ = (151.0 * Math.pow (n, 3.0) / 96.0)
+ (-417.0 * Math.pow (n, 5.0) / 128.0);
&nbsp;
/* Precalculate epsilon_ (Eq. 10.22) */
epsilon_ = (1097.0 * Math.pow (n, 4.0) / 512.0);
&nbsp;
/* Now calculate the sum of the series (Eq. 10.21) */
result = y_ + (beta_ * Math.sin (2.0 * y_))
+ (gamma_ * Math.sin (4.0 * y_))
+ (delta_ * Math.sin (6.0 * y_))
+ (epsilon_ * Math.sin (8.0 * y_));
&nbsp;
return result;
&nbsp;
}
&nbsp;
/*
* MapLatLonToXY
*
* Converts a latitude/longitude pair to x and y coordinates in the
* Transverse Mercator projection. Note that Transverse Mercator is not
* the same as UTM; a scale factor is required to convert between them.
*
* Reference: Hoffmann-Wellenhof, B., Lichtenegger, H., and Collins, J.,
* GPS: Theory and Practice, 3rd ed. New York: Springer-Verlag Wien, 1994.
*
* Inputs:
* phi - Latitude of the point, in radians.
* lambda - Longitude of the point, in radians.
* lambda0 - Longitude of the central meridian to be used, in radians.
*
* Outputs:
* xy - A 2-element array containing the x and y coordinates
* of the computed point.
*
* Returns:
* The function does not return a value.
*
*/
&nbsp;
function MapLatLonToXY (phi, lambda, lambda0, xy)
{
var N, nu2, ep2, t, t2, l;
var l3coef, l4coef, l5coef, l6coef, l7coef, l8coef;
var tmp;
&nbsp;
/* Precalculate ep2 */
ep2 = (Math.pow (sm_a, 2.0) - Math.pow (sm_b, 2.0)) / Math.pow (sm_b, 2.0);
&nbsp;
/* Precalculate nu2 */
nu2 = ep2 * Math.pow (Math.cos (phi), 2.0);
&nbsp;
/* Precalculate N */
N = Math.pow (sm_a, 2.0) / (sm_b * Math.sqrt (1 + nu2));
&nbsp;
/* Precalculate t */
t = Math.tan (phi);
t2 = t * t;
tmp = (t2 * t2 * t2) - Math.pow (t, 6.0);
&nbsp;
/* Precalculate l */
l = lambda - lambda0;
&nbsp;
/* Precalculate coefficients for l**n in the equations below
so a normal human being can read the expressions for easting
and northing
-- l**1 and l**2 have coefficients of 1.0 */
l3coef = 1.0 - t2 + nu2;
l4coef = 5.0 - t2 + 9 * nu2 + 4.0 * (nu2 * nu2);
&nbsp;
l5coef = 5.0 - 18.0 * t2 + (t2 * t2) + 14.0 * nu2
- 58.0 * t2 * nu2;
&nbsp;
l6coef = 61.0 - 58.0 * t2 + (t2 * t2) + 270.0 * nu2
- 330.0 * t2 * nu2;
&nbsp;
l7coef = 61.0 - 479.0 * t2 + 179.0 * (t2 * t2) - (t2 * t2 * t2);
&nbsp;
l8coef = 1385.0 - 3111.0 * t2 + 543.0 * (t2 * t2) - (t2 * t2 * t2);
&nbsp;
/* Calculate easting (x) */
xy[0] = N * Math.cos (phi) * l
+ (N / 6.0 * Math.pow (Math.cos (phi), 3.0) * l3coef * Math.pow (l, 3.0))
+ (N / 120.0 * Math.pow (Math.cos (phi), 5.0) * l5coef * Math.pow (l, 5.0))
+ (N / 5040.0 * Math.pow (Math.cos (phi), 7.0) * l7coef * Math.pow (l, 7.0));
&nbsp;
/* Calculate northing (y) */
xy[1] = ArcLengthOfMeridian (phi)
+ (t / 2.0 * N * Math.pow (Math.cos (phi), 2.0) * Math.pow (l, 2.0))
+ (t / 24.0 * N * Math.pow (Math.cos (phi), 4.0) * l4coef * Math.pow (l, 4.0))
+ (t / 720.0 * N * Math.pow (Math.cos (phi), 6.0) * l6coef * Math.pow (l, 6.0))
+ (t / 40320.0 * N * Math.pow (Math.cos (phi), 8.0) * l8coef * Math.pow (l, 8.0));
&nbsp;
return;
&nbsp;
}
&nbsp;
/*
* MapXYToLatLon
*
* Converts x and y coordinates in the Transverse Mercator projection to
* a latitude/longitude pair. Note that Transverse Mercator is not
* the same as UTM; a scale factor is required to convert between them.
*
* Reference: Hoffmann-Wellenhof, B., Lichtenegger, H., and Collins, J.,
* GPS: Theory and Practice, 3rd ed. New York: Springer-Verlag Wien, 1994.
*
* Inputs:
* x - The easting of the point, in meters.
* y - The northing of the point, in meters.
* lambda0 - Longitude of the central meridian to be used, in radians.
*
* Outputs:
* philambda - A 2-element containing the latitude and longitude
* in radians.
*
* Returns:
* The function does not return a value.
*
* Remarks:
* The local variables Nf, nuf2, tf, and tf2 serve the same purpose as
* N, nu2, t, and t2 in MapLatLonToXY, but they are computed with respect
* to the footpoint latitude phif.
*
* x1frac, x2frac, x2poly, x3poly, etc. are to enhance readability and
* to optimize computations.
*
*/
function MapXYToLatLon (x, y, lambda0, philambda)
{
var phif, Nf, Nfpow, nuf2, ep2, tf, tf2, tf4, cf;
var x1frac, x2frac, x3frac, x4frac, x5frac, x6frac, x7frac, x8frac;
var x2poly, x3poly, x4poly, x5poly, x6poly, x7poly, x8poly;
&nbsp;
/* Get the value of phif, the footpoint latitude. */
phif = FootpointLatitude (y);
&nbsp;
/* Precalculate ep2 */
ep2 = (Math.pow (sm_a, 2.0) - Math.pow (sm_b, 2.0))
/ Math.pow (sm_b, 2.0);
&nbsp;
/* Precalculate cos (phif) */
cf = Math.cos (phif);
&nbsp;
/* Precalculate nuf2 */
nuf2 = ep2 * Math.pow (cf, 2.0);
&nbsp;
/* Precalculate Nf and initialize Nfpow */
Nf = Math.pow (sm_a, 2.0) / (sm_b * Math.sqrt (1 + nuf2));
Nfpow = Nf;
&nbsp;
/* Precalculate tf */
tf = Math.tan (phif);
tf2 = tf * tf;
tf4 = tf2 * tf2;
&nbsp;
/* Precalculate fractional coefficients for x**n in the equations
below to simplify the expressions for latitude and longitude. */
x1frac = 1.0 / (Nfpow * cf);
Nfpow *= Nf; /* now equals Nf**2) */
&nbsp;
x2frac = tf / (2.0 * Nfpow);
Nfpow *= Nf; /* now equals Nf**3) */
&nbsp;
x3frac = 1.0 / (6.0 * Nfpow * cf);
Nfpow *= Nf; /* now equals Nf**4) */
&nbsp;
x4frac = tf / (24.0 * Nfpow);
Nfpow *= Nf; /* now equals Nf**5) */
&nbsp;
x5frac = 1.0 / (120.0 * Nfpow * cf);
Nfpow *= Nf; /* now equals Nf**6) */
&nbsp;
x6frac = tf / (720.0 * Nfpow);
Nfpow *= Nf; /* now equals Nf**7) */
&nbsp;
x7frac = 1.0 / (5040.0 * Nfpow * cf);
Nfpow *= Nf; /* now equals Nf**8) */
&nbsp;
x8frac = tf / (40320.0 * Nfpow);
&nbsp;
/* Precalculate polynomial coefficients for x**n.
-- x**1 does not have a polynomial coefficient. */
&nbsp;
x2poly = -1.0 - nuf2;
&nbsp;
x3poly = -1.0 - 2 * tf2 - nuf2;
&nbsp;
x4poly = 5.0 + 3.0 * tf2 + 6.0 * nuf2 - 6.0 * tf2 * nuf2
- 3.0 * (nuf2 *nuf2) - 9.0 * tf2 * (nuf2 * nuf2);
&nbsp;
x5poly = 5.0 + 28.0 * tf2 + 24.0 * tf4 + 6.0 * nuf2 + 8.0 * tf2 * nuf2;
&nbsp;
x6poly = -61.0 - 90.0 * tf2 - 45.0 * tf4 - 107.0 * nuf2
+ 162.0 * tf2 * nuf2;
&nbsp;
x7poly = -61.0 - 662.0 * tf2 - 1320.0 * tf4 - 720.0 * (tf4 * tf2);
&nbsp;
x8poly = 1385.0 + 3633.0 * tf2 + 4095.0 * tf4 + 1575 * (tf4 * tf2);
&nbsp;
/* Calculate latitude */
philambda[0] = phif + x2frac * x2poly * (x * x)
+ x4frac * x4poly * Math.pow (x, 4.0)
+ x6frac * x6poly * Math.pow (x, 6.0)
+ x8frac * x8poly * Math.pow (x, 8.0);
&nbsp;
/* Calculate longitude */
philambda[1] = lambda0 + x1frac * x
+ x3frac * x3poly * Math.pow (x, 3.0)
+ x5frac * x5poly * Math.pow (x, 5.0)
+ x7frac * x7poly * Math.pow (x, 7.0);
&nbsp;
return;
}
&nbsp;
/*
* LatLonToUTMXY
*
* Converts a latitude/longitude pair to x and y coordinates in the
* Universal Transverse Mercator projection.
*
* Inputs:
* lat - Latitude of the point, in radians.
* lon - Longitude of the point, in radians.
* zone - UTM zone to be used for calculating values for x and y.
* If zone is less than 1 or greater than 60, the routine
* will determine the appropriate zone from the value of lon.
*
* Outputs:
* xy - A 2-element array where the UTM x and y values will be stored.
*
* Returns:
* The UTM zone used for calculating the values of x and y.
*
*/
&nbsp;
function LatLonToUTMXY (lat, lon, zone, xy)
{
MapLatLonToXY (lat, lon, UTMCentralMeridian (zone), xy);
&nbsp;
/* Adjust easting and northing for UTM system. */
xy[0] = xy[0] * UTMScaleFactor + 500000.0;
xy[1] = xy[1] * UTMScaleFactor;
&nbsp;
if (xy[1] &lt; 0.0)
xy[1] = xy[1] + 10000000.0;
&nbsp;
return zone;
&nbsp;
}
&nbsp;
/*
* UTMXYToLatLon
*
* Converts x and y coordinates in the Universal Transverse Mercator
* projection to a latitude/longitude pair.
*
* Inputs:
* x - The easting of the point, in meters.
* y - The northing of the point, in meters.
* zone - The UTM zone in which the point lies.
* southhemi - True if the point is in the southern hemisphere;
* false otherwise.
*
* Outputs:
* latlon - A 2-element array containing the latitude and
* longitude of the point, in radians.
*
* Returns:
* The function does not return a value.
*
*/
&nbsp;
function UTMXYToLatLon (x, y, zone, southhemi, latlon)
{
var cmeridian;
x -= 500000.0;
x /= UTMScaleFactor;
&nbsp;
/* If in southern hemisphere, adjust y accordingly. */
if (southhemi)
y -= 10000000.0;
y /= UTMScaleFactor;
&nbsp;
cmeridian = UTMCentralMeridian (zone);
MapXYToLatLon (x, y, cmeridian, latlon);
&nbsp;
return;
&nbsp;
}
&nbsp;
/*
* btnToUTM_onclick
*
* Called when the btnToUTM button is clicked.
*
*/
&nbsp;
function btnToUTM_onclick ()
{
var xy = new Array(2);
&nbsp;
if (isNaN (parseFloat (document.frmConverter.txtLongitude.value))) {
alert (&quot;Please enter a valid longitude in the lon field.&quot;);
&nbsp;
return false;
&nbsp;
}
&nbsp;
lon = parseFloat (document.frmConverter.txtLongitude.value);
&nbsp;
if ((lon &lt; -180.0) || (180.0 &lt;= lon)) {
&nbsp;
alert (&quot;The longitude you entered is out of range. &quot; +
&quot;Please enter a number in the range [-180, 180).&quot;);
&nbsp;
return false;
&nbsp;
}
&nbsp;
if (isNaN (parseFloat (document.frmConverter.txtLatitude.value))) {
&nbsp;
alert (&quot;Please enter a valid latitude in the lat field.&quot;);
&nbsp;
return false;
&nbsp;
}
&nbsp;
lat = parseFloat (document.frmConverter.txtLatitude.value);
&nbsp;
&nbsp;
if ((lat &lt; -90.0) || (90.0 &lt; lat)) {
	alert (&quot;The latitude you entered is out of range. &quot; +
&nbsp;
	&quot;Please enter a number in the range [-90, 90].&quot;);
&nbsp;
return false;
&nbsp;
}
&nbsp;
&nbsp;
// Compute the UTM zone.
zone = Math.floor ((lon + 180.0) / 6) + 1;
zone = LatLonToUTMXY (DegToRad (lat), DegToRad (lon), zone, xy);
&nbsp;
/* Set the output controls. */
document.frmConverter.txtX.value = xy[0];
document.frmConverter.txtY.value = xy[1];
document.frmConverter.txtZone.value = zone;
if (lat &lt; 0)
// Set the S button.
document.frmConverter.rbtnHemisphere[1].checked = true;
else
// Set the N button.
document.frmConverter.rbtnHemisphere[0].checked = true;
&nbsp;
return true;
&nbsp;
}
&nbsp;
/*
* btnToGeographic_onclick
*
* Called when the btnToGeographic button is clicked.
*
*/
&nbsp;
function btnToGeographic_onclick ()
{
latlon = new Array(2);
var x, y, zone, southhemi;
&nbsp;
if (isNaN (parseFloat (document.frmConverter.txtX.value))) {
	alert (&quot;Please enter a valid easting in the x field.&quot;);
&nbsp;
return false;
&nbsp;
}
&nbsp;
x = parseFloat (document.frmConverter.txtX.value);
if (isNaN (parseFloat (document.frmConverter.txtY.value))) {
	alert (&quot;Please enter a valid northing in the y field.&quot;);
&nbsp;
return false;
&nbsp;
}
&nbsp;
y = parseFloat (document.frmConverter.txtY.value);
if (isNaN (parseInt (document.frmConverter.txtZone.value))) {
	alert (&quot;Please enter a valid UTM zone in the zone field.&quot;);
&nbsp;
return false;
&nbsp;
}
zone = parseFloat (document.frmConverter.txtZone.value);
if ((zone &lt; 1) || (60 &lt; zone)) {
	alert (&quot;The UTM zone you entered is out of range. &quot; +
	&quot;Please enter a number in the range [1, 60].&quot;);
&nbsp;
return false;
&nbsp;
}
if (document.frmConverter.rbtnHemisphere[1].checked == true)
	southhemi = true;
else
	southhemi = false;
	UTMXYToLatLon (x, y, zone, southhemi, latlon);
	document.frmConverter.txtLongitude.value = RadToDeg (latlon[1]);
	document.frmConverter.txtLatitude.value = RadToDeg (latlon[0]);
&nbsp;
return true;
&nbsp;
}
&nbsp;
/*
* btnToGoogle_onclick
*
* Called when the btnToGooglebutton is clicked.
*
*/
&nbsp;
function btnToGoogle_onclick ()
{
latlon = new Array(2);
var x, y, zone, southhemi;
if (isNaN (parseFloat (document.frmConverter.txtX.value))) {
	alert (&quot;Please enter a valid easting in the x field.&quot;);
&nbsp;
return false;
&nbsp;
}
x = parseFloat (document.frmConverter.txtX.value);
if (isNaN (parseFloat (document.frmConverter.txtY.value))) {
	alert (&quot;Please enter a valid northing in the y field.&quot;);
&nbsp;
return false;
&nbsp;
}
y = parseFloat (document.frmConverter.txtY.value);
if (isNaN (parseInt (document.frmConverter.txtZone.value))) {
	alert (&quot;Please enter a valid UTM zone in the zone field.&quot;);
&nbsp;
return false;
&nbsp;
}
zone = parseFloat (document.frmConverter.txtZone.value);
if ((zone &lt; 1) || (60 &lt; zone)) {
	alert (&quot;The UTM zone you entered is out of range. &quot; +
	&quot;Please enter a number in the range [1, 60].&quot;);
&nbsp;
return false;
&nbsp;
}
if (document.frmConverter.rbtnHemisphere[1].checked == true)
	southhemi = true;
else
	southhemi = false;
&nbsp;
UTMXYToLatLon (x, y, zone, southhemi, latlon);
document.frmConverter.txtLongitude.value = RadToDeg (latlon[1]);
document.frmConverter.txtLatitude.value = RadToDeg (latlon[0]);
&nbsp;
output = latlon[1], latlon[0]
&nbsp;
return output;
&nbsp;
}
// --&gt;
&lt;/script&gt;
&lt;script src=&quot;http://maps.google.com/maps?file=api&amp;amp;v=2&amp;amp;key=ABQIAAAAFJjf-mxSkkinNxdYBv6VpxQTBlyFpWfSu1-0eUDSrXLaoA7N0hQweHWdfaizu9bnb2sEHK_PkELp4g&quot; type=&quot;text/javascript&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot;&gt;
var map;
var geocoder;
function initialize() {
	map = new GMap2(document.getElementById(&quot;map_canvas&quot;));
	map.setCenter(new GLatLng(36, -95), 3);
	geocoder = new GClientGeocoder();
	map.addControl(new GSmallMapControl());
	var mapControl = new GMapTypeControl();
	map.addControl(mapControl);
	map.addControl(new GOverviewMapControl());
	var mapControl = new GMapTypeControl();
	map.addControl(mapControl);
}
// addAddressToMap() is called when the geocoder returns an
// answer. It adds a marker to the map with an open info window
// showing the nicely formatted version of the address and the country code.
function addAddressToMap(response) {
	map.clearOverlays();
	if (!response || response.Status.code != 200) {
		alert(&quot;Sorry, we were unable to geocode that address&quot;);
} 	else {
		place = response.Placemark[0];
		point = new GLatLng(place.Point.coordinates[1],
		place.Point.coordinates[0]);
		marker = new GMarker(point);
		map.addOverlay(marker);
	}
}
// showLocation() is called when you click on the Search button
// in the form. It geocodes the address entered into the form
// and adds a marker to the map at that location.
function showLocation() {
	var address = document.forms[0].q.value;
	geocoder.getLocations(address, addAddressToMap);
}
// findLocation() is used to enter the sample addresses into the form.
function findLocation(address) {
	document.forms[0].q.value = address;
	showLocation();
}
&lt;/script&gt;
&lt;/head&gt;
&lt;body onload=&quot;initialize()&quot; onunload=&quot;GUnload()&quot;&gt;
&lt;form NAME=&quot;frmConverter&quot; action=&quot;#&quot; onsubmit=&quot;showLocation(); return false;&quot;&gt;
&lt;table BORDER=0&gt;
&lt;!-- Header row --&gt;
&lt;tr&gt;
&lt;th COLSPAN=2 ALIGN=center&gt;Geographic&lt;br /&gt;(&lt;em&gt;decimal degrees&lt;/em&gt;)&lt;/th&gt;
&lt;th ALIGN=center&gt;To/From&lt;/th&gt;
&lt;th COLSPAN=2 ALIGN=center&gt;UTM&lt;/th&gt;
&lt;/tr&gt;
&lt;!-- The size attribute for the button input keeps the control
from looking too bad on browsers that don't support buttons
(even though the control is useless in this case).
The &amp;gt; code is used for browsers that will interpret the
first right angle bracket in the VALUE field as the tag
terminator. --&gt;
&lt;tr&gt;
&lt;td ALIGN=right&gt;lon&lt;/td&gt;
&lt;td&gt;&lt;input TYPE=text SIZE=20 NAME=&quot;txtLongitude&quot; VALUE=&quot;&quot; id=&quot;field_long&quot;/&gt;&lt;/td&gt;
&lt;td ALIGN=center&gt;&lt;input TYPE=button SIZE=4 NAME=btnToUTM VALUE=&quot;&amp;gt;&amp;gt;&quot; onclick=&quot;btnToUTM_onclick()&quot;/&gt; &lt;/td&gt;
&lt;td ALIGN=right&gt;x&lt;/td&gt;
&lt;td&gt;&lt;input TYPE=text SIZE=20 NAME=&quot;txtX&quot; VALUE=&quot;&quot;/&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;!-- Northing row (plus command button) --&gt;
&lt;tr&gt;
&lt;td ALIGN=right&gt;lat&lt;/td&gt;
&lt;td&gt;&lt;input TYPE=text SIZE=20 NAME=&quot;txtLatitude&quot; VALUE=&quot;&quot; id=&quot;field_lat&quot;/&gt;&lt;/td&gt;
&lt;td ALIGN=center&gt;&lt;input TYPE=button SIZE=4 NAME=btnToGeographic VALUE=&quot;&lt;&lt;&quot; onclick=&quot;btnToGeographic_onclick ()&quot;/&gt;&lt;/td&gt;
&lt;td ALIGN=right&gt;y&lt;/td&gt;
&lt;td&gt;&lt;input TYPE=text SIZE=20 NAME=&quot;txtY&quot; VALUE=&quot;&quot;/&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;!-- UTM zone row --&gt;
&lt;tr&gt;
&lt;td COLSPAN=3&gt;&lt;/td&gt;
&lt;td ALIGN=right&gt;zone&lt;/td&gt;
&lt;td&gt;&lt;input TYPE=text SIZE=4 NAME=&quot;txtZone&quot; VALUE=&quot;&quot;/&gt;&lt;/td&gt;
&lt;/tr&gt;
&lt;!-- Hemisphere row --&gt;
&lt;tr&gt;
&lt;td COLSPAN=3&gt;&lt;/td&gt;
&lt;td COLSPAN=2&gt;
hemisphere
&lt;!-- onclick properties circumvent a Netscape bug that reverses
the indices of the buttons --&gt;
&lt;input TYPE=radio NAME=&quot;rbtnHemisphere&quot; VALUE=&quot;N&quot; CHECKED onclick=&quot;0&quot;/&gt;N
&lt;input TYPE=radio NAME=&quot;rbtnHemisphere&quot; VALUE=&quot;S&quot; onclick=&quot;0&quot;/&gt;S
&lt;/td&gt;
&lt;/tr&gt;
&lt;!-- To Google --&gt;
&lt;tr&gt;
&lt;td COLSPAN=1&gt;&lt;input TYPE=hidden SIZE=20 VALUE=&quot;http://maps.google.com/maps?q=&quot; id=&quot;url&quot;/&gt; &lt;input TYPE=hidden SIZE=20 VALUE=&quot;, &quot; id=&quot;comma&quot;/&gt;&lt;/td&gt;
&lt;td COLSPAN=1 ALIGN=right&gt;Google Maps...&lt;/td&gt;
&lt;td ALIGN=left&gt;&lt;input TYPE=button SIZE=4 VALUE=&quot;Load&quot; onclick=&quot;document.getElementById('google').value=(document.getElementById('url').value) + (document.getElementById('field_lat').value) + (document.getElementById('comma').value) + (document.getElementById('field_long').value)&quot; /&gt;&lt;/td&gt;
&nbsp;
&lt;/tr&gt;
&lt;/table&gt;
&lt;!-- To Browser --&gt;
&lt;tr&gt;
&lt;td ALIGN=left&gt;&lt;input TYPE=text SIZE=80 NAME=output VALUE=&quot;&quot; id=&quot;google&quot; &lt;/TD/&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;div id=&quot;map_canvas&quot; style=&quot;width: 100%; height: 350px&quot;&gt;&lt;/div&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;Click in the text box then map it!
&lt;input type=&quot;text&quot; name=&quot;q&quot; value=&quot;&quot; class=&quot;address_input&quot; id=&quot;search&quot; size=&quot;40&quot; onclick=&quot;document.getElementById('search').value=(document.getElementById('field_lat').value) + (document.getElementById('comma').value) + (document.getElementById('field_long').value)&quot;/&gt;
&lt;input type=&quot;submit&quot; name=&quot;find&quot; value=&quot;Go...&quot; /&gt;
&lt;br /&gt;&lt;br /&gt;
&lt;/tr&gt;
&lt;/form&gt;
&nbsp;
&lt;/body&gt;
&lt;/html&gt;</pre></td></tr></table></div>

<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785999, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785999, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/12/15/more-on-flex-and-config-xml/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785997" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785999, 785997);">More on ESRI Flex and Config.xml</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785999, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/14/how-to-load-a-shapefile-in-to-oracle-spatial/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786017" target="_parent" onclick="return Arkayne.go(event, this, 'link', 785999, 786017);">How to Load a Shapefile in to Oracle Spatial</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/05/15-killer-hacks-for-wordpress-that-are-extremely-useful/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-930971" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785999, 930971);">
        
        
        15 Killer Hacks for WordPress that Are Extremely Useful
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=56&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-416706" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785999, 416706);">
        
        
        Converting Unprojected Bounding Box to the Miller Projection
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2009/12/28/really-cool-reasons-to-get-snow-leopard/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-1015737" target="_blank" onclick="return Arkayne.go(event, this, 'link', 785999, 1015737);">
        
        
        Really cool reasons to get Snow Leopard
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/785999.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/PuuyMPoYeYU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/10/25/geographic-to-utm-converter/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2009/10/25/geographic-to-utm-converter/</feedburner:origLink></item>
		<item>
		<title>GDAL: the definitive FREE GIS software</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/XZ-v30Df_tU/</link>
		<comments>http://www.adamestrada.com/2009/10/05/gdal-the-definitiv-free-gis-software/#comments</comments>
		<pubDate>Tue, 06 Oct 2009 01:07:57 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[GDAL]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=327</guid>
		<description><![CDATA[This field is growing and there are a lot of GIS software applications out there to choose from but I am learning that many of you really don&#8217;t understand how powerful GDAL/OGR and the FWTools suite really is. When duty [...]]]></description>
			<content:encoded><![CDATA[<p>This field is growing and there are a lot of GIS software applications out there to choose from but I am learning that many of you really don&#8217;t understand how powerful <a href="http://gdal.org/" target="_blank">GDAL/OGR</a> and the <a href="http://fwtools.maptools.org/" target="_blank">FWTools</a> suite really is. When duty calls and I need to do some heavy reprojecting, import/export, compression, etc&#8230;I usually always go to GDAL and FWTools to get the job done.</p>
<p><a rel="attachment wp-att-328" href="http://www.adamestrada.com/2009/10/05/gdal-the-definitiv-free-gis-software/200px-gdallogocolor-svg/"><img class="size-full wp-image-328  alignleft" src="http://www.adamestrada.com/wp-content/uploads/2009/10/200px-GDALLogoColor.svg.png" alt="GDAL" width="77" height="85" /></a></p>
<p>The following utility programs are distributed with GDAL and are among the most powerful command line GIS applications available today. I for one have beaten <a href="http://www.gdal.org/gdalwarp.html" target="_blank">gdalwarp</a> to death! I will include all that it can do in later posts. Until then, here is the list of what is included in the <a href="http://fwtools.maptools.org/" target="_blank">FWTools</a> installer for Windows and Linux.</p>
<blockquote>
<ul>
<li><a href="http://gdal.org/gdalinfo.html">gdalinfo</a> &#8211; report information about a file.</li>
<li> <a href="http://gdal.org/gdal_translate.html">gdal_translate</a> &#8211; Copy a raster file, with control of output format.</li>
<li> <a href="http://gdal.org/gdaladdo.html">gdaladdo</a> &#8211; Add overviews to a file.</li>
<li> <a href="http://gdal.org/gdalwarp.html">gdalwarp</a> &#8211; Warp an image into a new coordinate system.</li>
<li> <a href="http://gdal.org/gdaltindex.html">gdaltindex</a> &#8211; Build a MapServer raster tileindex.</li>
<li> <a href="http://gdal.org/gdalbuildvrt.html">gdalbuildvrt</a> &#8211; Build a VRT from a list of datasets.</li>
<li> <a href="http://gdal.org/gdal_contour.html">gdal_contour</a> &#8211; Contours from DEM.</li>
<li> <a href="http://gdal.org/gdaldem.html">gdaldem</a> &#8211; Tools to analyze and visualize DEMs.</li>
<li> <a href="http://gdal.org/rgb2pct.html">rgb2pct.py</a> &#8211; Convert a 24bit RGB image to 8bit paletted.</li>
<li> <a href="http://gdal.org/pct2rgb.html">pct2rgb.py</a> &#8211; Convert an 8bit paletted image to 24bit RGB.</li>
<li> <a href="http://gdal.org/gdal_merge.html">gdal_merge.py</a> &#8211; Build a quick mosaic from a set of images.</li>
<li> <a href="http://gdal.org/gdal2tiles.html">gdal2tiles.py</a> &#8211; Create a TMS tile structure, KML and simple web viewer.</li>
<li> <a href="http://gdal.org/gdal_rasterize.html">gdal_rasterize</a> &#8211; Rasterize vectors into raster file.</li>
<li> <a href="http://gdal.org/gdaltransform.html">gdaltransform</a> &#8211; Transform coordinates.</li>
<li> <a href="http://gdal.org/nearblack.html">nearblack</a> &#8211; Convert nearly black/white borders to exact value.</li>
<li> <a href="http://gdal.org/gdal_retile.html">gdal_retile.py</a> &#8211; Retiles a set of tiles and/or build tiled pyramid levels.</li>
<li> <a href="http://gdal.org/gdal_grid.html">gdal_grid</a> &#8211; Create raster from the scattered data.</li>
<li> <a href="http://gdal.org/gdal_proximity.html">gdal_proximity.py</a> &#8211; Compute a raster proximity map.</li>
<li> <a href="http://gdal.org/gdal_polygonize.html">gdal_polygonize.py</a> &#8211; Generate polygons from raster.</li>
<li> <a href="http://gdal.org/gdal_sieve.html">gdal_sieve.py</a> &#8211; Raster Sieve filter.</li>
<li> <a href="http://gdal.org/gdal_fillnodata.html">gdal_fillnodata.py</a> &#8211; Interpolate in nodata regions.</li>
<li> <a href="http://gdal.org/gdal-config.html">gdal-config</a> &#8211; Get options required to build software using GDAL.</li>
</ul>
</blockquote>
<p>Note that a lot of these apps are python scripts than can be run just about anywhere. I have done quite a bit of processing with FWTools apps, especially gdalwarp, gdal_translate and then gdal_contour. If you have a project that requires some serious processing power, check some of these out. You won&#8217;t be disappointed&#8230;<strong>Note: </strong>Most FOSS GIS applications available today use GDAL and OGR on the back end in some way, shape or form. See <a href="http://trac.osgeo.org/gdal/wiki/SoftwareUsingGdal" target="_blank">the list here</a>!</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786000, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786000, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786000, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786000, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786000, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=32&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-592420" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786000, 592420);">
        
        
        Top Free Useful Cydia applications for your IPhone
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=221&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-449791" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786000, 449791);">
        
        
        Layar for the iPhone
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/15/adam-the-indian-ipad-killer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928459" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786000, 928459);">
        
        
        Adam – The Indian iPad killer
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786000.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/XZ-v30Df_tU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/10/05/gdal-the-definitiv-free-gis-software/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2009/10/05/gdal-the-definitiv-free-gis-software/</feedburner:origLink></item>
		<item>
		<title>If you build it, they will come…</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/F_DcBy5edX8/</link>
		<comments>http://www.adamestrada.com/2009/10/02/if-you-build-it-they-will-come/#comments</comments>
		<pubDate>Fri, 02 Oct 2009 19:06:40 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[Data]]></category>
		<category><![CDATA[GeoSpatial]]></category>
		<category><![CDATA[Services]]></category>
		<category><![CDATA[Web Services]]></category>
		<category><![CDATA[WFS]]></category>
		<category><![CDATA[WMS]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=319</guid>
		<description><![CDATA[If you create a web service, no matter what, someone out there will use it! This is a fact and these days there is a web service for just about everything from the weather to where the most recent earthquakes [...]]]></description>
			<content:encoded><![CDATA[<p>If you create a web service, no matter what, someone out there will use it! This is a fact and these days there is a web service for just about everything from the <a href="http://nowcoast.noaa.gov/" target="_blank">weather</a> to where the <a href="http://earthquake.usgs.gov/eqcenter/catalogs/" target="_blank">most recent earthquakes</a> are. There are private instances and <a href="http://www.esri.com/software/arcgis/arcgisonline/map-services.html" target="_blank">publicly available</a> ones that are designed to sell more software licenses. There are also a <a href="http://www.geopole.org/wms" target="_blank">wide variety of free services</a> out there for you to choose from but all in all, my point is that with this whole Geoweb phenomenon I think the days of creating your own truly unique data sets will be coming to a slow halt. I foresee geo-minded folks utilizing what other people have created in their apps and why not? It saves time and money which is what really matters, huh?</p>
<p>The nature of our business and the data we use is so simple! We deal with pixels, points, lines and polygons that can be manipulated a million different ways through attribution and symbology. There are <a href="http://www.opengeospatial.org/" target="_blank">format-specific standards</a> to adhere to and models on how <a href="http://www.niem.gov/" target="_blank">store and disseminate</a> them so why not leverage what other people have created and published. I for one am constantly on the lookout for more data and software that will gobble it up. This is where applications (on the web) like <a href="http://www.geocommons.com" target="_blank">GeoCommons</a> and <a href="http://www.weogeo.com" target="_blank">WeoGeo</a> come in to play. They allow you to publish your data, do stuff with it and then open it up for anyone to reuse. WeoGeo&#8217;s model is pretty cool because they also allow you to monetize on other people using your data by selling it as the owner sees fit. GeoCommons has <a href="http://finder.geocommons.com/" target="_blank">Finder</a>! and <a href="http://maker.geocommons.com/" target="_blank">Maker</a>! which really help you upload or search for data and then create some cool maps but they have a model that is more like <a href="http://www.openstreetmap.org/" target="_blank">OpenStreetMap</a> or <a href="http://cloudmade.com/" target="_blank">Cloudmade</a>. My opinion on this is that free data is good data <img src='http://www.adamestrada.com/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  If you&#8217;re self sufficient enough to have your own IT infrastructure and want to publish your data that way, look at ArcGIS Server or the two competing FOSS options <a href="http://geoserver.org/display/GEOS/Welcome" target="_blank">GeoServer</a> and <a href="http://mapserver.org/" target="_blank">MapServer</a>.</p>
<div class="wp-caption alignright" style="width: 70px"><a href="http://www.qgis.org/"><img title="QGIS" src="http://www.qgis.org/templates/qgis/images/blue/logo.png" alt="QGIS" width="60" height="60" /></a><p class="wp-caption-text">QGIS</p></div>
<p>I am a Mac user and use <a href="http://www.qgis.org/" target="_blank">QGIS</a> pretty extensively to read <a href="http://www.opengeospatial.org/standards/wms" target="_blank">WMS</a> and <a href="http://www.opengeospatial.org/standards/wfs" target="_blank">WFS</a> services that I come across over the web. I encourage anyone out there to do the same thing as the latest and greatest build of QGIS is REALLY nice! So I guess my question is, where are the services that you use the most?</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786001, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786001, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786001, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786001, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/07/16/geodc-kickoff/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786012" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786001, 786012);">GeoDC Kickoff…</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=6&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-579504" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786001, 579504);">
        
        
        Jailbreaking and unlocking your iphone for T-mobile
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=213&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-443959" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786001, 443959);">
        
        
        Routing with the new Google Maps Data
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=221&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-449791" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786001, 449791);">
        
        
        Layar for the iPhone
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786001.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/F_DcBy5edX8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/10/02/if-you-build-it-they-will-come/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2009/10/02/if-you-build-it-they-will-come/</feedburner:origLink></item>
		<item>
		<title>Selenium for Web Site testing</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/FJVIyix2Iao/</link>
		<comments>http://www.adamestrada.com/2009/09/25/selenium-for-web-site-testing/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 15:39:02 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[Automated Testing]]></category>
		<category><![CDATA[Selenium]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=313</guid>
		<description><![CDATA[
Selenium is a FREE suite of tools to automate web app testing across many platforms. Click here to see a list of all the Selenium projects&#8230;I particularly like the Firefox plugin!
]]></description>
			<content:encoded><![CDATA[<p><a href="http://seleniumhq.org/" target="_blank"><img class="alignright" src="http://seleniumhq.org/images/big-logo.png" alt="Selenium Logo" width="200" height="181" /></a></p>
<p><strong>Selenium is a FREE suite of tools</strong> to automate web app testing across many platforms. <a href="http://seleniumhq.org/projects/" target="_blank">Click here</a> to see a list of all the Selenium projects&#8230;I particularly like the <a href="http://seleniumhq.org/projects/ide/" target="_blank">Firefox plugin</a>!</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/04/04/iphone-test/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786050" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786002, 786050);">iPhone Test</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786002, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/12/17/gis-for-the-have-nots/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785995" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786002, 785995);">GIS For the Have Nots </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/05/31/jquery-and-prototype-overview/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786043" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786002, 786043);">jQuery and Prototype Overview</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/07/16/geodc-kickoff/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786012" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786002, 786012);">GeoDC Kickoff…</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/15/adam-the-indian-ipad-killer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928459" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786002, 928459);">
        
        
        Adam – The Indian iPad killer
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=236&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-509465" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786002, 509465);">
        
        
        Update from Google Map on my Problem
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=217&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-445867" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786002, 445867);">
        
        
        Update to my Google Maps Error Report
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786002.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/FJVIyix2Iao" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/09/25/selenium-for-web-site-testing/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2009/09/25/selenium-for-web-site-testing/</feedburner:origLink></item>
		<item>
		<title>Customizing config.xml in the ESRI FlexViewer</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/5ytxvR1h8Bw/</link>
		<comments>http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/#comments</comments>
		<pubDate>Fri, 25 Sep 2009 03:47:43 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[ESRI]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[MXML]]></category>
		<category><![CDATA[Actionscript]]></category>
		<category><![CDATA[XML]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=306</guid>
		<description><![CDATA[Customizing config.xml in the ESRI FlexViewer <a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re relatively new to Flex (like me), you will have noticed that a lot of the functionality in this framework is geared towards WebServices and external XML calls. If you&#8217;re also a #geonerd and love <a href="http://www.adobe.com/products/flex/">Flex</a>, you&#8217;ve probably come across the FlexViewer example on <a href="http://resources.esri.com/arcgisserver/apis/flex/index.cfm?fa=codeGalleryDetails&amp;scriptID=15905">ESRI&#8217;s website</a>. This is an awesome and very powerful example of all that Flex can give you right out of the box. The challenge here is that you have to learn how to weed though all the different classes and other bologna in order to understand exactly what is going on.</p>
<p>My latest challenge was deploying an application that referenced several .NET web services that were GOING to change once delivered to the customer. So, it made no sense what so ever to hard code the URL&#8217;s for the web services in the application it self. I decided to add them to config.xml which is at the root of the web application. This file behaves much in the same way as the web.config file that is created on-the-fly in your .NET web application. This one, however, holds things elements like URLs, queries, logo assignments and like in this example, paths to web services.</p>
<p>Once you figure out what is going on, this is relatively simple to do so I hope that this example helps to put things in to perspective for you.</p>
<p>First things first&#8230;You have to first grab the XML file and because this is a web application, you are able to use <a href="http://livedocs.adobe.com/flex/3/langref/mx/rpc/http/HTTPService.html" target="_blank">HTTPService()</a> to call you file on the server. My biggest &#8220;idiot&#8221; moment was caused because this file is at the root of the application while most of the &#8220;config&#8221; files that ride along with their corresponding .swf&#8217;s are in the same directory. No matter!  See the code below that will show you how to connect to your config.xml file.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p306code23'); return false;">View Code</a> ACTIONSCRIPT3</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p30623"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
</pre></td><td class="code" id="p306code23"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #0033ff; font-weight: bold;">private</span> <span style="color: #339966; font-weight: bold;">function</span> doInit<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span>
<span style="color: #000000;">&#123;</span>
        <span style="color: #0033ff; font-weight: bold;">try</span> <span style="color: #000000;">&#123;</span>
	        <span style="color: #6699cc; font-weight: bold;">var</span> initService<span style="color: #000066; font-weight: bold;">:</span>HTTPService = <span style="color: #0033ff; font-weight: bold;">new</span> HTTPService<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
	        initService<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">url</span> = <span style="color: #990000;">&quot;config.xml&quot;</span><span style="color: #000066; font-weight: bold;">;</span>
		initService<span style="color: #000066; font-weight: bold;">.</span>resultFormat = <span style="color: #990000;">&quot;e4x&quot;</span><span style="color: #000066; font-weight: bold;">;</span>
		initService<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">addEventListener</span><span style="color: #000000;">&#40;</span>ResultEvent<span style="color: #000066; font-weight: bold;">.</span>RESULT<span style="color: #000066; font-weight: bold;">,</span> initResult<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		initService<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">send</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #000000;">&#125;</span>
		<span style="color: #0033ff; font-weight: bold;">catch</span><span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=error%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:error.html"><span style="color: #004993;">Error</span></a><span style="color: #000000;">&#41;</span>
		<span style="color: #000000;">&#123;</span>
			showMessage<span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">message</span><span style="color: #000066; font-weight: bold;">,</span> <span style="color: #0033ff; font-weight: bold;">false</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
		<span style="color: #000000;">&#125;</span>
<span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

<p>Note that this function has an event lister (addEventListener) that calls another function which in this case is called &#8220;initResult&#8221;. Also note that with all Actionscript, it&#8217;s pretty good practice to use try/catch statements in all of your functions. Actually, isn&#8217;t this true in any programming language?</p>
<p>Now, on to the next function! This is the function that actually does the work and populates an &#8220;Object&#8221; with the data your specify from your XML file. Please note that I added an extra root node to config.xml called &lt;ServiceURL&gt;. Under that we have &lt;service&gt; and under that we&#8217;ve got &lt;url&gt; and &lt;name&gt;. I am merely trying to retrieve a URL based on a service name so if we do a query for &lt;name&gt;, the URL for that name will be returned.  w00t! The function called &#8220;initResult&#8221; is as follows.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p306code24'); return false;">View Code</a> ACTIONSCRIPT3</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p30624"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
</pre></td><td class="code" id="p306code24"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #0033ff; font-weight: bold;">private</span> <span style="color: #339966; font-weight: bold;">function</span> initResult<span style="color: #000000;">&#40;</span>event<span style="color: #000066; font-weight: bold;">:</span>ResultEvent<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">:</span><span style="color: #0033ff; font-weight: bold;">void</span>
	<span style="color: #000000;">&#123;</span>
		<span style="color: #0033ff; font-weight: bold;">try</span>
		<span style="color: #000000;">&#123;</span>
			<span style="color: #6699cc; font-weight: bold;">var</span> i<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=int%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:int.html"><span style="color: #004993;">int</span></a><span style="color: #000066; font-weight: bold;">;</span>
			<span style="color: #6699cc; font-weight: bold;">var</span> serviceArray<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=array%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:array.html"><span style="color: #004993;">Array</span></a> = <span style="color: #000000;">&#91;</span><span style="color: #000000;">&#93;</span><span style="color: #000066; font-weight: bold;">;</span>
			<span style="color: #6699cc; font-weight: bold;">var</span> serviceXML<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=xml%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:xml.html"><span style="color: #004993;">XML</span></a> = event<span style="color: #000066; font-weight: bold;">.</span>result <span style="color: #0033ff; font-weight: bold;">as</span> <a href="http://www.google.com/search?q=xml%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:xml.html"><span style="color: #004993;">XML</span></a><span style="color: #000066; font-weight: bold;">;</span>
			<span style="color: #6699cc; font-weight: bold;">var</span> serviceList<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=xmllist%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:xmllist.html"><span style="color: #004993;">XMLList</span></a> = serviceXML<span style="color: #000066; font-weight: bold;">..</span>service<span style="color: #000066; font-weight: bold;">;</span>
&nbsp;
			<span style="color: #0033ff; font-weight: bold;">for</span> <span style="color: #000000;">&#40;</span>i = <span style="color: #000000; font-weight:bold;">0</span><span style="color: #000066; font-weight: bold;">;</span> i <span style="color: #000066; font-weight: bold;">&amp;</span>lt<span style="color: #000066; font-weight: bold;">;</span> serviceList<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">length</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span> i<span style="color: #000066; font-weight: bold;">++</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
				<span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=string%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:string.html"><span style="color: #004993;">String</span></a> = serviceList<span style="color: #000000;">&#91;</span>i<span style="color: #000000;">&#93;</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">;</span>
				<span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">url</span><span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=string%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:string.html"><span style="color: #004993;">String</span></a> = serviceList<span style="color: #000000;">&#91;</span>i<span style="color: #000000;">&#93;</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">url</span><span style="color: #000066; font-weight: bold;">;</span>
				<span style="color: #6699cc; font-weight: bold;">var</span> serviceURL<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=object%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:object.html"><span style="color: #004993;">Object</span></a> =
				<span style="color: #000000;">&#123;</span>
					<span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">:</span> <span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">,</span>
					<span style="color: #004993;">url</span><span style="color: #000066; font-weight: bold;">:</span> <span style="color: #004993;">url</span>
				<span style="color: #000000;">&#125;</span>
					<span style="color: #004993;">trace</span><span style="color: #000000;">&#40;</span><span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">,</span> <span style="color: #004993;">url</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
			<span style="color: #000000;">&#125;</span>
		serviceArray<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">push</span><span style="color: #000000;">&#40;</span>serviceURL<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #000000;">&#125;</span>
			<span style="color: #0033ff; font-weight: bold;">catch</span> <span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=error%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:error.html"><span style="color: #004993;">Error</span></a><span style="color: #000000;">&#41;</span>
			<span style="color: #000000;">&#123;</span>
    			    showMessage<span style="color: #000000;">&#40;</span>e<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">message</span><span style="color: #000066; font-weight: bold;">,</span> <span style="color: #0033ff; font-weight: bold;">false</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
			<span style="color: #000000;">&#125;</span>
	<span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

<p>You&#8217;ll first notice that I created an Array.</p>
<blockquote><p>var serviceArray:Array = [];</p></blockquote>
<p>I then grabbed the resulting event as XML from the event listener.</p>
<blockquote><p>var serviceXML:XML = event.result as XML;</p></blockquote>
<p>. From there I searched down through the XML file for the root node I was looking for which in this case was called &#8220;service&#8221; in the XML file:</p>
<blockquote><p>var serviceList:XMLList = serviceXML..service;</p></blockquote>
<p>. Finally, I looped through the file to find all the data in the  tags using a *for* loop.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p306code25'); return false;">View Code</a> ACTIONSCRIPT3</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p30625"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
</pre></td><td class="code" id="p306code25"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #0033ff; font-weight: bold;">for</span> <span style="color: #000000;">&#40;</span>i = <span style="color: #000000; font-weight:bold;">0</span><span style="color: #000066; font-weight: bold;">;</span> i <span style="color: #000066; font-weight: bold;">&amp;</span>lt<span style="color: #000066; font-weight: bold;">;</span> serviceList<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">length</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span> i<span style="color: #000066; font-weight: bold;">++</span><span style="color: #000000;">&#41;</span> <span style="color: #000000;">&#123;</span>
	<span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=string%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:string.html"><span style="color: #004993;">String</span></a> = serviceList<span style="color: #000000;">&#91;</span>i<span style="color: #000000;">&#93;</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">url</span><span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=string%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:string.html"><span style="color: #004993;">String</span></a> = serviceList<span style="color: #000000;">&#91;</span>i<span style="color: #000000;">&#93;</span><span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">url</span><span style="color: #000066; font-weight: bold;">;</span>
	<span style="color: #6699cc; font-weight: bold;">var</span> serviceURL<span style="color: #000066; font-weight: bold;">:</span><a href="http://www.google.com/search?q=object%20inurl:http://livedocs.adobe.com/flex/201/langref/%20inurl:object.html"><span style="color: #004993;">Object</span></a> =
		<span style="color: #000000;">&#123;</span>
			<span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">:</span> <span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">,</span>
			<span style="color: #004993;">url</span><span style="color: #000066; font-weight: bold;">:</span> <span style="color: #004993;">url</span>
		<span style="color: #000000;">&#125;</span>
	<span style="color: #004993;">trace</span><span style="color: #000000;">&#40;</span><span style="color: #004993;">name</span><span style="color: #000066; font-weight: bold;">,</span> <span style="color: #004993;">url</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span>
<span style="color: #000000;">&#125;</span>
serviceArray<span style="color: #000066; font-weight: bold;">.</span><span style="color: #004993;">push</span><span style="color: #000000;">&#40;</span>serviceURL<span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span></pre></td></tr></table></div>

<p>There are a couple things to notice here.<br />
1. You can loop through anything in an XML file&#8230;you&#8217;ve just got to know what you&#8217;re looking for.<br />
2. It&#8217;s absolutely mandatory that you create an :Object and populate it using the .push command.</p>
<blockquote><p>serviceArray.push(serviceURL);</p></blockquote>
<p>What you&#8217;ve got now is an Object that has all of the information that you can readily reuse when the page/site loads.</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786003, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786003, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/12/15/more-on-flex-and-config-xml/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785997" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786003, 785997);">More on ESRI Flex and Config.xml</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786003, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/14/how-to-load-a-shapefile-in-to-oracle-spatial/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786017" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786003, 786017);">How to Load a Shapefile in to Oracle Spatial</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/05/15-killer-hacks-for-wordpress-that-are-extremely-useful/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-930971" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786003, 930971);">
        
        
        15 Killer Hacks for WordPress that Are Extremely Useful
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=213&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-443959" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786003, 443959);">
        
        
        Routing with the new Google Maps Data
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/15/adam-the-indian-ipad-killer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928459" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786003, 928459);">
        
        
        Adam – The Indian iPad killer
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786003.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/5ytxvR1h8Bw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/</feedburner:origLink></item>
		<item>
		<title>WordPress as a CMS</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/wPOQBHFbf_c/</link>
		<comments>http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/#comments</comments>
		<pubDate>Wed, 23 Sep 2009 01:42:34 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[GIS]]></category>
		<category><![CDATA[GeoCommons]]></category>
		<category><![CDATA[GIS For Everyone!]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=273</guid>
		<description><![CDATA[GeoCommons, Wordpress to CMS and embedded maps! <a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>We (my team and I) just finished a little prototype effort between <a href="http://www.zekiah.com/" target="_blank">Zekiah</a> and <a href="http://fortiusone.com/" target="_blank">FortiusOne</a> that required a private instance of <a href="http://www.geocommons.com/" target="_blank">GeoCommons</a> that meshed up nicely with a <a href="http://wordpress.org/" target="_blank">WordPress</a> UI. The deal with WordPress (if you don&#8217;t already know) is that it&#8217;s a pretty robust blogging platform which means that you can add your own content and syndicate it out as needed <strong><em>but </em></strong>the core software is pretty limited if you want to privatize the data you&#8217;re serving out.</p>
<p><strong>The Project:</strong></p>
<p><a href="http://maps.google.com/maps?oe=UTF-8&amp;q=Green+Mountain+Falls,+Colorado&amp;ie=UTF8&amp;hq=&amp;hnear=Green+Mountain+Falls,+CO&amp;gl=us&amp;ei=WnG5SsPxBoXO8QbA5uFi&amp;t=h&amp;z=13&amp;iwloc=A" target="_blank">Green Mountain Falls, Colorado</a> is a little municipality in the middle-of-nowhere Colorado but they do have a requirement to serve up their proprietary geospatial data to both the general public and then to those who really need it like their Fire and Police Departments.  I won&#8217;t go in to why the GMF data is private as certain <a href="http://highearthorbit.com/" target="_blank">geo-type people</a> go richter over the whole &#8220;my data is private&#8221; issue, but I will say that GMF does have their reasons. We begged and pleaded with the folks at FortiusOne to work with us on this endeavor because their core technology is absolutely what the doctor ordered. There are a lot of reasons why <a href="http://www.geocommons.com">GeoCommons</a> (GC) was the best solution so I will only elaborate on a few.</p>
<ol>
<li>GeoCommons is literally so easy <a href="http://www.youtube.com/watch?v=3F3qzfTCDG4" target="_blank">a cave man can do it</a>. With a private instance, we were able to upload our own data and show/hide it as needed in the final UI.</li>
<li>You can pick and choose from your own base maps so Google, Bing and <a href="http://www.openstreetmap.org/" target="_blank">OSM</a> are all options to use for your final compiled cartogram.</li>
<li>Cartography, cartography, cartography!!! You gotta give it to the F1 team&#8230;they&#8217;ve provided a robust desktop-like GIS symbolization and thematic mapping experience on the web and in this case all in a private instance of GC in <a href="http://aws.amazon.com/ec2/" target="_blank">the Cloud</a>.</li>
</ol>
<p><strong>The Problem:</strong></p>
<p>Green Mountain Falls has private data&#8230;These data are from their roads network and also in their unique way of representing parcels in the town. I&#8217;d have to refer to another source to fully explain this whole thing&#8230;Bottom line is that all of their geospatial data could not be 100% open to the rest of the world. Like I mentioned earlier, we stored it a private instance or GeoCommons and then applied some role-based authentication to the layers using the <a href="http://github.com/geocommons/api/">GeoCommons API</a> and a couple pieces of WordPress magic.</p>
<p>WordPress has literally thousands of <a href="http://wordpress.org/extend/plugins/" target="_blank">plugins</a> that you can pick and choose from to run and enhance your blog. We weren&#8217;t interested in <a href="http://en.wikipedia.org/wiki/Search_engine_optimization" target="_blank">SEO</a> or any of that other jazz that really helps your site get noticed! We were interested in safe-guarding the data. In WordPress, there are two plugins in particular that will allow you to do this!</p>
<blockquote><p><a href="http://wordpress.org/extend/plugins/capsman/" target="_blank">Capability Manager</a> &#8211;  The Capability Manager plugin provides a simple way to manage role capabilities. Using it, you will be able to change the capabilities of any role, add new roles, copy existing roles into new ones, and add new capabilities to existing roles. You can also delegate capabilities management to other users. In this case, some restrictions apply to this users, as them can only set/unset the capabilities they have. With the Backup/Restore tool, you can save your Roles and Capabilities before making changes and revert them if something goes wrong. You&#8217;ll find it on the Tools menu. At the current version, you cannot manage capabilities at user level (only can be managed for roles). This will be included in next versions.</p></blockquote>
<p>The Capabilities Manager gave us an easy way to create and assign new roles to GMF users. I encourage everyone to check this plugin out!</p>
<blockquote><p><a href="http://wordpress.org/extend/plugins/user-access-manager/" target="_blank">User Access Manager</a> &#8211; With the &#8220;User Access Manager&#8221;-plugin you can manage the access to your posts, pages and files. You only create a user group, put registered users to this and set up the rights for this group. From now on the post/page is only accessible and writable for the specified group. This plugin is useful if you need a member area or a private section at your blog or you want that other people can write at your blog but not everywhere.</p></blockquote>
<p>With UAM, we were able to show and hide WordPress pages so that only certain Users and User Groups could see them.</p>
<p><strong>How did you mashup your GeoCommons Maps?</strong></p>
<p>Simple! Just like Google, Bing and Yahoo, GeoCommons allows you to embed your map directly in to your own website! See the graphic below&#8230;Note: in the map you create, you can select the &#8220;Details&#8221; button in the top-right corner of the screen which will present you with the code to embed your map. Copy and paste and you&#8217;re set!</p>
<div id="attachment_274" class="wp-caption aligncenter" style="width: 310px"><a href="http://blog.gmf.geoiq.com"><img class="size-medium wp-image-274" title="geotagged flickr photos in asia and africa with crunchbase at GeoCommons Maker!-2" src="http://www.adamestrada.com/wp-content/uploads/2009/09/geotagged-flickr-photos-in-asia-and-africa-with-crunchbase-at-GeoCommons-Maker-2-300x142.jpg" alt="geotagged flickr photos in asia and africa with crunchbase at GeoCommons Maker!-2" width="300" height="142" /></a><p class="wp-caption-text">Embedding GeoCommons Maps!</p></div>
<p>Sample code to embed a GeoCommons map in to your own website is as follows&#8230;</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p273code26'); return false;">View Code</a> JAVASCRIPT</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p27326"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
</pre></td><td class="code" id="p273code26"><pre class="javascript" style="font-family:monospace;">&lt;style&gt;#maker_map_1809 {width: 100%; height: 100%;}&lt;/style&gt;
  &lt;script type=&quot;text/javascript&quot; charset=&quot;utf-8&quot; src=&quot;http://maker.geocommons.com/javascripts/embed.js&quot;&gt;&lt;/script&gt;
&lt;script type=&quot;text/javascript&quot; charset=&quot;utf-8&quot;&gt;
  Maker.maker_host='http://maker.geocommons.com';Maker.finder_host='http://finder.geocommons.com';Maker.core_host='http://core.geocommons.com';
  Maker.load_map(&quot;maker_map_1809&quot;, &quot;1809&quot;);
&lt;/script&gt;
&lt;div class=&quot;geocommons_map&quot; id=&quot;maker_map_1809&quot;&gt;&lt;/div&gt;&lt;br /&gt;
&lt;a class=&quot;geocommons_map_link&quot; id=&quot;maker_map_1809_link&quot; href=&quot;http://maker.geocommons.com/maps/1809&quot;&gt;View full map&lt;/a&gt;</pre></td></tr></table></div>

<p>I&#8217;d really like to thank <a href="http://www.maploser.com">Kate Chapman</a>, <a href="http://www.highearthorbit.com">Andrew Turner</a> and the folks on the Zekiah team (<a href="http://geobabble.wordpress.com">you know who you are</a>) for helping to put this proof of concept together! Wanna see the <a href="http://blog.gmf.geoiq.com">Green Mountain Falls site</a> in action? Geez&#8230;Click on the screen grab below to access it!<div id="attachment_283" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/dock-1-3/" rel="attachment wp-att-283"><img src="http://www.adamestrada.com/wp-content/uploads/2009/09/Dock-12-300x213.jpg" alt="Green Mountain Falls, Colorado" title="Dock-1" width="300" height="213" class="size-medium wp-image-283" /></a><p class="wp-caption-text">Green Mountain Falls, Colorado</p></div></p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786006, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786006, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786006, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786006, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/14/spatialite-and-smart-phones/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786019" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786006, 786019);">SpatiaLite and Smart Phones</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/05/15-killer-hacks-for-wordpress-that-are-extremely-useful/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-930971" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786006, 930971);">
        
        
        15 Killer Hacks for WordPress that Are Extremely Useful
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=111&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-413462" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786006, 413462);">
        
        
        Using a Columbus v900 as a tethered GPS with OSX
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2009/11/12/windows-7-tricks-and-secrets/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928380" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786006, 928380);">
        
        
        Windows 7 tricks and secrets
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786006.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/wPOQBHFbf_c" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/feed/</wfw:commentRss>
		<slash:comments>4</slash:comments>
	<georss:point>38.940363 -105.013385</georss:point><geo:lat>38.940363</geo:lat><geo:long>-105.013385</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/</feedburner:origLink></item>
		<item>
		<title>ESRI FlexViewer and Error: 1065</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/U-zhsfX8eaQ/</link>
		<comments>http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/#comments</comments>
		<pubDate>Tue, 08 Sep 2009 13:12:51 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[ESRI]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[MXML]]></category>
		<category><![CDATA[Errors]]></category>
		<category><![CDATA[FlashBuilder]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=265</guid>
		<description><![CDATA[Flex, FlashBuilder, Error 1065 <a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<p>I am working on a project right now that I have been able to use the new <a href="http://labs.adobe.com/technologies/flashbuilder4/" target="_blank">FlashBuilder</a> beta to develop on. I chose this platform because Adobe has made it all too easy to integrate with .NET web services. You can literally just point to a <a href="http://www.w3.org/TR/wsdl" target="_blank">WSDL</a> and FlashBuilder will generate all the code behind for you. What is really cool and a huge time saver is that you can bind controls back to the pre-generated <a href="http://en.wikipedia.org/wiki/Create,_read,_update_and_delete" target="_blank">CRUD</a> operations from the web service. I switch the page I&#8217;m working on to design mode and then drag a form on the canvas. A simple right click to access the &#8220;Bind&#8221; operation and voila! You&#8217;re ready to deploy! Not really&#8230;but man it gets you close.</p>
<p>Because I am also developing a mapping application using ESRI&#8217;s <a href="http://resources.esri.com/arcgisserver/apis/flex/index.cfm?fa=codeGalleryDetails&amp;scriptID=15905" target="_blank">FlexViewer</a> framework, I have to integrate my CRUD forms in to the ESRI environment. Needless to say, this caused all kinds of problems! When I created a project outside of the FlexViewer project, everything worked perfectly! As soon as I tried to integrate it in to FlexVewer as a floating widget&#8230;Kaboom! I got the dreaded 1065 error. If you are reading this, it&#8217;s probably because you came across this error as well and found this page on the interwebs.</p>
<p><strong><code> Error #1065: Variable x is not defined.</code></strong></p>
<p>This error is a bit misleading because &#8220;Variable x&#8221; is actually a class that when integrated in to the FlexViewer framework get pushed out of scope or what some call, &#8220;Optimized out&#8221;. To get your code running in FlexViewer, you can&#8217;t just declare each variable/class as public! You have to declare each of them in Index.mxml which is the Application root. Please stick with the following syntax in order for your code to work properly.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p265code27'); return false;">View Code</a> ACTIONSCRIPT3</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p26527"><td class="line_numbers"><pre>1
</pre></td><td class="code" id="p265code27"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #6699cc; font-weight: bold;">var</span> <span style="color: #004993;">d</span><span style="color: #000066; font-weight: bold;">:</span>services<span style="color: #000066; font-weight: bold;">.</span>distributionlist<span style="color: #000066; font-weight: bold;">.</span>RegionUser = <span style="color: #0033ff; font-weight: bold;">new</span> services<span style="color: #000066; font-weight: bold;">.</span>distributionlist<span style="color: #000066; font-weight: bold;">.</span>RegionUser<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000066; font-weight: bold;">;</span></pre></td></tr></table></div>

<p>Doing this in Index.mxml will make your class public enough to be used throughout the entire application and you won&#8217;t get the #1065 error any longer. I certainly can&#8217;t take all the credit for this. I have to Google the crap out of this and came across <a href="http://www.actionscript.org/forums/showthread.php3?t=177903">Simon&#8217;s post here</a>. Hats off to you Simon for helping me out!!!</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/24/customizing-config-xml-in-the-esri-flexviewer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786003" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786007, 786003);">Customizing config.xml in the ESRI FlexViewer</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786007, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786007, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786007, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/14/spatialite-and-smart-phones/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786019" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786007, 786019);">SpatiaLite and Smart Phones</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=32&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-592420" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786007, 592420);">
        
        
        Top Free Useful Cydia applications for your IPhone
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=6&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-579504" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786007, 579504);">
        
        
        Jailbreaking and unlocking your iphone for T-mobile
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=114&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-615235" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786007, 615235);">
        
        
        How To Upload Videos From Your Iphone Using PixelPipe, PPVideoEnabler, and Cyrecorder 2010
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786007.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/U-zhsfX8eaQ" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<georss:point>38.881579 -77.103339</georss:point><geo:lat>38.881579</geo:lat><geo:long>-77.103339</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/</feedburner:origLink></item>
		<item>
		<title>How to copy music from your iPod to your iPhone</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/FyWJ7KY1fZM/</link>
		<comments>http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/#comments</comments>
		<pubDate>Fri, 21 Aug 2009 19:54:54 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[iPhone]]></category>
		<category><![CDATA[iPod]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=258</guid>
		<description><![CDATA[A couple weeks ago, we got Allison an iPhone and put her on my AT&#38;T account. She also has an iPod that was originally synced up with an older PC and I found that there was no easy way to [...]]]></description>
			<content:encoded><![CDATA[<div class="wp-caption alignright" style="width: 138px"><img title="iLinkPod" src="http://homepage.mac.com/giancarloerra/ilinkpod/logo.png" alt="iLinkPod" width="128" height="128" /><p class="wp-caption-text">iLinkPod</p></div>
<p>A couple weeks ago, we got Allison an iPhone and put her on my AT&amp;T account. She also has an iPod that was originally synced up with an older PC and I found that there was no easy way to move files from the iPod to the iPhone without erasing everything on the iPod. I did a little Googling and came across <a href="http://www.ilinkpod.com/" target="_blank">iLinkPod</a> which worked wonderfully and for free too! So how does it work??? Easy, it creates a shortcut folder on the desktop pointing to your iPod so that you can add files to your personal iTunes Library.</p>
<p><strong>Step 1:</strong> Download the application! <a href="http://homepage.mac.com/giancarloerra/ilinkpod/iLinkPod.dmg" target="_self">Get it here</a>&#8230;</p>
<p><strong>Step 2:</strong> Hook up your iPod (DO NOT SELECT THE ERASE AND SYNC OPTION in iTunes) and then launch iLinkPod. Select the first button to &#8220;Select your iPod&#8221;</p>
<div id="attachment_259" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.adamestrada.com/wp-content/uploads/2009/08/iLinkPod.jpg"><img class="size-medium wp-image-259 " title="iLinkPod" src="http://www.adamestrada.com/wp-content/uploads/2009/08/iLinkPod-300x168.jpg" alt="Select you iPod" width="300" height="168" /></a><p class="wp-caption-text">Select you iPod</p></div>
<p><strong>Step 3:</strong> Click the button that says, &#8220;iLinkPod!&#8221; and review the console to make sure it successfully connected and retrieved your files.</p>
<blockquote><p>Creating folder iLinkPodFolder on your desktop&#8230;OK</p>
<p>YOUR FILE LIST</p>
<p>&#8230;done&#8230;that&#8217;s all!</p></blockquote>
<p><strong>Step 4:</strong> Now open iTunes and browse to File | Add to Library&#8230;</p>
<div id="attachment_260" class="wp-caption aligncenter" style="width: 310px"><a href="http://www.adamestrada.com/wp-content/uploads/2009/08/AddToLibrary.jpg"><img class="size-medium wp-image-260" title="AddToLibrary" src="http://www.adamestrada.com/wp-content/uploads/2009/08/AddToLibrary-300x195.jpg" alt="Add Files from iPod" width="300" height="195" /></a><p class="wp-caption-text">Add Files from iPod</p></div>
<p>And that&#8217;s it! Now your iPod songs are on your computer and can be synced with your iPhone the next time you plug it in!</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/09/22/wordpress-as-a-cms/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786006" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786008, 786006);">WordPress as a CMS</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/04/04/iphone-test/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786050" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786008, 786050);">iPhone Test</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786008, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/11/25/spatialite-2-4-0-rc-0/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785998" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786008, 785998);">SpatiaLite 2.4.0 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/05/29/only-in-alabama/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786044" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786008, 786044);">Only in Alabama…</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=32&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-592420" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786008, 592420);">
        
        
        Top Free Useful Cydia applications for your IPhone
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=114&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-615235" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786008, 615235);">
        
        
        How To Upload Videos From Your Iphone Using PixelPipe, PPVideoEnabler, and Cyrecorder 2010
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=186&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-753922" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786008, 753922);">
        
        
        How to Speed Up A Laggy, Slow IPhone Jailbreak Unlock
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786008.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/FyWJ7KY1fZM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
	<georss:point>38.881579 -77.103339</georss:point><geo:lat>38.881579</geo:lat><geo:long>-77.103339</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/</feedburner:origLink></item>
		<item>
		<title>ESRI Flex Training</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/o5nUDAMtwPM/</link>
		<comments>http://www.adamestrada.com/2009/08/07/esri-flex-training/#comments</comments>
		<pubDate>Fri, 07 Aug 2009 20:13:16 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[ESRI]]></category>
		<category><![CDATA[Flex]]></category>
		<category><![CDATA[Training]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=251</guid>
		<description><![CDATA[Provide your feedback about what you would want to see in an ESRI Flex Training class! <a href="http://www.adamestrada.com/2009/08/07/esri-flex-training/">Continue reading <span class="meta-nav">&#8594;</span></a>]]></description>
			<content:encoded><![CDATA[<div class="wp-caption alignright" style="width: 230px"><img class=" " title="ESRI Flex" src="http://upload.wikimedia.org/wikipedia/en/archive/3/3f/20070930023144!Esri-logo.png" alt="ESRI" width="220" height="280" /><p class="wp-caption-text">Flex Training?</p></div>
<p><a href="http://geobabble.wordpress.com/" target="_blank">Bill</a> asked the question the other day and it dawned on me that it would really behoove <a href="http://www.esri.com" target="_blank">ESRI</a> to provide training for their Flex and  Silverlight API&#8217;s. They have done an excellent job putting together the backend achitecture for both frameworks so why not train their users on how to properly use them? I for one, have used the <a href="http://resources.esri.com/arcgisserver/apis/flex/index.cfm?fa=codeGalleryDetails&amp;scriptID=15905" target="_blank">Sample Flex Viewer</a> on several occasions but there is still sooo much that I don&#8217;t know about it or what it can do. So, I want to ask the general public what they would want to learn more about in regards to the ESRI Flex Framework. Would you want instructor lead training or would an online tutorial work for you? Are you more interested in how to code in <a href="http://en.wikipedia.org/wiki/ActionScript" target="_blank">Actionscript</a> or do you really just need to know how to implement all the bells and whistles for the framework. What about the <a href="http://resources.esri.com/arcgisserver/apis/flex/index.cfm?fa=codeGalleryDetails&amp;scriptID=15905" target="_blank">Sample Flex Viewer</a>? Would you like a training class that is designed to demonstrate specifically how to extend that? There are a ton of options here and I am very interested to learn what other people are doing with this technology and what they might need to make the most of it. Please feel free to post a comment on what you would want to see from ESRI in a Flex training class!</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786009, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/07/16/geodc-kickoff/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786012" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786009, 786012);">GeoDC Kickoff…</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786009, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/11/25/spatialite-2-4-0-rc-0/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785998" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786009, 785998);">SpatiaLite 2.4.0 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786009, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/15/adam-the-indian-ipad-killer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928459" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786009, 928459);">
        
        
        Adam – The Indian iPad killer
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=221&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-449791" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786009, 449791);">
        
        
        Layar for the iPhone
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2009/11/28/auto-retweet-with-yahoo-pipes/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928256" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786009, 928256);">
        
        
        Auto retweet with yahoo pipes
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786009.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/o5nUDAMtwPM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/08/07/esri-flex-training/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<georss:point>34.050274 -117.171316</georss:point><geo:lat>34.050274</geo:lat><geo:long>-117.171316</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2009/08/07/esri-flex-training/</feedburner:origLink></item>
		<item>
		<title>Jack Dangermond Facts…</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/a2VzblEQaxU/</link>
		<comments>http://www.adamestrada.com/2009/07/30/jack-dangermond-fact/#comments</comments>
		<pubDate>Thu, 30 Jul 2009 14:41:43 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[ESRI]]></category>
		<category><![CDATA[Jokes]]></category>
		<category><![CDATA[Jacktatorship]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=244</guid>
		<description><![CDATA[A little GIS humor&#8230;

If you have five dollars and Jack Dangermond has five dollars, Jack Dangermond has more money than you.
There is no &#8216;ctrl&#8217; button on Jack Dangermond&#8217;s computer. Jack Dangermond is always in control.
Apple pays Jack Dangermond 99 cents [...]]]></description>
			<content:encoded><![CDATA[<p>A little GIS humor&#8230;<img class="alignright size-full wp-image-245" title="jack_kool_aid" src="http://www.adamestrada.com/wp-content/uploads/2009/07/jack_kool_aid1.bmp" alt="Jack's Flavour" /></p>
<ol>
<li>If you have five dollars and Jack Dangermond has five dollars, Jack Dangermond has more money than you.</li>
<li>There is no &#8216;ctrl&#8217; button on Jack Dangermond&#8217;s computer. Jack Dangermond is always in control.</li>
<li>Apple pays Jack Dangermond 99 cents every time he listens to a song.</li>
<li>Jack Dangermond can sneeze with his eyes open.</li>
<li>Jack Dangermond can eat just one Lay&#8217;s potato chip.</li>
<li>Jack Dangermond is suing Myspace for taking the name of what he calls everything around you.</li>
<li>Jack Dangermond destroyed the periodic table, because he only recognizes the element of surprise.</li>
<li>Jack Dangermond can kill two stones with one bird.</li>
<li>When the Boogeyman goes to sleep every night, he checks his closet for Jack Dangermond.</li>
<li>Jack Dangermond doesn&#8217;t read books. He stares them down until he gets the information he wants.</li>
<li>There is no theory of evolution. Just a list of creatures Jack Dangermond has allowed to live.</li>
<li>Outer space exists because it&#8217;s afraid to be on the same planet with Jack Dangermond.</li>
<li>Jack Dangermond does not sleep. He waits.</li>
<li>Jack Dangermond is currently suing NBC, claiming Law and Order are trademarked names for his left and right legs.</li>
<li>Jack Dangermond is the reason why Waldo is hiding.</li>
<li>Jack Dangermond counted to infinity &#8211; twice.</li>
<li>There is no chin behind Jack Dangermond’ beard. There is only another fist.</li>
<li>When Jack Dangermond does a pushup, he isn’t lifting himself up, he’s pushing the Earth down.</li>
<li>Jack Dangermond is so fast, he can run around the world and punch himself in the back of the head.</li>
<li>Jack Dangermond’s hand is the only hand that can beat a Royal Flush.</li>
<li>Jack Dangermond can lead a horse to water AND make it drink.</li>
<li>Jack Dangermond doesn’t wear a watch, HE decides what time it is.</li>
<li>Jack Dangermond can slam a revolving door.</li>
<li>Jack Dangermond does not get frostbite. Jack Dangermond bites frost</li>
<li>Jack Dangermond can divide by zero.</li>
</ol>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786010, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786010, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786010, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786010, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/11/25/spatialite-2-4-0-rc-0/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785998" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786010, 785998);">SpatiaLite 2.4.0 </a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/15/adam-the-indian-ipad-killer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928459" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786010, 928459);">
        
        
        Adam – The Indian iPad killer
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=213&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-443959" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786010, 443959);">
        
        
        Routing with the new Google Maps Data
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=236&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-509465" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786010, 509465);">
        
        
        Update from Google Map on my Problem
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786010.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/a2VzblEQaxU" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/07/30/jack-dangermond-fact/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
	<georss:point>34.050274 -117.171316</georss:point><geo:lat>34.050274</geo:lat><geo:long>-117.171316</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2009/07/30/jack-dangermond-fact/</feedburner:origLink></item>
		<item>
		<title>Building your Open Source Infrastructure</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/0FIYSrWZnL4/</link>
		<comments>http://www.adamestrada.com/2009/07/26/building-your-open-source-infrastructure/#comments</comments>
		<pubDate>Sun, 26 Jul 2009 16:21:29 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[Design]]></category>
		<category><![CDATA[Infrastructure]]></category>
		<category><![CDATA[Redmine]]></category>
		<category><![CDATA[Ruby on Rails]]></category>
		<category><![CDATA[VisualSVN]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=232</guid>
		<description><![CDATA[There are countless free and/or open source applications that can be installed on just about any platform. The hardest part about dealing with a lot of different applications is getting them configured to run properly. For example, I recently evaluated [...]]]></description>
			<content:encoded><![CDATA[<p>There are countless free and/or open source applications that can be installed on just about any platform. The hardest part about dealing with a lot of different applications is getting them configured to run properly. For example, I recently evaluated a lot of different bug tracking applications that would also integrate nicely with <a href="http://www.visualsvn.com/server/" target="_blank">VisualSVN</a>. In case you don&#8217;t already know, VisualSVN server is a stack that installs and configures the SVN source control tools for you. And, it does it all without any thinking on your part which is huge when you are in a hurry. From the VisualSVN Website:</p>
<blockquote><p>VisualSVN Server is a package that contains everything you need to install, configure and manage Subversion server for your team on Windows platform. It includes Subversion, Apache and a management console.</p></blockquote>
<p>So now you&#8217;ve got source control! Next you&#8217;ll need a bug tracking system that integrates nicely with SVN. I went through <a href="http://en.wikipedia.org/wiki/Comparison_of_issue_tracking_systems" target="_blank">this list</a> and pretty much determined that they are all either too expensive or too much for what me and my small team need. I came across <a href="http://www.redmine.org/" target="_blank">Redmine</a> after getting a heads up from <a href="http://geobabble.wordpress.com" target="_blank">Bill Dollins</a>. I gotta say that the features that this software has right out of the box are amazing! Check out their website for how they <a href="http://www.redmine.org/projects/redmine/repository" target="_blank">integrate with SVN too</a>!</p>
<p>The problem I had was that it was really difficult to get it configured because 1. I am not all that familiar with a <a href="http://rubyonrails.org/" target="_blank">Ruby on Rails</a> application and 2. SVN installs on an entirely different server (Apache) which I thought might be an issue. Wrong! I came across <a href="http://bitnami.org/" target="_blank">Bitnami.org</a> which is a group that specializes in Open Source Software stack dissemination. After a <a href="http://bitnami.org/stack/redmine" target="_blank">quick download</a> and an even faster install, I had Ruby on Rails, Redmine, <a href="http://mongrel.rubyforge.org/" target="_blank">Mongrel</a> and MySQL set up and ready to go!  Note how many stacks the Bitnami group gives you&#8230;there is something for everyone! I am having issues getting Redmine without SSL to play nicely with VisualSVN with SSL so when I figure it out I will post how I fixed it.</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786011, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/22/open-street-map-take-1/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786014" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786011, 786014);">Open Street Map (take 1)</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/08/esri-flexviewer-and-error-1065/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786007" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786011, 786007);">ESRI FlexViewer and Error 1065 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/10/02/if-you-build-it-they-will-come/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786001" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786011, 786001);">If you build it, they will come…</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/14/spatialite-and-smart-phones/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786019" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786011, 786019);">SpatiaLite and Smart Phones</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=32&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-592420" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786011, 592420);">
        
        
        Top Free Useful Cydia applications for your IPhone
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=6&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-579504" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786011, 579504);">
        
        
        Jailbreaking and unlocking your iphone for T-mobile
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://stepsfortechs.com/?p=114&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-615235" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786011, 615235);">
        
        
        How To Upload Videos From Your Iphone Using PixelPipe, PPVideoEnabler, and Cyrecorder 2010
        
        
      </a><span>&nbsp;(tretre)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786011.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/0FIYSrWZnL4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/07/26/building-your-open-source-infrastructure/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2009/07/26/building-your-open-source-infrastructure/</feedburner:origLink></item>
		<item>
		<title>GeoDC Kickoff…</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/WxSsvG4Ia8E/</link>
		<comments>http://www.adamestrada.com/2009/07/16/geodc-kickoff/#comments</comments>
		<pubDate>Fri, 17 Jul 2009 03:20:52 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[Events]]></category>
		<category><![CDATA[GeoDC]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=223</guid>
		<description><![CDATA[
It looks like GeoDC is going to take place on random Thursdays for now on. Thanks to Kate and the FortiusOne folks for putting it all together! If you live in the DC area and are in to Geospatial Technology, I [...]]]></description>
			<content:encoded><![CDATA[<p><img class="alignright size-full wp-image-224" title="dcgeo" src="http://www.adamestrada.com/wp-content/uploads/2009/07/dcgeo.png" alt="dcgeo" width="180" height="180" /></p>
<p>It looks like <a href="http://geo-dc.ning.com/" target="_blank">GeoDC</a> is going to take place on random Thursdays for now on. Thanks to <a href="http://www.maploser.com" target="_blank">Kate</a> and the <a href="http://www.fortiusone.com" target="_blank">FortiusOne</a> folks for putting it all together! If you live in the DC area and are in to Geospatial Technology, I encourage you to register at the <a href="http://geo-dc.ning.com/" target="_blank">Ning group</a>. It&#8217;s a great way to connect with other GeoNerds in the area and learn about all the cool stuff they are working on. There seems to be a lot of influence from the open source crowd which in this day and age is just what the doctor ordered. I&#8217;ve gotten in to OSM since my first OSM Mapping Party last month so I&#8217;m glad to see the start of a semi-active group in the area.</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2009/08/21/how-to-copy-music-from-your-ipod-to-your-iphone/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786008" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786012, 786008);">How to copy music from your iPod to your iPhone</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/12/17/gis-for-the-have-nots/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785995" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786012, 785995);">GIS For the Have Nots </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/09/25/selenium-for-web-site-testing/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786002" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786012, 786002);">Automated web site testing </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/05/29/make-a-google-wave/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786047" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786012, 786047);">Make a Google Wave…</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/05/31/jquery-and-prototype-overview/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786043" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786012, 786043);">jQuery and Prototype Overview</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/15/adam-the-indian-ipad-killer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928459" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786012, 928459);">
        
        
        Adam – The Indian iPad killer
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=236&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-509465" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786012, 509465);">
        
        
        Update from Google Map on my Problem
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=221&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-449791" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786012, 449791);">
        
        
        Layar for the iPhone
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786012.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/WxSsvG4Ia8E" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/07/16/geodc-kickoff/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
	<georss:point>38.892091 -77.024055</georss:point><geo:lat>38.892091</geo:lat><geo:long>-77.024055</geo:long>	<feedburner:origLink>http://www.adamestrada.com/2009/07/16/geodc-kickoff/</feedburner:origLink></item>
		<item>
		<title>C# KML Generator</title>
		<link>http://feedproxy.google.com/~r/AdamEstrada/~3/gVYFJJg8KEI/</link>
		<comments>http://www.adamestrada.com/2009/06/29/c-kml-generator/#comments</comments>
		<pubDate>Tue, 30 Jun 2009 01:40:55 +0000</pubDate>
		<dc:creator>Adam Estrada</dc:creator>
				<category><![CDATA[GeoSpatial]]></category>
		<category><![CDATA[C#]]></category>
		<category><![CDATA[DataSet]]></category>
		<category><![CDATA[DataTable]]></category>
		<category><![CDATA[KML]]></category>

		<guid isPermaLink="false">http://www.adamestrada.com/?p=214</guid>
		<description><![CDATA[If you&#8217;re anything like me, you probably generate a ton of KML so I wanted to pass along a quick little method that generates a KML file from data in a C# DataSet. The real cool part about this is [...]]]></description>
			<content:encoded><![CDATA[<p>If you&#8217;re anything like me, you probably generate a ton of KML so I wanted to pass along a quick little method that generates a KML file from data in a C# <a href="http://msdn.microsoft.com/en-us/library/system.data.dataset(VS.71).aspx">DataSet</a>. The real cool part about this is that it never writes anything to disc and it will always generate a unique file (based on a GUID). It&#8217;s also important to note that the icon path is set in the web.config file so it can be configured after the application is deployed.</p>

<div class="wp_codebox_msgheader wp_codebox_hide"><span class="right"><sup><a href="http://www.ericbess.com/ericblog/2008/03/03/wp-codebox/#examples" target="_blank" title="WP-CodeBox HowTo?"><span style="color: #99cc00">?</span></a></sup></span><span class="left"><a href="javascript:;" onclick="javascript:showCodeTxt('p214code29'); return false;">View Code</a> CSHARP</span><div class="codebox_clear"></div></div><div class="wp_codebox"><table><tr id="p21429"><td class="line_numbers"><pre>1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
</pre></td><td class="code" id="p214code29"><pre class="csharp" style="font-family:monospace;"> <span style="color: #0600FF; font-weight: bold;">public</span> <span style="color: #6666cc; font-weight: bold;">void</span> kmlFile<span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span>
        <span style="color: #008000;">&#123;</span>
&nbsp;
            DataTable tbl <span style="color: #008000;">=</span> <span style="color: #008000;">&#40;</span>DataTable<span style="color: #008000;">&#41;</span>Session<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;DataTable&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// Create a temporary file name using a GUID and start writing the File</span>
            <span style="color: #6666cc; font-weight: bold;">object</span> tempGUID <span style="color: #008000;">=</span> <span style="color: #000000;">System</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Guid</span><span style="color: #008000;">.</span><span style="color: #0000FF;">NewGuid</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// Grab the icon path in the web.confg file.</span>
            <span style="color: #6666cc; font-weight: bold;">object</span> iconPath<span style="color: #008000;">;</span>
            iconPath <span style="color: #008000;">=</span> ConfigurationManager<span style="color: #008000;">.</span><span style="color: #0000FF;">AppSettings</span><span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;kmlIcon&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// Start writing the KML</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;My KML<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;!--
<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;IconStyle&gt;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;icon&gt;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;
&lt;href&gt;&quot;</span> <span style="color: #008000;">+</span> iconPath <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&lt;/href&gt;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;/icon&gt;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;
--&gt;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;-96.1501026686213<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;37.95371359340249<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;0<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;4429395.882870826<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;0<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// Loop through the dataset and populate the placemarks.</span>
            <span style="color: #6666cc; font-weight: bold;">string</span> Name <span style="color: #008000;">=</span> <span style="color: #6666cc; font-weight: bold;">string</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Empty</span><span style="color: #008000;">;</span>
            <span style="color: #6666cc; font-weight: bold;">string</span> owner <span style="color: #008000;">=</span> <span style="color: #6666cc; font-weight: bold;">string</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Empty</span><span style="color: #008000;">;</span>
            <span style="color: #6666cc; font-weight: bold;">string</span> <span style="color: #6666cc; font-weight: bold;">class</span> <span style="color: #008000;">=</span> <span style="color: #6666cc; font-weight: bold;">string</span><span style="color: #008000;">.</span><span style="color: #0000FF;">Empty</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #0600FF; font-weight: bold;">foreach</span> <span style="color: #008000;">&#40;</span>DataRow dr <span style="color: #0600FF; font-weight: bold;">in</span> tbl<span style="color: #008000;">.</span><span style="color: #0000FF;">Rows</span><span style="color: #008000;">&#41;</span>
            <span style="color: #008000;">&#123;</span>
&nbsp;
                <span style="color: #008080; font-style: italic;">// Replace bad characters with good ones.</span>
                Name <span style="color: #008000;">=</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;Name&quot;</span><span style="color: #008000;">&#93;</span><span style="color: #008000;">.</span><span style="color: #0000FF;">ToString</span><span style="color: #008000;">&#40;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Name <span style="color: #008000;">=</span> Name<span style="color: #008000;">.</span><span style="color: #0000FF;">Replace</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&amp;amp;&quot;</span>, <span style="color: #666666;">&quot;&amp;amp;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Name <span style="color: #008000;">=</span> Name<span style="color: #008000;">.</span><span style="color: #0000FF;">Replace</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\\</span>&quot;</span>, <span style="color: #666666;">&quot;&quot;</span><span style="color: #666666;">&quot;);
                Name = Name.Replace(&quot;</span><span style="color: #008000;">&amp;</span>lt<span style="color: #008000;">;</span><span style="color: #666666;">&quot;, &quot;</span><span style="color: #008000;">&amp;</span>lt<span style="color: #008000;">;</span><span style="color: #666666;">&quot;);
                Name = Name.Replace(&quot;</span><span style="color: #008000;">&amp;</span>gt<span style="color: #008000;">;</span><span style="color: #666666;">&quot;, &quot;</span><span style="color: #008000;">&amp;</span>gt<span style="color: #008000;">;</span><span style="color: #666666;">&quot;);
                owner = dr[&quot;</span>Owner<span style="color: #666666;">&quot;].ToString();
                owner = owner.Replace(&quot;</span><span style="color: #008000;">&amp;</span>amp<span style="color: #008000;">;</span><span style="color: #666666;">&quot;, &quot;</span><span style="color: #008000;">&amp;</span>amp<span style="color: #008000;">;</span><span style="color: #666666;">&quot;);
                owner = owner.Replace(&quot;</span>\\<span style="color: #666666;">&quot;, &quot;</span><span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                owner <span style="color: #008000;">=</span> owner<span style="color: #008000;">.</span><span style="color: #0000FF;">Replace</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&amp;lt;&quot;</span>, <span style="color: #666666;">&quot;&amp;lt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                owner <span style="color: #008000;">=</span> owner<span style="color: #008000;">.</span><span style="color: #0000FF;">Replace</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&amp;gt;&quot;</span>, <span style="color: #666666;">&quot;&amp;gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
                <span style="color: #008080; font-style: italic;">// Continue writing the KML</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&quot;</span> <span style="color: #008000;">+</span> Name <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;
#pushpin<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt; ![CDATA[<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;head&gt;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;body&gt;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;
&lt;h3 align=<span style="color: #008080; font-weight: bold;">\&quot;</span>center<span style="color: #008080; font-weight: bold;">\&quot;</span>&gt;&lt;font COLOR=<span style="color: #008080; font-weight: bold;">\&quot;</span>#FF0000<span style="color: #008080; font-weight: bold;">\&quot;</span>&gt;&quot;</span> <span style="color: #008000;">+</span> <span style="color: #6666cc; font-weight: bold;">class</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&lt;/font&gt;&lt;/h3&gt;
<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;
&lt;hr /&gt;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;b&gt;Name:&lt;/b&gt; &quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;Name&quot;</span><span style="color: #008000;">&#93;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;b&gt;Owner:&lt;/b&gt; &quot;</span> <span style="color: #008000;">+</span> owner <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;b&gt;Latitude:&lt;/b&gt; &quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;Latitude&quot;</span><span style="color: #008000;">&#93;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;b&gt;Longitide:&lt;/b&gt; &quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;Longitude&quot;</span><span style="color: #008000;">&#93;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;
&lt;hr /&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;
&lt;h3 align=<span style="color: #008080; font-weight: bold;">\&quot;</span>center<span style="color: #008080; font-weight: bold;">\&quot;</span>&gt;&lt;font COLOR=<span style="color: #008080; font-weight: bold;">\&quot;</span>#FF0000<span style="color: #008080; font-weight: bold;">\&quot;</span>&gt;&quot;</span> <span style="color: #008000;">+</span> <span style="color: #6666cc; font-weight: bold;">class</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;&lt;/font&gt;&lt;/h3&gt;
<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&lt;/body&gt;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;]]&gt;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;Longitude&quot;</span><span style="color: #008000;">&#93;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;, &quot;</span> <span style="color: #008000;">+</span> dr<span style="color: #008000;">&#91;</span><span style="color: #666666;">&quot;Latitude&quot;</span><span style="color: #008000;">&#93;</span> <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
                Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008000;">&#125;</span>
&nbsp;
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">Write</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;<span style="color: #008080; font-weight: bold;">\n</span>&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
&nbsp;
            <span style="color: #008080; font-style: italic;">// Response.Write the data with the Encoding &quot;KML&quot;. This will force the default KML</span>
            <span style="color: #008080; font-style: italic;">// reader to launch when the file is done writing.</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">AddHeader</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;content-disposition&quot;</span>, <span style="color: #666666;">&quot;attachment; filename=&quot;</span> <span style="color: #008000;">+</span> tempGUID <span style="color: #008000;">+</span> <span style="color: #666666;">&quot;.kml&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">ContentType</span> <span style="color: #008000;">=</span> <span style="color: #666666;">&quot;application/vnd.google-earth.kml+xml&quot;</span><span style="color: #008000;">;</span>
            Response<span style="color: #008000;">.</span><span style="color: #0000FF;">AppendHeader</span><span style="color: #008000;">&#40;</span><span style="color: #666666;">&quot;Content-Encoding&quot;</span>, <span style="color: #666666;">&quot;kml&quot;</span><span style="color: #008000;">&#41;</span><span style="color: #008000;">;</span>
        <span style="color: #008000;">&#125;</span>
&nbsp;
    <span style="color: #008000;">&#125;</span></pre></td></tr></table></div>

<p>Enjoy!</p>
<!--more--><!-- Arkayne Cache: No -->



<div class="arkayne">

  
  
  
  
  



  <h3 class="arkayne-header">
    
      More from Adam Estrada
    
  </h3>
  
  
  <!-- Inner Links -->
  <ul class="arkayne-links">
    
    
    <li><a href="http://www.adamestrada.com/2010/02/06/gmapez/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785993" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786013, 785993);">GmapEZ</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2010/01/15/oracle-spatial-and-user_sdo_geom_metadata/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785994" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786013, 785994);">Oracle Spatial and USER_SDO_GEOM_METADATA </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/11/25/spatialite-2-4-0-rc-0/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-785998" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786013, 785998);">SpatiaLite 2.4.0 </a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/07/16/geodc-kickoff/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786012" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786013, 786012);">GeoDC Kickoff…</a></li>
    
    
    
    <li><a href="http://www.adamestrada.com/2009/06/14/spatialite-and-smart-phones/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-786019" target="_parent" onclick="return Arkayne.go(event, this, 'link', 786013, 786019);">SpatiaLite and Smart Phones</a></li>
    
    
  </ul>
  


  
  
  

  
  
  
  




  
  

  
  
  
  



  <h3 class="arkayne-header">
    
      Adam Estrada Recommends
    
  </h3>
  
  
  <!-- All Other Links -->
  <ul class="arkayne-links">
    
    
    <li>
      
      <a  href="http://mtaram.com/blog/2010/02/15/adam-the-indian-ipad-killer/?utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-928459" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786013, 928459);">
        
        
        Adam – The Indian iPad killer
        
        
      </a><span>&nbsp;(MtaraM)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=236&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-509465" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786013, 509465);">
        
        
        Update from Google Map on my Problem
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
    
    <li>
      
      <a  href="http://www.maploser.com/?p=221&amp;utm_source=Arkayne.com&amp;utm_medium=Plugin&amp;utm_campaign=Adam%20Estrada" id="arkayne-449791" target="_blank" onclick="return Arkayne.go(event, this, 'link', 786013, 449791);">
        
        
        Layar for the iPhone
        
        
      </a><span>&nbsp;(Maploser)</span>
      
    </li>
    
    
  </ul>
  


  
  

  
  
  
  




  
  

  
  
  
  




  
  

  
  <div class="arkayne-footer" style="display: block !important">
  
  
  <a href="http://www.arkayne.com/AdamEstrada/?utm_source=Arkayne%20Plugin&amp;utm_medium=Recommend&amp;utm_campaign=Plugin&amp;coupon=ADAMESTRADA" target="_blank">
    <img src="http://s3.amazonaws.com/arkayne-media/img/logo-recommend.png" width="153" height="28" border="0" alt="AdamEstrada has content marketing with Arkayne Socialize." style="display: block !important; border: none !important; width: 153px !important; height: 28px !important;" />
  </a>
  
  
  
    <img class="arkayne-hit" src="http://www.arkayne.com/widget/hit/786013.GIF" border="0" alt="" />
  
</div>

  

</div>







<img src="http://feeds.feedburner.com/~r/AdamEstrada/~4/gVYFJJg8KEI" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.adamestrada.com/2009/06/29/c-kml-generator/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		<feedburner:origLink>http://www.adamestrada.com/2009/06/29/c-kml-generator/</feedburner:origLink></item>
	</channel>
</rss>
