<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-1085297750981705306</id><updated>2012-01-24T12:18:09.152-08:00</updated><category term='ASDoc'/><category term='ArcWeb Explorer'/><category term='Flex'/><category term='ArcWeb'/><category term='javascript'/><category term='GeoRSS'/><category term='Flash Builder'/><category term='Ant'/><category term='Ant.Flex'/><category term='AWX'/><category term='Motionbased'/><category term='Flex Builder 4'/><title type='text'>Map Mentality</title><subtitle type='html'>Thoughts on mapping (especially on the web), geography, cartography and stuff.

My thoughts are usually my own and this blog does not represent the thoughts, intentions, plans or strategies of my employer.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://bjornman.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://bjornman.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Björn</name><uri>http://www.blogger.com/profile/14184776649844595014</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='http://bjornman.com/images/bjornman100.jpg'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>9</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-1085297750981705306.post-2958627622781237726</id><published>2010-11-06T08:37:00.001-07:00</published><updated>2010-11-06T08:37:56.303-07:00</updated><title type='text'>test 2</title><content type='html'>&lt;iframe width="500" height="400" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://www.arcgis.com/home/webmap/embedViewer.html?webmap=c3166545c8564bd2a1913b58c413f1a9&amp;amp;zoom=true"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href="http://www.arcgis.com/home/webmap/viewer.html?webmap=c3166545c8564bd2a1913b58c413f1a9" style="color:#0000FF;text-align:left" target="_blank"&gt;View Larger Map&lt;/a&gt;&lt;/small&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1085297750981705306-2958627622781237726?l=bjornman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bjornman.blogspot.com/feeds/2958627622781237726/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1085297750981705306&amp;postID=2958627622781237726' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/2958627622781237726'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/2958627622781237726'/><link rel='alternate' type='text/html' href='http://bjornman.blogspot.com/2010/11/test-2.html' title='test 2'/><author><name>Björn</name><uri>http://www.blogger.com/profile/14184776649844595014</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='http://bjornman.com/images/bjornman100.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1085297750981705306.post-3479279076794467171</id><published>2010-11-06T04:00:00.000-07:00</published><updated>2010-11-06T04:00:03.501-07:00</updated><title type='text'>Embedding arcgis.com Web Maps</title><content type='html'>It's so easy:&lt;br /&gt;&lt;br /&gt;&lt;iframe width="500" height="400" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://www.arcgis.com/home/webmap/embedViewer.html?webmap=03cb1212810d4ff9a4a046c06c368b9d&amp;amp;bing=true&amp;amp;zoom=true"&gt;&lt;/iframe&gt;&lt;br /&gt;&lt;small&gt;&lt;a href="http://www.arcgis.com/home/webmap/viewer.html?webmap=03cb1212810d4ff9a4a046c06c368b9d" style="color:#0000FF;text-align:left" target="_blank"&gt;View Larger Map&lt;/a&gt;&lt;/small&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1085297750981705306-3479279076794467171?l=bjornman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bjornman.blogspot.com/feeds/3479279076794467171/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1085297750981705306&amp;postID=3479279076794467171' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/3479279076794467171'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/3479279076794467171'/><link rel='alternate' type='text/html' href='http://bjornman.blogspot.com/2010/11/embedding-arcgiscom-web-maps.html' title='Embedding arcgis.com Web Maps'/><author><name>Björn</name><uri>http://www.blogger.com/profile/14184776649844595014</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='http://bjornman.com/images/bjornman100.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1085297750981705306.post-661953390802779213</id><published>2010-05-28T11:41:00.000-07:00</published><updated>2010-05-28T11:41:48.286-07:00</updated><title type='text'>Adding Ant to Flash Builder 4</title><content type='html'>Things have changed between Flash Builder 4 beta and Flash Builder 4 (final), so I figured just as well update &lt;a href="http://bjornman.blogspot.com/2009/07/adding-ant-to-adobe-flash-builder-4.html"&gt;my old blog post&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;http://renaun.com/blog/2010/03/31/416/ tells the story.  Here's the steps I had to do:&lt;br /&gt;&lt;br /&gt;1. In Flash Builder, go to Help -&gt; Software Updates...&lt;br /&gt;1a. If you get a "No Updates Found" popup, press "Yes" to open "Available Software Sites".  Note that both Flex Builder 3 and 4 Beta used to have some sites by default.  Whatever, we'll just add one ourself.&lt;br /&gt;&lt;br /&gt;1b. In "Available Software Sites", click "Add" on right side.&lt;br /&gt;Add "Galileo" as the "Name:".&lt;br /&gt;Add "http://download.eclipse.org/releases/galileo" as the "Location:".&lt;br /&gt;Say "OK" :)&lt;br /&gt;&lt;br /&gt;Step 1 - same&lt;br /&gt;In Adobe Flash Builder 4, go to Help -&amp;gt; Install new software.&lt;br /&gt;&lt;br /&gt;Step 2&lt;br /&gt;In the first box ("Work with", pick the "Galileo".&lt;br /&gt;&lt;br /&gt;Step 3&lt;br /&gt;Below the search results, un-select the "Group items by category".&lt;br /&gt;&lt;br /&gt;Step 4.&lt;br /&gt;Among the search results, select "Eclipse Java Development Tools" and click "Next". Click "Next" again. Accept the license agreement and click "Finish".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1085297750981705306-661953390802779213?l=bjornman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bjornman.blogspot.com/feeds/661953390802779213/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1085297750981705306&amp;postID=661953390802779213' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/661953390802779213'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/661953390802779213'/><link rel='alternate' type='text/html' href='http://bjornman.blogspot.com/2010/05/adding-ant-to-flash-builder-4.html' title='Adding Ant to Flash Builder 4'/><author><name>Björn</name><uri>http://www.blogger.com/profile/14184776649844595014</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='http://bjornman.com/images/bjornman100.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1085297750981705306.post-7328540662613534309</id><published>2010-04-19T23:15:00.000-07:00</published><updated>2010-04-19T23:18:14.372-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Flash Builder'/><category scheme='http://www.blogger.com/atom/ns#' term='ASDoc'/><category scheme='http://www.blogger.com/atom/ns#' term='Flex'/><title type='text'>ASDoc HTML elements - Flash Builder 4</title><content type='html'>&lt;p&gt;When you update your Flex 3 code to Flex 4, you might also need to update the HTML you have inside your ASDoc.&amp;nbsp; How to specify HTML elements in asdoc have not changed much between Flex 3 and Flex 4, but still there are some minor things that might trick you up. &lt;/p&gt;&lt;br /&gt;&lt;p&gt;For reference, see &lt;a href="http://livedocs.adobe.com/flex/3/html/help.html?content=asdoc_8.html"&gt;http://livedocs.adobe.com/flex/3/html/help.html?content=asdoc_8.html&lt;/a&gt; and &lt;a href="http://help.adobe.com/en_US/Flex/4.0/UsingSDK/WSd0ded3821e0d52fe1e63e3d11c2f44bc36-8000.html"&gt;http://help.adobe.com/en_US/Flex/4.0/UsingSDK/WSd0ded3821e0d52fe1e63e3d11c2f44bc36-8000.html&lt;/a&gt;.&lt;/p&gt;&lt;br /&gt;&lt;h4&gt;About Ampersand (&amp;amp;)&lt;/h4&gt;&lt;p&gt;Flex 3 used "&amp;amp;amp;".&lt;br /&gt;Flex 4 uses "&amp;amp;#38;" and the documentation says to not use the Flex 3 styled "&amp;amp;amp;".&lt;/p&gt;&lt;br /&gt;&lt;h4&gt;About non-breaking spaces&lt;/h4&gt;&lt;p&gt;Both Flex 3 and 4 documentation was clear that you should use "&amp;amp;#xA0;", but maybe for some reason, like us, you instead had "&amp;amp;amp;nbsp;". It worked fine in Flex 3 and still works fine in Flex 4 HTML documents. However, if you are in Flash Builder and taking advantage of "fat" swc (asdoc content for inline code hinting and the "asdoc" tab), then only "&amp;amp;#xA0;" works fine. Both "&amp;amp;amp;nbsp;" and "&amp;amp;#38;nbsp;" will show in Flash Builder as "&amp;amp;nbsp;". So trust the documentation, stick with "&amp;amp;#xA0;" and you will be fine :)&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1085297750981705306-7328540662613534309?l=bjornman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bjornman.blogspot.com/feeds/7328540662613534309/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1085297750981705306&amp;postID=7328540662613534309' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/7328540662613534309'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/7328540662613534309'/><link rel='alternate' type='text/html' href='http://bjornman.blogspot.com/2010/04/asdoc-html-elements-flash-builder-4.html' title='ASDoc HTML elements - Flash Builder 4'/><author><name>Björn</name><uri>http://www.blogger.com/profile/14184776649844595014</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='http://bjornman.com/images/bjornman100.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1085297750981705306.post-212023926062879521</id><published>2009-07-10T17:19:00.000-07:00</published><updated>2009-07-10T18:30:52.332-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ant'/><category scheme='http://www.blogger.com/atom/ns#' term='Flash Builder'/><category scheme='http://www.blogger.com/atom/ns#' term='Flex'/><title type='text'>Adding Ant to Adobe Flash Builder 4 Beta</title><content type='html'>There are good instructions for getting &lt;a href="http://ant.apache.org/"&gt;Ant&lt;/a&gt; to run in &lt;span style="font-weight: bold;"&gt;Flex Builder 3&lt;/span&gt; at &lt;a href="http://iamjosh.wordpress.com/2008/08/11/adding-ant-to-flex-builder-3/"&gt;http://iamjosh.wordpress.com/2008/08/11/adding-ant-to-flex-builder-3/&lt;/a&gt; but I just installed &lt;span style="font-weight: bold;"&gt;Adobe Flash Builder 4 Beta&lt;/span&gt; (the June 2009 version) and things are a tiny bit different.  Here are the steps I followed:&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;In Adobe Flash Builder 4 Beta, go to Help -&gt; Software Updates -&gt; Find and Install...&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Select "Search for new features to install" and click Next.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Pick "The Eclipse Project Updates" and click Finish.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;If prompted, for "Update Site Mirrors", select "Automatically select mirrors". Click "OK".&lt;/li&gt;&lt;br /&gt;&lt;li&gt;In the search results, expand "The Eclipse Project Updates", then expand "Eclipse 3.4.2″.&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Select "Eclipse Java Development Tools 3.4.2.r342..." and click "Next".&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Accept the license agreement and click "Next".&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Click "Finish".&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Wait for download...&lt;/li&gt;&lt;br /&gt;&lt;li&gt;When prompted for feature verification, select "Install All".&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Restart Flex Builder as suggested.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;You will now have Ant support installed.  All build.xml file will have a little ant icon and if you right-click the file and select "Run as", you will see two Ant options:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Ant Build - which also has a keyboard short-cut, but does anyone actually remembers shortcuts like Alt+shift+X,Q ?&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Ant Build... - which allows you to specify which targets to execute.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;Side note: Make sure your Flex workspace don't contain space and Ant should work just fine.&lt;br /&gt;&lt;br /&gt;My first error "&lt;span style="color: rgb(255, 0, 0);"&gt;Unable to access jarfile C:\ArcGIS\FlexAPI2\api\${env.FLEX4_HOME}\lib\compc.jar&lt;/span&gt;" was easily fixed by adding a new environment property FLEX4_HOME and setting it to C:\PROGRA~1\Adobe\FLASHB~1\sdks\4.0.0\&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1085297750981705306-212023926062879521?l=bjornman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bjornman.blogspot.com/feeds/212023926062879521/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1085297750981705306&amp;postID=212023926062879521' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/212023926062879521'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/212023926062879521'/><link rel='alternate' type='text/html' href='http://bjornman.blogspot.com/2009/07/adding-ant-to-adobe-flash-builder-4.html' title='Adding Ant to Adobe Flash Builder 4 Beta'/><author><name>Björn</name><uri>http://www.blogger.com/profile/14184776649844595014</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='http://bjornman.com/images/bjornman100.jpg'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1085297750981705306.post-5806882570635829897</id><published>2008-11-24T16:58:00.000-08:00</published><updated>2009-07-10T18:30:49.493-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Ant.Flex'/><category scheme='http://www.blogger.com/atom/ns#' term='Flex Builder 4'/><title type='text'>Adding Ant to Flex Builder 4 (Gumbo)</title><content type='html'>There are good instructions for getting &lt;a href="http://ant.apache.org/"&gt;Ant&lt;/a&gt; to run in &lt;span style="font-weight: bold;"&gt;Flex Builder 3&lt;/span&gt; at &lt;a href="http://iamjosh.wordpress.com/2008/08/11/adding-ant-to-flex-builder-3/"&gt;http://iamjosh.wordpress.com/2008/08/11/adding-ant-to-flex-builder-3/&lt;/a&gt; but I just installed Flex Builder 4 (Adobe MAX Preview version) and things seem to have changed a tiny bit.  Here are the steps I followed:&lt;br /&gt;&lt;ol&gt;&lt;br /&gt;&lt;li&gt;In Flex Builder, go to Help -&gt; Software Updates -&gt; Find and Install...&lt;/li&gt;&lt;li&gt;Select "Search for new features to install" and click Next.&lt;/li&gt;&lt;li&gt;Pick "The Eclipse Project Updates" and click Finish.&lt;/li&gt;&lt;li&gt;In the search results, expand "The Eclipse Project Updates", then expand "Eclipse 3.4.1″.&lt;/li&gt;&lt;li&gt;Select "Eclipse Java Development Tools 3.4.1.r341..." and click "Next".&lt;/li&gt;&lt;li&gt;Accept the license agreement and click "Next".&lt;/li&gt;&lt;li&gt;Click "Finish".&lt;/li&gt;&lt;li&gt;Wait for download...&lt;/li&gt;&lt;li&gt;When prompted for feature verification, select "Install All".&lt;/li&gt;&lt;li&gt;Restart Flex Builder as suggested.&lt;/li&gt;&lt;/ol&gt;&lt;br /&gt;You will now have Ant support installed.  All build.xml file will have a little ant icon and if you right-click the file and select "Run as", you will see two Ant options:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;Ant Build - which also has a keyboard short-cut, but does anyone actually remembers shortcuts like Alt+shift+X,Q ?&lt;/li&gt;&lt;br /&gt;&lt;li&gt;Ant Build... - which allows you to specify which targets to execute.&lt;/li&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;Side note: Make sure your Flex workspace don't contain space and Ant everything should work just fine.&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1085297750981705306-5806882570635829897?l=bjornman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bjornman.blogspot.com/feeds/5806882570635829897/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1085297750981705306&amp;postID=5806882570635829897' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/5806882570635829897'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/5806882570635829897'/><link rel='alternate' type='text/html' href='http://bjornman.blogspot.com/2008/11/adding-ant-to-flex-builder-4.html' title='Adding Ant to Flex Builder 4 (Gumbo)'/><author><name>Björn</name><uri>http://www.blogger.com/profile/14184776649844595014</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='http://bjornman.com/images/bjornman100.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1085297750981705306.post-8673670652655226845</id><published>2006-09-18T20:15:00.000-07:00</published><updated>2006-09-18T20:21:14.171-07:00</updated><title type='text'>KML faster than GPX</title><content type='html'>When using feeds from Motionbased, the KML is 5x faster then GPX because the format is that much more compact.  So if you're not using the time stamps, course heading, or speed available in the GPX feed, then using KML feed is probably a good idea.&lt;br /&gt;&lt;br /&gt;For example:&lt;br /&gt;&lt;code&gt;&lt;br /&gt;&amp;lt;trkpt lat="34.1" lon="-118.2"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ele&amp;gt;141.5&amp;lt;ele&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;time&amp;gt;2006-09-12T05:31:20-07:00&amp;lt;/time&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;course&amp;gt;0.0&amp;lt;/course&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;speed&amp;gt;3.834404896762164&amp;lt;/speed&amp;gt;&lt;br /&gt;&amp;lt;/trkpt&amp;gt;&lt;br /&gt;&amp;lt;trkpt lat="34.3" lon="-118.4"&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;ele&amp;gt;141.5&amp;lt;ele&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;time&amp;gt;2006-09-12T05:31:21-07:00&amp;lt;/time&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;course&amp;gt;0.0&amp;lt;/course&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;speed&amp;gt;3.834404896762164&amp;lt;/speed&amp;gt;&lt;br /&gt;&amp;lt;/trkpt&amp;gt; ...&lt;br /&gt;&lt;/code&gt;versus&lt;br /&gt;&lt;code&gt;&amp;lt;coordinates&amp;gt;-118.2,34.1,411.1 -118.4,34.3,411.1 ... &amp;lt;/coordinates&amp;gt;&lt;/code&gt;&lt;br /&gt;&lt;br /&gt;I updated my MB/AWX mashup with this and some other improvements: &lt;a href="http://www.bjornman.com/mb-in-awx.html?mb=bjorn"&gt;http://www.bjornman.com/mb-in-awx.html&lt;/a&gt;&lt;br /&gt;&lt;br /&gt;(The old mashup using GPX instead of KML is now available as &lt;a href="http://www.bjornman.com/mb-in-awx-using-gpx.html?mb=bjorn"&gt;http://www.bjornman.com/mb-in-awx-using-gpx.html&lt;/a&gt;)&lt;br /&gt;&lt;br /&gt;The only tricky part with using KML was the irritating bug in the Mozilla/Firefox xml parser where it only gets the first 4096 character with "firstChild.data".  Since an activity is often a lot longer, only the first 112 locations showed on the map.  Since newer Mozilla/Firefox (though not IE) supports the "textContent" from W3C DOM Level 3, I fixed it by trying both ways of getting at the full "coordinates".&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1085297750981705306-8673670652655226845?l=bjornman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bjornman.blogspot.com/feeds/8673670652655226845/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1085297750981705306&amp;postID=8673670652655226845' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/8673670652655226845'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/8673670652655226845'/><link rel='alternate' type='text/html' href='http://bjornman.blogspot.com/2006/09/kml-faster-than-gpx.html' title='KML faster than GPX'/><author><name>Björn</name><uri>http://www.blogger.com/profile/14184776649844595014</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='http://bjornman.com/images/bjornman100.jpg'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1085297750981705306.post-7049301171514254685</id><published>2006-09-08T08:00:00.000-07:00</published><updated>2006-10-10T17:41:16.558-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='javascript'/><category scheme='http://www.blogger.com/atom/ns#' term='AWX'/><category scheme='http://www.blogger.com/atom/ns#' term='Motionbased'/><category scheme='http://www.blogger.com/atom/ns#' term='ArcWeb'/><category scheme='http://www.blogger.com/atom/ns#' term='ArcWeb Explorer'/><category scheme='http://www.blogger.com/atom/ns#' term='GeoRSS'/><title type='text'>Showing MotionBased Activities in ArcWeb Explorer</title><content type='html'>Using RSS and GPX feeds from &lt;a href="http://www.motionbased.com"&gt;MotionBased (MB)&lt;/a&gt; and displaying them on maps from &lt;a href="http://www.arcwebservices.com/awx"&gt;ArcWeb Explorer&lt;/a&gt; is easy.  At least if you understand GeoRSS and GPX xml formats, know JavaScript, and one of the JavaScript map API's, like &lt;a href="http://www.arcwebservices.com/v2006/help/index.htm#awx/overview.htm"&gt;ArcWeb Explorer JavaScript API&lt;/a&gt;.  The latter being free - at least for "personal, non-commercial, and non-governmental use".  &lt;br /&gt;&lt;br /&gt;What is Motionbased? ... it's a really cool "web application that translates GPS data into functional analysis and online mapping for endurance and outdoor athletes".  For me that means that each time I run or bike, I bring along my &lt;a href="http://www.garmin.com/products/forerunner305/"&gt;GPS toy&lt;/a&gt; and then upload the GPS data to Motionbased when I get home.&lt;br /&gt;&lt;br /&gt;Motionbased provides user's most recent activities in GeoRSS feeds, so it's easy to display them on the map.  They also provide the activities as &lt;a href="http://www.topografix.com/gpx.asp"&gt;GPX&lt;/a&gt; - "the de-facto XML standard for lightweight interchange of GPS data".  This makes it easy to show the exact tracks of every individual activity on a map.  Whether you use the API's from Google Maps, Yahoo Maps, Ask.com or ArcWeb Explorer (AWX).&lt;br /&gt;&lt;br /&gt;&lt;a href="http://www.bjornman.com/mb-in-awx.html?mb=bjorn"&gt;http://www.bjornman.com/mb-in-awx.html?mb=bjorn&lt;/a&gt; is the application I created using AWX.  It reads the RSS feed with the most recent activities for a user and displays them as markers on the map.  You can then click on the activities to read more about it and see the heart rate profile (if available), and to show the exact GPS route of that activity.  After clicking the links above the map or the "Show Route" in the marker the GPX data will be downloaded, parsed by the browser and displayed on the map.  In addition to being shown above the map, the activities are also listed inside the "Find" box.   From there you can drag and drop one or more activities onto the map for it to zoom in to those. Note too that after displaying the route, the marker is updated to show elevation and heart rate profiles.&lt;br /&gt;&lt;br /&gt;You can specify any user on the URL line, for example:&lt;br /&gt;&lt;ul&gt;&lt;br /&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.bjornman.com/mb-in-awx.html?bjorn"&gt;bjorn&lt;/a&gt;&lt;br /&gt;&lt;li&gt;&lt;a target="_blank" ref="http://www.bjornman.com/mb-in-awx.html?bianco"&gt;bianco&lt;/a&gt;&lt;br /&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.bjornman.com/mb-in-awx.html?kyillee"&gt;kyillee&lt;/a&gt;&lt;br /&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.bjornman.com/mb-in-awx.html?russelleast"&gt;russelleast&lt;/a&gt;&lt;br /&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.bjornman.com/mb-in-awx.html?tchazzard"&gt;tchazzard&lt;/a&gt;&lt;br /&gt;&lt;li&gt;&lt;a target="_blank" href="http://www.bjornman.com/mb-in-awx.html?trailblazer"&gt;trailblazer&lt;/a&gt;&lt;br /&gt;&lt;/ul&gt;&lt;br /&gt;&lt;span style="font-style:italic;"&gt;Go play!&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1085297750981705306-7049301171514254685?l=bjornman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bjornman.blogspot.com/feeds/7049301171514254685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1085297750981705306&amp;postID=7049301171514254685' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/7049301171514254685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/7049301171514254685'/><link rel='alternate' type='text/html' href='http://bjornman.blogspot.com/2006/09/showing-motionbased-activities-in.html' title='Showing MotionBased Activities in ArcWeb Explorer'/><author><name>Björn</name><uri>http://www.blogger.com/profile/14184776649844595014</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='http://bjornman.com/images/bjornman100.jpg'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-1085297750981705306.post-5817867465991003307</id><published>2006-09-03T18:54:00.000-07:00</published><updated>2006-10-10T17:38:30.162-07:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='GeoRSS'/><title type='text'>Parsing GeoRSS</title><content type='html'>&lt;div&gt;The main problem with GeoRSS is that there are several GeoRSS standards for specifying locations.  This makes it hard both for those creating the GeoRSS feeds and those doing something with those feeds.  See for example &lt;a href="http://www.digitaltrailblazer.com/2006/08/whats_the_geors.html"&gt;Aaron's blog&lt;/a&gt; and the &lt;a href="http://www.georss.org/blog/?p=38"&gt;GeoRSS response&lt;/a&gt;.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://georss.org/simple.html"&gt;&lt;b&gt;Simple GeoRSS&lt;/b&gt; - http://georss.org/simple.html&lt;/a&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;georss:point&amp;gt;45.256 -71.92&amp;lt;/georss:point&amp;gt;&lt;/code&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://georss.org/gml.html"&gt;&lt;b&gt;GeoRSS GML&lt;/b&gt; - http://georss.org/gml.html&lt;/a&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;georss:where&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;gml:Point&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;lt;gml:pos&amp;gt;45.256 -71.92&amp;lt;/gml:pos&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;/gml:Point&amp;gt;&lt;br /&gt;&amp;lt;/georss:where&amp;gt;&lt;/code&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://www.w3.org/2003/01/geo/"&gt;&lt;b&gt;W3C "formal"&lt;/b&gt; - http://www.w3.org/2003/01/geo/&lt;/a&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;geo:Point&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;geo:lat&amp;gt;55.701&amp;lt;/geo:lat&amp;gt;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;lt;geo:long&amp;gt;12.552&amp;lt;/geo:long&amp;gt;&lt;br /&gt;&amp;lt;/geo:Point&amp;gt;&lt;/code&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;&lt;a href="http://www.w3.org/2003/01/geo/"&gt;&lt;b&gt;W3C "casual"&lt;/b&gt; - http://www.w3.org/2003/01/geo/&lt;/a&gt;&lt;br /&gt;&lt;code&gt;&amp;lt;geo:lat&amp;gt;55.701&amp;lt;/geo:lat&amp;gt;&lt;br /&gt;&amp;lt;geo:long&amp;gt;12.552&amp;lt;/geo:long&amp;gt;&lt;/code&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;So far it seems to me that the latter one - "W3C casual" is the most widely used.&lt;/div&gt;&lt;br /&gt;&lt;div&gt;I wanted to be able to map a georss feed onto a map myself (and work on my javascript skills).  I could have used some of the built-in GeoRSS support, but I wanted more control of both display of the the markers as well as being able to display them outside the map.&lt;br /&gt;&lt;/div&gt;&lt;br /&gt;&lt;div&gt;Here's the sample javascript I came up with to parse any of these georss feeds: &lt;br /&gt;&lt;code&gt;var items = xmlDoc.documentElement.getElementsByTagName("item");&lt;br /&gt;for( var i = 0; i &lt; items.length; i++ )&lt;br /&gt;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;var itemtags = items.item(i).getElementsByTagName("*");&lt;br /&gt;&amp;nbsp;&amp;nbsp;for ( var j = 0; j &lt; itemtags.length; j++ )&lt;br /&gt;&amp;nbsp;&amp;nbsp;{&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var tag = itemtags[j].nodeName;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;if (tag == 'geo:lat') {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var lat = itemtags[j].firstChild.data;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else if (tag == 'geo:long') {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var lon = itemtags[j].firstChild.data;&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else if (tag == 'georss:point') {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var ptArr=itemtags[j].firstChild.data.split("&amp;nbsp;");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var lat = ptArr[0];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var lon = ptArr[1];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;} else if (tag == 'gml:pos') {&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var ptArr=itemtags[j].firstChild.data.split("&amp;nbsp;");&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var lat = ptArr[0];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;var lon = ptArr[1];&lt;br /&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;&amp;nbsp;&amp;nbsp;}&lt;br /&gt;}&lt;/code&gt; &lt;br /&gt;[See a &lt;a href="http://www.bjornman.com/parse-georss-with-javascript.html"&gt;live sample&lt;/a&gt;]&lt;/div&gt;&lt;br /&gt;&lt;div&gt;It seems simple, maybe I'm missing something?&lt;/div&gt;&lt;br /&gt;&lt;/span&gt;&lt;div class="blogger-post-footer"&gt;&lt;img width='1' height='1' src='https://blogger.googleusercontent.com/tracker/1085297750981705306-5817867465991003307?l=bjornman.blogspot.com' alt='' /&gt;&lt;/div&gt;</content><link rel='replies' type='application/atom+xml' href='http://bjornman.blogspot.com/feeds/5817867465991003307/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=1085297750981705306&amp;postID=5817867465991003307' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/5817867465991003307'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/1085297750981705306/posts/default/5817867465991003307'/><link rel='alternate' type='text/html' href='http://bjornman.blogspot.com/2006/09/parsing-georss.html' title='Parsing GeoRSS'/><author><name>Björn</name><uri>http://www.blogger.com/profile/14184776649844595014</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='32' height='28' src='http://bjornman.com/images/bjornman100.jpg'/></author><thr:total>2</thr:total></entry></feed>
