<?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>Rafael Dohms &#187; Web 2.0</title>
	<atom:link href="http://blog.doh.ms/category/tech/web-20/feed/" rel="self" type="application/rss+xml" />
	<link>http://blog.doh.ms</link>
	<description>Web Engineer</description>
	<lastBuildDate>Thu, 09 May 2013 08:57:03 +0000</lastBuildDate>
	<language>en-US</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.5.1</generator>
		<item>
		<title>Languages and the Web</title>
		<link>http://blog.doh.ms/2009/01/29/languages-and-the-web/#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=languages-and-the-web</link>
		<comments>http://blog.doh.ms/2009/01/29/languages-and-the-web/#comments</comments>
		<pubDate>Thu, 29 Jan 2009 12:00:37 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[Technology and Web]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[languages]]></category>
		<category><![CDATA[technology]]></category>
		<category><![CDATA[web]]></category>

		<guid isPermaLink="false">http://www.rafaeldohms.com.br/?p=461</guid>
		<description><![CDATA[Answer me quick: “What is the language of the web?” Ok, how many of you answered with the name of a programming language? How many shouted out PHP, Ruby, Python or something similar? This is not that kind of post &#8211; I am not trying to start a religious war amongst the supporters of our [...]]]></description>
				<content:encoded><![CDATA[<p>Answer me quick: <strong>“What is the language of the web?”</strong></p>
<p>Ok, how many of you answered with the name of a programming language? How many shouted out PHP, Ruby, Python or something similar? This is not that kind of post &#8211; I am not trying to start a religious war amongst the supporters of our beloved languages (not in this post at least…)</p>
<p>What I mean is this &#8211; what is the real language of the web: is it English? French? German? Or the ever more important Chinese? This may seem to be a simple question, but let’s look at the implications of language on the web.</p>
<p>I’m writing this post after attending Campus Party ‘09, and I ended up reflecting a lot on this issue after watching Tim Berners-Lee’s presentation on the semantic web. This presentation had semi-simultaneous translation, and I must say I was not pleased with it. I have been working with the internet for over 9 years now, and over the years I have noticed the way in which languages such as Portuguese, Chinese and others started to invade a previously almost-pure-English environment.</p>
<p>Someone very wise once told me that knowing English means that you have access to a great deal more more content, and you have that access before someone that does not know English have it &#8211; that is the difference English makes on your resume (no wonder he is now my boss). And that is actually our current reality, most of the content on the Internet is first generated in English, and then it makes its way to other languages through the various translations made by local bloggers and such. This is not always the case of course &#8211; I also post in Portuguese and must say I do the opposite by translating into English from Portuguese. Nevertheless I have seen blogposts in English attract far more attention. During my first year of blogging one of my posts written in Portuguese and then translated to English proved this point. While the original post got lots of attention and comments, the English post rapidly made it to the first page of Digg and made me suffer from the “Digg-effect”. My blog has never since reached close to that peek number of visits &#8211; so hypothesis proved, English does go a long way.</p>
<p>This of course is not just because of the number of English readers out there, but also because of the number of tools available to English content generators, tools such as Digg and so many others. The rule seems not to apply itself only to user generated content, but also to applications, since an application has a much larger chance of gaining traction if it is in English. Of course this opens up a new door, the “localized version” door. If applications do not localize themselves to certain countries, a natural evolution of the web and the vacuum left by this application might generate local sites, developed by local people with local cultures. Take a look at <a target="_blank" href="http://www.blogblogs.com.br">BlogBlogs</a>, based on Technorati but for a Brazilian audience.</p>
<p>Globalization, or whatever you want to call it, is changing this picture, more and more references are popping up in different languages, new bloggers and new sites. This is turning the web into a truly multi-language environment, which means content is now being generated in various languages, and then making its way to English speakers, no longer exclusively the other way around.</p>
<p>This is positive, but it also weakens the unified language pattern and has a second side effect, very negative in my opinion, and which inspired this reflection. New internet enthusiasts and content creators are actually feeling as if though learning English is not important anymore. “Hey, I have that in Portuguese” or “I can just google-translate it” are phrases heard more and more often these days, and this is bad. People begin to get locked up in little box, an expanding box, true, but a box anyway. Poorly translated material and lack of “knowing better” precipitates this chain reaction. And this ultimately is reflected at technology events like the Campus Party event in Sao Paulo.</p>
<p>Tim’s session was a embarrassment in my opinion. In order to accommodate the segment of the crowd that did not speak English, the session was presented with a translator being present. If it was done with simultaneous translation this might not have been as bad, but it was a ping-pong style translation. This gave Tim some problems, having his line of though interrupted by the translator, who could not let him go ahead with too many phrases before she translated it, and finally, she was not a technical translator making quite a few translation mistakes, and losing some technical terms all-together, such as the very complex “HTTP”.</p>
<p>This is the point where globalization really annoys me. These high level events and sessions, directed at high level developers and internet professionals, should not need translation from English, since it is such a widespread and globally accepted language, especially in the world of technology. This would act like a filter and solve other problems of these sessions, raising the bar on quality of attendees, avoiding some of the questions that were asked, for example where Tim (the creator of the web) was asked how we could make the transition from the web to the web 2.0 and 3.0…the only thing not added to the question was “where can i download the patch?”</p>
<p>So my final suggestion to you is, spread out, make yourself available to more content, learn English and if you have a chance, learn at least one of the other big 5 languages other than your mother-tongue. The content is out there, go after it.</p>
<p>[<a href="http://www.mihswat.com/2009/01/26/language-of-the-web/" target="_blank">first published on the SWAT Blog</a>]</p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2009/01/29/languages-and-the-web/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2009. |
	  <a href="http://blog.doh.ms/2009/01/29/languages-and-the-web/">Permalink</a> |
	  <a href="http://blog.doh.ms/2009/01/29/languages-and-the-web/#comments">One comment</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/tech/" title="View all posts in Technology and Web" rel="category tag">Technology and Web</a>, <a href="http://blog.doh.ms/category/tech/web-20/" title="View all posts in Web 2.0" rel="category tag">Web 2.0</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2009/01/29/languages-and-the-web/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Feedalizr &#8211; A Desktop/AIR FriendFeed App</title>
		<link>http://blog.doh.ms/2008/04/16/feedalizr-a-desktopair-friendfeed-app/#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=feedalizr-a-desktopair-friendfeed-app</link>
		<comments>http://blog.doh.ms/2008/04/16/feedalizr-a-desktopair-friendfeed-app/#comments</comments>
		<pubDate>Wed, 16 Apr 2008 12:30:34 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[friendfeed]]></category>
		<category><![CDATA[swat]]></category>

		<guid isPermaLink="false">http://www.rafaeldohms.com.br/?p=185</guid>
		<description><![CDATA[Since I recently joined the SWAT Team, let me take the opportunity to tell you abou an interresting app, developed by our team, with contributions of SWAT Brazil and SWAT South Africa. Its called Feedalizr, a desktop client, developed in Adobe AIR, which retrieves your feed from FriendFeed , allowing you to follow all the [...]]]></description>
				<content:encoded><![CDATA[<p>Since I recently joined the SWAT Team, let me take the opportunity to tell you  abou an interresting app, developed by our team, with contributions of SWAT Brazil and SWAT South Africa.</p>
<p>Its called Feedalizr, a desktop client, developed in Adobe AIR, which retrieves your feed from FriendFeed , allowing you to follow all the action right on your desktop. Much like we see with twitter, but this is actually the first FriendFeed Desktop App to have been released, just last week.</p>
<p>Its in alpha but a new version should be available within the week, with loads of new stuff and improved usability, worth checking it out! This is a sample of the kind of projects that may lie ahead for me in this new and exciting position, as described in the previous post.</p>
<p>Check it out: <a title="Feedalizr" href="http://www.feedalizr.com" target="_blank">www.feedalizr.com</a></p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2008/04/16/feedalizr-a-desktopair-friendfeed-app/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2008. |
	  <a href="http://blog.doh.ms/2008/04/16/feedalizr-a-desktopair-friendfeed-app/">Permalink</a> |
	  <a href="http://blog.doh.ms/2008/04/16/feedalizr-a-desktopair-friendfeed-app/#comments">No comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/tech/web-20/" title="View all posts in Web 2.0" rel="category tag">Web 2.0</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2008/04/16/feedalizr-a-desktopair-friendfeed-app/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>AJAX: What is it?</title>
		<link>http://blog.doh.ms/2006/10/12/ajax-what-is-it/#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=ajax-what-is-it</link>
		<comments>http://blog.doh.ms/2006/10/12/ajax-what-is-it/#comments</comments>
		<pubDate>Thu, 12 Oct 2006 22:51:27 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[Technology and Web]]></category>

		<guid isPermaLink="false">http://www.rafaeldohms.com.br/2006/10/12/ajax-what-is-it/pt/</guid>
		<description><![CDATA[Author&#8217;s note: This article was first published in my AJAX Column (AjaxOnline.com.br) in Portuguese where my intended audience is a group of beginners learning about the AJAX initiative. Since it turned out to be a really interesting article I decided to translate it and share it with a wider audience. I wondered where I should [...]]]></description>
				<content:encoded><![CDATA[<p>Author&#8217;s note: This article was first published in my AJAX Column (<a href="http://www.ajaxonline.com.br/?rafaeldohms">AjaxOnline.com.br</a>) in Portuguese where my intended audience is a group of beginners learning about the AJAX initiative. Since it turned out to be a really interesting article I decided to translate it and share it with a wider audience.</p>
<p>I wondered where I should begin explaining AJAX and finally decided I should begin explaining what&#8217;s behind it and how it came around, so everyone knows where we are coming from.</p>
<p>Ajax, web 2.0, RSS, if you&#8217;ve never heard any of these terms than something is wrong, you are either way behind in web technologies or not serious enough about web development. The concept of Web 2.0 is what we may call the &#8220;father&#8221; of the latest trends in web applications, where various technologies are used to improve the user&#8217;s experience, but what is the concept?</p>
<p>A Brazilian magazine this month published an article dedicated to this topic and its explanation was on the spot with Wikipedia&#8217;s definition. Web 2.0 is a concept born in an O&#8217; Reilly Conference in 2004 and was purposed to describe the new trends of web based applications. This second generation solutions allow a greater collaboration and exchange of information between users, more than any previous system.</p>
<p>In this universe, the web 2.0 apps have a few &#8220;expected&#8221; characteristics, like using the web as its platform, being data-driven, using external data (such as RSS and Web Services) and breaking the default software life cycle, giving way to the &#8220;eternal beta&#8221; (that&#8217;s why we see so many betas in logos), among others characteristics. Basically we have four main groups: social bookmarking, wikis, communication sites and folksonomy. If you want more examples of these, visit this site: <a href="http://en.wikipedia.org/wiki/Web_2">http://en.wikipedia.org/wiki/Web_2</a>.</p>
<p>With these concepts in mind we finally see the birth of AJAX. Ok, that might not be the right word, as AJAX is not a new technology but really another way of utilizing various older technologies, with a new focus. Some of the elements that compose AJAX can be dated as early as 1996 in Microsoft&#8217;s ideas. The idea was to turn around the usual web apps, breaking free of the general stiffness and overall static content, bring to live more dynamic and intuitive apps. These were meant to be more responsive exchanging information behind the scene, creating an illusion of interactivity along with higher speeds and better usability.</p>
<p>If AJAX (Asynchronous JavaScript and XML) isn’t that new, we should be able to notice that looking at the elements used to create the AJAX &#8220;Look and Feel&#8221;. HTML and CSS, as in most platforms, are used to structure the information visually. DOM (Document Object Model) is used by JavaScript to promote visual changes and XML is vastly used in information exchange. Finally we have the XMLHttpRequest; this is where the &#8220;new technology&#8221; concept goes into a confusing loop. Few people actually know that this technology has been around from around the year 2000, created by Microsoft to be used in Outlook&#8217;s Web Access, and finally incorporated by Mozilla in 2002. However only in 2006 the W3C published its first Draft, sending it on its way to become a standard.</p>
<p>From my experience the real rupture in development is understanding the request&#8217;s dynamic, the rest might be  lot of work but its still DOM manipulation and other things we have already being playing with for a longer while. So I think it’s really valid to go a little deeper into the XMLHttpRequest to really get the concept.</p>
<p>The image below represents the flow of information in an AJAX communication, indicating exactly where the request goes into action.</p>
<div align=center>
<a href="http://blog.rafaeldohms.com.br/wp-content/uploads/ajax-basic2.gif" rel="lightbox"> <img id="image45"  src="http://blog.rafaeldohms.com.br/wp-content/uploads/ajax-basic2.thumbnail.gif"  alt="AJAX - Data Flow" /></a></div>
<p>As we can observe, the request receives values in URL format, but we can choose between GET and POST to transmit the values, seeing as with POST we don’t need to worry about URL encoding. The data is sent to a backend file, as any POST process, however this file won’t return basic HTML, but some XML data that will be used to promote changes in the original page, maybe even containing HTML data or just plain text.</p>
<p>Finally this response is manipulated and using DOM we can change the page adding or removing elements, populating combo boxes or altering a DIV&#8217;s content.</p>
<p>So that’s the perspective, where it all fits in the big plan of the web, next time around I will move on to more &#8220;hand&#8217;s on work&#8221;.</p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2006/10/12/ajax-what-is-it/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2006. |
	  <a href="http://blog.doh.ms/2006/10/12/ajax-what-is-it/">Permalink</a> |
	  <a href="http://blog.doh.ms/2006/10/12/ajax-what-is-it/#comments">2 comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/tech/web-20/ajax/" title="View all posts in ajax" rel="category tag">ajax</a>, <a href="http://blog.doh.ms/category/dev/javascript/" title="View all posts in Javascript" rel="category tag">Javascript</a>, <a href="http://blog.doh.ms/category/tech/web-20/" title="View all posts in Web 2.0" rel="category tag">Web 2.0</a>, <a href="http://blog.doh.ms/category/dev/xml/" title="View all posts in XML" rel="category tag">XML</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2006/10/12/ajax-what-is-it/feed/</wfw:commentRss>
		<slash:comments>2</slash:comments>
		</item>
		<item>
		<title>dmsAutoComplete v1.1 &#8211; ChangeLog</title>
		<link>http://blog.doh.ms/2006/10/02/dmsautocomplete-v11-changelog/#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=dmsautocomplete-v11-changelog</link>
		<comments>http://blog.doh.ms/2006/10/02/dmsautocomplete-v11-changelog/#comments</comments>
		<pubDate>Mon, 02 Oct 2006 15:15:38 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[ajax]]></category>
		<category><![CDATA[Javascript]]></category>
		<category><![CDATA[PHP]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[dmsAutoComplete]]></category>

		<guid isPermaLink="false">http://www.rafaeldohms.com.br/2006/10/02/dmsautocomplete-v11-changelog/en/</guid>
		<description><![CDATA[Recently I published an updated version of my auto-complete (Google suggest) script compatible with IE and FireFox and based on PHP/AJAX. After publishing version 1.0, I had some feedback from people who downloaded an tested it, so now I decided to correct some of the bugs that were found, and make a few improvements also. [...]]]></description>
				<content:encoded><![CDATA[<p>Recently I published an updated version of my auto-complete (Google suggest) script compatible with IE and FireFox and based on PHP/AJAX.</p>
<p>After publishing version 1.0, I had some feedback from people who downloaded an tested it, so now I decided to correct some of the bugs that were found, and make a few improvements also. So now I’m going to publish version 1.1, check out some of the changes I made.</p>
<p><strong>FIX: Pressing TAB/ENTER with nothing selected returned an error message </strong><br />
Always when TAB/ENTER was pressed without any list item selected an error message was returned because the script couldn’t find the value it expected to find, this issue was resolved by adding a flag that made the script ignore this command in this case, causing it to just hide the div.</p>
<pre class="brush: jscript; title: ; notranslate">if (me.highlighted.id != undefined){
me.acChoose(me.highlighted.id);
}</pre>
<p><strong>CSS: FireFox showed no linebreaks</strong><br />
Who tried out my script in FireFox noticed that sometimes the list appeared on a single line, with no line breaks between the items, a simple change in the CSS style of the LI element resolved the problem</p>
<pre class="brush: css; title: ; notranslate">#acDiv UL LI{ display:block;}</pre>
<p><strong>FEATURE: Adding multiple auto-completes in a single page</strong><br />
Due to the way I was referencing the AC object in the script it was impossible to change the name of the variable that received the object. So adding more than one was an impossible mission. Adapting the reference I made it possible to add multiple scripts, as in the example:</p>
<pre class="brush: jscript; title: ; notranslate">var AC = new dmsAutoComplete('string','acDiv');
AC.chooseFunc = function(id,label){
alert(id+'-'+label);
}

var AC2 = new dmsAutoComplete('string2','acDiv2');
AC2.chooseFunc = function(id,label){
alert(id+'-'+label);
}</pre>
<p>Version 1.1 of the script is available in the same link as before:</p>
<ul>
<li><a href="http://blog.rafaeldohms.com.br/myprojects/autocomplete/example.htm">Live demo</a></li>
<li><a href="http://blog.rafaeldohms.com.br/myprojects/autocomplete/dmsAutoComplete.zip">Download: dmsAutoComplete.zip</a></li>
</ul>
<p>If you would like to know more about the scripts history <a href="http://blog.rafaeldohms.com.br/2006/07/10/dmsautocomplete/pt/">look here</a></p>
<p>If you happen to find the script useful and decide to use it in your solution please let me know, give me some feedback on the bugs, and let me know how it worked for you.</p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2006/10/02/dmsautocomplete-v11-changelog/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2006. |
	  <a href="http://blog.doh.ms/2006/10/02/dmsautocomplete-v11-changelog/">Permalink</a> |
	  <a href="http://blog.doh.ms/2006/10/02/dmsautocomplete-v11-changelog/#comments">6 comments</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/tech/web-20/ajax/" title="View all posts in ajax" rel="category tag">ajax</a>, <a href="http://blog.doh.ms/category/dev/javascript/" title="View all posts in Javascript" rel="category tag">Javascript</a>, <a href="http://blog.doh.ms/category/dev/php/" title="View all posts in PHP" rel="category tag">PHP</a>, <a href="http://blog.doh.ms/category/tech/web-20/" title="View all posts in Web 2.0" rel="category tag">Web 2.0</a>, <a href="http://blog.doh.ms/category/dev/xml/" title="View all posts in XML" rel="category tag">XML</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2006/10/02/dmsautocomplete-v11-changelog/feed/</wfw:commentRss>
		<slash:comments>6</slash:comments>
		</item>
		<item>
		<title>A study on RSS &#8211; Part 2: The RSS format</title>
		<link>http://blog.doh.ms/2006/09/18/a-study-on-rss-part-2-the-rss-format/#utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=a-study-on-rss-part-2-the-rss-format</link>
		<comments>http://blog.doh.ms/2006/09/18/a-study-on-rss-part-2-the-rss-format/#comments</comments>
		<pubDate>Mon, 18 Sep 2006 23:21:49 +0000</pubDate>
		<dc:creator>Rafael Dohms</dc:creator>
				<category><![CDATA[PHP]]></category>
		<category><![CDATA[RSS]]></category>
		<category><![CDATA[Technology and Web]]></category>
		<category><![CDATA[Web 2.0]]></category>
		<category><![CDATA[XML]]></category>
		<category><![CDATA[DOM]]></category>

		<guid isPermaLink="false">http://www.rafaeldohms.com.br/2006/09/18/a-study-on-rss-part-2-the-rss-format/en/</guid>
		<description><![CDATA[In the last article I made a simple introduction to what is an RSS Feed and showed the path to creating XML files in PHP. Now it’s time to explain the RSS file structure along with some basic history. The RSS format was not the first to be used in site summaries, in 1997 the [...]]]></description>
				<content:encoded><![CDATA[<p>In the last article I made a simple introduction to what is an RSS Feed and showed the path to creating XML files in PHP. Now it’s time to explain the RSS file structure along with some basic history.</p>
<p>The RSS format was not the first to be used in site summaries, in 1997 the Channel Definition Format created by Microsoft showed up along other less know formats, but it wasn’t until RSS that one specific format became largely popular and used by the “masses”. The first RSS version, known as RDF Site Summary, was created by Dan Libby in 1999 to be used in Netscape’s portal. This format became known as RSS 0.9 and was followed by RSS 0.91, based on alteration proposed by public opinion.</p>
<p>Around that time, due to Netscape’s lack of interest for the standard, a battle for its ownership started, causing what is now called the RSS Fork. Making a long story short, Dave Winer kept the 0.91 line going and a workgroup elaborated RSS 1.0 published by Tristan Louis in 2000. This standard had a more modular structure but was still RDF based.</p>
<p>Dave Winer insisted on RSS 0.91 and after some bumps and turbulence finally published RSS 2.0 in 2002, renaming it to Really Simple Sindication. This version got rid of RDF standards and made code syntax much more simple. Another format, Atom, also appeared in 2003, strutting as its differential the fact that a big corporation (IETF) was behind the scenes looking for evolution since RSS 2.0 was frozen in time.</p>
<p>The dispute between RSS 2.0 and Atom still persists, so for this article I made a choice to implement the RSS 2.0 format, as it’s the format used in my blog’s feeds and in the RSS I implemented over at ComuniWEB.</p>
<p>RSS 2.0</p>
<p>This is the basic structure of a <a href="http://www.rssboard.org/">RSS 2.0</a> file:</p>
<pre class="brush: xml; title: ; notranslate">
&lt; ?xml version=&quot;1.0&quot;?&gt;
&lt;rss version=&quot;2.0&quot;&gt;
  &lt;channel&gt;
    &lt;title&gt;Liftoff News&lt;/title&gt;
    &lt;link&gt;http://liftoff.msfc.nasa.gov/&lt;/link&gt;
    &lt;description&gt;Liftoff to Space Exploration.&lt;/description&gt;

    &lt;item&gt;
      &lt;title&gt;Star City&lt;/title&gt;
      &lt;link&gt;http://liftoff.msfc.nasa.gov/news/ 2003/news-starcity.asp&lt;/link&gt;
      &lt;description&gt;How do Americans get ready to work with Russians aboard the International Space Station? They take a crash course in culture, language and protocol at Russia's Star City.&lt;/description&gt;
    &lt;/item&gt;
    
    &lt;item&gt;
      &lt;title&gt;Space Exploration&lt;/title&gt;
      &lt;link&gt;http://liftoff.msfc.nasa.gov/&lt;/link&gt;
      &lt;description&gt;Sky watchers in Europe, Asia, and parts of Alaska and Canada will experience a partial eclipse of the Sun on Saturday, May 31st.&lt;/description&gt;
    &lt;/item&gt;
    
    &lt;item&gt;
      &lt;title&gt;The Engine That Does More&lt;/title&gt;
      &lt;link&gt;http://liftoff.msfc.nasa.gov/news/ 2003/news-VASIMR.asp&lt;/link&gt;
      &lt;description&gt;Before man travels to Mars, NASA hopes to design new engines that will let us fly through the Solar System more quickly.  The proposed VASIMR engine would do that.&lt;/description&gt;
    &lt;/item&gt;

  &lt;/channel&gt;
&lt;/rss&gt;
</pre>
<p>Notice the structure has a xml declaration and a “rss” root element. Under the rss element we have a “channel” which in a newspaper would be like the editorials: sports, politics,… Next up the items, this would represent the articles themselves.</p>
<p><strong>Channel</strong> node </p>
<pre class="brush: xml; title: ; notranslate"> 
&lt;channel&gt;
    &lt;title&gt;Liftoff News&lt;/title&gt;
    &lt;link&gt;http://liftoff.msfc.nasa.gov/&lt;/link&gt;
    &lt;description&gt;Liftoff to Space Exploration.&lt;/description&gt;
    &lt;language&gt;en-us&lt;/language&gt;
    &lt;pubdate&gt;Tue, 10 Jun 2003 04:00:00 GMT&lt;/pubdate&gt;
    &lt;lastbuilddate&gt;Tue, 10 Jun 2003 09:41:01 GMT&lt;/lastbuilddate&gt;
    &lt;docs&gt;http://blogs.law.harvard.edu/tech/rss&lt;/docs&gt;
    &lt;generator&gt;Weblog Editor 2.0&lt;/generator&gt;
    &lt;managingeditor&gt;editor@example.com&lt;/managingeditor&gt;
    &lt;webmaster&gt;webmaster@example.com&lt;/webmaster&gt;
 &lt;/channel&gt;
</pre>
<p>This node has required fields (3) and optional information, I’ll keep myself to the important ones:</p>
<p>Required:</p>
<ul>
<li>Title: Channels title, ex: ComuniWEB – Last Minute</li>
<li>Link: URL to the parent site </li>
<li>Description: Simple description of the feed and its content</li>
</ul>
<p>Optional:<br />
Language: Language of content “pt-br,en-us,&#8230;”<br />
Ttl: “time to live”, determines the time to renew a feed’s cache</p>
<p>To find out about more sub-nodes visit <a href="http://www.rssboard.org/rss-specification">the RSS 2.0 specification</a></p>
<p><strong>Item</strong> node</p>
<pre class="brush: xml; title: ; notranslate">    
    &lt;item&gt;
      &lt;title&gt;The Engine That Does More&lt;/title&gt;
      &lt;link&gt;http://liftoff.msfc.nasa.gov/news/2003/news-VASIMR.asp&lt;/link&gt;
      &lt;description&gt;Before man travels to Mars, NASA hopes to design new engines that will let us fly through the Solar System more quickly.  The proposed VASIMR engine would do that.&lt;/description&gt;
      &lt;pubdate&gt;Tue, 27 May 2003 08:37:32 GMT&lt;/pubdate&gt;
      &lt;guid&gt;http://liftoff.msfc.nasa.gov/2003/05/27.html#item571&lt;/guid&gt;
    &lt;/item&gt;
 </pre>
<p>This is the key node to a RSS feed, it represents all the tiny pieces of information that will be shared, be it an article, an event’s information, comments, or any other type of info. This node has a different policy with its sub-nodes, it has to have at least one of theses elements: title, link, description.</p>
<p>Here the link element points to the actual article, not just the site, the other fields are straightforward: </p>
<ul>
<li>author: Author of the item, credits</li>
<li>category: identifies a category and may have a “domain” attribute, that points to the URL that lists all in tat category. </li>
<li>comments: URL that points to the coment page</li>
<li>enclousure: allows external medias to be attached, like images, mp3, etc… </li>
<li>guid: item’s unique identifier</li>
<li>pubDate: date of publicationin this format: Sun, 19 May 2002 15:21:36 GMT</li>
<li>source: link back to the original RSS</li>
</ul>
<p>So thats the rundown on a RSS 2.0 file structure, it shows itself flexible enough to be used with different content types, making it adjustable to the type you wish to provide. Hope I shined some more light on the subject and this article pleases all you readers like the first part did, by the way thnx for the diggs!</p>
<p>Next time around, in part 3, I’ll wrap this up combining all we have discussed and publishing the feed.</p>
<p>Part 1: <a href="http://blog.rafaeldohms.com.br/2006/07/15/a-study-on-rss-part-1-xml-dom/en/">What is RSS and how do I build and XML using XML DOM?</a></p>
<div class="plus-one-wrap"><g:plusone href="http://blog.doh.ms/2006/09/18/a-study-on-rss-part-2-the-rss-format/"></g:plusone></div>	<p></p>
	<hr noshade style="margin:0;height:1px" />
	<p>&copy; Rafael Dohms for <a href="http://blog.doh.ms">Rafael Dohms</a>, 2006. |
	  <a href="http://blog.doh.ms/2006/09/18/a-study-on-rss-part-2-the-rss-format/">Permalink</a> |
	  <a href="http://blog.doh.ms/2006/09/18/a-study-on-rss-part-2-the-rss-format/#comments">One comment</a><br>
	  Want more on these topics ? Browse the archive of posts filed under <a href="http://blog.doh.ms/category/dev/php/" title="View all posts in PHP" rel="category tag">PHP</a>, <a href="http://blog.doh.ms/category/tech/web-20/rss/" title="View all posts in RSS" rel="category tag">RSS</a>, <a href="http://blog.doh.ms/category/tech/" title="View all posts in Technology and Web" rel="category tag">Technology and Web</a>, <a href="http://blog.doh.ms/category/tech/web-20/" title="View all posts in Web 2.0" rel="category tag">Web 2.0</a>, <a href="http://blog.doh.ms/category/dev/xml/" title="View all posts in XML" rel="category tag">XML</a>.</p>]]></content:encoded>
			<wfw:commentRss>http://blog.doh.ms/2006/09/18/a-study-on-rss-part-2-the-rss-format/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
	</channel>
</rss>

<!-- Performance optimized by W3 Total Cache. Learn more: http://www.w3-edge.com/wordpress-plugins/

Application Monitoring using New Relic

 Served from: blog.doh.ms @ 2013-05-22 14:15:40 by W3 Total Cache -->