<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	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/"
	>

<channel>
	<title>Kudos Ltda. - Blog &#187; adobe flex 3</title>
	<atom:link href="http://blog.gkudos.com/tag/adobe-flex-3/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.gkudos.com</link>
	<description>.: Open Systems, Open Ideas :.</description>
	<lastBuildDate>Thu, 29 Apr 2010 23:25:26 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>Observatory of Presidential Elections &#8211; Colombia 2010</title>
		<link>http://blog.gkudos.com/2010/03/05/observatory-of-presidential-elections-colombia-2010/</link>
		<comments>http://blog.gkudos.com/2010/03/05/observatory-of-presidential-elections-colombia-2010/#comments</comments>
		<pubDate>Sat, 06 Mar 2010 00:18:17 +0000</pubDate>
		<dc:creator>juanmendez</dc:creator>
				<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Datos Geográficos]]></category>
		<category><![CDATA[Rich Internet Applications]]></category>
		<category><![CDATA[adobe flex 3]]></category>
		<category><![CDATA[Arcgis Server Flex API]]></category>
		<category><![CDATA[mashup]]></category>

		<guid isPermaLink="false">http://blog.gkudos.com/?p=331</guid>
		<description><![CDATA[
Online Link: http://elecciones.gkudos.com/
Follow us on Twitter:    
The application “Observatorio Elecciones Colombia 2010” (Observatory of Presidential Elections &#8211; Colombia 2010)  joins  together different sources of information from the web that publish news  about several Colombian political facts related to the presidential  candidates and pre-candidates. For its representation on the map, the  [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;">
<div id="attachment_334" class="wp-caption aligncenter" style="width: 592px"><a href="http://elecciones.gkudos.com" target="_blank"><img class="size-full wp-image-334  " title="Observatory of Presidential Elections - Colombia 2010" src="http://blog.gkudos.com/wp-content/uploads/elecciones_011.jpg" alt="Observatory of Presidential Elections - Colombia 2010" width="582" height="276" /></a><p class="wp-caption-text">Observatory of Presidential Elections - Colombia 2010</p></div>
<p>Online Link: <a href="http://elecciones.gkudos.com/" target="_blank">http://elecciones.gkudos.com/</a></p>
<p>Follow us on Twitter:    <a href="http://www.twitter.com/elcolbot" target="_blank"><img style="border: 0pt none; margin: 0px;" src="http://twitter-badges.s3.amazonaws.com/t_small-a.png" border="0" alt="Follow elcolbot on Twitter" width="22" height="22" /></a></p>
<p>The application <em>“<a href="http://elecciones.gkudos.com/" target="_blank"><strong>Observatorio Elecciones Colombia 2010</strong></a>”</em> (<em>Observatory of Presidential Elections &#8211; Colombia 2010</em>)  joins  together different sources of information from the web that publish news  about several Colombian political facts related to the presidential  candidates and pre-candidates. For its representation on the map, the  application gets the geographical location, candidates’ names, political  party and some relevant topics posted in the news which are extracted  from newspapers, magazines, social networks like Twitter, Facebook or  even their personal web pages.</p>
<p><object width="425" height="350"><param name="movie" value="O7zm2A8Sxso"></param><param name="wmode" value="transparent" ></param><embed src="http://www.youtube.com/v/O7zm2A8Sxso" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></p>
<p>With the whole extracted  information, the user can make an endless number of combinations that  allows him to put together several kind of analysis like: Most frequent  topics of each one of the pre-candidates, medias that post the most  information about related subjects, possible routes of the candidates  across the country along their political campaign, names of the  candidates and pre-candidates that are more frequently in some states of  the country, among others.</p>
<div id="attachment_340" class="wp-caption aligncenter" style="width: 337px"><a href="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_partido1.jpg" target="_blank"><img class="size-full wp-image-340 " title="Search by Political Party" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_partido1.jpg" alt="Search by Political Party" width="327" height="338" /></a><p class="wp-caption-text">Search by Political Party</p></div>
<p><span id="more-331"></span></p>
<p><strong>Technical Details</strong></p>
<p>The  application was developed according to the requirements of each one of  the phases listed below:</p>
<p><strong>Integration and Information  Retrieval</strong></p>
<p>To perform the information retrieval that’s  used as the system input, it was taken about 70 RSS sources with news  and information related to Colombia and the electoral process that’s  currently taking place in this country.</p>
<p>Among those  sources of information are listed the most relevant newspapers of the  country, magazines, TV news, radio broadcasts, blogs, Twitter and  Facebook pages of the candidates, official sites of the campaigns and  governmental entities of the country.</p>
<p>There were created  several components that are periodically extracting new news from each  one of the media that publishes the information in its web site.</p>
<p style="text-align: center;">
<div id="attachment_339" class="wp-caption aligncenter" style="width: 384px"><a href="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_medio1.jpg"><img class="size-full wp-image-339  " title="Search by Media" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_medio1.jpg" alt="Search by Media" width="374" height="386" /></a><p class="wp-caption-text">Search by Media</p></div>
<p><strong>Selection,  filtering and data transformation.</strong></p>
<p><strong> </strong></p>
<p>Because of  the diversity in the RSS sources and codification methods of the  existing information, it was necessary to carry out a cleaning process  (filter) and transformation of the data which eases the following  processes of analysis and specific data extraction.</p>
<p>This process  makes possible to generate a unified model of information that’s stored  in a repository of specific data for this system.</p>
<p><strong>Analysis  and Data Mining</strong></p>
<p><strong> </strong></p>
<p>In the information extraction  knowledge generation there were made mainly 2 tasks:</p>
<ul>
<li><strong>Classification of the news according to their  topics:</strong>
<ul>
<li> A document sorting process is done  over the data stored in the system following the next criterions:  Political characters related to the elections, Political Parties, Main  subjects that influence the electors (Education, Health, Security etc.),  controversial themes that can affect the election (Corruption, vote  buying, “Plan Colombia” etc.) and some other interesting subjects  (Abstention, Interview among others). This data classification and word  extraction process was done with the aid of some tools that allows to  identify topics using a controlled vocabulary based on a specific  ontology defined for the matter of interest: The 2010 Colombian  elections.</li>
</ul>
</li>
</ul>
<div id="attachment_336" class="wp-caption aligncenter" style="width: 590px"><a href="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_map1.jpg"><img class="size-full wp-image-336" title="Statistical Charts" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_map1.jpg" alt="Statistical Charts" width="580" height="276" /></a><p class="wp-caption-text">Statistical Charts</p></div>
<ul>
<li><strong>Georeferencing:</strong>
<ul type="disc">
<li>The  georeferencing process is the process in which a geographical  coordinate is assigned to each one of the existing documents in the  system. To make this process it was necessary to use some of the tools  resources and activities listed bellow:<span style="font-family: &quot;courier new&quot;;"> </span>
<ul>
<li><span style="font-family: &quot;courier new&quot;;"> </span>Colombian Gazetteer Database (<a href="http://en.wikipedia.org/wiki/Gazetteer">http://en.wikipedia.org/wiki/Gazetteer</a>).<span style="font-family: &quot;courier new&quot;;"> </span></li>
<li><span style="font-family: &quot;courier new&quot;;"> </span>Recognition of Geographical Entities over Natural Language  Processing and Artificial Intelligence techniques. For this process some  lists of synonyms about geographical terms and common Colombian names  were included. These kinds of lists allow solve the disambiguation  issues.<span style="font-family: &quot;courier  new&quot;;"><br />
</span></li>
<li><span style="font-family: &quot;courier  new&quot;;"> </span>Detection and correction of invalid  coordinates through spatial analysis processes.</li>
<li>Assignation of states and cities for each one of the articles  using Spatial Analysis techniques.</li>
<li>Coordinates  Transformation using spatial analysis processes in the data base engine.</li>
</ul>
</li>
</ul>
</li>
</ul>
<div id="attachment_338" class="wp-caption aligncenter" style="width: 625px"><a href="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_depto1.jpg"><img class="size-full wp-image-338" title="Search by State" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_depto1.jpg" alt="Search by State" width="615" height="293" /></a><p class="wp-caption-text">Search by State</p></div>
<p><strong>Use  and Broadcasting</strong></p>
<p>For the interactive visualization  and querying of information a Geographical Rich Internet Application  with geographical components was developed. This application allows the  interactive viewing of the news events using a map with components to  discover the different news by selecting the query options related to  topics, locations, dates, or general keywords.</p>
<p>The  technologies and tools used to develop this application are listed  bellow:</p>
<ul type="disc">
<li>Esri ArcGis Server Flex API</li>
<li>Esri  ArcGis Online Basemaps</li>
<li>Adobe Flex 3</li>
<li>BlazeDs</li>
<li>Spring  Framework</li>
<li>Hibernate</li>
<li>Full-text enterprise search server.</li>
</ul>
<div id="attachment_337" class="wp-caption aligncenter" style="width: 386px"><a href="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_pie1.jpg"><img class="size-full wp-image-337" title="Search Results by Topic" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_pie1.jpg" alt="Search Results by Topic" width="376" height="402" /></a><p class="wp-caption-text">Search Results by Topic</p></div>
<p><strong>Included data sources:</strong><br />
(New information sources will may  be included)</p>
<ul type="disc">
<li>Alvaro Leyva &#8211; Twitter</li>
<li> Andrés  Felipe Arias &#8211; Facebook</li>
<li> Andres Felipe Arias &#8211; Twitter</li>
<li> Antanas  Mockus &#8211; Facebook</li>
<li> Antanas Mockus &#8211; Twitter Feed</li>
<li> Cambio</li>
<li> Canal Institucional</li>
<li> Caracol.com.co</li>
<li> Centro  de Medios Independientes de Colombia</li>
<li> Cinep</li>
<li> City TV &#8211;  Elecciones 2010</li>
<li> CityTV Twitter</li>
<li> Cm&amp; Twitter</li>
<li> Crónica  del Quindío</li>
<li> Diario de Occidente</li>
<li> Dinero</li>
<li> El  Colombiano &#8211; Política</li>
<li> Elecciones 2010 &#8211; Blogspot</li>
<li> El  Espectador &#8211; Principal</li>
<li> El Liberal</li>
<li> El Meridiano de  Córdoba</li>
<li> El Nuevo Día</li>
<li> El País</li>
<li> El tiempo  &#8211;  Elecciones 2010</li>
<li> El tiempo &#8211; Política</li>
<li> El tiempo &#8211;  Titulares</li>
<li> El universal &#8211; Política</li>
<li> Enrique Peñalosa &#8211;  Twitter</li>
<li> Gacetilla &#8211; Colombia</li>
<li> Germán Vargas Lleras &#8211;  Facebook</li>
<li> Germán Vargas Lleras &#8211; Twitter</li>
<li> Google News  Destacadas</li>
<li> Google News Nacional</li>
<li> Gustavo Petro &#8211;  Blog</li>
<li> Gustavo Petro &#8211; Facebook</li>
<li> Gustavo Petro &#8211;  Twitter</li>
<li> Jose Galat &#8211; Twitter</li>
<li> LaFm Noticias</li>
<li> La  Opinión</li>
<li> La Palabra Digital</li>
<li> La República</li>
<li> La  Silla Vacía &#8211; Historias</li>
<li> Leyva Presidente</li>
<li> Lucho  Garzon &#8211; Facebook</li>
<li> Lucho Garzón &#8211; Twitter</li>
<li> Martha  Lucía Ramírez</li>
<li> Martha Lucía Ramírez &#8211; Twitter</li>
<li> Noemí  Sanín &#8211; Facebook</li>
<li> Noemi Sanin &#8211; Prensa</li>
<li> Noticias Uno &#8211;  Twitter</li>
<li> Portafolio</li>
<li> Radio Santafé &#8211; Elecciones</li>
<li> Radio  Santafé &#8211; Principal</li>
<li> Rafael Pardo Rueda &#8211; Facebook</li>
<li> Rafael  Pardo &#8211; Twitter</li>
<li> Rcn Canal Noticias</li>
<li> Rcn Radio</li>
<li> Registraduría</li>
<li> Semana.com</li>
<li> Sergio Fajardo &#8211; Facebook</li>
<li> Sergio  Fajardo &#8211; Twitter</li>
<li> Terra Noticias</li>
<li> TransparenciaColombia.org.co</li>
<li> Vanguardia Liberal &#8211; Política</li>
<li> Vanguardia Liberal &#8211;  Principal</li>
<li> Vote Bien &#8211; Twitter Feed</li>
<li> WRadio</li>
<li> Youtube  &#8211; Elecciones 2010 Colombia</li>
</ul>
<div id="attachment_333" class="wp-caption aligncenter" style="width: 363px"><a href="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_politico1.jpg"><img class="size-full wp-image-333" title="Search By Politician" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_politico1.jpg" alt="Search By Politician" width="353" height="373" /></a><p class="wp-caption-text">Search By Politician</p></div>
<p><strong>Image Gallery</strong></p>

<a href='http://blog.gkudos.com/2010/03/05/observatory-of-presidential-elections-colombia-2010/elecciones_02_busqueda_politico-2/' title='Search By Politician'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_politico1-150x150.jpg" class="attachment-thumbnail" alt="Search By Politician" title="Search By Politician" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatory-of-presidential-elections-colombia-2010/elecciones_01-2/' title='Observatory of Presidential Elections - Colombia 2010'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_011-150x150.jpg" class="attachment-thumbnail" alt="Observatory of Presidential Elections - Colombia 2010" title="Observatory of Presidential Elections - Colombia 2010" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatory-of-presidential-elections-colombia-2010/elecciones_02_busqueda_chart-2/' title='Results Chart'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart1-150x150.jpg" class="attachment-thumbnail" alt="Results Chart" title="Results Chart" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatory-of-presidential-elections-colombia-2010/elecciones_02_busqueda_chart_map-2/' title='Statistical Charts'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_map1-150x150.jpg" class="attachment-thumbnail" alt="Statistical Charts" title="Statistical Charts" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatory-of-presidential-elections-colombia-2010/elecciones_02_busqueda_chart_pie-2/' title='Search Results by Topic'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_pie1-150x150.jpg" class="attachment-thumbnail" alt="Search Results by Topic" title="Search Results by Topic" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatory-of-presidential-elections-colombia-2010/elecciones_02_busqueda_depto-2/' title='Search by State'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_depto1-150x150.jpg" class="attachment-thumbnail" alt="Search by State" title="Search by State" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatory-of-presidential-elections-colombia-2010/elecciones_02_busqueda_medio-2/' title='Search by Media'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_medio1-150x150.jpg" class="attachment-thumbnail" alt="Search by Media" title="Search by Media" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatory-of-presidential-elections-colombia-2010/elecciones_02_busqueda_partido-2/' title='Search by Political Party'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_partido1-150x150.jpg" class="attachment-thumbnail" alt="Search by Political Party" title="Search by Political Party" /></a>

]]></content:encoded>
			<wfw:commentRss>http://blog.gkudos.com/2010/03/05/observatory-of-presidential-elections-colombia-2010/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Observatorio Elecciones Colombia 2010</title>
		<link>http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/</link>
		<comments>http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/#comments</comments>
		<pubDate>Fri, 05 Mar 2010 23:42:13 +0000</pubDate>
		<dc:creator>juanmendez</dc:creator>
				<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Datos Geográficos]]></category>
		<category><![CDATA[Rich Internet Applications]]></category>
		<category><![CDATA[adobe flex 3]]></category>
		<category><![CDATA[Arcgis Server Flex API]]></category>
		<category><![CDATA[colombia]]></category>
		<category><![CDATA[elecciones]]></category>
		<category><![CDATA[elecciones2010]]></category>
		<category><![CDATA[Information Visualization]]></category>
		<category><![CDATA[mashup]]></category>
		<category><![CDATA[visualización de Información]]></category>

		<guid isPermaLink="false">http://blog.gkudos.com/?p=278</guid>
		<description><![CDATA[
Nuevo:

Twitter: Sigue todas las noticias de las elecciones con nuestro bot de  Twitter  @elcolbot 
Estadísticas: Aquí puedes consultar diferentes estadísticas y gráficos  generados con la información recopilada por el Observatorio Electoral:   Estadísticas Observatorio Electoral 
Consulta Interactiva: http://elecciones.gkudos.com/ (Puede realizar consultas interactivas de las noticias por Candidato, Partido Político, Temas Principales, Temas polémicos, Departamento, Fecha de [...]]]></description>
			<content:encoded><![CDATA[<p style="text-align: center;"><a href="http://elecciones.gkudos.com" target="_blank"><img class="size-full wp-image-283  aligncenter" src="http://blog.gkudos.com/wp-content/uploads/elecciones_01.jpg" alt="Observatorio Elecciones Colombia 2010" width="530" height="252" /></a></p>
<p><strong>Nuevo:</strong></p>
<ul>
<li><strong>Twitter:</strong> Sigue todas las noticias de las elecciones con nuestro bot de  Twitter <a href="http://twitter.com/elcolbot"> @elcolbot</a> <a href="http://www.twitter.com/elcolbot" target="_blank"><img style="border: 0pt none; margin: 0px;" src="http://twitter-badges.s3.amazonaws.com/t_small-a.png" border="0" alt="Follow elcolbot on Twitter" width="22" height="22" /></a></li>
<li><strong>Estadísticas:</strong> Aquí puedes consultar diferentes estadísticas y gráficos  generados con la información recopilada por el Observatorio Electoral:   <a href="http://blog.gkudos.com/tag/elecciones2010/">Estadísticas Observatorio Electoral </a></li>
<li><strong>Consulta Interactiva:</strong> <a href="http://elecciones.gkudos.com/">http://elecciones.gkudos.com/</a> (Puede realizar consultas interactivas de las noticias por Candidato, Partido Político, Temas Principales, Temas polémicos, Departamento, Fecha de publicación y Fuente que publica la información)</li>
</ul>
<p><strong>Descripción:</strong></p>
<p>La aplicación <a href="http://elecciones.gkudos.com/">“<em>Observatorio Elecciones Colombia 2010</em>”</a> combina  diferentes fuentes de información de la Web que publican noticias acerca  de acontecimientos políticos colombianos relacionados con los  candidatos y precandidatos presidenciales. Para su representación en el  mapa, la aplicación extrae la ubicación geográfica de cada una de las  noticias, el nombre del candidato, su afiliación política y temas  mencionadas por los candidatos en sus intervenciones públicas o  colocadas en redes sociales como Twitter y Facebook o en sus páginas  personales.</p>
<p><object width="425" height="350"><param name="movie" value="O7zm2A8Sxso"></param><param name="wmode" value="transparent" ></param><embed src="http://www.youtube.com/v/O7zm2A8Sxso" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></p>
<p>Con toda la información extraída, el usuario puede  realizar un sin numero de combinaciones que le permiten realizar varios  tipos de análisis tales como: los temas que mas recurrentes de cada uno  de los precandidatos, los canales de comunicación que mas noticias  publican al respecto, los posibles itinerarios de los candidatos y  precandidatos durante su campaña política, los candidatos y  precandidatos que mas van a un determinado departamento, entre otros.</p>
<div id="attachment_289" class="wp-caption aligncenter" style="width: 373px"><strong><a title="Búsqueda por Partido" href="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_partido.jpg" target="_blank"><img class="size-full wp-image-289    " title="Búsqueda por Partido" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_partido.jpg" alt="Búsqueda por Partido" width="363" height="376" /></a></strong><p class="wp-caption-text">Búsqueda por Partido</p></div>
<p><span id="more-278"></span></p>
<p><strong>Detalles Técnicos de la Aplicación</strong></p>
<p>La aplicación fué  desarrollada según las necesidades de cada una de las fases descritas a  continuación:</p>
<p><strong>Integración y Recopilación de Información</strong></p>
<p>Para  la recopilación de información que sirve como insumo para este sistema  se tomaron alrededor de 70 fuentes RSS con noticias e información  relacionadas con Colombia y el proceso electoral<br />
que se está  desarrollando actualmente en Colombia.</p>
<p>Entre dichas fuentes de  noticias se encuentran los principales diarios del país, revistas,  noticieros, programas radiales, blogs, cuentas de twitter y facebook de  los diferentes candidatos, sitios oficiales de las campañas y entidades  gubernamentales del país.</p>
<p>Se crearon diferentes componentes que  periódicamente están extrayendo las nuevas noticias que cada uno de los  medios va publicando día a día en su sitio web.</p>
<div id="attachment_288" class="wp-caption aligncenter" style="width: 373px"><a href="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_medio.jpg" target="_blank"><img class="size-full wp-image-288 " title="Búsqueda por Medio de Comunicación" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_medio.jpg" alt="Búsqueda por Medio de Comunicación" width="363" height="374" /></a><p class="wp-caption-text">Búsqueda por Medio de Comunicación</p></div>
<p><strong>Selección,  limpieza y transformación de datos.</strong></p>
<p>Dada la diversidad de  formatos RSS y formas de codificación de la información existente, fué  necesario realizar un proceso de limpieza y transformación de los datos  que facilitara los procesos posteriores de análisis y extracción de  información específica.<br />
Este paso permite generar un modelo  unificado de información que se almacena en un repositorio de datos  específico para este sistema.</p>
<p><strong>Análisis y Minería de Datos</strong></p>
<p>En  esta fase de extracción de información para su conversión en  conocimiento se realizan principalmente 2 tareas:</p>
<ul>
<li><strong>Clasificación  de las Noticias según temas:</strong>
<ul>
<li>Se realiza una  clasificación de los documentos almacenados en el sistema según los  siguientes criterios: Personajes políticos relacionados con las  elecciones, Partidos Polìticos,  Temas principales para la toma de  decisión del votante (Ejm: Educación, Salud, Seguridad), Temas polémicos  que pueden influir en la elección (Ejm: Corrupción, Compra de Votos,  Plan Colombia) y otros temas de interés (Ejm: Abstención, Encuesta,  Entrevista).  Este proceso de clasificación de información y extracción  de palabras claves se realiza gracias a herramientas que permiten  identificar temas utilizando un vocabulario controlado por Ontología  específica definida para el tema de las elecciones presidenciales de  Colombia en el año 2010.</li>
</ul>
</li>
</ul>
<div id="attachment_285" class="wp-caption aligncenter" style="width: 607px"><a href="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_map.jpg"><img class="size-full wp-image-285" title="Gráficos Estadísticos" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_map.jpg" alt="Gráficos Estadísticos" width="597" height="284" /></a><p class="wp-caption-text">Gráficos Estadísticos</p></div>
<ul>
<li><strong>Georreferenciación:</strong>
<ul>
<li>La  georreferenciación consiste en el proceso de asignar una coordenada  geográfica a cada uno de los documentos existentes en el sistema.  Para  realizar este proceso fué necesario recurrir a recursos y actividades  como los que se enuncian a continuación:
<ul>
<li>Base de Datos de  Gacetero (http://en.wikipedia.org/wiki/Gazetteer) de Colombia.</li>
<li>Reconocimiento  de Entidades Geográficas a través de técnicas de Procesamiento del  Lenguaje Natural e Inteligencia Artificial. Para este proceso se  incluyeron también listas de sinónimos de términos geográficos y listas  de nombres comunes en el idioma español. Este tipo de listas permiten  resolver problemas de ambiguedad de términos y palabras comunes que  generan resultados erróneos.</li>
<li>Detección y corrección de  Coordenadas no Válidas a través de procesos de análisis espacial.</li>
<li>Asignación  de Departamentos y Munipios para cada uno de los artículos utilizando  técnicas de Análisis Espacial.</li>
<li>Transformación de coordenadas  utilizando procesos de análisis espacial ejecutados en el motor de base  de datos.</li>
</ul>
</li>
</ul>
</li>
</ul>
<div id="attachment_287" class="wp-caption aligncenter" style="width: 649px"><a rel="attachment wp-att-287" href="http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/elecciones_02_busqueda_depto/"><img class="size-full wp-image-287" title="Búsqueda por Departamento" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_depto.jpg" alt="Búsqueda por Departamento" width="639" height="304" /></a><p class="wp-caption-text">Búsqueda por Departamento</p></div>
<p><strong>Difusión y Uso</strong></p>
<p>Para  la visualización y consulta interactiva de la información se implementó  una aplicación geográfica enriquecida para internet (RIA) con  componentes geográficos.<br />
Esta aplicación permite visualizar de forma  interactiva los eventos de noticias utilizando un mapa enriquecido con  componentes que permiten descubrir las diferentes noticias utilizando  opciones de búsqueda por tema, lugar, fecha o palabra clave en general.</p>
<p>Para  la implementación de esta aplicación se utilizaron herramientas tales  como las siguientes:</p>
<ul>
<li>Esri ArcGis Server Flex API</li>
<li>Esri  ArcGis Online Basemaps</li>
<li>Adobe Flex 3</li>
<li>BlazeDs</li>
<li>Spring  Framework</li>
<li>Hibernate</li>
<li>Servicio empresarial de búsquedas  de texto completo</li>
</ul>
<p><strong> </strong></p>
<div id="attachment_286" class="wp-caption aligncenter" style="width: 414px"><strong><strong><a href="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_pie.jpg"><img class="size-full wp-image-286" title="Gráfico estadístico de resultados por tema principal" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_pie.jpg" alt="Gráfico estadístico de resultados por tema principal" width="404" height="432" /></a></strong></strong><p class="wp-caption-text">Gráfico estadístico de resultados por tema principal</p></div>
<p><strong> </strong></p>
<p><strong>Listado de fuentes de información Utilizadas:</strong></p>
<p>(Nota: Se incluirán nuevas fuentes de información  según se encuentren)</p>
<ul>
<li>Alvaro Leyva &#8211; Twitter</li>
<li> Andrés  Felipe Arias &#8211; Facebook</li>
<li> Andres Felipe Arias &#8211; Twitter</li>
<li> Antanas  Mockus &#8211; Facebook</li>
<li> Antanas Mockus &#8211; Twitter Feed</li>
<li> Cambio</li>
<li> Canal Institucional</li>
<li> Caracol.com.co</li>
<li> Centro  de Medios Independientes de Colombia</li>
<li> Cinep</li>
<li> City TV &#8211;  Elecciones 2010</li>
<li> CityTV Twitter</li>
<li> Cm&amp; Twitter</li>
<li> Crónica  del Quindío</li>
<li> Diario de Occidente</li>
<li> Dinero</li>
<li> El  Colombiano &#8211; Política</li>
<li> Elecciones 2010 &#8211; Blogspot</li>
<li> El  Espectador &#8211; Principal</li>
<li> El Liberal</li>
<li> El Meridiano de  Córdoba</li>
<li> El Nuevo Día</li>
<li> El País</li>
<li> El tiempo  &#8211;  Elecciones 2010</li>
<li> El tiempo &#8211; Política</li>
<li> El tiempo &#8211;  Titulares</li>
<li> El universal &#8211; Política</li>
<li> Enrique Peñalosa &#8211;  Twitter</li>
<li> Gacetilla &#8211; Colombia</li>
<li> Germán Vargas Lleras &#8211;  Facebook</li>
<li> Germán Vargas Lleras &#8211; Twitter</li>
<li> Google News  Destacadas</li>
<li> Google News Nacional</li>
<li> Gustavo Petro &#8211;  Blog</li>
<li> Gustavo Petro &#8211; Facebook</li>
<li> Gustavo Petro &#8211;  Twitter</li>
<li> Jose Galat &#8211; Twitter</li>
<li> LaFm Noticias</li>
<li> La  Opinión</li>
<li> La Palabra Digital</li>
<li> La República</li>
<li> La  Silla Vacía &#8211; Historias</li>
<li> Leyva Presidente</li>
<li> Lucho  Garzon &#8211; Facebook</li>
<li> Lucho Garzón &#8211; Twitter</li>
<li> Martha  Lucía Ramírez</li>
<li> Martha Lucía Ramírez &#8211; Twitter</li>
<li> Noemí  Sanín &#8211; Facebook</li>
<li> Noemi Sanin &#8211; Prensa</li>
<li> Noticias Uno &#8211;  Twitter</li>
<li> Portafolio</li>
<li> Radio Santafé &#8211; Elecciones</li>
<li> Radio  Santafé &#8211; Principal</li>
<li> Rafael Pardo Rueda &#8211; Facebook</li>
<li> Rafael  Pardo &#8211; Twitter</li>
<li> Rcn Canal Noticias</li>
<li> Rcn Radio</li>
<li> Registraduría</li>
<li> Semana.com</li>
<li> Sergio Fajardo &#8211; Facebook</li>
<li> Sergio  Fajardo &#8211; Twitter</li>
<li> Terra Noticias</li>
<li> TransparenciaColombia.org.co</li>
<li> Vanguardia Liberal &#8211; Política</li>
<li> Vanguardia Liberal &#8211;  Principal</li>
<li> Vote Bien &#8211; Twitter Feed</li>
<li> WRadio</li>
<li> Youtube  &#8211; Elecciones 2010 Colombia</li>
</ul>
<div id="attachment_284" class="wp-caption aligncenter" style="width: 349px"> </dt>
</dl>
</div>
<div class="mceTemp mceIEcenter">
<dl id="attachment_282" class="wp-caption aligncenter" style="width: 349px;">
<dt class="wp-caption-dt"><a href="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_politico.jpg"><img class="size-full wp-image-282" title="Búsqueda por Político" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_politico.jpg" alt="Búsqueda por Político" width="339" height="360" /></a><p class="wp-caption-text">Búsqueda por Político</p></div>
<p><strong>Galería de Imágenes</strong></p>

<a href='http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/elecciones_02_busqueda_politico/' title='Búsqueda por Político'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_politico-150x150.jpg" class="attachment-thumbnail" alt="Búsqueda por Político" title="Búsqueda por Político" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/elecciones_01/' title='Observatorio Elecciones Colombia 2010'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_01-150x150.jpg" class="attachment-thumbnail" alt="Observatorio Elecciones Colombia 2010" title="Observatorio Elecciones Colombia 2010" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/elecciones_02_busqueda_chart/' title='Resultado de Consulta - Diagrama de Barras'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart-150x150.jpg" class="attachment-thumbnail" alt="Resultado de Consulta - Diagrama de Barras" title="Resultado de Consulta - Diagrama de Barras" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/elecciones_02_busqueda_chart_map/' title='Gráficos Estadísticos'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_map-150x150.jpg" class="attachment-thumbnail" alt="Gráficos Estadísticos" title="Gráficos Estadísticos" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/elecciones_02_busqueda_chart_pie/' title='Gráfico estadístico de resultados por tema principal'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_chart_pie-150x150.jpg" class="attachment-thumbnail" alt="Gráfico estadístico de resultados por tema principal" title="Gráfico estadístico de resultados por tema principal" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/elecciones_02_busqueda_depto/' title='Búsqueda por Departamento'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_depto-150x150.jpg" class="attachment-thumbnail" alt="Búsqueda por Departamento" title="Búsqueda por Departamento" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/elecciones_02_busqueda_medio/' title='Búsqueda por Medio de Comunicación'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_medio-150x150.jpg" class="attachment-thumbnail" alt="Búsqueda por Medio de Comunicación" title="Búsqueda por Medio de Comunicación" /></a>
<a href='http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/elecciones_02_busqueda_partido/' title='Búsqueda por Partido'><img width="150" height="150" src="http://blog.gkudos.com/wp-content/uploads/elecciones_02_busqueda_partido-150x150.jpg" class="attachment-thumbnail" alt="Búsqueda por Partido" title="Búsqueda por Partido" /></a>

]]></content:encoded>
			<wfw:commentRss>http://blog.gkudos.com/2010/03/05/observatorio-elecciones-colombia-2010/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>Geo Event Finder: Find musical events near you!</title>
		<link>http://blog.gkudos.com/2010/02/22/geo-event-finder-find-musical-events-near-you/</link>
		<comments>http://blog.gkudos.com/2010/02/22/geo-event-finder-find-musical-events-near-you/#comments</comments>
		<pubDate>Mon, 22 Feb 2010 20:30:34 +0000</pubDate>
		<dc:creator>juanmendez</dc:creator>
				<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Rich Internet Applications]]></category>
		<category><![CDATA[adobe flex 3]]></category>
		<category><![CDATA[Arcgis Server Flex API]]></category>
		<category><![CDATA[mashup]]></category>
		<category><![CDATA[Youtube API]]></category>

		<guid isPermaLink="false">http://blog.gkudos.com/?p=263</guid>
		<description><![CDATA[
Online Link: http://geoevents.gkudos.com/
Geo Event Finder,  http://geoevents.gkudos.com/ , is a Mashup (A Mashup is a web page or application that combines data or functionality from two or more external sources to create a new service)  that allows to locate musical events around the world using interactive tools on the screen as searching by artist name, [...]]]></description>
			<content:encoded><![CDATA[<p><a href="http://blog.gkudos.com/wp-content/uploads/geoEventFinder_01_b.jpg" target="_blank"><img class="aligncenter size-full wp-image-245" title="geoEventFinder_01_b" src="http://blog.gkudos.com/wp-content/uploads/geoEventFinder_01_b.jpg" alt="geoEventFinder_01_b" width="559" height="268" /></a></p>
<p>Online Link: <a href="http://geoevents.gkudos.com/" target="_self">http://geoevents.gkudos.com/</a></p>
<p><a href="http://geoevents.gkudos.com/">Geo Event Finder</a>, <a href="http://geoevents.gkudos.com/"> http://geoevents.gkudos.com/</a> , is a Mashup (A <a href="http://en.wikipedia.org/wiki/Mashup_%28web_application_hybrid%29">Mashup</a> is a web page or application that combines data or functionality from two or more external sources to create a new service)  that allows to locate musical events around the world using interactive tools on the screen as searching by artist name, city name or selecting an area over the map.</p>
<p style="text-align: center;"><object width="425" height="350"><param name="movie" value="BHb8ffIUY-o"></param><param name="wmode" value="transparent" ></param><embed src="http://www.youtube.com/v/BHb8ffIUY-o" type="application/x-shockwave-flash" wmode="transparent" width="425" height="350"></embed></object></p>
<p>The user interface also allows to get detailed information of event location, artist biography, musical genres,  images, videos (using youtube)  and online links to different resources as ticket selling sites.   In addition, a user can interact with the application using map tools as zoom, re-center, a reference map and satellite and street basemaps.</p>
<p><a href="http://blog.gkudos.com/wp-content/uploads/geoEventFinder_03_b.jpg" target="_blank"><img class="aligncenter size-full wp-image-247" title="geoEventFinder_03_b" src="http://blog.gkudos.com/wp-content/uploads/geoEventFinder_03_b.jpg" alt="geoEventFinder_03_b" width="562" height="269" /></a></p>
<p>This application uses different data sources and API&#8217;s such as :</p>
<ul>
<li><a href="http://resources.esri.com/arcgisserver/apis/flex/">Arcgis Server Flex Api</a></li>
<li><a href="http://www.esri.com/software/arcgis/arcgisonline/map-services.html">Arcgis Online Basemaps</a></li>
<li><a href="http://www.last.fm/api">Last.fm Web Services</a></li>
<li><a href="http://code.google.com/p/as3-youtube-data-api">Youtube Data API</a></li>
<li><a href="http://code.google.com/intl/en/apis/youtube/flash_api_reference.html">Youtube AS3 Player API</a></li>
<li><a href="http://www.adobe.com/products/flex/" target="_blank">Adobe Flex 3</a></li>
</ul>
<p><a href="http://blog.gkudos.com/wp-content/uploads/geoEventFinder_02_b.jpg" target="_blank"><img class="aligncenter size-full wp-image-246" title="geoEventFinder_02_b" src="http://blog.gkudos.com/wp-content/uploads/geoEventFinder_02_b.jpg" alt="geoEventFinder_02_b" width="593" height="286" /></a></p>
<p>Online Link: <a href="http://geoevents.gkudos.com/"> http://geoevents.gkudos.com/</a></p>

]]></content:encoded>
			<wfw:commentRss>http://blog.gkudos.com/2010/02/22/geo-event-finder-find-musical-events-near-you/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>Modelamiento en Web de Geoinformación de la Amazonía Colombiana con el uso de Software Libre</title>
		<link>http://blog.gkudos.com/2009/11/06/modelamiento-en-web-de-geoinformacion-de-la-amazonia-colombiana-con-el-uso-de-software-libre/</link>
		<comments>http://blog.gkudos.com/2009/11/06/modelamiento-en-web-de-geoinformacion-de-la-amazonia-colombiana-con-el-uso-de-software-libre/#comments</comments>
		<pubDate>Sat, 07 Nov 2009 01:22:48 +0000</pubDate>
		<dc:creator>juanmendez</dc:creator>
				<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Mapserver]]></category>
		<category><![CDATA[Rich Internet Applications]]></category>
		<category><![CDATA[Software Libre]]></category>
		<category><![CDATA[open source]]></category>
		<category><![CDATA[adobe flex 3]]></category>
		<category><![CDATA[postgis]]></category>
		<category><![CDATA[spatial analysis]]></category>
		<category><![CDATA[web mapping]]></category>

		<guid isPermaLink="false">http://blog.gkudos.com/?p=207</guid>
		<description><![CDATA[En el marco de la Semana de Geomática del IGAC (2009) se presentó el proyecto SIAT-AC (Sistema de Información Ambiental Territorial de la Amazonía  Colombiana) desarrollado durante el presente año por Kudos Ltda para el SINCHI.
El SIAT-AC ss un proceso interinstitucional organizado como red de personas y entidades, basado en acuerdos y objetivos comunes [...]]]></description>
			<content:encoded><![CDATA[<p>En el marco de la Semana de Geomática del IGAC (2009) se presentó el proyecto SIAT-AC (Sistema de Información Ambiental Territorial de la Amazonía  Colombiana) desarrollado durante el presente año por Kudos Ltda para el SINCHI.</p>
<p>El SIAT-AC ss un proceso interinstitucional organizado como red de personas y entidades, basado en acuerdos y objetivos comunes para gestionar información ambiental de la Amazonía Colombiana, para apoyar con los datos y productos de información a los tomadores de decisiones en los procesos regionales para alcanzar el desarrollo sostenible.</p>
<p>El sistema fué desarrollado con herramientas de software libre tales como Mapserver, Postgresql, Postgis, PHP y Adobe Flex 3 SDK.</p>
<p>A continuación los Slides presentados durante la conferencia:<br />
<object width="500" height="410"><param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=sinchikudosmodelasigwebver3-091106150803-phpapp02"/><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=sinchikudosmodelasigwebver3-091106150803-phpapp02"  type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="500" height="410"></embed></object><!-- ysttest:Array
(
    [id] => 2441646&amp;doc=sinchikudosmodelasigwebver3-091106150803-phpapp02
)
--></p>
<p>En las siguientes imágenes se pueden apreciar algunas de las características del sistema:</p>
<p><em>- Adición dinámica de Capas de Información Geográfica al visor espacial:</em></p>
<p><img class="alignnone" title="Adición de Capas" src="http://blog.gkudos.com/wp-content/uploads/SinchiAdicionaCapas.jpg" alt="Adición de Capas" width="562" height="375" /></p>
<p><em>- Clasificación Temática Dinámica De Indicadores</em></p>
<p><img class="size-full wp-image-220 alignnone" title="SinchiClasificacion" src="http://blog.gkudos.com/wp-content/uploads/SinchiClasificacion.jpg" alt="SinchiClasificacion" width="536" height="354" /></p>
<p><em>-  Exportación de Datos a Google Earth</em>:<br />
<img class="size-full wp-image-222 alignnone" title="SinchiGoogleEarth" src="http://blog.gkudos.com/wp-content/uploads/SinchiGoogleEarth.jpg" alt="SinchiGoogleEarth" width="590" height="352" /></p>
<p><em>- Ejecución Interactiva de Modelos de Análisis Geoespacial:</em></p>
<p><img class="size-full wp-image-223 alignnone" title="SinchiPasosModelo" src="http://blog.gkudos.com/wp-content/uploads/SinchiPasosModelo.jpg" alt="SinchiPasosModelo" width="578" height="346" /></p>
]]></content:encoded>
			<wfw:commentRss>http://blog.gkudos.com/2009/11/06/modelamiento-en-web-de-geoinformacion-de-la-amazonia-colombiana-con-el-uso-de-software-libre/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Creando un lector de GeoRSS con Adobe Flex 3</title>
		<link>http://blog.gkudos.com/2009/09/06/creando-un-lector-de-georss-con-adobe-flex-3/</link>
		<comments>http://blog.gkudos.com/2009/09/06/creando-un-lector-de-georss-con-adobe-flex-3/#comments</comments>
		<pubDate>Sun, 06 Sep 2009 18:21:57 +0000</pubDate>
		<dc:creator>juanmendez</dc:creator>
				<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Datos Geográficos]]></category>
		<category><![CDATA[Tutorial]]></category>
		<category><![CDATA[adobe flex 3]]></category>
		<category><![CDATA[mashup]]></category>
		<category><![CDATA[Rich Internet Applications]]></category>

		<guid isPermaLink="false">http://blog.gkudos.com/?p=188</guid>
		<description><![CDATA[Uno de los ejemplos tradicionales que se desarrollan durante el aprendizaje de Flex 3 y Actionscript 3 es el de la creación de un lector de RSS. En el presente artículo se presenta una extensión de dicho ejemplo adicionando la capacidad de interpretar infomación publicada en el formato GeoRSS.


Qué es un RSS?

RSS es una familia [...]]]></description>
			<content:encoded><![CDATA[<p>Uno de los ejemplos tradicionales que se desarrollan durante el aprendizaje de Flex 3 y Actionscript 3 es el de la creación de un lector de RSS. En el presente artículo se presenta una extensión de dicho ejemplo adicionando la capacidad de interpretar infomación publicada en el formato GeoRSS.<br />
<a href="http://blog.gkudos.com/wp-content/uploads/georss.jpg"><img src="http://blog.gkudos.com/wp-content/uploads/georss.jpg" alt="" width="80%" heigth="80%" title="georss"  class="aligncenter size-medium wp-image-189" /></a></p>
<ul>
<li><strong>Qué es un RSS?</strong></li>
</ul>
<p><strong>RSS</strong> es una familia de formatos de <a title="Fuente web" href="http://es.wikipedia.org/wiki/Fuente_web">fuentes web</a> codificados en <a class="mw-redirect" title="XML" href="http://es.wikipedia.org/wiki/XML">XML</a>. Se utiliza para suministrar a suscriptores de <a title="Información" href="http://es.wikipedia.org/wiki/Informaci%C3%B3n">información</a> <a class="mw-redirect" title="Actualidad" href="http://es.wikipedia.org/wiki/Actualidad">actualizada</a> frecuentemente. El formato permite distribuir contenido sin necesidad de un navegador, utilizando un software diseñado para leer estos contenidos RSS (<a title="Agregador" href="http://es.wikipedia.org/wiki/Agregador">agregador</a>).</p>
<ul>
<li><strong>Qué es un GeoRSS?</strong></li>
</ul>
<p><strong>GeoRSS</strong> es un conjunto de estándares para representar información geográfica mediante el uso de capas y está construido dentro de la familia de estándares <a title="RSS" href="http://es.wikipedia.org/wiki/RSS">RSS</a>.</p>
<ul>
<li><strong>Cómo convertir un RSS en GeoRSS?</strong></li>
</ul>
<p>Si usted no dispone de una aplicación para convertir sus RSS en GeoRSS puede utilizar Geonames para realizar dicha traducción de formato.<br />
El &#8220;<a href="http://www.geonames.org/rss-to-georss-converter.html">RSS to GeoRSS Converter</a>&#8221; de Geonames busca posibles ubicaciones (sitios geogràficos) en el texto del  rss.  Si alguna ubicación geográfica relevante es encontrada, adiciona la latitud y longitud al RSS durante la codificación a GeoRSS.</p>
<ul>
<li><strong>Que requiero para implementar el lector de GeoRSS utilizando Adobe Flex 3?</strong></li>
</ul>
<p>- <a href="http://opensource.adobe.com/wiki/display/flexsdk/Flex+SDK">Flex SDK</a></p>
<p>- <a href="http://code.google.com/intl/es-ES/apis/maps/documentation/flash/">Google Maps Flash API</a></p>
<ul>
<li><strong>Donde puedo descargar el código fuente del ejemplo?</strong></li>
</ul>
<p>Puede descargar el código fuente desde <a href="http://pwp.007mundo.com/jcmendez/kudos/georss/src.zip">esta ubicación.</a></p>
<ul>
<li><strong>Que ejemplos de programación flex / actionscript  puedo encontrar en el código? </strong></li>
</ul>
<p>- Carga de datos en XML utilizando el objeto HTTPService</p>
<p>- Despliegue de datos utilizando componentes ComboBox, Datagrid e Image</p>
<p>- Formatear etiquetas de un ComboBox utilizando labelFunction.</p>
<p>- Despliegue de información HTML en el tooltip de la aplicación.</p>
<p>- Ejemplo básico de carga de Markers en Google Maps para Adobe Flex.</p>
<p>- Procesamiento de datos publicados en formatos XML, RSS y GeoRSS.</p>
<p>- Utilizar el servicio &#8220;Rss to GeoRSS&#8221; de Geonames con Flex y Actionscript.</p>
<ul>
<li><strong>Puedo ver en línea el código fuente del ejemplo y la aplicación resultante?</strong></li>
</ul>
<p>A continuación puede ver tanto la aplicación como el código fuente relacionado.<br/><br/><br />
<iframe src ="http://pwp.007mundo.com/jcmendez/kudos/georss/index.html" width="100%" height="400" frameborder="0"><br />
</iframe><br />
<br/><br/><br />
<strong>Código fuente del archivo Rss.mxml:</strong></p>

<div class="wp_syntax"><table><tr><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
</pre></td><td class="code"><pre class="mxml" style="font-family:monospace;"><span style="color: #000000;">&lt;?xml version=<span style="color: #ff0000;">&quot;1.0&quot;</span> encoding=<span style="color: #ff0000;">&quot;utf-8&quot;</span>?<span style="color: #7400FF;">&gt;</span></span>
<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Application</span> xmlns:mx=<span style="color: #ff0000;">&quot;http://www.adobe.com/2006/mxml&quot;</span> </span>
<span style="color: #000000;">	layout=<span style="color: #ff0000;">&quot;vertical&quot;</span></span>
<span style="color: #000000;">	applicationComplete=<span style="color: #ff0000;">&quot;onComplete();&quot;</span> </span>
<span style="color: #000000;">	creationComplete=<span style="color: #ff0000;">&quot;loadSourcesService.send();&quot;</span><span style="color: #7400FF;">&gt;</span></span>
<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Style</span><span style="color: #7400FF;">&gt;</span></span>
	Application{
		background-color:#ffffff;
		paddingBottom:5; 
		paddingLeft:5;
		paddingRight:5; 
		paddingTop:5;
	}
<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:Style</span><span style="color: #7400FF;">&gt;</span></span>	
<span style="color: #339933;">&lt;mx:Script&gt;</span>
<span style="color: #339933;">	&lt;![CDATA[</span>
<span style="color: #339933;">		import com.google.maps.controls.ZoomControlOptions;</span>
<span style="color: #339933;">		import mx.collections.ArrayCollection;</span>
<span style="color: #339933;">		import com.google.maps.overlays.MarkerOptions;</span>
<span style="color: #339933;">		import com.google.maps.overlays.Marker;</span>
<span style="color: #339933;">		import ejemplo.HTMLToolTip;</span>
<span style="color: #339933;">		import mx.managers.ToolTipManager;</span>
<span style="color: #339933;">		import flash.net.navigateToURL;</span>
<span style="color: #339933;">		import mx.controls.List;</span>
<span style="color: #339933;">		import mx.controls.Alert;</span>
<span style="color: #339933;">		import mx.events.ListEvent;</span>
<span style="color: #339933;">		import mx.rpc.events.FaultEvent;</span>
<span style="color: #339933;">		import mx.rpc.events.ResultEvent;</span>
<span style="color: #339933;">		import com.google.maps.MapType;</span>
<span style="color: #339933;">		import com.google.maps.LatLng;</span>
<span style="color: #339933;">		import com.google.maps.controls.PositionControl;</span>
<span style="color: #339933;">		import com.google.maps.controls.MapTypeControl;</span>
<span style="color: #339933;">		import com.google.maps.controls.ZoomControl;</span>
<span style="color: #339933;">		import com.google.maps.Map;</span>
<span style="color: #339933;">		import com.google.maps.MapEvent;</span>
&nbsp;
<span style="color: #339933;">		public var map:Map;</span>
&nbsp;
<span style="color: #339933;">	    //se invoca en el evento 'creationComplete' </span>
<span style="color: #339933;">		private function onComplete() :void{</span>
<span style="color: #339933;">			//configuración del tooltip para despliegue de HTML</span>
<span style="color: #339933;">			ToolTipManager.toolTipClass = HTMLToolTip; </span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		//Manejo de la respuesta del HTTPService loadSourcesService</span>
<span style="color: #339933;">		private function loadSourcesService_result(evt:ResultEvent):void {</span>
<span style="color: #339933;">		    var resultObj:Object = evt.result;</span>
<span style="color: #339933;">		    sourcesCb.dataProvider = resultObj.xml.lista.item;</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		//Iniciar el Mapa</span>
<span style="color: #339933;">		private function startMap(event:Event):void {</span>
<span style="color: #339933;">			map = new Map();</span>
<span style="color: #339933;">			//Key de google Maps: http://code.google.com/intl/es-ES/apis/maps/documentation/flash/</span>
<span style="color: #339933;">			map.key = map.key = &quot;ABQIAAAAzP_X84EVzii7yEPHkonPNRRMdub8RYo7ePgaMtJOPXtU0LG1eBQz8J6xJi_XxLQ80ti-WlGkph7kVw&quot;;</span>
<span style="color: #339933;">			map.addEventListener(MapEvent.MAP_READY, onMapReady);</span>
&nbsp;
<span style="color: #339933;">			var zoomopts:ZoomControlOptions = new ZoomControlOptions();</span>
<span style="color: #339933;">			zoomopts.hasScrollTrack = false;</span>
<span style="color: #339933;">			var zoomCtrl:ZoomControl = new ZoomControl(zoomopts);</span>
<span style="color: #339933;">			map.addControl(zoomCtrl);</span>
&nbsp;
<span style="color: #339933;">			// add MapType Controller</span>
<span style="color: #339933;">			var mapTypeCtrl:MapTypeControl = new MapTypeControl();</span>
<span style="color: #339933;">			map.addControl(mapTypeCtrl);</span>
&nbsp;
<span style="color: #339933;">			// add Position Controller</span>
<span style="color: #339933;">			var posCtrl:PositionControl = new PositionControl();</span>
<span style="color: #339933;">			map.addControl(posCtrl);</span>
<span style="color: #339933;">			mapContainer.addChild(map);</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		private function resizeMap(event:Event):void {</span>
<span style="color: #339933;">			map.setSize(new Point(mapContainer.width, mapContainer.height));</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		private function onMapReady(event:MapEvent):void {</span>
<span style="color: #339933;">			//setCenter:  Parámetros: Coordenada Punto Central, Nivel de Zoom, Tipo de Mapa</span>
<span style="color: #339933;">			map.setCenter(new LatLng(4,-73),3, MapType.NORMAL_MAP_TYPE);</span>
<span style="color: #339933;">			//Habilita el Zoom Continuo</span>
<span style="color: #339933;">			map.enableContinuousZoom();</span>
<span style="color: #339933;">			//Habilita el Scroll del mapa utilizando el Mouse </span>
<span style="color: #339933;">			map.enableScrollWheelZoom();</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		// Se invoca cuando el usuario cambia de opcion en el combo box</span>
<span style="color: #339933;">		// se obtiene el rss y se pasa al HTTPService 'loadRssService'</span>
<span style="color: #339933;">		private function getFuenteNombre ( event: ListEvent) : void{					</span>
<span style="color: #339933;">			if(sourcesCb.selectedItem){</span>
<span style="color: #339933;">				//configura la llamada al servicio geonames que recibe como parámetro</span>
<span style="color: #339933;">				//la url del rss que se va a georreferenciar</span>
<span style="color: #339933;">				//http://www.geonames.org/rss-to-georss-converter.html</span>
<span style="color: #339933;">				loadRssService.url= &quot;http://ws.geonames.org/rssToGeoRSS?feedUrl=&quot;+sourcesCb.selectedItem.url;</span>
<span style="color: #339933;">				loadRssService.send();</span>
<span style="color: #339933;">				//elimina todos los markers del mapa</span>
<span style="color: #339933;">				map.clearOverlays();</span>
<span style="color: #339933;">				rssList.dataProvider = new ArrayCollection();</span>
<span style="color: #339933;">			}</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		//Esta funcion se llama cuando cambia el DataGrid, tiene como objetivo</span>
<span style="color: #339933;">		//establecer el contenido a desplegar en la descripcion, tomandolo del xml.</span>
<span style="color: #339933;">		private function getPage(event: ListEvent) : void{</span>
<span style="color: #339933;">			var selectedEq:Object = rssList.selectedItem;</span>
<span style="color: #339933;">			titulo.text = rssList.selectedItem.title;</span>
<span style="color: #339933;">			contenido.htmlText=rssList.selectedItem.description;</span>
<span style="color: #339933;">			//Alert.show(rssList.selectedItem[&quot;encoded&quot;])</span>
<span style="color: #339933;">			mas.visible=true;</span>
<span style="color: #339933;">			var latlng:LatLng = new LatLng(Number(rssList.selectedItem.lat),Number(rssList.selectedItem.long));</span>
<span style="color: #339933;">			//lo hace solo cuando geonames devuelva la latitud y la longitud</span>
<span style="color: #339933;">			if(rssList.selectedItem.lat!=undefined||rssList.selectedItem.long!=undefined){</span>
<span style="color: #339933;">				var marker:Marker = generateMarker(selectedEq); </span>
<span style="color: #339933;">				map.setCenter(latlng , 3);	</span>
<span style="color: #339933;">				map.addOverlay(marker);</span>
<span style="color: #339933;">			}</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		private function generateMarker(item:Object ):Marker{</span>
<span style="color: #339933;">			//crea un objeto de tipo LatLng</span>
<span style="color: #339933;">				var latlng:LatLng = new LatLng(Number(item.lat),Number(item.long));				</span>
<span style="color: #339933;">				//tooltip del Marker  </span>
<span style="color: #339933;">				var markerOptions : MarkerOptions= new MarkerOptions();</span>
<span style="color: #339933;">			    markerOptions.tooltip = item.title;</span>
<span style="color: #339933;">			    var marker : Marker = new Marker( latlng, markerOptions );</span>
<span style="color: #339933;">				return marker;</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		//Esta funcion se llama cuando se hace click en el enlace </span>
<span style="color: #339933;">		//que me envia a la pagina de la fuente, coge el campo link del xml.</span>
<span style="color: #339933;">		private function getUrl() : void{</span>
<span style="color: #339933;">			//configura el request del LinkButton con el objeto link del xml </span>
<span style="color: #339933;">			var u:URLRequest = new URLRequest(rssList.selectedItem.link);</span>
<span style="color: #339933;">        	navigateToURL(u,&quot;_blank&quot;);</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		//Se llama cuando hay un resultado en HTTPService loadRssService</span>
<span style="color: #339933;">		protected function onServiceResult(event:ResultEvent):void {</span>
<span style="color: #339933;">			rssList.dataProvider = event.result.rss.channel.item;</span>
<span style="color: #339933;">			//configura la ubicacion de la imagen con el campo image.url</span>
<span style="color: #339933;">			imagen.source=event.result.rss.channel.image.url;</span>
<span style="color: #339933;">			titulo.text = &quot;&quot;;</span>
<span style="color: #339933;">			contenido.htmlText='Seleccione una Noticia';</span>
<span style="color: #339933;">			mas.visible=false;</span>
<span style="color: #339933;">		}</span>
&nbsp;
&nbsp;
&nbsp;
<span style="color: #339933;">		//Se llama cuando hay un fault HTTPService loadEQService y en HTTPService loadRssService</span>
<span style="color: #339933;">		private function load_fault(evt:FaultEvent):void {</span>
<span style="color: #339933;">			Alert.show('Ocurrió un Error en el Servidor', evt.fault.faultString);</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		private function  sourcesCbLabelFunction(item:Object):String{</span>
<span style="color: #339933;">			return item.nombre + &quot; (&quot;+item.pais+&quot;)&quot;;</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">	]]&gt;</span>
<span style="color: #339933;">&lt;/mx:Script&gt;</span>
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:HTTPService</span> id=<span style="color: #ff0000;">&quot;loadSourcesService&quot;</span></span>
<span style="color: #000000;">	            url=<span style="color: #ff0000;">&quot;sources.xml&quot;</span></span>
<span style="color: #000000;">	            resultFormat=<span style="color: #ff0000;">&quot;object&quot;</span></span>
<span style="color: #000000;">	            result=<span style="color: #ff0000;">&quot;{loadSourcesService_result(event);}&quot;</span></span>
<span style="color: #000000;">	            fault=<span style="color: #ff0000;">&quot;load_fault(event);&quot;</span></span>
<span style="color: #000000;">	            showBusyCursor=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
&nbsp;
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:HTTPService</span> id=<span style="color: #ff0000;">&quot;loadRssService&quot;</span></span>
<span style="color: #000000;">	            resultFormat=<span style="color: #ff0000;">&quot;object&quot;</span></span>
<span style="color: #000000;">	            result=<span style="color: #ff0000;">&quot;onServiceResult(event);&quot;</span></span>
<span style="color: #000000;">	            fault=<span style="color: #ff0000;">&quot;load_fault(event);&quot;</span></span>
<span style="color: #000000;">	            showBusyCursor=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
&nbsp;
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:HDividedBox</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;100%&quot;</span><span style="color: #7400FF;">&gt;</span></span>
		<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Panel</span> id=<span style="color: #ff0000;">&quot;panel1&quot;</span> width=<span style="color: #ff0000;">&quot;50%&quot;</span> height=<span style="color: #ff0000;">&quot;100%&quot;</span> title=<span style="color: #ff0000;">&quot;Lector de GeoRSS&quot;</span><span style="color: #7400FF;">&gt;</span></span>
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:VBox</span> id=<span style="color: #ff0000;">&quot;box&quot;</span>  height=<span style="color: #ff0000;">&quot;100%&quot;</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span><span style="color: #7400FF;">&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:HBox</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span><span style="color: #7400FF;">&gt;</span></span>			
					<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:ComboBox</span> id=<span style="color: #ff0000;">&quot;sourcesCb&quot;</span>  textAlign=<span style="color: #ff0000;">&quot;left&quot;</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span>  </span>
<span style="color: #000000;">						labelFunction=<span style="color: #ff0000;">&quot;sourcesCbLabelFunction&quot;</span></span>
<span style="color: #000000;">						change=<span style="color: #ff0000;">&quot;getFuenteNombre(event)&quot;</span> rowCount=<span style="color: #ff0000;">&quot;10&quot;</span></span>
<span style="color: #000000;">						prompt=<span style="color: #ff0000;">&quot;Seleccione una opción...&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:HBox</span><span style="color: #7400FF;">&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:DataGrid</span> id=<span style="color: #ff0000;">&quot;rssList&quot;</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;100%&quot;</span>  change=<span style="color: #ff0000;">&quot;getPage(event)&quot;</span><span style="color: #7400FF;">&gt;</span></span>
					<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:columns</span><span style="color: #7400FF;">&gt;</span></span>
						<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:DataGridColumn</span> dataField=<span style="color: #ff0000;">&quot;title&quot;</span> headerText=<span style="color: #ff0000;">&quot;Titular&quot;</span> </span>
<span style="color: #000000;">							dataTipField=<span style="color: #ff0000;">&quot;description&quot;</span> showDataTips=<span style="color: #ff0000;">&quot;true&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
					<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:columns</span><span style="color: #7400FF;">&gt;</span></span>		
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:DataGrid</span><span style="color: #7400FF;">&gt;</span></span>
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:VBox</span><span style="color: #7400FF;">&gt;</span></span>
		<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:Panel</span><span style="color: #7400FF;">&gt;</span></span>
		<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Panel</span>  width=<span style="color: #ff0000;">&quot;50%&quot;</span> height=<span style="color: #ff0000;">&quot;100%&quot;</span> title=<span style="color: #ff0000;">&quot;Detalle de la Noticia&quot;</span><span style="color: #7400FF;">&gt;</span></span>
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:VDividedBox</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;100%&quot;</span><span style="color: #7400FF;">&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:VBox</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;30%&quot;</span><span style="color: #7400FF;">&gt;</span></span>
					<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:HBox</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> <span style="color: #7400FF;">&gt;</span></span>
						<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Image</span> id=<span style="color: #ff0000;">&quot;imagen&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
						<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:LinkButton</span> id=<span style="color: #ff0000;">&quot;mas&quot;</span> visible=<span style="color: #ff0000;">&quot;false&quot;</span> label=<span style="color: #ff0000;">&quot;Ver mas...&quot;</span> click=<span style="color: #ff0000;">&quot;{getUrl()}&quot;</span><span style="color: #7400FF;">/&gt;</span></span>	
					<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:HBox</span><span style="color: #7400FF;">&gt;</span></span>
					<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Text</span> id=<span style="color: #ff0000;">&quot;titulo&quot;</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> fontWeight=<span style="color: #ff0000;">&quot;bold&quot;</span><span style="color: #7400FF;">/&gt;</span></span>
					<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Text</span> id=<span style="color: #ff0000;">&quot;contenido&quot;</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span><span style="color: #7400FF;">/&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:VBox</span><span style="color: #7400FF;">&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:VBox</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;70%&quot;</span><span style="color: #7400FF;">&gt;</span></span>
					<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:UIComponent</span> id=<span style="color: #ff0000;">&quot;mapContainer&quot;</span> </span>
<span style="color: #000000;">			        initialize=<span style="color: #ff0000;">&quot;startMap(event);&quot;</span> </span>
<span style="color: #000000;">			        resize=<span style="color: #ff0000;">&quot;resizeMap(event)&quot;</span> </span>
<span style="color: #000000;">			        width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;100%&quot;</span><span style="color: #7400FF;">/&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:VBox</span><span style="color: #7400FF;">&gt;</span></span>
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:VDividedBox</span><span style="color: #7400FF;">&gt;</span></span>	
		<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:Panel</span><span style="color: #7400FF;">&gt;</span></span>
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:HDividedBox</span><span style="color: #7400FF;">&gt;</span></span>
<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:Application</span><span style="color: #7400FF;">&gt;</span></span></pre></td></tr></table></div>

<p><strong>Código fuente del archivo ejemplo/HTMLToolTip.as:</strong></p>

<div class="wp_syntax"><table><tr><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"><pre class="actionscript3" style="font-family:monospace;"><span style="color: #9900cc; font-weight: bold;">package</span> ejemplo
<span style="color: #000000;">&#123;</span>
<span style="color: #009900;">//Esta es la clase que maneja el tooltip para que muestre el contenido</span>
<span style="color: #009900;">//que esta en html y no como un string.</span>
     <span style="color: #0033ff; font-weight: bold;">import</span> mx.containers.<span style="color: #000000; font-weight: bold;">*</span>;  
     <span style="color: #0033ff; font-weight: bold;">import</span> mx.controls.Text;  
     <span style="color: #0033ff; font-weight: bold;">import</span> mx.controls.ToolTip;  
     <span style="color: #0033ff; font-weight: bold;">import</span> mx.core.<span style="color: #000000; font-weight: bold;">*</span>;  
&nbsp;
     <span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #9900cc; font-weight: bold;">class</span> HTMLToolTip extends ToolTip  
     <span style="color: #000000;">&#123;</span>  
         <span style="color: #0033ff; font-weight: bold;">public</span> <span style="color: #339966; font-weight: bold;">function</span> HTMLToolTip<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>  
         <span style="color: #000000;">&#123;</span>    <span style="color: #0033ff; font-weight: bold;">super</span><span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>; <span style="color: #000000;">&#125;</span>  
&nbsp;
         override <span style="color: #0033ff; font-weight: bold;">protected</span> <span style="color: #339966; font-weight: bold;">function</span> commitProperties<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span><span style="color: #000000; 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;">super</span>.commitProperties<span style="color: #000000;">&#40;</span><span style="color: #000000;">&#41;</span>;  
             textField.<span style="color: #004993;">htmlText</span> = <span style="color: #004993;">text</span>;  
         <span style="color: #000000;">&#125;</span>  
     <span style="color: #000000;">&#125;</span> 
<span style="color: #000000;">&#125;</span></pre></td></tr></table></div>

<p><strong>Archivo sources.xml:</strong></p>

<div class="wp_syntax"><div class="code"><pre class="xml" style="font-family:monospace;"><span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;xml<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
	<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;lista<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;nombre<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>El Tiempo - Mundo<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/nombre<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://www.eltiempo.com/mundo/rss.xml<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;pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Colombia<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;nombre<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>El Tiempo - Colombia<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/nombre<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://www.eltiempo.com/colombia/rss.xml<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;pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Colombia<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;nombre<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>El Espectador<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/nombre<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://www.elespectador.com/rss.xml <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;pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Colombia<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;nombre<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>El Pais - America Latina<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/nombre<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://www.elpais.com/rss/feed.html?feedId=17041<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;pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>España<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;nombre<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>ABC - Portada<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/nombre<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://www.abc.es/rss/feeds/abcPortada.xml<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;pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>España<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;nombre<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>BBC Mundo<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/nombre<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://www.bbc.co.uk/mundo/index.xml<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;pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Inglaterra<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;nombre<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>CNN - World<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/nombre<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://rss.cnn.com/rss/edition_world.rss<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;pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Estados Unidos<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;nombre<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Reuters - World News<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/nombre<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://feeds.reuters.com/reuters/worldNews<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;pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Estados Unidos<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;nombre<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>BusinessWeek.com<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/nombre<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://rss.businessweek.com/bw_rss/bwdaily<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;pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Estados Unidos<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
			<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;nombre<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Google News<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/nombre<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://news.google.com/news?output=rss<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;pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>Alemania<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/pais<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
		<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/item<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/lista<span style="color: #000000; font-weight: bold;">&gt;</span></span></span>
<span style="color: #009900;"><span style="color: #000000; font-weight: bold;">&lt;/xml<span style="color: #000000; font-weight: bold;">&gt;</span></span></span></pre></div></div>

]]></content:encoded>
			<wfw:commentRss>http://blog.gkudos.com/2009/09/06/creando-un-lector-de-georss-con-adobe-flex-3/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Crear un Lector de Podcasts con Adobe Flex 3</title>
		<link>http://blog.gkudos.com/2009/08/29/crear-un-lector-de-podcasts-con-flex/</link>
		<comments>http://blog.gkudos.com/2009/08/29/crear-un-lector-de-podcasts-con-flex/#comments</comments>
		<pubDate>Sat, 29 Aug 2009 20:04:27 +0000</pubDate>
		<dc:creator>juanmendez</dc:creator>
				<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[adobe flex 3]]></category>
		<category><![CDATA[Tutorial]]></category>

		<guid isPermaLink="false">http://blog.gkudos.com/?p=168</guid>
		<description><![CDATA[El código fuente publicado en esta entrada muestra una aplicación flex que permite la consulta y descarga de archivos podcast publicados en internet. A continuación una imagen de muestra del aplicativo:

Básicamente el usuario selecciona un canal del ComboBox superior y las entradas de podcast se cargan en la lista que tiene un botón de reproducción [...]]]></description>
			<content:encoded><![CDATA[<p>El código fuente publicado en esta entrada muestra una aplicación flex que permite la consulta y descarga de archivos podcast publicados en internet. A continuación una imagen de muestra del aplicativo:</p>
<p><img class="aligncenter" src="http://blog.gkudos.com/wp-content/uploads/podcast_reader.jpg" alt="" /><br />
Básicamente el usuario selecciona un canal del ComboBox superior y las entradas de podcast se cargan en la lista que tiene un botón de reproducción y descarga para cada uno de los items.<br />
Cuando el usuario selecciona el botón de reproducción de una de las entradas, el componente de audio carga el mp3 relacionado en el componente del  &#8220;player&#8221; que se encuentra en la parte inferior de la pantalla.</p>
<p><a href="http://static.gkudos.com/blog/podcast/podcast.html" target="_blank">Ver aplicación en Línea </a>(*)</p>
<p><a href="http://static.gkudos.com/blog/podcast/podcast_player.rar" target="_blank">Descargar Código Fuente</a></p>
<p><strong> Notas (*) :</strong></p>
<ul>
<li>La carga de algunos RSS y el analizador de espectro solo funcionan ejecutando el aplicativo en forma local.</li>
<li>La descarga de archivos funciona únicamente si el usuario tiene instalado el  Flash Player versión 10</li>
</ul>
<p><center><strong>Código Fuente:</strong></center></p>
<p><strong>Mp3Player.mxml</strong></p>

<div class="wp_syntax"><div class="code"><pre class="mxml" style="font-family:monospace;"><span style="color: #000000;">&lt;?xml version=<span style="color: #ff0000;">&quot;1.0&quot;</span> encoding=<span style="color: #ff0000;">&quot;utf-8&quot;</span>?<span style="color: #7400FF;">&gt;</span></span>
<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Application</span> xmlns:mx=<span style="color: #ff0000;">&quot;http://www.adobe.com/2006/mxml&quot;</span> </span>
<span style="color: #000000;">	creationComplete=<span style="color: #ff0000;">&quot;{init();}&quot;</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;100%&quot;</span></span>
<span style="color: #000000;">	xmlns:fx=<span style="color: #ff0000;">&quot;com.fusiox.ui.*&quot;</span> </span>
<span style="color: #000000;">	layout=<span style="color: #ff0000;">&quot;vertical&quot;</span><span style="color: #7400FF;">&gt;</span></span>
<span style="color: #339933;">&lt;mx:Script&gt;</span>
<span style="color: #339933;">	&lt;![CDATA[</span>
<span style="color: #339933;">		import mx.rpc.events.ResultEvent;</span>
<span style="color: #339933;">		import mx.collections.ArrayCollection;</span>
<span style="color: #339933;">		import mx.controls.Alert;</span>
<span style="color: #339933;">		import mx.utils.ObjectUtil;</span>
<span style="color: #339933;">        // Play &amp; Pause Icons</span>
<span style="color: #339933;">		[Embed(source=&quot;assets/Pause.png&quot;)] 	[Bindable] public var iconPause:Class;</span>
<span style="color: #339933;">		[Embed(source=&quot;assets/Play.png&quot;)] 	[Bindable] public var iconPlay:Class;</span>
<span style="color: #339933;">		[Embed(source=&quot;assets/Next.png&quot;)] 	[Bindable] public var iconNext:Class;</span>
&nbsp;
&nbsp;
<span style="color: #339933;">		private var sound:Sound;						// Mp3 File </span>
<span style="color: #339933;">		private var soundChannel:SoundChannel;			// Reference to playing channel </span>
<span style="color: #339933;">		private var pausePosition:Number;				// Current play position (time)</span>
<span style="color: #339933;">		private var percent:Number;						// Current played percentage</span>
<span style="color: #339933;">		private var isPlaying:Boolean = false;			// Is the mp3 playing?</span>
<span style="color: #339933;">		private var isLoaded:Boolean = false;			// Is the mp3 loaded?</span>
<span style="color: #339933;">		private var updateSeek:Timer = new Timer(500);	// Timer for updating the seek bar</span>
&nbsp;
<span style="color: #339933;">		[Bindable]</span>
<span style="color: #339933;">        public var podcastChannels:ArrayCollection = new ArrayCollection(</span>
<span style="color: #339933;">            [ {label:&quot;Music - Free Music Everywhere Podcast&quot;, data:'http://feeds2.feedburner.com/FreeMusicEverywhere'}, </span>
<span style="color: #339933;">              {label:&quot;Music - Last.fm Free Mp3 - Electronic &quot;, data:'http://ws.audioscrobbler.com/2.0/tag/Electronic/podcast.rss'},</span>
<span style="color: #339933;">              {label:&quot;Music - Last.fm Free Mp3 - Metal &quot;, data:'http://ws.audioscrobbler.com/2.0/tag/Metal/podcast.rss'},</span>
<span style="color: #339933;">              {label:&quot;Music - Last.fm Free Mp3 - Jazz &quot;, data:'http://ws.audioscrobbler.com/2.0/tag/Jazz/podcast.rss'},</span>
<span style="color: #339933;">              {label:&quot;Music - Last.fm Free Mp3 - Rock &quot;, data:'http://ws.audioscrobbler.com/2.0/tag/Rock/podcast.rss'},</span>
<span style="color: #339933;">              {label:&quot;Music - Last.fm Free Mp3 - Classical &quot;, data:'http://ws.audioscrobbler.com/2.0/tag/Classical/podcast.rss'},</span>
<span style="color: #339933;">              {label:&quot;News - Guardian Daily&quot;, data:'http://www.guardian.co.uk/news/series/guardiandaily/podcast.xml'},</span>
<span style="color: #339933;">              {label:&quot;News - Tech Weekly&quot;, data:'http://www.guardian.co.uk/technology/series/techweekly/podcast.xml'},</span>
<span style="color: #339933;">              {label:&quot;News - Business Weekly&quot;, data:'http://downloads.bbc.co.uk/podcasts/worldservice/bizweekly/rss.xml'},</span>
<span style="color: #339933;">              {label:&quot;News - BBC Global News&quot;, data:'http://downloads.bbc.co.uk/podcasts/worldservice/globalnews/rss.xml'},</span>
<span style="color: #339933;">              {label:&quot;News - La Historia del Mundo con Diana Uribe&quot;, data:'http://www.caracol.com.co/feed.aspx?id=PROG_320899'}, </span>
<span style="color: #339933;">              {label:&quot;News - Hora de Negocios con Paola Ochoa&quot;, data:'http://www.caracol.com.co/feed.aspx?id=PROG_555605'} </span>
<span style="color: #339933;">            ]);</span>
&nbsp;
<span style="color: #339933;">		private function init():void { </span>
<span style="color: #339933;">			// Add event listener for seek bar updater &amp; start timer							</span>
<span style="color: #339933;">            updateSeek.addEventListener(TimerEvent.TIMER, updatePosition);</span>
<span style="color: #339933;">            updateSeek.start();</span>
<span style="color: #339933;">            // Add mouse click listener for the seek bar</span>
<span style="color: #339933;">            seekAudioBar.addEventListener(MouseEvent.CLICK, seek);</span>
<span style="color: #339933;">			// Add event listener that blurs the visualization</span>
<span style="color: #339933;">			viz.addEventListener(&quot;beforeVisualization&quot;, vizFade);</span>
<span style="color: #339933;">			selectChannel();</span>
<span style="color: #339933;">			//Add Events that come from each renderer. </span>
<span style="color: #339933;">			rssList.addEventListener('playPodcast', playPodcast);</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		private function selectChannel():void {</span>
<span style="color: #339933;">            rssService.url = channelsCb.selectedItem.data;</span>
<span style="color: #339933;">			rssService.send();</span>
<span style="color: #339933;">        } </span>
&nbsp;
<span style="color: #339933;">        protected function onServiceResult(event:ResultEvent):void {</span>
<span style="color: #339933;">			rssList.dataProvider = event.result.rss.channel.item;</span>
<span style="color: #339933;">			next();</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		protected function playPodcast(event:Event):void {</span>
<span style="color: #339933;">			var selection:Object = rssList.selectedItem ; </span>
<span style="color: #339933;">			loadSound(selection.enclosure.url);</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		private function loadSound(mp3Url:String):void{</span>
<span style="color: #339933;">			// If the song isn't loaded yet, set up a new sound load request</span>
<span style="color: #339933;">			sound = new Sound();</span>
<span style="color: #339933;">			sound.load(new URLRequest(mp3Url));</span>
<span style="color: #339933;">			// Add an event listener to check for song load complete event</span>
<span style="color: #339933;">			sound.addEventListener(Event.COMPLETE, songLoaded);</span>
<span style="color: #339933;">			// Show text for loading song and add event listener for updating</span>
<span style="color: #339933;">			sound.addEventListener(ProgressEvent.PROGRESS, updateStatus);</span>
<span style="color: #339933;">			sound.addEventListener(IOErrorEvent.IO_ERROR, onIOError);</span>
<span style="color: #339933;">			loadProgressBar.visible=true;</span>
<span style="color: #339933;">			loadProgressBar.text = &quot;0 %&quot;</span>
<span style="color: #339933;">		}</span>
<span style="color: #339933;">		private function updateStatus(e:ProgressEvent):void {</span>
<span style="color: #339933;">			var loadPercent:Number = Math.round((e.bytesLoaded / e.bytesTotal) * 100);</span>
<span style="color: #339933;">			loadProgressBar.text = loadPercent+&quot; %&quot;;</span>
<span style="color: #339933;">		}</span>
<span style="color: #339933;">		private function onIOError(event:IOErrorEvent):void{</span>
<span style="color: #339933;">		    Alert.show(&quot;The sound could not be loaded: &quot; + event.text, &quot;Error&quot;);</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		// Once the song is loaded...</span>
<span style="color: #339933;">		private function songLoaded(e:Event):void {</span>
<span style="color: #339933;">			if(soundChannel){</span>
<span style="color: #339933;">				soundChannel.stop()</span>
<span style="color: #339933;">			}</span>
&nbsp;
<span style="color: #339933;">			var selection:Object = rssList.selectedItem ; </span>
<span style="color: #339933;">			podTitle.text = selection.title;</span>
&nbsp;
<span style="color: #339933;">			// Hide status text</span>
<span style="color: #339933;">			loadProgressBar.visible = false;</span>
<span style="color: #339933;">			// Remove load event listener</span>
<span style="color: #339933;">			sound.removeEventListener(Event.COMPLETE, songLoaded);</span>
<span style="color: #339933;">			// Turn on seek bar</span>
<span style="color: #339933;">			enableSeek();</span>
<span style="color: #339933;">			// Play the song</span>
<span style="color: #339933;">			soundChannel = sound.play(0);</span>
<span style="color: #339933;">            // Pull the title/artist/album from the ID3 tags and display</span>
<span style="color: #339933;">            theArtistAlbum.text  = &quot;&quot;;</span>
<span style="color: #339933;">            if(sound.id3.TIT2){</span>
<span style="color: #339933;">            	theArtistAlbum.text += sound.id3.TIT2;</span>
<span style="color: #339933;">            }</span>
<span style="color: #339933;">            if(sound.id3.artist){</span>
<span style="color: #339933;">            	theArtistAlbum.text += &quot;, &quot;+ sound.id3.artist;</span>
<span style="color: #339933;">            }</span>
<span style="color: #339933;">			// Song is loaded</span>
<span style="color: #339933;">			isLoaded = true;</span>
<span style="color: #339933;">			seekAudioBar.visible = isLoaded;</span>
<span style="color: #339933;">			isPlaying = true;</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		// Play or Pause button has been clicked</span>
<span style="color: #339933;">		private function playPause(e:Event = null):void  {</span>
<span style="color: #339933;">			// Song playing?</span>
<span style="color: #339933;">			if(isPlaying) {</span>
<span style="color: #339933;">				// Save the current position in the track, stop playback, change button icon</span>
<span style="color: #339933;">				pausePosition = soundChannel.position;</span>
<span style="color: #339933;">				soundChannel.stop();</span>
<span style="color: #339933;">				playPauseBtn.setStyle(&quot;icon&quot;, iconPlay);</span>
<span style="color: #339933;">			// Song is not playing?</span>
<span style="color: #339933;">			} else {</span>
<span style="color: #339933;">				// The song IS loaded, so play it</span>
<span style="color: #339933;">				soundChannel = sound.play(pausePosition);</span>
<span style="color: #339933;">				// Change the button icon to the pause style</span>
<span style="color: #339933;">				playPauseBtn.setStyle(&quot;icon&quot;, iconPause);</span>
<span style="color: #339933;">			}</span>
<span style="color: #339933;">			// Regardless of playing state, change it now to the opposite</span>
<span style="color: #339933;">			isPlaying = !isPlaying;</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		// Enabled the seek (progress) bar</span>
<span style="color: #339933;">		public function enableSeek():void {</span>
<span style="color: #339933;">			seekAudioBar.enabled = true;</span>
<span style="color: #339933;">			seekAudioBar.visible = true;</span>
<span style="color: #339933;">		}			</span>
&nbsp;
<span style="color: #339933;">		// Add a color transform to the visulization to create the fade effect</span>
<span style="color: #339933;">		private function vizFade(e:Event):void {</span>
<span style="color: #339933;">			e.target.bitmapData.colorTransform(</span>
<span style="color: #339933;">				e.target.bitmapData.rect, new ColorTransform(0.75,0.75,0.75,.75));</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		// Called when the seek (progress) bar needs updating</span>
<span style="color: #339933;">		private function updatePosition(e:Event):void {</span>
<span style="color: #339933;"> 			// Is a song playing?</span>
<span style="color: #339933;"> 			if(isPlaying &amp;&amp; soundChannel) { </span>
<span style="color: #339933;"> 				// If the position is beyond the song start, calculate &amp; set the percentage</span>
<span style="color: #339933;"> 				percent = soundChannel.position &gt; 0 ? (soundChannel.position/sound.length)*100 : 0;</span>
<span style="color: #339933;">				seekAudioBar.setProgress(percent,100);</span>
<span style="color: #339933;">	   			// Tell the seekbar to redraw itself</span>
<span style="color: #339933;">	   			seekAudioBar.validateNow();</span>
<span style="color: #339933;">	   		}</span>
<span style="color: #339933;">		}</span>
&nbsp;
&nbsp;
&nbsp;
&nbsp;
&nbsp;
<span style="color: #339933;">		// Mouse click event on the seekbar calls this function</span>
<span style="color: #339933;">		private function seek(e:MouseEvent):void {</span>
<span style="color: #339933;">			// Is the song playing AND is the seekbar enabled and visible?</span>
<span style="color: #339933;">			if(isPlaying &amp;&amp; seekAudioBar.enabled) { </span>
<span style="color: #339933;">				// Stop playing at current position, change to new location, continue playing</span>
<span style="color: #339933;">				soundChannel.stop();</span>
<span style="color: #339933;">				pausePosition = (seekAudioBar.contentMouseX/seekAudioBar.width)*sound.length;</span>
<span style="color: #339933;">				soundChannel = sound.play(pausePosition);</span>
<span style="color: #339933;">				setVolume(this.volumeControl.value)</span>
<span style="color: #339933;">			}</span>
<span style="color: #339933;">		}</span>
&nbsp;
<span style="color: #339933;">		private function setVolume(volume:Number):void {</span>
<span style="color: #339933;">            if(soundChannel){</span>
<span style="color: #339933;">	            var transform:SoundTransform = soundChannel.soundTransform;</span>
<span style="color: #339933;">	            transform.volume = volume;</span>
<span style="color: #339933;">            	soundChannel.soundTransform = transform;</span>
<span style="color: #339933;">            }</span>
<span style="color: #339933;">        }</span>
&nbsp;
<span style="color: #339933;">        private function next():void{</span>
<span style="color: #339933;">        	var selectedIdx:int = rssList.selectedIndex;</span>
<span style="color: #339933;">        	if(selectedIdx &lt; rssList.dataProvider.length){</span>
<span style="color: #339933;">        		rssList.selectedIndex = ++selectedIdx;</span>
<span style="color: #339933;">        		playPodcast(null);</span>
<span style="color: #339933;">        	}</span>
<span style="color: #339933;">        }</span>
&nbsp;
<span style="color: #339933;">	]]&gt;</span>
<span style="color: #339933;">&lt;/mx:Script&gt;</span>
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Style</span> source=<span style="color: #ff0000;">&quot;style.css&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:HTTPService</span> id=<span style="color: #ff0000;">&quot;rssService&quot;</span> result=<span style="color: #ff0000;">&quot;{onServiceResult(event)}&quot;</span> resultFormat=<span style="color: #ff0000;">&quot;object&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Fade</span> id=<span style="color: #ff0000;">&quot;FadeIn&quot;</span> duration=<span style="color: #ff0000;">&quot;3000&quot;</span> alphaFrom=<span style="color: #ff0000;">&quot;0.0&quot;</span> alphaTo=<span style="color: #ff0000;">&quot;1.0&quot;</span><span style="color: #7400FF;">/&gt;</span></span>	
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Fade</span> id=<span style="color: #ff0000;">&quot;FadeOut&quot;</span> duration=<span style="color: #ff0000;">&quot;3000&quot;</span> alphaFrom=<span style="color: #ff0000;">&quot;1.0&quot;</span> alphaTo=<span style="color: #ff0000;">&quot;0.0&quot;</span><span style="color: #7400FF;">/&gt;</span></span>
&nbsp;
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:VDividedBox</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;100%&quot;</span><span style="color: #7400FF;">&gt;</span></span>
		<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:VBox</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;50%&quot;</span>  <span style="color: #7400FF;">&gt;</span></span>
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Label</span> text=<span style="color: #ff0000;">&quot;My Flex Based Podcast Reader&quot;</span> fontWeight=<span style="color: #ff0000;">&quot;bold&quot;</span> fontSize=<span style="color: #ff0000;">&quot;16&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:HBox</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span><span style="color: #7400FF;">&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Label</span> text=<span style="color: #ff0000;">&quot;Available Podcasts:&quot;</span><span style="color: #7400FF;">/&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:ComboBox</span> id=<span style="color: #ff0000;">&quot;channelsCb&quot;</span> dataProvider=<span style="color: #ff0000;">&quot;{podcastChannels}&quot;</span> width=<span style="color: #ff0000;">&quot;90%&quot;</span> close=<span style="color: #ff0000;">&quot;selectChannel();&quot;</span><span style="color: #7400FF;">/&gt;</span></span>	
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:HBox</span><span style="color: #7400FF;">&gt;</span></span>
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:List</span> id=<span style="color: #ff0000;">&quot;rssList&quot;</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;100%&quot;</span> itemRenderer=<span style="color: #ff0000;">&quot;RSSRenderer&quot;</span> labelField=<span style="color: #ff0000;">&quot;title&quot;</span>  <span style="color: #7400FF;">/&gt;</span></span>
		<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:VBox</span><span style="color: #7400FF;">&gt;</span></span>
		<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:VBox</span> id=<span style="color: #ff0000;">&quot;podBox&quot;</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;50%&quot;</span> horizontalAlign=<span style="color: #ff0000;">&quot;center&quot;</span>  <span style="color: #7400FF;">&gt;</span></span>
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Text</span> id=<span style="color: #ff0000;">&quot;podTitle&quot;</span>  fontSize=<span style="color: #ff0000;">&quot;15&quot;</span> fontWeight=<span style="color: #ff0000;">&quot;bold&quot;</span> maxWidth=<span style="color: #ff0000;">&quot;{podBox.width}&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Text</span> id=<span style="color: #ff0000;">&quot;theArtistAlbum&quot;</span> text=<span style="color: #ff0000;">&quot;or enter a new URL to load below&quot;</span> fontStyle=<span style="color: #ff0000;">&quot;italic&quot;</span><span style="color: #7400FF;">/&gt;</span></span>
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:HBox</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;100&quot;</span> <span style="color: #7400FF;">&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;fx:Visualization</span> id=<span style="color: #ff0000;">&quot;viz&quot;</span> type=<span style="color: #ff0000;">&quot;bars&quot;</span> bars=<span style="color: #ff0000;">&quot;96&quot;</span> channel=<span style="color: #ff0000;">&quot;stereo&quot;</span> </span>
<span style="color: #000000;">					width=<span style="color: #ff0000;">&quot;95%&quot;</span> height=<span style="color: #ff0000;">&quot;{volumeControl.height}&quot;</span> </span>
<span style="color: #000000;">					audioFillColor=<span style="color: #ff0000;">&quot;0xFFFFFF&quot;</span> audioLineColor=<span style="color: #ff0000;">&quot;0xFFFFFF&quot;</span><span style="color: #7400FF;">/&gt;</span></span>	
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:VSlider</span> id=<span style="color: #ff0000;">&quot;volumeControl&quot;</span> allowTrackClick=<span style="color: #ff0000;">&quot;false&quot;</span> toolTip=<span style="color: #ff0000;">&quot;{}&quot;</span> liveDragging=<span style="color: #ff0000;">&quot;true&quot;</span> </span>
<span style="color: #000000;">					thumbDrag=<span style="color: #ff0000;">&quot;setVolume(this.volumeControl.value)&quot;</span> </span>
<span style="color: #000000;">					height=<span style="color: #ff0000;">&quot;100&quot;</span> value=<span style="color: #ff0000;">&quot;.5&quot;</span> maximum=<span style="color: #ff0000;">&quot;1&quot;</span> minimum=<span style="color: #ff0000;">&quot;0&quot;</span><span style="color: #7400FF;">/&gt;</span></span>						
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:HBox</span><span style="color: #7400FF;">&gt;</span></span>
&nbsp;
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:ControlBar</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> <span style="color: #7400FF;">&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Button</span> id=<span style="color: #ff0000;">&quot;playPauseBtn&quot;</span> click=<span style="color: #ff0000;">&quot;{playPause(event)}&quot;</span>  icon=<span style="color: #ff0000;">&quot;{iconPlay}&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Button</span> icon=<span style="color: #ff0000;">&quot;{iconNext}&quot;</span> click=<span style="color: #ff0000;">&quot;{next();}&quot;</span><span style="color: #7400FF;">/&gt;</span></span>
				<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:ProgressBar</span> id=<span style="color: #ff0000;">&quot;seekAudioBar&quot;</span>  showEffect=<span style="color: #ff0000;">&quot;{FadeIn}&quot;</span> height=<span style="color: #ff0000;">&quot;16&quot;</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> </span>
<span style="color: #000000;">					enabled=<span style="color: #ff0000;">&quot;false&quot;</span> visible=<span style="color: #ff0000;">&quot;false&quot;</span> </span>
<span style="color: #000000;">					mode=<span style="color: #ff0000;">&quot;manual&quot;</span> label=<span style="color: #ff0000;">&quot;&quot;</span> indeterminate=<span style="color: #ff0000;">&quot;false&quot;</span> labelPlacement=<span style="color: #ff0000;">&quot;center&quot;</span><span style="color: #7400FF;">/&gt;</span></span>	
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:ControlBar</span><span style="color: #7400FF;">&gt;</span></span>
			<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Label</span> id=<span style="color: #ff0000;">&quot;loadProgressBar&quot;</span> showEffect=<span style="color: #ff0000;">&quot;{FadeIn}&quot;</span> hideEffect=<span style="color: #ff0000;">&quot;{FadeOut}&quot;</span> width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;20&quot;</span></span>
<span style="color: #000000;">					enabled=<span style="color: #ff0000;">&quot;false&quot;</span> visible=<span style="color: #ff0000;">&quot;false&quot;</span> </span>
<span style="color: #000000;">					text=<span style="color: #ff0000;">&quot;&quot;</span> fontWeight=<span style="color: #ff0000;">&quot;bold&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
		<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:VBox</span><span style="color: #7400FF;">&gt;</span></span>
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:VDividedBox</span><span style="color: #7400FF;">&gt;</span></span>
<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:Application</span><span style="color: #7400FF;">&gt;</span></span></pre></div></div>

<p><strong>RSSRenderer.mxml</strong></p>

<div class="wp_syntax"><div class="code"><pre class="mxml" style="font-family:monospace;"><span style="color: #000000;">&lt;?xml version=<span style="color: #ff0000;">&quot;1.0&quot;</span> encoding=<span style="color: #ff0000;">&quot;utf-8&quot;</span>?<span style="color: #7400FF;">&gt;</span></span>
<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:HBox</span> xmlns:mx=<span style="color: #ff0000;">&quot;http://www.adobe.com/2006/mxml&quot;</span> </span>
<span style="color: #000000;">	width=<span style="color: #ff0000;">&quot;100%&quot;</span> height=<span style="color: #ff0000;">&quot;60&quot;</span> </span>
<span style="color: #000000;">	verticalGap=<span style="color: #ff0000;">&quot;0&quot;</span> verticalAlign=<span style="color: #ff0000;">&quot;middle&quot;</span><span style="color: #7400FF;">&gt;</span></span>
<span style="color: #339933;">&lt;mx:Script&gt;</span>
<span style="color: #339933;">&lt;![CDATA[</span>
<span style="color: #339933;">import flash.net.navigateToURL;</span>
<span style="color: #339933;">[Embed(source=&quot;assets/Play.png&quot;)] 	[Bindable] public var iconPlay:Class;</span>
<span style="color: #339933;">[Embed(source=&quot;assets/Save.png&quot;)] 	[Bindable] public var iconSave:Class;</span>
<span style="color: #339933;">//procesa el dato para ser configurado por el renderer	</span>
<span style="color: #339933;">override protected function commitProperties():void {</span>
<span style="color: #339933;">	super.commitProperties();</span>
<span style="color: #339933;">	if (data == null) { return; }</span>
<span style="color: #339933;">	lbl.label = data.title;</span>
<span style="color: #339933;">	lbl.toolTip = data.description;</span>
<span style="color: #339933;">	downloadProgress.text = &quot;&quot;;</span>
<span style="color: #339933;">}</span>
<span style="color: #339933;">//</span>
<span style="color: #339933;">protected function playPodcast():void {</span>
<span style="color: #339933;">	dispatchEvent(new Event('playPodcast', true));</span>
<span style="color: #339933;">}</span>
<span style="color: #339933;">//abre la página html original donde se publicó el podcast</span>
<span style="color: #339933;">private function viewPost():void{</span>
<span style="color: #339933;">	navigateToURL(new URLRequest(data.link), &quot;_blank&quot;);</span>
<span style="color: #339933;">}</span>
<span style="color: #339933;">//inicia el proceso de descarga del mp3</span>
<span style="color: #339933;">private function downloadMp3():void{</span>
<span style="color: #339933;">	var urlReq:URLRequest = new URLRequest(data.enclosure.url);</span>
<span style="color: #339933;">	var fileRef:FileReference = new FileReference();</span>
<span style="color: #339933;">	fileRef.addEventListener(ProgressEvent.PROGRESS, progressHandler);  </span>
<span style="color: #339933;">   	fileRef.addEventListener(Event.COMPLETE, completeHandler);  </span>
<span style="color: #339933;">	fileRef.download(urlReq);</span>
<span style="color: #339933;">}</span>
<span style="color: #339933;">//Progreso de la descarga del archivo mp3</span>
<span style="color: #339933;">private function progressHandler(e:ProgressEvent):void {  </span>
<span style="color: #339933;">     var loadPercent:Number = Math.round((e.bytesLoaded / e.bytesTotal) * 100);</span>
<span style="color: #339933;">	downloadProgress.text = loadPercent+&quot; %&quot;;</span>
<span style="color: #339933;">} </span>
<span style="color: #339933;">private function completeHandler(event:Event):void {  </span>
<span style="color: #339933;">     downloadProgress.text = &quot;Download Complete&quot;;  </span>
<span style="color: #339933;">}  </span>
<span style="color: #339933;">	]]&gt;</span>
<span style="color: #339933;">&lt;/mx:Script&gt;</span>
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:LinkButton</span> id=<span style="color: #ff0000;">&quot;lbl&quot;</span> width=<span style="color: #ff0000;">&quot;260&quot;</span> color=<span style="color: #ff0000;">&quot;0x0&quot;</span> fontWeight=<span style="color: #ff0000;">&quot;bold&quot;</span> click=<span style="color: #ff0000;">&quot;{viewPost()}&quot;</span>  <span style="color: #7400FF;">/&gt;</span></span>
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Button</span> toolTip=<span style="color: #ff0000;">&quot;Play&quot;</span> icon=<span style="color: #ff0000;">&quot;{iconPlay}&quot;</span> click=<span style="color: #ff0000;">&quot;playPodcast()&quot;</span> height=<span style="color: #ff0000;">&quot;32&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Button</span> toolTip=<span style="color: #ff0000;">&quot;Download&quot;</span> icon=<span style="color: #ff0000;">&quot;{iconSave}&quot;</span> click=<span style="color: #ff0000;">&quot;downloadMp3()&quot;</span> height=<span style="color: #ff0000;">&quot;32&quot;</span> <span style="color: #7400FF;">/&gt;</span></span>
	<span style="color: #000000;"><span style="color: #7400FF;">&lt;mx:Label</span> id=<span style="color: #ff0000;">&quot;downloadProgress&quot;</span> text=<span style="color: #ff0000;">&quot;&quot;</span>  <span style="color: #7400FF;">/&gt;</span></span>
<span style="color: #000000;"><span style="color: #7400FF;">&lt;/mx:HBox</span><span style="color: #7400FF;">&gt;</span></span></pre></div></div>

<p><strong>Referencias:</strong></p>
<ul>
<li><a href="http://www.internaldrive.com/2009/03/11/making-a-flex-mp3-player/">Making a Flex MP3 Player</a></li>
<li><a href="http://blog.flexcommunity.net/?p=9">Simple Flex Mp3 Player</a></li>
<li>Librerías de íconos utilizadas: <a href="http://www.webappers.com/2008/02/12/webappers-released-free-web-application-icons-set/">Librería 1</a>, <a href="http://itweek.deviantart.com/art/Knob-Buttons-Toolbar-icons-73463960">Librería 2</a></li>
</ul>
]]></content:encoded>
			<wfw:commentRss>http://blog.gkudos.com/2009/08/29/crear-un-lector-de-podcasts-con-flex/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Desarrollo de aplicaciones colaborativas utilizando Flex 3, Facebook, BlazeDs, Spring y Java</title>
		<link>http://blog.gkudos.com/2009/08/22/desarrollo-de-aplicaciones-colaborativas-utilizando-flex-3-facebook-blazeds-spring-y-java/</link>
		<comments>http://blog.gkudos.com/2009/08/22/desarrollo-de-aplicaciones-colaborativas-utilizando-flex-3-facebook-blazeds-spring-y-java/#comments</comments>
		<pubDate>Sat, 22 Aug 2009 13:40:14 +0000</pubDate>
		<dc:creator>juanmendez</dc:creator>
				<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Rich Internet Applications]]></category>
		<category><![CDATA[adobe flex 3]]></category>
		<category><![CDATA[blazeds]]></category>
		<category><![CDATA[facebook connect]]></category>
		<category><![CDATA[mashup]]></category>

		<guid isPermaLink="false">http://blog.gkudos.com/?p=166</guid>
		<description><![CDATA[
En el siguiente enlace pueden encontrar la aplicación, código fuente y demos que Kudos Ltda.  presenta durante el FlashCampBogotá 2008:
Desarrollo de aplicaciones colaborativas utilizando Flex 3, Facebook, BlazeDs, Spring y Java
A continuación la presentación en SlideShare:
]]></description>
			<content:encoded><![CDATA[<p><img  title="Flash Camp Bogotá 2009 - Kudos Ltda." src="http://flashcamp.gkudos.com/facebook/images/flashcampsmall.jpg" alt="" width="578" height="80" /></p>
<p>En el siguiente enlace pueden encontrar la aplicación, código fuente y demos que Kudos Ltda.  presenta durante el FlashCampBogotá 2008:<br />
<a href="http://flashcamp.gkudos.com/facebook/">Desarrollo de aplicaciones colaborativas utilizando Flex 3, Facebook, BlazeDs, Spring y Java</a></p>
<p>A continuación la presentación en SlideShare:</p>
<object width="500" height="410"><param name="movie" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=kudosflashcampbogota2009-090821201218-phpapp02"/><param name="allowFullScreen" value="true"/><param name="allowScriptAccess" value="always"/><embed src="http://static.slideshare.net/swf/ssplayer2.swf?doc=kudosflashcampbogota2009-090821201218-phpapp02"  type="application/x-shockwave-flash" allowscriptaccess="always" allowfullscreen="true" width="500" height="410"></embed></object><!-- ysttest:Array
(
    [id] => 1892404&#038;doc=kudosflashcampbogota2009-090821201218-phpapp02
)
-->
]]></content:encoded>
			<wfw:commentRss>http://blog.gkudos.com/2009/08/22/desarrollo-de-aplicaciones-colaborativas-utilizando-flex-3-facebook-blazeds-spring-y-java/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Representación Geográfica de Indicadores Estadísticos Utilizando Software Libre</title>
		<link>http://blog.gkudos.com/2008/07/22/representacion-geografica-de-indicadores-estadisticos-utilizando-software-libre/</link>
		<comments>http://blog.gkudos.com/2008/07/22/representacion-geografica-de-indicadores-estadisticos-utilizando-software-libre/#comments</comments>
		<pubDate>Tue, 22 Jul 2008 20:25:36 +0000</pubDate>
		<dc:creator>juanmendez</dc:creator>
				<category><![CDATA[Adobe Flex]]></category>
		<category><![CDATA[Mapserver]]></category>
		<category><![CDATA[adobe flex 3]]></category>
		<category><![CDATA[postgis]]></category>
		<category><![CDATA[postgres]]></category>
		<category><![CDATA[web mapping]]></category>

		<guid isPermaLink="false">http://blog.gkudos.com/?p=10</guid>
		<description><![CDATA[
El despliegue de las diferentes cifras estadísticas asociadas a entes territoriales son comúnmente presentadas en tablas, este ejemplo busca mostrar como puede desplegarse información estadística de manera interactiva a través de la web utilizando mapas y gráficas estadísticas además de herramientas basadas en Software Libre.
Iniciar Aplicativo
Ver Video 1 (Consulta de Estadísticas)
Ver Video 2 (Selección de [...]]]></description>
			<content:encoded><![CDATA[<p><script src="http://blog.gkudos.com//scripts/kudos.js" type="text/javascript"></script></p>
<p><span style="font-size: small;">El despliegue de las diferentes cifras estadísticas asociadas a entes territoriales son comúnmente presentadas en tablas, este ejemplo busca mostrar como puede desplegarse información estadística de manera interactiva a través de la web utilizando mapas y gráficas estadísticas además de herramientas basadas en Software Libre.</span></p>
<p style="text-align: center;"><a onclick="launchwin();" href="#"><span style="font-size: medium;">Iniciar Aplicativo</span></a></p>
<p style="text-align: center;"><a onclick="openvideo('http://static.gkudos.com/flash/salud/kudos_salud_01.html');" href="#"><span style="font-size: medium;">Ver Video 1 (Consulta de Estadísticas)</span></a></p>
<p style="text-align: center;"><a onclick="openvideo('http://static.gkudos.com/flash/salud/kudos_salud_02.html');" href="#"><span style="font-size: medium;">Ver Video 2 (Selección de Capas)</span></a></p>
<p style="text-align: center;"><img style="width: 558px; height: 241px;" src="http://static.gkudos.com/images/salud.jpg" alt="" /></p>
<h4><span style="font-size: small;">Software Utilizado </span></h4>
<p style="text-align: justify;"><span style="font-size: small;">Para la implementación del sistema se emplearon las siguientes herramientas:</span></p>
<ul>
<li><span style="font-size: small;">Postgre</span><span style="font-size: small;">sql / Postgis </span><span style="font-size: small;"> </span></li>
<li><span style="font-size: small;">Maps</span><span style="font-size: small;">erver</span></li>
<li><span style="font-size: small;">Php</span></li>
<li><span style="font-size: small;">Adobe Flex 3 SDK</span></li>
</ul>
<h4><span style="font-size: small;">Fuentes de Información</span></h4>
<p style="text-align: justify;"><span style="font-size: small;">Se tomo información del publica dispuesta por el Dane sobre esperanza de vida  y  Fertilidad en periodos de tiempo de 5 años desde 1985 al 2005. Se muestra el rango en el que oscila cada estadística desplegando el mínimo y máxima edad. Por ejemplo al tomar el periodo del año 1985 1990, seleccionando el item esperanza de vida de hombres  muestra un mínimo y un máximo.</p>
<p></span></p>
<h4><span style="font-size: small;">Descripción General de la Interacción</span></h4>
<p><span style="font-size: small;">En el siguiente gráfico pueden apreciarse algunas de las herramientas de interactividad desarrolladas para el aplicativo. </span></p>
<p style="text-align: center;"><span style="font-size: small;"><img src="http://static.gkudos.com/images/salud_herramientas.jpg" alt="" /></span></p>
<p style="text-align: justify;"><span style="font-size: small;">Entre otras herramientas tenemos:</span></p>
<ul>
<li><span style="font-size: small;">Selección de Temática Estadística</span></li>
<li><span style="font-size: small;">Selección de Capas Geográficas</span></li>
<li><span style="font-size: small;">Definición de Convenciones para la Clasificación de la capa temática</span></li>
<li><span style="font-size: small;">Despliegue de Convenciones temática</span></li>
<li><span style="font-size: small;">Zoom, Panning y Selección de área en el Mapa </span></li>
<li><span style="font-size: small;">Identificación de Características Temáticas a través de la selección en el mapa</span></li>
</ul>
<p style="text-align: center;"><img style="width: 590px; height: 194px;" src="http://static.gkudos.com/images/salud_mapa.jpg" alt="" /></p>
<p style="text-align: justify;"><span style="font-size: small;">En generla, utilizando el cuadro de clasificación se puede  interactua</span><span style="font-size: small;">r, definiendo un nuevo numero de rangos o cambiando el color de despliegue de cada rango, donde una vez modificados los parámetros se genera nuevamente el mapa. Adicionalmente se habilito una herramienta que interactúa sobre el mapa para  conocer las estadísticas especificas de una  zona seleccionada,</span><span style="font-size: small;"> al seleccionar el rea se desplie</span><span style="font-size: small;">gan a nivel de departamento la estadísticas de cada uno de estos.</span></p>
<p style="text-align: center;"><span style="font-size: small;"><img style="width: 562px; height: 335px;" src="http://static.gkudos.com/images/salud_chart.jpg" alt="" /></span></p>
<p><span style="font-size: small;">Para mayor información puede escribirnos a: <img src="http://static.gkudos.com/images/kudos_email.gif" alt="" align="absbottom" /></span></p>
<p style="text-align: center;">
<p style="text-align: center;"><span style="font-size: small;"></p>
<p></span> <img src="http://alamocfug.org/images/fx_appicon.png" alt="" /></p>
<p style="text-align: center;"><span style="font-size: small;"><img style="width: 185px; height: 185px;" src="http://static.gkudos.com/images/postgis.gif" alt="" /></span></p>
<p style="text-align: center;"><img src="http://static.php.net/www.php.net/images/php.gif" alt="" /></p>
<h4 style="text-align: center;"><span style="font-size: small;"><img style="width: 339px; height: 60px;" src="http://static.gkudos.com/images/mapserver.jpg" alt="" align="middle" /></span></h4>
<p style="text-align: center;">
]]></content:encoded>
			<wfw:commentRss>http://blog.gkudos.com/2008/07/22/representacion-geografica-de-indicadores-estadisticos-utilizando-software-libre/feed/</wfw:commentRss>
		<slash:comments>3</slash:comments>
		</item>
	</channel>
</rss>
