<?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>MarkupAsAnApi &#187; Javascript</title>
	<atom:link href="http://www.markupasanapi.com/category/javascript/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.markupasanapi.com</link>
	<description>Publish once, publish everywhere</description>
	<lastBuildDate>Mon, 07 Sep 2009 03:56:21 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0</generator>
		<item>
		<title>Playing with YQL</title>
		<link>http://www.markupasanapi.com/2009/05/17/playing-with-yql/</link>
		<comments>http://www.markupasanapi.com/2009/05/17/playing-with-yql/#comments</comments>
		<pubDate>Sun, 17 May 2009 01:26:45 +0000</pubDate>
		<dc:creator>halans</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[screenscraping]]></category>
		<category><![CDATA[Yahoo!]]></category>
		<category><![CDATA[yql]]></category>

		<guid isPermaLink="false">http://www.markupasanapi.com/?p=65</guid>
		<description><![CDATA[Note: this is an edited repost from Halans.com. Have been playing with Yahoo!&#8217;s YQL this weekend, querying the Sydney Ferries website. Pretty amazing what it allows you to do, though the Sydney Ferries site wasn&#8217;t the best site to start playing with I guess. I did have a need to have the ferry timetable on [...]<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2009/05/17/playing-with-yql/">Playing with YQL</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Note: this is an edited repost from <a href="http://halans.com/2009/05/10/querying-the-next-sydney-ferry/">Halans.com</a>.</p>
<p>Have been playing with Yahoo!&#8217;s YQL this weekend, querying the Sydney Ferries website. Pretty amazing what it allows you to do, though the Sydney Ferries site wasn&#8217;t the best site to start playing with I guess. I did have a need to have the ferry timetable on my iPhone (especially the Neutral Bay service), so that&#8217;s why I put together <a title="Next ferry from Circular Quay" href="http://nextsydneyferry.com/">Next Sydney Ferry</a> this weekend.</p>
<p>The premise is pretty simple: when does the next ferry depart from Circular Quay? I had this wild idea to do cool stuff with it, but inspired by the simplicity of <a title="Next manly ferry" href="http://nextmanlyferry.com/">Next Manly Ferry</a>, I thought I&#8217;d start out pretty simple too. And it certainly still is a work in progress with plenty of bugs.</p>
<p>NextSydneyFerry.com parses the timetables of the SydneyFerries.info site using YQL and JSONP. No luck with any API, so it&#8217;s pretty fragile reading in the HTML table data. Wish they made an effort marking up the data a bit more helpful (as in markup-as-an-api). One of the URLs even has a typo (&#8220;weekemd&#8221;). I additionally notice YQL not returning any results for the same query, while at other times it would, so they have some bugs too. It was an interesting YQL experiment, but since the data is not too dynamic, I will probably switch to using a more static datastore, which would also be a lot more responsive, and which would be lighter on your mobile dataplan. This is very much a first version application, with limited functionality (it shows you <em>only</em> the next and thereafter ferry, and <em>only</em> departing from Circular Quay), some noteworthy points:</p>
<ul>
<li>it uses the server&#8217;s time so tourists don&#8217;t have to have their mobiles set to local time.</li>
<li>it updates the time in the background without a page refresh.</li>
<li>It allows you to bookmark your daily service.</li>
</ul>
<p>Sydney Ferries allows you to repurpose their content, as long as you add their copyright notice and don&#8217;t charge for it. But they could have made it a lot easier for people to do so.</p>
<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2009/05/17/playing-with-yql/">Playing with YQL</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.markupasanapi.com/2009/05/17/playing-with-yql/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Google X</title>
		<link>http://www.markupasanapi.com/2008/09/06/google-x/</link>
		<comments>http://www.markupasanapi.com/2008/09/06/google-x/#comments</comments>
		<pubDate>Sat, 06 Sep 2008 02:04:52 +0000</pubDate>
		<dc:creator>halans</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Google]]></category>
		<category><![CDATA[Microsoft]]></category>

		<guid isPermaLink="false">http://www.markupasanapi.com/?p=32</guid>
		<description><![CDATA[Google turned 10 this week, from a simple university search project to a 20.000 employees strong company. Google also seem to have come full circle by introducing their own (open source) browser this week, Google Chrome: Google Chrome is a browser that combines a minimal design with sophisticated technology to make the web faster, safer, [...]<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2008/09/06/google-x/">Google X</a></p>
]]></description>
			<content:encoded><![CDATA[<p><a title="Google at Stanford, ano 1998" href="http://web.archive.org/web/19981111183552/google.stanford.edu">Google turned 10 this week</a>, from a simple university search project to <a href="http://www.thestandard.com/news/2008/09/05/google-reigns-worlds-most-powerful-10-year-old">a 20.000 employees strong company</a>. Google also seem to have come full circle by introducing their own (<a title="Chromium" href="http://dev.chromium.org/">open source</a>) browser this week, <a title="Google Chrome" href="http://www.google.com/chrome">Google Chrome</a>:</p>
<blockquote><p>Google Chrome is a browser that combines a minimal design with sophisticated technology to make the web faster, safer, and easier. <a onclick="javascript:carry_tracking(this);" href="http://www.google.com/chrome/intl/en/why.html">Read about why we built a browser</a>.</p></blockquote>
<p>They introduced Chrome <a title="Chrome cartoon" href="http://www.google.com/googlebooks/chrome/">using a cartoon</a>, which not only acts as a clever viral marketing tactic (accidently leaked, oRLY?), but it also explains <a href="http://www.google.com/chrome/intl/en/why.html?hl=en">why</a> they released their own browser and how it tries to improve the internet experience for people, making <a title="Ask E.T." href="http://www.edwardtufte.com/bboard/q-and-a-fetch-msg?msg_id=0003Hd&amp;topic_id=1">complex information simple</a>.</p>
<blockquote><p>On the surface, we designed a browser window that is streamlined and simple. To most people, it isn&#8217;t the browser that matters. It&#8217;s only a tool to run the important stuff &#8211; the pages, sites and applications that make up the web. Like the classic Google homepage, Google Chrome is clean and fast. It gets out of your way and gets you where you want to go.</p></blockquote>
<p>Chrome is based on WebKit, the same HTML engine powering Apple&#8217;s Safari browser, and a new <a href="http://code.google.com/p/v8/">V8 JavaScript engine</a>. While the last couple of years we&#8217;ve seen browsers adhere more and more to WebStandards (especially improved CSS support, finally in IE8), we might get confronted again with JavaScript incompatibilities (<a href="http://ejohn.org/blog/javascript-in-chrome/">client-side storage, text-node serialization, timer delay,&#8230;</a>) due to these new JavaScript engines being introduced. Although these JavaScript engines do support the ECMA language standards, they do a lot more under the hood to improve JavaScript performance.</p>
<p>And you have to wonder, with a User-Agent string like <em>Mozilla/5.0 (Windows; U; Windows NT 5.1; en-US) AppleWebKit/525.13 (KHTML, like Gecko) Chrome/0.2.149.27 Safari/525.13</em>, <a href="http://webaim.org/blog/user-agent-string-history/">is the User-Agent still useful</a>?</p>
<p>Google doesn&#8217;t make any money out of their search, nor with this browser, they make money with advertisements. So the question begs itself, will we see adverts in Chrome? Will it be limited to Google Search? Questions being <a href="http://www.mattcutts.com/blog/common-google-chrome-objections/">answered on Matt Cutt&#8217;s blog</a>, but you have to wonder, even if you are using an other search provider, they could still pick up anything you do in Chrome, what you&#8217;re searching for, what you click on, as if you were using their search. Not really, it is open source, and it is &#8216;easy&#8217; to see what exactly it is doing.</p>
<p>I&#8217;ve been using it at work this week, and I&#8217;m glad my stuff still works (contrary to the new IE8 beta 2, which I&#8217;ll need some more time investigating). I like most of its chrome&#8217;s aesthetics, its simplicity, but I really don&#8217;t like the baby blue though. The incognito mode looks a little bit nicer. I like the task manager and &#8216;<a title="Stats for nerds" href="http://www.flickr.com/photos/halans/2823225684/">stats for nerds</a>&#8216;, and the WebKit based dev tools. Also try about:memory, about:stats, about:histograms, about:internets, and about:crash in the &#8216;Omnibar&#8217;.</p>
<p>I&#8217;m also amazed at how Windows app development has stagnated so much since, well, ever. I mean, Chrome doesn&#8217;t look like a Windows app, same as Apple Safari doesn&#8217;t look like a Windows app, and I mean that in a good sense. Same reason I like AIR-based apps which don&#8217;t look like drab Windows apps.</p>
<p>I wasn&#8217;t using Safari all that much on Windows, but I might use Chrome a bit more (even when the Mac version is released, so I can use it at home), though Firefox (and the upcoming 3.1) will still remain my main browser. And that always has been the main problem. Sometimes, for some people, just good is good enough. That&#8217;s why we&#8217;re still stuck with lots of IE6 visitors. But the might of Google may well change things, by paying hardware vendors (the HPs, Dells in the world) to have Chrome as the default browser on their hardware, same way they do to have their browser toolbar included.</p>
<p>The Mac and Linux versions are in the works. The cartoon talks about extension, but currently they don&#8217;t offer any.</p>
<p>Google Chrome is another option for people. It forces the other browser developers to take notice. Though it looks like we&#8217;re heading for another browser war this summer (hey, I&#8217;m down under), this one will take the web forward. Progression is good, and we really need a big leap now. Bring &#8216;em on, all at once.</p>
<p>So, who is today&#8217;s startup Google, and where will they be in 10 years time?</p>
<p>PS: Two weeks ago Microsoft released their IE8 beta 2 to the broader public, as well as Apple releasing Safari 4 beta for developers, and Firefox has a 3.1 version available too. Good times!</p>
<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2008/09/06/google-x/">Google X</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.markupasanapi.com/2008/09/06/google-x/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Mozilla Ubiquity 0.1</title>
		<link>http://www.markupasanapi.com/2008/08/27/mozilla-ubiquity/</link>
		<comments>http://www.markupasanapi.com/2008/08/27/mozilla-ubiquity/#comments</comments>
		<pubDate>Wed, 27 Aug 2008 11:37:37 +0000</pubDate>
		<dc:creator>halans</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[Semantic Web]]></category>
		<category><![CDATA[Aza Raskin]]></category>
		<category><![CDATA[browser]]></category>
		<category><![CDATA[firefox]]></category>
		<category><![CDATA[open Web APIs]]></category>

		<guid isPermaLink="false">http://www.markupasanapi.com/?p=21</guid>
		<description><![CDATA[Aza Raskin of Mozilla introduces a new experimental (alpha 0.1) project, called Ubiquity, a power user&#8217;s CLI extension for Firefox. It integrates Google Maps/Translate/Gmail, Twitter, Digg, Wikipedia, TinyURL,&#8230; and allows the user to mashup content himself, through a command line. It&#8217;s very similar to PodiPodi, Catalog/Devo extension, but being developed backed by the Mozilla community. Empower users to [...]<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2008/08/27/mozilla-ubiquity/">Mozilla Ubiquity 0.1</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Aza Raskin of Mozilla introduces a new experimental (alpha 0.1) project, called <a title="Mozilla Ubiquity" href="http://labs.mozilla.com/2008/08/introducing-ubiquity/">Ubiquity</a>, a power user&#8217;s CLI extension for Firefox. It integrates Google Maps/Translate/Gmail, Twitter, Digg, Wikipedia, TinyURL,&#8230; and allows the user to mashup content himself, through a command line. It&#8217;s very similar to PodiPodi, <a title="Devo CLI extension" href="https://addons.mozilla.org/en-US/firefox/addon/8179">Catalog/Devo</a> extension, but being developed backed by the Mozilla community.</p>
<blockquote><p>Empower users to control the web browser with language-based instructions.</p>
<p>Enable on-demand, user-generated mashups with existing open Web APIs.</p>
<p>Use Trust networks and social constructs to balance security with ease of extensibility.</p>
<p>Extend the browser functionality easily.</p></blockquote>
<p><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="400" height="300" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowfullscreen" value="true" /><param name="allowscriptaccess" value="always" /><param name="src" value="http://www.vimeo.com/moogaloop.swf?clip_id=1561578&amp;server=www.vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" /><embed type="application/x-shockwave-flash" width="400" height="300" src="http://www.vimeo.com/moogaloop.swf?clip_id=1561578&amp;server=www.vimeo.com&amp;show_title=1&amp;show_byline=1&amp;show_portrait=0&amp;color=&amp;fullscreen=1" allowscriptaccess="always" allowfullscreen="true"></embed></object><br />
<a href="http://www.vimeo.com/1561578?pg=embed&amp;sec=1561578">Ubiquity for Firefox</a> from <a href="http://www.vimeo.com/user532161?pg=embed&amp;sec=1561578">Aza Raskin</a> on <a href="http://vimeo.com?pg=embed&amp;sec=1561578">Vimeo</a>.</p>
<p>Three minutes into the video, a demo of Craigslist and mapping a number of rental unit addresses, and the note that this would take advantage of microformatted data, exactly like my own little project, <a title="Mapanui, a pocket map in you browser" href="http://www.mapanui.com/">Mapanui</a>.</p>
<p>You can extend Ubiquity by writing your own commands (and share them with the world), using JavaScript. Ubiquity also uses the fab jQuery library (obviously) for rapid JavaScript development (though not using $ but jQuery for compatibility).</p>
<p>A nice push for microformats and an Open Web.</p>
<p>Something to keep an eye on, and look forward to full Firefox 4 integretion.</p>
<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2008/08/27/mozilla-ubiquity/">Mozilla Ubiquity 0.1</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.markupasanapi.com/2008/08/27/mozilla-ubiquity/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Custom non-visible data in HTML 5</title>
		<link>http://www.markupasanapi.com/2008/07/14/custom-non-visible-data-in-html-5/</link>
		<comments>http://www.markupasanapi.com/2008/07/14/custom-non-visible-data-in-html-5/#comments</comments>
		<pubDate>Mon, 14 Jul 2008 12:43:36 +0000</pubDate>
		<dc:creator>halans</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Semantic Web]]></category>
		<category><![CDATA[attributes]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[semantic web]]></category>
		<category><![CDATA[semweb]]></category>
		<category><![CDATA[w3c]]></category>

		<guid isPermaLink="false">http://www.markupasanapi.com/?p=12</guid>
		<description><![CDATA[Short and sweet: HTML 5 offers custom data attributes on HTML elements, intended to store custom data, which can then be handled on-page by JavaScript, or off-page by other (web-)applications. John Resig discusses a number of useful benefits. Post from Jean-Jacques Halans MarkupAsAnApi blog.Custom non-visible data in HTML 5<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2008/07/14/custom-non-visible-data-in-html-5/">Custom non-visible data in HTML 5</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Short and sweet: HTML 5 offers <a title="HTML 5" href="http://www.w3.org/html/wg/html5/#custom">custom data attributes</a> on HTML elements, intended to store custom data, which can then be handled on-page by JavaScript, or off-page by other (web-)applications.</p>
<p>John Resig discusses  <a title="Data attributes" href="http://ejohn.org/blog/html-5-data-attributes/">a number of useful benefits</a>.</p>
<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2008/07/14/custom-non-visible-data-in-html-5/">Custom non-visible data in HTML 5</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.markupasanapi.com/2008/07/14/custom-non-visible-data-in-html-5/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>PodiPodi/Catalog web-based CLI</title>
		<link>http://www.markupasanapi.com/2008/06/15/podipodi_web_based_commandlineinterface/</link>
		<comments>http://www.markupasanapi.com/2008/06/15/podipodi_web_based_commandlineinterface/#comments</comments>
		<pubDate>Sun, 15 Jun 2008 03:04:44 +0000</pubDate>
		<dc:creator>halans</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[Semantic Web]]></category>
		<category><![CDATA[cli]]></category>
		<category><![CDATA[command line interface]]></category>
		<category><![CDATA[web developers]]></category>
		<category><![CDATA[web-tasks]]></category>

		<guid isPermaLink="false">http://www.markupasanapi.com/?p=7</guid>
		<description><![CDATA[PodiPodi is a web-based command line interface like Quicksilver (on Mac) or Enso (on Win) for the desktop: &#8220;A special widget which integrates a smart command line interface and a bunch of additional services directly into your website to perform common web-tasks&#8221; PodiPodi offers an alternative UI to your website for power-users. By hitting a [...]<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2008/06/15/podipodi_web_based_commandlineinterface/">PodiPodi/Catalog web-based CLI</a></p>
]]></description>
			<content:encoded><![CDATA[<p><a title="PodiPodi" href="http://www.podipodi.com/">PodiPodi</a> is a web-based command line interface like <a title="Quicksilver" href="http://docs.blacktree.com/quicksilver">Quicksilver</a> (on Mac) or <a title="Enso" href="http://humanized.com/enso/">Enso</a> (on Win) for the desktop:</p>
<blockquote><p>&#8220;A special widget which integrates a smart command line interface and a bunch of additional services directly into your website to perform common web-tasks&#8221;</p></blockquote>
<p><strong>PodiPodi offers an alternative UI to your website for power-users.</strong> By hitting a shortcut like Ctrl+z you get a jQuery powered command line widget which gives you additional information on the site, a sitemap, Flickr pictures, google search,&#8230; Have a play at their <a title="CLI playground" href="http://www.podipodi.com/playground/">playground</a>.</p>
<p>&#8220;PodiPodi&#8221; doesn&#8217;t really roll of the tongue very well though&#8230;</p>
<p>An alternative to PodiPodi (which requires web developers to integrate this into their site) could be a Firefox extention like <a title="Catalog extention" href="http://abcdefu.wordpress.com/2007/09/22/catalog/">Catalog</a> which <strong>puts the same powerful command line interface under your fingers</strong>, but then for every webpage you visit. Unfortunately active development seem to be stalled.</p>
<p>Both apps show<strong> the power of extending your website</strong> under the hood, giving your visitors more power on how they navigate and use your website.</p>
<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2008/06/15/podipodi_web_based_commandlineinterface/">PodiPodi/Catalog web-based CLI</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.markupasanapi.com/2008/06/15/podipodi_web_based_commandlineinterface/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Markup as an API</title>
		<link>http://www.markupasanapi.com/2007/10/08/markup-as-an-api/</link>
		<comments>http://www.markupasanapi.com/2007/10/08/markup-as-an-api/#comments</comments>
		<pubDate>Mon, 08 Oct 2007 10:26:16 +0000</pubDate>
		<dc:creator>halans</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[Semantic Web]]></category>
		<category><![CDATA[rdf]]></category>
		<category><![CDATA[screenscraping]]></category>
		<category><![CDATA[semweb]]></category>
		<category><![CDATA[xml]]></category>

		<guid isPermaLink="false">http://www.markupasanapi.com/?p=4</guid>
		<description><![CDATA[HTML describes documents, and the link between documents. We read these documents, we print them, bookmark them for later retrieval. We might copy/paste content into another document, constructing a new one. If we wanted to automate this, we&#8217;d resort tot screen scraping. But this easily breaks, as there&#8217;s no standard or &#8220;contract&#8221; between the original [...]<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2007/10/08/markup-as-an-api/">Markup as an API</a></p>
]]></description>
			<content:encoded><![CDATA[<p>HTML describes documents, and the link between documents.</p>
<p>
We read these documents, we print them, bookmark them for later retrieval. We might copy/paste content into another document, constructing a new one.
</p>
<p>
If we wanted to automate this, we&#8217;d resort tot screen scraping. But this easily breaks, as there&#8217;s no standard or &#8220;contract&#8221; between the original site and the screen scraper.
</p>
<p>
Or we&#8217;d go for duplicating content into a new format like XML, with an agreed upon format. That way we could build product price aggregators using SOA Web Services with SOAP, WSDL,&#8230; Or use a REST architecture which takes us a bit closer back to our original HTTP request.
</p>
<p>
Most popular formats for sharing (XML) data is RSS and Atom, were again we duplicate the content we publish online.
</p>
<p>
But we&#8217;ve come a long way last couple of years, towards Web Standards, pushed by organisations like the Web Standards Project (WaSP) and Web Standards Group (WSG). They promote standards for separation of content, styling and behaviour, and the use of semantic HTML.
</p>
<p>
And then there&#8217;s the W3C, who promotes the Semantic Web as knowledge representation, using Resource Description Framework. RDF is a general method of modelling information making statements about resources in triples. Triples represent a subject-predicate-object expression, for example JJ &#8211; isBornIn &#8211; Belgium.
</p>
<p>The W3C&#8217;s Web Ontology Language, or OWL, provides additional vocabulary and formal semantics, providing greater machine interpretability of Web content, but with added complexity.</p>
<p>But as of yet there isn&#8217;t much RDF data online, or ontologies are missing for many application domains. The W3C&#8217;s projects are rather academic, and aren&#8217;t close to any web developer&#8217;s mindset.</p>
<p>What is closer to the web developer though is semantic HTML, the correct use of heading levels and paragraphs to introduce structure, blockquotes and correct use of tables, for tabular data.</p>
<p>Now we add rich semantics, standardised Microformats. They are small pieces of metadata, within the markup, using CSS. They are discoverable, interpreted by machines.</p></p>
<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2007/10/08/markup-as-an-api/">Markup as an API</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.markupasanapi.com/2007/10/08/markup-as-an-api/feed/</wfw:commentRss>
		<slash:comments>1</slash:comments>
		</item>
		<item>
		<title>Markup as an API &#8211; preso</title>
		<link>http://www.markupasanapi.com/2007/10/08/markup-as-an-api-preso/</link>
		<comments>http://www.markupasanapi.com/2007/10/08/markup-as-an-api-preso/#comments</comments>
		<pubDate>Mon, 08 Oct 2007 04:11:25 +0000</pubDate>
		<dc:creator>halans</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Microformats]]></category>
		<category><![CDATA[Semantic Web]]></category>
		<category><![CDATA[Server Side]]></category>
		<category><![CDATA[api]]></category>
		<category><![CDATA[barcampsydney]]></category>
		<category><![CDATA[css]]></category>
		<category><![CDATA[hinclude]]></category>
		<category><![CDATA[markup]]></category>
		<category><![CDATA[mashup]]></category>
		<category><![CDATA[web2]]></category>

		<guid isPermaLink="false">http://markupasanapi.com.s28539.gridserver.com/?p=3</guid>
		<description><![CDATA[Smarten up your markup and publish once, publish anywhere: &#124; View &#124; Upload your own Post from Jean-Jacques Halans MarkupAsAnApi blog.Markup as an API &#8211; preso<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2007/10/08/markup-as-an-api-preso/">Markup as an API &#8211; preso</a></p>
]]></description>
			<content:encoded><![CDATA[<p>Smarten up your markup and publish once, publish anywhere:</p>
<div id="__ss_98226" style="width: 425px; text-align: left;"><object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" width="425" height="355" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=6,0,40,0"><param name="allowFullScreen" value="true" /><param name="allowScriptAccess" value="always" /><param name="src" value="http://static.slideshare.net/swf/ssplayer2.swf?doc=markup-as-an-api3934" /><embed type="application/x-shockwave-flash" width="425" height="355" src="http://static.slideshare.net/swf/ssplayer2.swf?doc=markup-as-an-api3934" allowscriptaccess="always" allowfullscreen="true"></embed></object></p>
<div style="font-size:11px;font-family:tahoma,arial;height:26px;padding-top:2px;"><a href="http://www.slideshare.net/?src=embed"><img style="border:0px none;margin-bottom:-5px" src="http://static.slideshare.net/swf/logo_embd.png" alt="SlideShare" /></a> | <a title="View Markup As An Api on SlideShare" href="http://www.slideshare.net/halans/markup-as-an-api?src=embed">View</a> | <a href="http://www.slideshare.net/upload?src=embed">Upload your own</a></div>
</div>
<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2007/10/08/markup-as-an-api-preso/">Markup as an API &#8211; preso</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.markupasanapi.com/2007/10/08/markup-as-an-api-preso/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
		<item>
		<title>Scraping HTML with innerHTML or jQuery</title>
		<link>http://www.markupasanapi.com/2007/09/11/scraping-html-with-innerhtml-or-jquery/</link>
		<comments>http://www.markupasanapi.com/2007/09/11/scraping-html-with-innerhtml-or-jquery/#comments</comments>
		<pubDate>Tue, 11 Sep 2007 08:54:30 +0000</pubDate>
		<dc:creator>halans</dc:creator>
				<category><![CDATA[Javascript]]></category>
		<category><![CDATA[Semantic Web]]></category>
		<category><![CDATA[DOM]]></category>
		<category><![CDATA[HTML]]></category>
		<category><![CDATA[innerHTML]]></category>
		<category><![CDATA[jquery]]></category>
		<category><![CDATA[screen scraping]]></category>
		<category><![CDATA[screenscraping]]></category>

		<guid isPermaLink="false">http://www.markupasanapi.com/?p=5</guid>
		<description><![CDATA[A couple of nice write-ups on how to scrape HTML using innerHTML at Pathfinder Development: A common solution has been to proxy and scrape an application with a combination of XQuery and TagSoup (to fix the ugly, broken HTML, dontcha know), but it is possible to do this purely in the browser. or with jQuery, [...]<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2007/09/11/scraping-html-with-innerhtml-or-jquery/">Scraping HTML with innerHTML or jQuery</a></p>
]]></description>
			<content:encoded><![CDATA[<p>A couple of nice write-ups on how to scrape HTML using innerHTML at <a title="Pathfinder" href="http://www.pathf.com/blogs/2007/09/parsing-html-wi/">Pathfinder Development</a>:</p>
<blockquote><p>A common solution has been to proxy and scrape an application with a combination of XQuery and TagSoup (to fix the ugly, broken HTML, dontcha know), but it is possible to do this purely in the browser.</p></blockquote>
<p>or with jQuery, as <a title="Scraping with jQuery" href="http://jan.varwig.org/archiv/scraping-pages-with-jquery">Jan Varwig</a> describes:</p>
<blockquote><p>Fortunately, just the day before, I discovered <a href="http://www.jquery.com/">jQuery</a>, a Javascript framework with strong support for <a href="http://docs.jquery.com/DOM/Traversing/Selectors">finding DOM-Nodes via CSS, XPath and some custom selectors</a>. The tricky part now was to get jQuery to access the DOM-Tree of the schedule page on kino.de.</p></blockquote>
<p>Of course, screen scraping would be so much easier using Web Standards.</p>
<p>Post from <a href="http://www.halans.com">Jean-Jacques Halans</a> <a href="http://www.markupasanapi.com">MarkupAsAnApi</a> blog.<br/><br/><a href="http://www.markupasanapi.com/2007/09/11/scraping-html-with-innerhtml-or-jquery/">Scraping HTML with innerHTML or jQuery</a></p>
]]></content:encoded>
			<wfw:commentRss>http://www.markupasanapi.com/2007/09/11/scraping-html-with-innerhtml-or-jquery/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
