<?xml version="1.0" encoding="UTF-8" ?>
<rss version="2.0">
<channel>

<title>OpenLink Community Blog</title><link>http://www.openlinksw.com/weblog/dav/dav-blog-1/</link><description>A Collection of blogs by OpenLink Staff</description><managingEditor>kidehen@openlinksw.com</managingEditor><pubDate>Mon, 23 Nov 2009 13:34:19 GMT</pubDate><generator>Virtuoso Universal Server 05.12.3041</generator><webMaster>kidehen@openlinksw.com</webMaster><image><title>OpenLink Community Blog</title><url>http://www.openlinksw.com/weblog/public/images/vbloglogo.gif</url><link>http://www.openlinksw.com/weblog/dav/dav-blog-1/</link><description>A Collection of blogs by OpenLink Staff</description><width>88</width><height>31</height></image>
<item><title>Faceted Search:  Unlimited Data in Interactive Time</title><guid>http://www.openlinksw.com/blog/vdb/blog/?date=2009-01-09#1516</guid><comments>http://www.openlinksw.com/blog/vdb/blog/?id=1516#comments</comments><pubDate>Fri, 09 Jan 2009 22:03:11 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2009-01-09T17:15:39-05:00</n0:modified><description>&lt;p&gt;Why not see the whole world of &lt;a href=&quot;http://dbpedia.org/resource/Data&quot; id=&quot;link-id0xc3f6b38&quot;&gt;data&lt;/a&gt; as facets?  Well, we&amp;#39;d like to, but there is the feeling that this is not practical.&lt;/p&gt;

&lt;p&gt;The old problem has been that it is not really practical to pre-compute counts of everything for all possible combinations of search conditions and counting/grouping/sorting. The actual matches take time.&lt;/p&gt;

&lt;p&gt;Well, neither is in fact necessary.  When there are large numbers of items matching the conditions, counting them can take time but then this is the beginning of the search, and the user is not even likely to look very closely at the counts.  It is enough to see that there are many of one and few of another.  If the user already knows the precise predicate or class to look for, then the top-level faceted view is not even needed.  The faceted view for guiding search and precise analytics are two different problems.&lt;/p&gt;

&lt;p&gt;There are client-side faceted views like Exhibit or our own &lt;a href=&quot;http://ode.openlinksw.com/&quot; id=&quot;link-id0x1bc1cfe0&quot;&gt;ODE&lt;/a&gt;.  The problem with these is that there are a few orders of magnitude difference between the actual database size and what fits on the user agent.  This is compounded by the fact that one does not know what to cache on the user agent because of the open nature of the data web. If this were about a fixed workflow, then a good guess would be possible â but we are talking about the data web, the very soul of serendipity and unexpected discovery.&lt;/p&gt;

&lt;p&gt;So we made a web service that will do faceted search on arbitrary &lt;a href=&quot;http://dbpedia.org/resource/Resource_Description_Framework&quot; id=&quot;link-id0xbb62170&quot;&gt;RDF&lt;/a&gt;. If it does not get complete results within a timeout, it will return what it has counted so far, using &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id0xb122b00&quot;&gt;Virtuoso&lt;/a&gt;&amp;#39;s &lt;a href=&quot;http://www.openlinksw.com/weblog/oerling/?id=1494&quot; id=&quot;link-id117b0df0&quot;&gt;&lt;b&gt;Anytime&lt;/b&gt;&lt;/a&gt; feature.  Looking for subjects with some specific combination of properties is however a bit limited, so this will also do &lt;code&gt;JOINs&lt;/code&gt;.  Many features are one or two &lt;code&gt;JOINs&lt;/code&gt; away; take geographical locations or social networks, for example.&lt;/p&gt;

&lt;p&gt;Yet a faceted search should be point-and-click, and should not involve a full query construction.  We put the compromise at starting with full text or property or class, then navigating down properties or classes, to arbitrary depth, tree-wise.  At each step, one can see the matching instances or their classes or properties, all with counts, faceted-style.&lt;/p&gt;

&lt;p&gt;This is good enough for queries like &amp;#39;what do Harry Potter fans also like&amp;#39; or &amp;#39;who are the authors of articles tagged &lt;a href=&quot;http://dbpedia.org/resource/Semantic_Web&quot; id=&quot;link-id0xbee32d8&quot;&gt;semantic web&lt;/a&gt; and machine learning and published in 2008&amp;#39;.  For complex grouping, sub-queries, arithmetic or such, one must write the actual query.&lt;/p&gt;

&lt;p&gt;But one can begin with facets, and then continue refining the query by hand since the service also returns &lt;a href=&quot;http://dbpedia.org/resource/SPARQL&quot; id=&quot;link-id0xbcc9f38&quot;&gt;SPARQL&lt;/a&gt; text.  We made a small web interface on top of the service with all logic server side.  This proves that the web service is usable and that an interface with no AJAX, and no problems with browser interoperability or such, is possible and easy.  Also, the problem of syncing between a user-agent-based store and a database is entirely gone.&lt;/p&gt;

&lt;p&gt;If we are working with a known data structure, the user interface should choose the display by the data type and offer links to related reports.  This is all easy to build as web pages or AJAX.  We show how the generic interface is done in Virtuoso PL, and you can adapt that or rewrite it in &lt;a href=&quot;http://dbpedia.org/resource/PHP&quot; id=&quot;link-id0xcdbe268&quot;&gt;PHP&lt;/a&gt;, Java, JavaScript, or anything else, to accommodate use-case specific navigation needs such as data format.&lt;/p&gt;

&lt;p&gt;The web service takes an &lt;a href=&quot;http://dbpedia.org/resource/XML&quot; id=&quot;link-id0xc019c08&quot;&gt;XML&lt;/a&gt; representation of the search, which is more restricted and easier to process by machine than the SPARQL syntax.  The web service returns the results, the SPARQL query it generated, whether the results are complete or not, and some resource use statistics.&lt;/p&gt;

&lt;p&gt;The source of the PL functions, Web Service and Virtuoso Server Page (HTML UI) will be available as part of Virtuoso 6.0 and higher.  A Programmer&amp;#39;s Guide will be available as part of the standard Virtuoso Documentation collection, including the Virtuoso Open Source Edition Website.&lt;/p&gt;</description></item><item><title>Faceted Search:  Unlimited Data in Interactive Time</title><guid>http://www.openlinksw.com/weblog/oerling/?date=2009-01-09#1515</guid><comments>http://www.openlinksw.com/weblog/oerling/?id=1515#comments</comments><pubDate>Fri, 09 Jan 2009 22:03:11 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2009-01-09T17:15:36-05:00</n0:modified><description>&lt;p&gt;Why not see the whole world of &lt;a href=&quot;http://dbpedia.org/resource/Data&quot; id=&quot;link-id0x1a0319c0&quot;&gt;data&lt;/a&gt; as facets?  Well, we&amp;#39;d like to, but there is the feeling that this is not practical.&lt;/p&gt;

&lt;p&gt;The old problem has been that it is not really practical to pre-compute counts of everything for all possible combinations of search conditions and counting/grouping/sorting. The actual matches take time.&lt;/p&gt;

&lt;p&gt;Well, neither is in fact necessary.  When there are large numbers of items matching the conditions, counting them can take time but then this is the beginning of the search, and the user is not even likely to look very closely at the counts.  It is enough to see that there are many of one and few of another.  If the user already knows the precise predicate or class to look for, then the top-level faceted view is not even needed.  The faceted view for guiding search and precise analytics are two different problems.&lt;/p&gt;

&lt;p&gt;There are client-side faceted views like Exhibit or our own &lt;a href=&quot;http://ode.openlinksw.com/&quot; id=&quot;link-id0xc3db130&quot;&gt;ODE&lt;/a&gt;.  The problem with these is that there are a few orders of magnitude difference between the actual database size and what fits on the user agent.  This is compounded by the fact that one does not know what to cache on the user agent because of the open nature of the data web. If this were about a fixed workflow, then a good guess would be possible â but we are talking about the data web, the very soul of serendipity and unexpected discovery.&lt;/p&gt;

&lt;p&gt;So we made a web service that will do faceted search on arbitrary &lt;a href=&quot;http://dbpedia.org/resource/Resource_Description_Framework&quot; id=&quot;link-id0xbdbf198&quot;&gt;RDF&lt;/a&gt;. If it does not get complete results within a timeout, it will return what it has counted so far, using &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id0x17691878&quot;&gt;Virtuoso&lt;/a&gt;&amp;#39;s &lt;a href=&quot;http://www.openlinksw.com/weblog/oerling/?id=1494&quot; id=&quot;link-id117b0df0&quot;&gt;&lt;b&gt;Anytime&lt;/b&gt;&lt;/a&gt; feature.  Looking for subjects with some specific combination of properties is however a bit limited, so this will also do &lt;code&gt;JOINs&lt;/code&gt;.  Many features are one or two &lt;code&gt;JOINs&lt;/code&gt; away; take geographical locations or social networks, for example.&lt;/p&gt;

&lt;p&gt;Yet a faceted search should be point-and-click, and should not involve a full query construction.  We put the compromise at starting with full text or property or class, then navigating down properties or classes, to arbitrary depth, tree-wise.  At each step, one can see the matching instances or their classes or properties, all with counts, faceted-style.&lt;/p&gt;

&lt;p&gt;This is good enough for queries like &amp;#39;what do Harry Potter fans also like&amp;#39; or &amp;#39;who are the authors of articles tagged &lt;a href=&quot;http://dbpedia.org/resource/Semantic_Web&quot; id=&quot;link-id0x160eb950&quot;&gt;semantic web&lt;/a&gt; and machine learning and published in 2008&amp;#39;.  For complex grouping, sub-queries, arithmetic or such, one must write the actual query.&lt;/p&gt;

&lt;p&gt;But one can begin with facets, and then continue refining the query by hand since the service also returns &lt;a href=&quot;http://dbpedia.org/resource/SPARQL&quot; id=&quot;link-id0x17e82228&quot;&gt;SPARQL&lt;/a&gt; text.  We made a small web interface on top of the service with all logic server side.  This proves that the web service is usable and that an interface with no AJAX, and no problems with browser interoperability or such, is possible and easy.  Also, the problem of syncing between a user-agent-based store and a database is entirely gone.&lt;/p&gt;

&lt;p&gt;If we are working with a known data structure, the user interface should choose the display by the data type and offer links to related reports.  This is all easy to build as web pages or AJAX.  We show how the generic interface is done in Virtuoso PL, and you can adapt that or rewrite it in &lt;a href=&quot;http://dbpedia.org/resource/PHP&quot; id=&quot;link-id0xbe41d60&quot;&gt;PHP&lt;/a&gt;, Java, JavaScript, or anything else, to accommodate use-case specific navigation needs such as data format.&lt;/p&gt;

&lt;p&gt;The web service takes an &lt;a href=&quot;http://dbpedia.org/resource/XML&quot; id=&quot;link-id0xc2fc358&quot;&gt;XML&lt;/a&gt; representation of the search, which is more restricted and easier to process by machine than the SPARQL syntax.  The web service returns the results, the SPARQL query it generated, whether the results are complete or not, and some resource use statistics.&lt;/p&gt;

&lt;p&gt;The source of the PL functions, Web Service and Virtuoso Server Page (HTML UI) will be available as part of Virtuoso 6.0 and higher.  A Programmer&amp;#39;s Guide will be available as part of the standard Virtuoso Documentation collection, including the Virtuoso Open Source Edition Website.&lt;/p&gt;</description></item><item><title>Introducing Virtuoso Universal Server (Cloud Edition) for Amazon EC2</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-11-28#1489</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1489#comments</comments><pubDate>Fri, 28 Nov 2008 19:27:12 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-11-28T16:06:02.000006-05:00</n0:modified><description>&lt;h3&gt;What is it?&lt;/h3&gt;
&lt;p&gt;A pre-installed edition of &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id14bea838&quot;&gt;Virtuoso&lt;/a&gt; for Amazon&amp;#39;s EC2 Cloud platform.&lt;/p&gt;

&lt;h3&gt;What does it offer?&lt;/h3&gt;
From a &lt;a href=&quot;http://dbpedia.org/resource/World_Wide_Web&quot;&gt;Web&lt;/a&gt; Entrepreneur perspective it offers:
&lt;ol&gt;
&lt;li&gt;
Low cost entry point to a game-changing Web 3.0+ (and beyond) platform that combines &lt;a href=&quot;http://dbpedia.org/resource/SQL&quot; id=&quot;link-id11309b38&quot;&gt;SQL&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/Resource_Description_Framework&quot; id=&quot;link-id135f7988&quot;&gt;RDF&lt;/a&gt;, XML, and Web Services functionality&lt;/li&gt;
&lt;li&gt;
Flexible variable cost model (courtesy of &lt;a href=&quot;http://aws.amazon.com/devpay/&quot; id=&quot;link-id17941018&quot;&gt;EC2 DevPay&lt;/a&gt;) tightly bound to revenue generated by your services&lt;/li&gt;
&lt;li&gt;
Delivers federated and/or centralized model flexibility for you SaaS based solutions&lt;/li&gt;
&lt;li&gt;
Simple entry point for developing and deploying sophisticated database driven applications (SQL or RDF &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id14ea6b10&quot;&gt;Linked Data Web&lt;/a&gt; oriented)&lt;/li&gt;
&lt;li&gt;
Complete framework for exploiting OpenID, OAuth (including Role enhancements) that simplifies exploitation of these vital Identity and &lt;a href=&quot;http://dbpedia.org/resource/Data&quot;&gt;Data&lt;/a&gt; Access technologies&lt;/li&gt;
&lt;li&gt;Easily implement RDF Linked Data based Mail, Blogging, Wikis, Bookmarks, Calendaring, Discussion Forums, Tagging, Social-Networking as &lt;a href=&quot;http://en.wikipedia.org/wiki/Data_Spaces&quot; id=&quot;link-id11519928&quot;&gt;Data Space&lt;/a&gt; (data containers) features of your application or service offering&lt;/li&gt;
&lt;li&gt;Instant alleviation of challenges (e.g. service costs and agility) associated with &lt;a href=&quot;http://dbpedia.org/resource/DataPortability&quot; id=&quot;link-id111cb610&quot;&gt;Data Portability&lt;/a&gt; and Open Data Access across Web 2.0 data silos&lt;/li&gt;
&lt;li&gt;
LDAP integration for &lt;a href=&quot;http://dbpedia.org/resource/Intranet&quot; id=&quot;link-id114a8270&quot;&gt;Intranet&lt;/a&gt; / &lt;a href=&quot;http://dbpedia.org/resource/Extranet&quot; id=&quot;link-id10fe4f08&quot;&gt;Extranet&lt;/a&gt; style applications.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;From the DBMS engine perspective it provides you with one or more pre-configured instances of Virtuoso that enable immediate exploitation of the following services:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
RDF Database (a Quad Store with &lt;a href=&quot;http://dbpedia.org/resource/SPARQL&quot; id=&quot;link-id11911bf8&quot;&gt;SPARQL&lt;/a&gt; &amp;amp; SPARUL Language &amp;amp; Protocol support)&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://dbpedia.org/resource/SQL&quot; id=&quot;link-id110544c8&quot;&gt;SQL&lt;/a&gt; Database (with &lt;a href=&quot;http://dbpedia.org/resource/Open_Database_Connectivity&quot; id=&quot;link-id1524c7d0&quot;&gt;ODBC&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/Java_Database_Connectivity&quot; id=&quot;link-id14cfb658&quot;&gt;JDBC&lt;/a&gt;, OLE-DB, &lt;a href=&quot;http://dbpedia.org/resource/ADO.NET&quot; id=&quot;link-id110ec6c8&quot;&gt;ADO&lt;/a&gt;.NET, and XMLA driver access)&lt;/li&gt;
&lt;li&gt;XML Database (XML Schema, &lt;a href=&quot;http://dbpedia.org/resource/XQuery&quot; id=&quot;link-id10ebf218&quot;&gt;XQuery&lt;/a&gt;/&lt;a href=&quot;http://dbpedia.org/resource/XPath&quot; id=&quot;link-id142a7898&quot;&gt;Xpath&lt;/a&gt;, XSLT, Full Text Indexing)&lt;/li&gt;
&lt;li&gt;Full Text Indexing.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;From a Middleware perspective it provides:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
RDF Views (Wrappers / Semantic Covers) over SQL, XML, and other data sources accessible via SOAP or REST style Web Services&lt;/li&gt;
&lt;li&gt;
Sponger Service for converting non RDF &lt;a href=&quot;http://dbpedia.org/resource/Information&quot; id=&quot;link-id11931c60&quot;&gt;information&lt;/a&gt; resources into RDF &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id118f7168&quot;&gt;Linked Data&lt;/a&gt; &amp;quot;on the fly&amp;quot; via a large collection of pre-installed  RDFizer Cartridges.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;From the Web Server Platform perspective it provides an alternative to LAMP stack components such as &lt;a href=&quot;http://dbpedia.org/resource/MySQL&quot; id=&quot;link-id10f7b780&quot;&gt;MySQL&lt;/a&gt; and Apace by offering&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
HTTP Web Server&lt;/li&gt;
&lt;li&gt;
WebDAV Server&lt;/li&gt;
&lt;li&gt;
Web &lt;a href=&quot;http://dbpedia.org/resource/Application_server&quot; id=&quot;link-id1268daa8&quot;&gt;Application Server&lt;/a&gt; (includes &lt;a href=&quot;http://dbpedia.org/resource/PHP&quot; id=&quot;link-id1585d238&quot;&gt;PHP&lt;/a&gt; runtime hosting)&lt;/li&gt;
&lt;li&gt;
SOAP or REST style Web Services Deployment&lt;/li&gt;
&lt;li&gt;
RDF Linked Data Deployment&lt;/li&gt;
&lt;li&gt;
SPARQL (SPARQL Query Language) and SPARUL (SPARQL Update Language) endpoints&lt;/li&gt;
&lt;li&gt;Virtuoso Hosted PHP packages for &lt;a href=&quot;http://dbpedia.org/resource/MediaWiki&quot; id=&quot;link-id15568818&quot;&gt;MediaWiki&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/Drupal&quot; id=&quot;link-id110bd7a8&quot;&gt;Drupal&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/WordPress&quot; id=&quot;link-id10f66918&quot;&gt;Wordpress&lt;/a&gt;, and &lt;a href=&quot;http://dbpedia.org/resource/PhpBB&quot; id=&quot;link-id13fda4d0&quot;&gt;phpBB3&lt;/a&gt; (just install the relevant Virtuoso Distro. Package).
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;From the general System Administrator&amp;#39;s perspective it provides:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
Online Backups (Backup Set dispatched to S3 buckets, FTP, or HTTP/WebDAV server locations)&lt;/li&gt;
&lt;li&gt;Synchronized Incremental Backups to Backup Set locations&lt;/li&gt;
&lt;li&gt;Backup Restore from Backup Set location (without exiting to EC2 shell).&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Higher level user oriented offerings include:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;OpenLink Data Explorer front-end for exploring the burgeoning Linked Data &lt;a href=&quot;http://dbpedia.org/resource/Giant_Global_Graph&quot; id=&quot;link-id11646dc8&quot;&gt;Web&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
Ajax based SPARQL Query Builder (iSPARQL) that enables SPARQL Query construction by Example&lt;/li&gt;
&lt;li&gt;Ajax based SQL Query Builder (QBE) that enables SQL Query construction by Example.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;For Web 2.0 / 3.0 users, developers, and entrepreneurs it offers it includes Distributed Collaboration Tools &amp;amp; Social Media realm functionality courtesy of &lt;a href=&quot;http://dbpedia.org/resource/OpenLink_Data_Spaces&quot; id=&quot;link-id11009930&quot;&gt;ODS&lt;/a&gt; that includes:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
Point of presence on the Linked Data Web that meshes your Identity and your Data via URIs&lt;/li&gt;
&lt;li&gt;
System generated Social Network Profile &amp;amp; Contact Data via &lt;a href=&quot;http://dbpedia.org/resource/Friend_of_a_friend&quot; id=&quot;link-id1185a1c0&quot;&gt;FOAF&lt;/a&gt;?&lt;/li&gt;
&lt;li&gt;
System generated &lt;a href=&quot;http://dbpedia.org/resource/SIOC&quot; id=&quot;link-id14791890&quot;&gt;SIOC&lt;/a&gt; (Semantically Interconnected Online Community) &lt;a href=&quot;http://en.wikipedia.org/wiki/Data_Spaces&quot; id=&quot;link-id1577cad8&quot;&gt;Data Space&lt;/a&gt; (that includes a Social Graph) exposing all your Web data in RDF Linked Data form&lt;/li&gt;
&lt;li&gt;
System generated OpenID and automatic integration with FOAF&lt;/li&gt;
&lt;li&gt;
Transparent Data Integration across Facebook, Digg, LinkedIn, FriendFeed, Twitter, and any other Web 2.0 data space equipped with RSS / Atom support and/or REST style Web Services&lt;/li&gt;
&lt;li&gt;
In-built support for SyncML which enables data synchronization with Mobile Phones.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;How Do I Get Going with It?&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
&lt;a href=&quot;http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/ODSInstallationEC2&quot; id=&quot;link-id114e1600&quot;&gt;Standard Installation Guide&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&quot;http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMIDBpediaInstall&quot; id=&quot;link-id110a98e8&quot;&gt;Personal or Service Specific DBpedia Installation Guide&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Virtuoso - Are We Too Clever for Our Own Good? (updated)</title><guid>http://www.openlinksw.com/blog/vdb/blog/?date=2008-10-26#1467</guid><comments>http://www.openlinksw.com/blog/vdb/blog/?id=1467#comments</comments><pubDate>Sun, 26 Oct 2008 12:15:35 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-10-27T12:07:58-04:00</n0:modified><description>&lt;p&gt;&amp;quot;Physician, heal thyself,&amp;quot; it is said. We profess to say what the messaging of the &lt;a href=&quot;http://dbpedia.org/resource/Semantic_Web&quot; id=&quot;link-id0x1b4a25f0&quot;&gt;semantic web&lt;/a&gt; ought to be, but is our own perfect?&lt;/p&gt;

&lt;p&gt;I will here engage in some critical introspection as well as amplify on some answers given to &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id0x1e4f9928&quot;&gt;Virtuoso&lt;/a&gt;-related questions in recent times.&lt;/p&gt;

&lt;p&gt;I use some conversations from the &lt;a href=&quot;http://dbpedia.org/resource/Vienna&quot; id=&quot;link-id0x1e6c0ca8&quot;&gt;Vienna&lt;/a&gt; &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id0x1e56df88&quot;&gt;Linked Data&lt;/a&gt; Practitioners meeting as a starting point. These views are mine and are limited to the Virtuoso server. These do not apply to the &lt;a href=&quot;http://dbpedia.org/resource/OpenLink_Data_Spaces&quot; id=&quot;link-id0x1e680440&quot;&gt;ODS&lt;/a&gt; (&lt;a href=&quot;http://dbpedia.org/resource/OpenLink_Data_Spaces&quot; id=&quot;link-id0x1e140068&quot;&gt;OpenLink Data Spaces&lt;/a&gt;) applications line, &lt;a href=&quot;http://oat.openlinksw.com/&quot; id=&quot;link-id0x1f4ba630&quot;&gt;OAT&lt;/a&gt; (&lt;a href=&quot;http://oat.openlinksw.com/&quot; id=&quot;link-id0x1ba4bac8&quot;&gt;OpenLink Ajax Toolkit&lt;/a&gt;), or &lt;a href=&quot;http://ode.openlinksw.com/&quot; id=&quot;link-id0x1d4159b0&quot;&gt;ODE&lt;/a&gt; (&lt;a href=&quot;http://ode.openlinksw.com/&quot; id=&quot;link-id0x1e973c80&quot;&gt;OpenLink Data Explorer&lt;/a&gt;).&lt;/p&gt;

&lt;h3&gt;&amp;quot;It is not always clear what the main thrust is, we get the impression that you are spread too thin,&amp;quot; said &lt;a href=&quot;http://www.informatik.uni-leipzig.de/~auer/foaf.rdf#me&quot; id=&quot;link-id0x1f8bafe0&quot;&gt;SÃ¶ren Auer&lt;/a&gt;.&lt;/h3&gt;

&lt;p&gt;Well, personally, I am all for core competence. This is why I do not participate in all the online conversations and groups as much as I could, for example. Time and energy are critical resources and must be invested where they make a difference. In this case, the real core competence is running in the database race. This in itself, come to think of it, is a pretty broad concept.&lt;/p&gt;

&lt;p&gt;This is why we put a lot of emphasis on Linked Data and the &lt;a href=&quot;http://dbpedia.org/resource/Data&quot; id=&quot;link-id0x200bd1f0&quot;&gt;Data&lt;/a&gt; Web for now, as this is the emerging game. This is a deliberate choice, not an outside imperative or built-in limitation. More specifically, this means exposing any pre-existing relational data as linked data plus being the definitive &lt;a href=&quot;http://dbpedia.org/resource/Resource_Description_Framework&quot; id=&quot;link-id0x1fb03528&quot;&gt;RDF&lt;/a&gt; store.&lt;/p&gt;

&lt;p&gt;We can do this because we own our database and &lt;a href=&quot;http://dbpedia.org/resource/SQL&quot; id=&quot;link-id0x1e7dcc70&quot;&gt;SQL&lt;/a&gt; and data access middleware and have a history of connecting to any &lt;a href=&quot;http://dbpedia.org/resource/Relational_database_management_system&quot; id=&quot;link-id0x1e9baf18&quot;&gt;RDBMS&lt;/a&gt; out there.&lt;/p&gt;

&lt;p&gt;The principal message we have been hearing from the RDF field is the call for scale of triple storage. This is even louder than the call for relational mapping. We believe that in time mapping will exceed triple storage as such, once we get some real production strength mappings deployed, enough to outperform RDF warehousing.&lt;/p&gt;

&lt;p&gt;There are also RDF middleware things like RDF-ization and demand-driven web harvesting (i.e, the so-called Sponger). These are &lt;a href=&quot;http://dbpedia.org/resource/SPARQL&quot; id=&quot;link-id0x1f5f6b78&quot;&gt;SPARQL&lt;/a&gt; options, thus accessed via standard interfaces. We have little desire to create our own languages or APIs, or to tell people how to program. This is why we recently introduced &lt;a href=&quot;http://sourceforge.net/projects/sesame/&quot; id=&quot;link-id0x206818c8&quot;&gt;Sesame&lt;/a&gt;- and &lt;a href=&quot;http://jena.sourceforge.net/&quot; id=&quot;link-id0x202b3348&quot;&gt;Jena&lt;/a&gt;-compatible APIs to our RDF store. From what we hear, these work. On the other hand, we do not hesitate to move beyond the standards when there is obvious value or necessity. This is why we brought SPARQL up to and beyond SQL expressivity. It is not a case of E3 (Embrace, Extend, Extinguish).&lt;/p&gt;

&lt;p&gt;Now, this message could be better reflected in our material on the web. This &lt;a href=&quot;http://dbpedia.org/resource/Blog&quot; id=&quot;link-id0x1c82e508&quot;&gt;blog&lt;/a&gt; is a rather informal step in this direction; more is to come. For now we concentrate on delivering.&lt;/p&gt;

&lt;p&gt;The conventional communications wisdom is to split the message by target audience. For this, we should split the RDF, relational, and web services messages from each other. We believe that a challenger, like the semantic web technology stack, must have a compelling message to tell for it to be interesting. This is not a question of research prototypes. The new technology cannot lack something the installed technology takes for granted.&lt;/p&gt;

&lt;p&gt;This is why we do not tend to show things like how to insert and query a few triples: No business out there will insert and query triples for the sake of triples. There must be a more compelling story â for example, turning the whole world into a database. This is why our examples start with things like turning the &lt;a href=&quot;http://dbpedia.org/resource/TPC-H&quot; id=&quot;link-id0x20832510&quot;&gt;TPC-H&lt;/a&gt; database into RDF, queries and all. Anything less is not interesting. Why would an enterprise that has business intelligence and integration issues way more complex than the rather stereotypical TPC-H even look at a technology that pretends to be all for integration and all for expressivity of queries, yet cannot answer the first question of the entry exam?&lt;/p&gt;

&lt;p&gt;The world out there is complex. But maybe we ought to make some simple tutorials? So, as a call to the people out there, tell us what a good tutorial would be. The question is more about figuring out what is out there and adapting these and making a sort of compatibility list.  Jena and Sesame stuff ought to run as is. We could offer a webinar to all the data web luminaries showing how to promote the data web message with Virtuoso. After all, why not show it on the best platform?&lt;/p&gt;

&lt;h3&gt;&amp;quot;You are arrogant. When I read your papers or documentation, the impression I get is that you say you are smart and the reader is stupid.&amp;quot;&lt;/h3&gt;

&lt;p&gt;We should answer in multiple  parts.&lt;/p&gt;

&lt;p&gt;For general collateral, like web sites and documentation:&lt;/p&gt;

&lt;p&gt;The web site gives a confused product image.  For the Virtuoso product, we should divide at the top into&lt;/p&gt;

&lt;ul&gt;  
&lt;li&gt; Data web and RDF - Host linked data, expose relational assets as linked data;&lt;/li&gt;
&lt;li&gt; Relational Database - Full function, high performance, open source, Federated/Virtual Relational DBMS, expose heterogeneous RDB assets through one point of contact for integration;&lt;/li&gt;
&lt;li&gt; Web Services - access all the above over standard protocols, dynamic web pages, web hosting.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For each point, one simple statement.  We all know what the above things mean?&lt;/p&gt;

&lt;p&gt;Then we add a new point about scalability that impacts all the above, namely the Virtuoso version 6 Cluster, meaning that you can do all these things at 10 to 1000 times the scale. This means this much more data or in some cases this much more requests per second. This too is clear.&lt;/p&gt;

&lt;p&gt;Far as I am concerned, hosting Java or .&lt;a href=&quot;http://dbpedia.org/resource/.NET_Framework&quot; id=&quot;link-id0x20283a88&quot;&gt;NET&lt;/a&gt; does not have to be on the front page. Also, we have no great interest in going against &lt;a href=&quot;http://dbpedia.org/resource/Apache&quot; id=&quot;link-id0x2024a068&quot;&gt;Apache&lt;/a&gt; when it comes to a web server only situation. The fact that we have a web listener is important for some things but our claim to fame does not rest on this.&lt;/p&gt;

&lt;p&gt;Then for documentation and training materials: The documentation should be better. Specifically it should have more of a how-to dimension since nobody reads the whole thing anyhow. About online tutorials, the order of presentation should be different. They do not really reflect what is important at the present moment either.&lt;/p&gt;

&lt;p&gt;Now for conference papers: Since taking the data web as a focus area, we have submitted some papers and had some rejected because these do not have enough references and do not explain what is obvious to ourselves.&lt;/p&gt;

&lt;p&gt;I think that the communications failure in this case is that we want to talk about end to end solutions and the reviewers expect research. For us, the solution is interesting and exists only if there is an adequate functionality mix for addressing a specific use case. This is why we do not make a paper about query cost model alone because the cost model, while indispensable, is a thing that is taken for granted where we come from. So we mention RDF adaptations to cost model, as these are important to the whole but do not find these to be the justification for a whole paper. If we made papers on this basis, we would have to make five times as many. Maybe we ought to.&lt;/p&gt;

&lt;h3&gt;&amp;quot;Virtuoso is very big and very difficult&amp;quot;&lt;/h3&gt;

&lt;p&gt;One thing that is not obvious from the Virtuoso packaging is that the minimum installation is an executable under 10MB and a config file. Two files.&lt;/p&gt;

&lt;p&gt;This gives you SQL and SPARQL out of the box.  Adding &lt;a href=&quot;http://dbpedia.org/resource/Open_Database_Connectivity&quot; id=&quot;link-id0x1ee61058&quot;&gt;ODBC&lt;/a&gt; and &lt;a href=&quot;http://dbpedia.org/resource/Java_Database_Connectivity&quot; id=&quot;link-id0x1b8c31c0&quot;&gt;JDBC&lt;/a&gt; clients is as simple as it gets. After this, there is basic database functionality. Tuning is a matter of a few parameters that are explained on this blog and elsewhere. Also, the full scale installation is available as an Amazon EC2 image, so no installation required.&lt;/p&gt;

&lt;p&gt;Now for the difficult side:&lt;/p&gt;

&lt;p&gt;Use SQL and SPARQL; use stored procedures whenever there is server side business logic. For some time critical web pages, use VSP. Do not use VSPX. Otherwise, use whatever you are used to â &lt;a href=&quot;http://dbpedia.org/resource/PHP&quot; id=&quot;link-id0x20a13c00&quot;&gt;PHP&lt;/a&gt; or Java or anything else. For web services, simple is best. Stick to basics. &amp;quot;The engineer is one who can invent a simple thing.&amp;quot; Use SQL statements rather than admin UI.&lt;/p&gt;

&lt;p&gt;Know that you can start a server with no database file and you get an initial database with nothing extra. The demo database, the way it is produced by installers is cluttered.&lt;/p&gt;

&lt;p&gt;We should put this into a couple of use case oriented how-tos.&lt;/p&gt;

&lt;p&gt;Also, we should create a network of &amp;quot;friendly local virtuoso geeks&amp;quot; for providing basic training and services so we do not have to explain these things all the time. To all you data-web-ers out there â please sign up and we will provide instructions, etc. Contact YrjÃ¤nÃ¤ Rankka (ghard[at-sign]openlinksw.com), or go through the mailing lists; do not contact me directly.&lt;/p&gt;

&lt;h3&gt;&amp;quot;OK, we understand that you may be good at the large end of the spectrum but how do you reconcile this with the lightweight or embedded end, like the semantic desktop?&amp;quot;&lt;/h3&gt;

&lt;p&gt;Now, what is good for one end is usually good for the other. Namely, a database, no matter the scale, needs to have space efficient storage, fast index lookup, and correct query plans. Then there are things that occur only at the high-end, like clustering, but these are separate things. For embedding, the initial memory footprint needs to be small. With Virtuoso, this is accomplished by leaving out some 200 built-in tables and 100,000 lines of SQL procedures that are normally in by default, supporting things such as DAV and diverse other protocols. After all, if SPARQL is all one wants these are not needed.&lt;/p&gt;

&lt;p&gt;If one really wants to do one&amp;#39;s server logic (like web listener and thread dispatching) oneself, this is not impossible but requires some advice from us. On the other hand, if one wants to have logic for security close to the data, then using stored procedures is recommended; these execute right next to the data, and support inline SPARQL and SQL. Depending on the license status of the other code, some special licensing arrangements may apply.&lt;/p&gt;

&lt;p&gt;We are talking about such things with different parties at present.&lt;/p&gt;

&lt;h3&gt;&amp;quot;How webby are you?  What is webby?&amp;quot;&lt;/h3&gt;

&lt;p&gt;&amp;quot;Webby means distributed, heterogeneous, open; not monolithic consolidation of everything.&amp;quot;&lt;/p&gt;

&lt;p&gt;We are philosophically webby. We come from open standards; we are after all called OpenLink; our history consists of connecting things. We believe in choice â the user should be able to pick the best of breed for components and have them work together. We cannot and do not wish to force replacement of existing assets. Transforming data on the fly and connecting systems, leaving data where it originally resides, is the first preference. For the data web, the first preference is a federation of independent SPARQL end points. When there is harvesting, we prefer to do it on demand, as with our Sponger. With the immense amount of data out there we believe in finding what is relevant &lt;i&gt;when&lt;/i&gt; it is relevant, preferably close at hand, leveraging things like social networks. With a data web, many things which are now siloized, such as marketplaces and social networks, will return to the open.&lt;/p&gt;

&lt;p&gt;Google-style crawling of everything becomes less practical if one needs to run complex &lt;i&gt;ad hoc&lt;/i&gt; queries against the mass of data. For these types of scenarios, if one needs to warehouse, the data cloud will offer solutions where one pays for database on demand. While we believe in loosely coupled federation where possible, we have serious work on the scalability side for the data center and the compute-on-demand cloud.&lt;/p&gt;

&lt;h3&gt;&amp;quot;How does OpenLink see the next five years unfolding?&amp;quot;&lt;/h3&gt;

&lt;p&gt;Personally, I think we have the basics for the birth of a new inflection in the &lt;a href=&quot;http://dbpedia.org/resource/Knowledge&quot; id=&quot;link-id0x1fb9ae58&quot;&gt;knowledge&lt;/a&gt; economy. The &lt;a href=&quot;http://dbpedia.org/resource/Uniform_Resource_Identifier&quot; id=&quot;link-id0x1f07c648&quot;&gt;URI&lt;/a&gt; is the unit of exchange; its value and competitive edge lie in the data it links you with. A name without context is worth little, but as a name gets more use, more &lt;a href=&quot;http://dbpedia.org/resource/Information&quot; id=&quot;link-id0x1f007d60&quot;&gt;information&lt;/a&gt; can be found through that name. This is anything from financial statistics, to legal precedents, to news reporting or government data. Right now, if the SEC just added one line of markup to the XBRL template, this would instantaneously make all SEC-mandated reporting into linked data via GRDDL.&lt;/p&gt;

&lt;p&gt;The URI is a carrier of brand. An information brand gets traffic and references, and this can be monetized in diverse ways. The key word is &lt;i&gt;context&lt;/i&gt;. Information overload is here to stay, and only better context offers the needed increase in productivity to stay ahead of the flood.&lt;/p&gt;

&lt;p&gt;Semantic technologies on the whole can help with this. Why these should be semantic web or data web technologies as opposed to just semantic is the linked data value proposition. Even smart islands are still islands. Agility, scale, and scope, depend on the possibility of combining things. Therefore common terminologies and dereferenceability and discoverability are important. Without these, we are at best dealing with closed systems even if they were smart. The expert systems of the 1980s are a case in point.&lt;/p&gt;

&lt;p&gt;Ever since the .com era, the &lt;a href=&quot;http://dbpedia.org/resource/Uniform_Resource_Locator&quot; id=&quot;link-id0x2048e670&quot;&gt;URL&lt;/a&gt; has been a brand. Now it becomes a URI. Thus, entirely hiding the URI from the user experience is not always desirable. The URI is a sort of handle on the provenance and where more can be found; besides, people are already used to these.&lt;/p&gt;

&lt;p&gt;With linked data, information value-add products become easy to build and deploy. They can be basically just canned SPARQL queries combining data in a useful and insightful manner. And where there is traffic there can be monetization, whether by advertizing, subscription, or other means. Such possibilities are a natural adjunct to the blogosphere. To publish analysis, one no longer needs to be a think tank or media company. We could call this scenario the birth of a meshup economy.&lt;/p&gt;

&lt;p&gt;For OpenLink itself, this is our roadmap. The immediate future is about getting our high end offerings like clustered RDF storage generally available, both on the cloud and for private data centers. Ourselves, we will offer the whole &lt;a href=&quot;http://community.linkeddata.org/dataspace/organization/lod#this&quot; id=&quot;link-id0x1c696170&quot;&gt;Linked Open Data&lt;/a&gt; cloud as a database. The single feature to come in version 2 of this is fully automatic partitioning and repartitioning for on-demand scale; now, you have to choose how many partitions you have.&lt;/p&gt;

&lt;p&gt;This makes some things possible that were hard thus far.&lt;/p&gt;

&lt;p&gt;On the mapping front, we go for real-scale data integration scenarios where we can show that SPARQL can unify terms and concepts across databases, yet bring no added cost for complex queries. Enterprises can use their existing warehouses and have an added level of abstraction, the possibility of cross systems interlinking, the advantages of using the same taxonomies and ontologies across systems, and so forth.&lt;/p&gt;

&lt;p&gt;Then there will be developments in the direction of smarter web harvesting on demand with the Virtuoso &lt;a href=&quot;http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html&quot; id=&quot;link-id0x206ab780&quot;&gt;Sponger&lt;/a&gt;, and federation of heterogeneous SPARQL end points. The federation is not so unlike clustering, except the time scales are 2 orders of magnitude longer. The work on SPARQL end point statistics and data set description and discovery is a good development in the community.&lt;/p&gt;

&lt;p&gt;Then there will be NLP integration, as exemplified by the Open Calais linked data wrapper and more.&lt;/p&gt;

&lt;p&gt;Can we pull this off or is this being spread too thin? We know from experience that all this can be accomplished. Scale is already here; we show it with the billion triples set. Mapping is here; we showed it last in the Berlin Benchmark. We will also show some TPC-H results after we get a little quiet after the ISWC event.  Then there is ongoing maintenance but with this we have shown a steady turnaround and quick time to fix for pretty much anything.&lt;/p&gt;</description></item><item><title>Virtuoso - Are We Too Clever for Our Own Good? (updated)</title><guid>http://www.openlinksw.com/weblog/oerling/?date=2008-10-26#1465</guid><comments>http://www.openlinksw.com/weblog/oerling/?id=1465#comments</comments><pubDate>Sun, 26 Oct 2008 12:15:35 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-10-27T12:07:52-04:00</n0:modified><description>&lt;p&gt;&amp;quot;Physician, heal thyself,&amp;quot; it is said. We profess to say what the messaging of the &lt;a href=&quot;http://dbpedia.org/resource/Semantic_Web&quot; id=&quot;link-id0x1fa3da18&quot;&gt;semantic web&lt;/a&gt; ought to be, but is our own perfect?&lt;/p&gt;

&lt;p&gt;I will here engage in some critical introspection as well as amplify on some answers given to &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id0x1e1eecf0&quot;&gt;Virtuoso&lt;/a&gt;-related questions in recent times.&lt;/p&gt;

&lt;p&gt;I use some conversations from the &lt;a href=&quot;http://dbpedia.org/resource/Vienna&quot; id=&quot;link-id0x1ec0b2e0&quot;&gt;Vienna&lt;/a&gt; &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id0x2045ac10&quot;&gt;Linked Data&lt;/a&gt; Practitioners meeting as a starting point. These views are mine and are limited to the Virtuoso server. These do not apply to the &lt;a href=&quot;http://dbpedia.org/resource/OpenLink_Data_Spaces&quot; id=&quot;link-id0x2045ac38&quot;&gt;ODS&lt;/a&gt; (&lt;a href=&quot;http://dbpedia.org/resource/OpenLink_Data_Spaces&quot; id=&quot;link-id0x14f63c58&quot;&gt;OpenLink Data Spaces&lt;/a&gt;) applications line, &lt;a href=&quot;http://oat.openlinksw.com/&quot; id=&quot;link-id0x14f63c80&quot;&gt;OAT&lt;/a&gt; (&lt;a href=&quot;http://oat.openlinksw.com/&quot; id=&quot;link-id0x1e536928&quot;&gt;OpenLink Ajax Toolkit&lt;/a&gt;), or &lt;a href=&quot;http://ode.openlinksw.com/&quot; id=&quot;link-id0x1eaed7f8&quot;&gt;ODE&lt;/a&gt; (&lt;a href=&quot;http://ode.openlinksw.com/&quot; id=&quot;link-id0x1edfff88&quot;&gt;OpenLink Data Explorer&lt;/a&gt;).&lt;/p&gt;

&lt;h3&gt;&amp;quot;It is not always clear what the main thrust is, we get the impression that you are spread too thin,&amp;quot; said &lt;a href=&quot;http://www.informatik.uni-leipzig.de/~auer/foaf.rdf#me&quot; id=&quot;link-id0x1b8a9580&quot;&gt;SÃ¶ren Auer&lt;/a&gt;.&lt;/h3&gt;

&lt;p&gt;Well, personally, I am all for core competence. This is why I do not participate in all the online conversations and groups as much as I could, for example. Time and energy are critical resources and must be invested where they make a difference. In this case, the real core competence is running in the database race. This in itself, come to think of it, is a pretty broad concept.&lt;/p&gt;

&lt;p&gt;This is why we put a lot of emphasis on Linked Data and the &lt;a href=&quot;http://dbpedia.org/resource/Data&quot; id=&quot;link-id0x1b85fa38&quot;&gt;Data&lt;/a&gt; Web for now, as this is the emerging game. This is a deliberate choice, not an outside imperative or built-in limitation. More specifically, this means exposing any pre-existing relational data as linked data plus being the definitive &lt;a href=&quot;http://dbpedia.org/resource/Resource_Description_Framework&quot; id=&quot;link-id0x1f5b4468&quot;&gt;RDF&lt;/a&gt; store.&lt;/p&gt;

&lt;p&gt;We can do this because we own our database and &lt;a href=&quot;http://dbpedia.org/resource/SQL&quot; id=&quot;link-id0x20076468&quot;&gt;SQL&lt;/a&gt; and data access middleware and have a history of connecting to any &lt;a href=&quot;http://dbpedia.org/resource/Relational_database_management_system&quot; id=&quot;link-id0x1ffd6f98&quot;&gt;RDBMS&lt;/a&gt; out there.&lt;/p&gt;

&lt;p&gt;The principal message we have been hearing from the RDF field is the call for scale of triple storage. This is even louder than the call for relational mapping. We believe that in time mapping will exceed triple storage as such, once we get some real production strength mappings deployed, enough to outperform RDF warehousing.&lt;/p&gt;

&lt;p&gt;There are also RDF middleware things like RDF-ization and demand-driven web harvesting (i.e, the so-called Sponger). These are &lt;a href=&quot;http://dbpedia.org/resource/SPARQL&quot; id=&quot;link-id0x1316f720&quot;&gt;SPARQL&lt;/a&gt; options, thus accessed via standard interfaces. We have little desire to create our own languages or APIs, or to tell people how to program. This is why we recently introduced &lt;a href=&quot;http://sourceforge.net/projects/sesame/&quot; id=&quot;link-id0x20756a68&quot;&gt;Sesame&lt;/a&gt;- and &lt;a href=&quot;http://jena.sourceforge.net/&quot; id=&quot;link-id0x1ec01ac0&quot;&gt;Jena&lt;/a&gt;-compatible APIs to our RDF store. From what we hear, these work. On the other hand, we do not hesitate to move beyond the standards when there is obvious value or necessity. This is why we brought SPARQL up to and beyond SQL expressivity. It is not a case of E3 (Embrace, Extend, Extinguish).&lt;/p&gt;

&lt;p&gt;Now, this message could be better reflected in our material on the web. This &lt;a href=&quot;http://dbpedia.org/resource/Blog&quot; id=&quot;link-id0x2027b410&quot;&gt;blog&lt;/a&gt; is a rather informal step in this direction; more is to come. For now we concentrate on delivering.&lt;/p&gt;

&lt;p&gt;The conventional communications wisdom is to split the message by target audience. For this, we should split the RDF, relational, and web services messages from each other. We believe that a challenger, like the semantic web technology stack, must have a compelling message to tell for it to be interesting. This is not a question of research prototypes. The new technology cannot lack something the installed technology takes for granted.&lt;/p&gt;

&lt;p&gt;This is why we do not tend to show things like how to insert and query a few triples: No business out there will insert and query triples for the sake of triples. There must be a more compelling story â for example, turning the whole world into a database. This is why our examples start with things like turning the &lt;a href=&quot;http://dbpedia.org/resource/TPC-H&quot; id=&quot;link-id0x2051ff98&quot;&gt;TPC-H&lt;/a&gt; database into RDF, queries and all. Anything less is not interesting. Why would an enterprise that has business intelligence and integration issues way more complex than the rather stereotypical TPC-H even look at a technology that pretends to be all for integration and all for expressivity of queries, yet cannot answer the first question of the entry exam?&lt;/p&gt;

&lt;p&gt;The world out there is complex. But maybe we ought to make some simple tutorials? So, as a call to the people out there, tell us what a good tutorial would be. The question is more about figuring out what is out there and adapting these and making a sort of compatibility list.  Jena and Sesame stuff ought to run as is. We could offer a webinar to all the data web luminaries showing how to promote the data web message with Virtuoso. After all, why not show it on the best platform?&lt;/p&gt;

&lt;h3&gt;&amp;quot;You are arrogant. When I read your papers or documentation, the impression I get is that you say you are smart and the reader is stupid.&amp;quot;&lt;/h3&gt;

&lt;p&gt;We should answer in multiple  parts.&lt;/p&gt;

&lt;p&gt;For general collateral, like web sites and documentation:&lt;/p&gt;

&lt;p&gt;The web site gives a confused product image.  For the Virtuoso product, we should divide at the top into&lt;/p&gt;

&lt;ul&gt;  
&lt;li&gt; Data web and RDF - Host linked data, expose relational assets as linked data;&lt;/li&gt;
&lt;li&gt; Relational Database - Full function, high performance, open source, Federated/Virtual Relational DBMS, expose heterogeneous RDB assets through one point of contact for integration;&lt;/li&gt;
&lt;li&gt; Web Services - access all the above over standard protocols, dynamic web pages, web hosting.&lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;For each point, one simple statement.  We all know what the above things mean?&lt;/p&gt;

&lt;p&gt;Then we add a new point about scalability that impacts all the above, namely the Virtuoso version 6 Cluster, meaning that you can do all these things at 10 to 1000 times the scale. This means this much more data or in some cases this much more requests per second. This too is clear.&lt;/p&gt;

&lt;p&gt;Far as I am concerned, hosting Java or .&lt;a href=&quot;http://dbpedia.org/resource/.NET_Framework&quot; id=&quot;link-id0x1f297540&quot;&gt;NET&lt;/a&gt; does not have to be on the front page. Also, we have no great interest in going against &lt;a href=&quot;http://dbpedia.org/resource/Apache&quot; id=&quot;link-id0x1ea29578&quot;&gt;Apache&lt;/a&gt; when it comes to a web server only situation. The fact that we have a web listener is important for some things but our claim to fame does not rest on this.&lt;/p&gt;

&lt;p&gt;Then for documentation and training materials: The documentation should be better. Specifically it should have more of a how-to dimension since nobody reads the whole thing anyhow. About online tutorials, the order of presentation should be different. They do not really reflect what is important at the present moment either.&lt;/p&gt;

&lt;p&gt;Now for conference papers: Since taking the data web as a focus area, we have submitted some papers and had some rejected because these do not have enough references and do not explain what is obvious to ourselves.&lt;/p&gt;

&lt;p&gt;I think that the communications failure in this case is that we want to talk about end to end solutions and the reviewers expect research. For us, the solution is interesting and exists only if there is an adequate functionality mix for addressing a specific use case. This is why we do not make a paper about query cost model alone because the cost model, while indispensable, is a thing that is taken for granted where we come from. So we mention RDF adaptations to cost model, as these are important to the whole but do not find these to be the justification for a whole paper. If we made papers on this basis, we would have to make five times as many. Maybe we ought to.&lt;/p&gt;

&lt;h3&gt;&amp;quot;Virtuoso is very big and very difficult&amp;quot;&lt;/h3&gt;

&lt;p&gt;One thing that is not obvious from the Virtuoso packaging is that the minimum installation is an executable under 10MB and a config file. Two files.&lt;/p&gt;

&lt;p&gt;This gives you SQL and SPARQL out of the box.  Adding &lt;a href=&quot;http://dbpedia.org/resource/Open_Database_Connectivity&quot; id=&quot;link-id0x20a2e7d0&quot;&gt;ODBC&lt;/a&gt; and &lt;a href=&quot;http://dbpedia.org/resource/Java_Database_Connectivity&quot; id=&quot;link-id0x1e4cceb8&quot;&gt;JDBC&lt;/a&gt; clients is as simple as it gets. After this, there is basic database functionality. Tuning is a matter of a few parameters that are explained on this blog and elsewhere. Also, the full scale installation is available as an Amazon EC2 image, so no installation required.&lt;/p&gt;

&lt;p&gt;Now for the difficult side:&lt;/p&gt;

&lt;p&gt;Use SQL and SPARQL; use stored procedures whenever there is server side business logic. For some time critical web pages, use VSP. Do not use VSPX. Otherwise, use whatever you are used to â &lt;a href=&quot;http://dbpedia.org/resource/PHP&quot; id=&quot;link-id0x20b03f08&quot;&gt;PHP&lt;/a&gt; or Java or anything else. For web services, simple is best. Stick to basics. &amp;quot;The engineer is one who can invent a simple thing.&amp;quot; Use SQL statements rather than admin UI.&lt;/p&gt;

&lt;p&gt;Know that you can start a server with no database file and you get an initial database with nothing extra. The demo database, the way it is produced by installers is cluttered.&lt;/p&gt;

&lt;p&gt;We should put this into a couple of use case oriented how-tos.&lt;/p&gt;

&lt;p&gt;Also, we should create a network of &amp;quot;friendly local virtuoso geeks&amp;quot; for providing basic training and services so we do not have to explain these things all the time. To all you data-web-ers out there â please sign up and we will provide instructions, etc. Contact YrjÃ¤nÃ¤ Rankka (ghard[at-sign]openlinksw.com), or go through the mailing lists; do not contact me directly.&lt;/p&gt;

&lt;h3&gt;&amp;quot;OK, we understand that you may be good at the large end of the spectrum but how do you reconcile this with the lightweight or embedded end, like the semantic desktop?&amp;quot;&lt;/h3&gt;

&lt;p&gt;Now, what is good for one end is usually good for the other. Namely, a database, no matter the scale, needs to have space efficient storage, fast index lookup, and correct query plans. Then there are things that occur only at the high-end, like clustering, but these are separate things. For embedding, the initial memory footprint needs to be small. With Virtuoso, this is accomplished by leaving out some 200 built-in tables and 100,000 lines of SQL procedures that are normally in by default, supporting things such as DAV and diverse other protocols. After all, if SPARQL is all one wants these are not needed.&lt;/p&gt;

&lt;p&gt;If one really wants to do one&amp;#39;s server logic (like web listener and thread dispatching) oneself, this is not impossible but requires some advice from us. On the other hand, if one wants to have logic for security close to the data, then using stored procedures is recommended; these execute right next to the data, and support inline SPARQL and SQL. Depending on the license status of the other code, some special licensing arrangements may apply.&lt;/p&gt;

&lt;p&gt;We are talking about such things with different parties at present.&lt;/p&gt;

&lt;h3&gt;&amp;quot;How webby are you?  What is webby?&amp;quot;&lt;/h3&gt;

&lt;p&gt;&amp;quot;Webby means distributed, heterogeneous, open; not monolithic consolidation of everything.&amp;quot;&lt;/p&gt;

&lt;p&gt;We are philosophically webby. We come from open standards; we are after all called OpenLink; our history consists of connecting things. We believe in choice â the user should be able to pick the best of breed for components and have them work together. We cannot and do not wish to force replacement of existing assets. Transforming data on the fly and connecting systems, leaving data where it originally resides, is the first preference. For the data web, the first preference is a federation of independent SPARQL end points. When there is harvesting, we prefer to do it on demand, as with our Sponger. With the immense amount of data out there we believe in finding what is relevant &lt;i&gt;when&lt;/i&gt; it is relevant, preferably close at hand, leveraging things like social networks. With a data web, many things which are now siloized, such as marketplaces and social networks, will return to the open.&lt;/p&gt;

&lt;p&gt;Google-style crawling of everything becomes less practical if one needs to run complex &lt;i&gt;ad hoc&lt;/i&gt; queries against the mass of data. For these types of scenarios, if one needs to warehouse, the data cloud will offer solutions where one pays for database on demand. While we believe in loosely coupled federation where possible, we have serious work on the scalability side for the data center and the compute-on-demand cloud.&lt;/p&gt;

&lt;h3&gt;&amp;quot;How does OpenLink see the next five years unfolding?&amp;quot;&lt;/h3&gt;

&lt;p&gt;Personally, I think we have the basics for the birth of a new inflection in the &lt;a href=&quot;http://dbpedia.org/resource/Knowledge&quot; id=&quot;link-id0x2018bd98&quot;&gt;knowledge&lt;/a&gt; economy. The &lt;a href=&quot;http://dbpedia.org/resource/Uniform_Resource_Identifier&quot; id=&quot;link-id0x1ec110d8&quot;&gt;URI&lt;/a&gt; is the unit of exchange; its value and competitive edge lie in the data it links you with. A name without context is worth little, but as a name gets more use, more &lt;a href=&quot;http://dbpedia.org/resource/Information&quot; id=&quot;link-id0x1ecfba08&quot;&gt;information&lt;/a&gt; can be found through that name. This is anything from financial statistics, to legal precedents, to news reporting or government data. Right now, if the SEC just added one line of markup to the XBRL template, this would instantaneously make all SEC-mandated reporting into linked data via GRDDL.&lt;/p&gt;

&lt;p&gt;The URI is a carrier of brand. An information brand gets traffic and references, and this can be monetized in diverse ways. The key word is &lt;i&gt;context&lt;/i&gt;. Information overload is here to stay, and only better context offers the needed increase in productivity to stay ahead of the flood.&lt;/p&gt;

&lt;p&gt;Semantic technologies on the whole can help with this. Why these should be semantic web or data web technologies as opposed to just semantic is the linked data value proposition. Even smart islands are still islands. Agility, scale, and scope, depend on the possibility of combining things. Therefore common terminologies and dereferenceability and discoverability are important. Without these, we are at best dealing with closed systems even if they were smart. The expert systems of the 1980s are a case in point.&lt;/p&gt;

&lt;p&gt;Ever since the .com era, the &lt;a href=&quot;http://dbpedia.org/resource/Uniform_Resource_Locator&quot; id=&quot;link-id0x1c4c9248&quot;&gt;URL&lt;/a&gt; has been a brand. Now it becomes a URI. Thus, entirely hiding the URI from the user experience is not always desirable. The URI is a sort of handle on the provenance and where more can be found; besides, people are already used to these.&lt;/p&gt;

&lt;p&gt;With linked data, information value-add products become easy to build and deploy. They can be basically just canned SPARQL queries combining data in a useful and insightful manner. And where there is traffic there can be monetization, whether by advertizing, subscription, or other means. Such possibilities are a natural adjunct to the blogosphere. To publish analysis, one no longer needs to be a think tank or media company. We could call this scenario the birth of a meshup economy.&lt;/p&gt;

&lt;p&gt;For OpenLink itself, this is our roadmap. The immediate future is about getting our high end offerings like clustered RDF storage generally available, both on the cloud and for private data centers. Ourselves, we will offer the whole &lt;a href=&quot;http://community.linkeddata.org/dataspace/organization/lod#this&quot; id=&quot;link-id0x20791bf0&quot;&gt;Linked Open Data&lt;/a&gt; cloud as a database. The single feature to come in version 2 of this is fully automatic partitioning and repartitioning for on-demand scale; now, you have to choose how many partitions you have.&lt;/p&gt;

&lt;p&gt;This makes some things possible that were hard thus far.&lt;/p&gt;

&lt;p&gt;On the mapping front, we go for real-scale data integration scenarios where we can show that SPARQL can unify terms and concepts across databases, yet bring no added cost for complex queries. Enterprises can use their existing warehouses and have an added level of abstraction, the possibility of cross systems interlinking, the advantages of using the same taxonomies and ontologies across systems, and so forth.&lt;/p&gt;

&lt;p&gt;Then there will be developments in the direction of smarter web harvesting on demand with the Virtuoso &lt;a href=&quot;http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html&quot; id=&quot;link-id0x1f27e6d8&quot;&gt;Sponger&lt;/a&gt;, and federation of heterogeneous SPARQL end points. The federation is not so unlike clustering, except the time scales are 2 orders of magnitude longer. The work on SPARQL end point statistics and data set description and discovery is a good development in the community.&lt;/p&gt;

&lt;p&gt;Then there will be NLP integration, as exemplified by the Open Calais linked data wrapper and more.&lt;/p&gt;

&lt;p&gt;Can we pull this off or is this being spread too thin? We know from experience that all this can be accomplished. Scale is already here; we show it with the billion triples set. Mapping is here; we showed it last in the Berlin Benchmark. We will also show some TPC-H results after we get a little quiet after the ISWC event.  Then there is ongoing maintenance but with this we have shown a steady turnaround and quick time to fix for pretty much anything.&lt;/p&gt;</description></item><item><title>State of the Semantic Web, Part 2 - The Technical Questions (updated)</title><guid>http://www.openlinksw.com/blog/vdb/blog/?date=2008-10-26#1466</guid><comments>http://www.openlinksw.com/blog/vdb/blog/?id=1466#comments</comments><pubDate>Sun, 26 Oct 2008 12:02:43 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-10-27T11:28:14-04:00</n0:modified><description>&lt;p&gt;Here I will talk about some more technical questions that came up.  This is mostly general; &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id0x205901a0&quot;&gt;Virtuoso&lt;/a&gt; specific questions and answers are separate.
&lt;/p&gt;

&lt;h3&gt;&amp;quot;How to Bootstrap?  Where will the triples come from?&amp;quot;&lt;/h3&gt;

&lt;p&gt;There are already wrappers producing &lt;a href=&quot;http://dbpedia.org/resource/Resource_Description_Framework&quot; id=&quot;link-id0x13519ac8&quot;&gt;RDF&lt;/a&gt; from many applications. Since any structured or semi-structured &lt;a href=&quot;http://dbpedia.org/resource/Data&quot; id=&quot;link-id0x1c93b418&quot;&gt;data&lt;/a&gt; can be converted to RDF and often there is even a pre-existing terminology for the application domain, the availability of the data &lt;i&gt;per se&lt;/i&gt; is not the concern.&lt;/p&gt;

&lt;p&gt;The triples may come from any application or database, but they will not come from the end user directly.  There was a good talk about photograph annotation in &lt;a href=&quot;http://dbpedia.org/resource/Vienna&quot; id=&quot;link-id0x1ea9d150&quot;&gt;Vienna&lt;/a&gt;, describing many ways of deriving metadata for photos.  The essential wisdom is annotating on the spot and wherever possible doing so automatically.  The consumer is very unlikely to go annotate  photos after the fact.  Further, one can infer that photos made with the same camera around the same time are from the same location.  There are other such heuristics.  In this use case, the end user does not need to see triples.  There is some benefit though in using commonly used geographical terminology for linking to other data sources.&lt;/p&gt;

&lt;h3&gt;&amp;quot;How will one develop applications?&amp;quot;&lt;/h3&gt;

&lt;p&gt;I&amp;#39;d say one will develop them much the same way as thus far.  In &lt;a href=&quot;http://dbpedia.org/resource/PHP&quot; id=&quot;link-id0x207fca00&quot;&gt;PHP&lt;/a&gt;, for example.  Whether one&amp;#39;s query language is &lt;a href=&quot;http://dbpedia.org/resource/SPARQL&quot; id=&quot;link-id0x20a5fde0&quot;&gt;SPARQL&lt;/a&gt; or &lt;a href=&quot;http://dbpedia.org/resource/SQL&quot; id=&quot;link-id0x1a0bb5e0&quot;&gt;SQL&lt;/a&gt; does not make a large difference in how basic web UI is made.&lt;/p&gt;

&lt;p&gt;A SPARQL end-point is no more an end-user item than a SQL command-line is.&lt;/p&gt;

&lt;p&gt;A common mistake among techies is that they think the data structure and user experience can or ought to be of the same structure.  The UI dialogs do not, for example, have to have a 1:1 correspondence with SQL tables.&lt;/p&gt;

&lt;p&gt;The idea of generating UI from data, whether relational or data-web, is so seductive that generation upon generation of developers fall for it, repeatedly.  Even I, at OpenLink, after supposedly having been around the block a couple of times made some experiments around the topic.  What does make sense is putting a thin wrapper or HTML around the application, using XSLT and such for formatting.  Since the model does allow for unforeseen properties of data, one can build a viewer for these alongside the regular forms.  For this, Ajax technologies like &lt;a href=&quot;http://oat.openlinksw.com/&quot; id=&quot;link-id0x1e91d118&quot;&gt;OAT&lt;/a&gt; (the &lt;a href=&quot;http://oat.openlinksw.com/&quot; id=&quot;link-id0x174b7950&quot;&gt;OpenLink AJAX Toolkit&lt;/a&gt;) will be good.&lt;/p&gt;

&lt;p&gt;The UI ought not to completely hide the URIs of the data from the user.  It should offer a drill down to faceted views of the triples for example.  Remember when Xerox talked about graphical user interfaces in 1980? &amp;quot;Don&amp;#39;t mode me in&amp;quot; was the slogan, as I recall.&lt;/p&gt;

&lt;p&gt;Since then, we have vacillated between modal and non-modal interaction models.  Repetitive workflows like order entry go best modally and are anyway being replaced by web services.  Also workflows that are very infrequent benefit from modality; take personal network setup wizards, for example.  But enabling the &lt;a href=&quot;http://dbpedia.org/resource/Knowledge&quot; id=&quot;link-id0x1ea14610&quot;&gt;knowledge&lt;/a&gt; worker is a domain that by its nature must retain some respect for human intelligence and not kill this by denying access to the underlying data, including provenance and URIs.  Face it: the world is not getting simpler.  It is increasingly data dependent and when this is so, having semantics and flexibility of access for the data is important.&lt;/p&gt;

&lt;p&gt;For a real-time task-oriented user interface like a fighter plane cockpit, one will not show URIs unless specifically requested.  For planning fighter sorties though, there is some potential benefit in having all data such as friendly and hostile assets, geography, organizational structure, etc., as &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id0x207bcd20&quot;&gt;linked data&lt;/a&gt;.  It makes for more flexible querying.  Linked data does not &lt;i&gt;per se&lt;/i&gt; mean open, so one can be joinable with open data through using the same identifiers even while maintaining arbitrary levels of security and compartmentalization.&lt;/p&gt;

&lt;p&gt;For automating tasks that every time involve the same data and queries, RDF has no intrinsic superiority.  Thus the user interfaces in places where RDF will have real edge must be more capable of &lt;i&gt;ad hoc&lt;/i&gt; viewing and navigation than regular real-time or line of business user interfaces.&lt;/p&gt;

&lt;p&gt;The &lt;a href=&quot;http://ode.openlinksw.com/&quot; id=&quot;link-id0x2083a6f0&quot;&gt;OpenLink Data Explorer&lt;/a&gt; idea of a &amp;quot;data behind the web page&amp;quot; view goes in this direction. Read the web as before, then hit a switch to go to the data view.  There are and will be separate clarifications and demos about this.&lt;/p&gt;

&lt;h3&gt;&amp;quot;What of the proliferation of standards?  Does this not look too tangled, no clear identity?  How would one know where to begin?&amp;quot;&lt;/h3&gt;

&lt;p&gt;When &lt;a href=&quot;http://www.w3.org/2001/sw/sweo/&quot; id=&quot;link-id0x1e8eac68&quot;&gt;SWEO&lt;/a&gt; was beginning, there was an endlessly protracted discussion of the so-called layer cake. This acronym jungle is not good messaging. Just say linked, flexibly repurpose-able data, and rich vocabularies and structure.  Just the right amount of structure for the application, less rigid and easier to change than relational.&lt;/p&gt;

&lt;p&gt;Do not even mention the different serialization formats.  Just say that it fits on top of the accepted web infrastructure â &lt;a href=&quot;http://dbpedia.org/resource/Hypertext_Transfer_Protocol&quot; id=&quot;link-id0x1e3806b8&quot;&gt;HTTP&lt;/a&gt;, URIs, and &lt;a href=&quot;http://dbpedia.org/resource/XML&quot; id=&quot;link-id0x1f547288&quot;&gt;XML&lt;/a&gt; where desired.&lt;/p&gt;

&lt;p&gt;It is misleading to say inference is a box at some specific place in the diagram.  Inference of different types may or may not take place at diverse points, whether presentation or storage, on demand or as a preprocessing step.  Since there is structure and semantics, inference is possible if desired.&lt;/p&gt;

&lt;h3&gt;&amp;quot;Can I make a social network application in RDF only, with no &lt;a href=&quot;http://dbpedia.org/resource/Relational_database_management_system&quot; id=&quot;link-id0x20553ee0&quot;&gt;RDBMS&lt;/a&gt;?&amp;quot;&lt;/h3&gt;

&lt;p&gt;Yes, in principle, but what do you have in mind?  The answer is very context dependent.  The person posing the question had an E-learning system in mind, with things such as course catalogues, course material, etc.  In such a case, RDF is a great match, especially since the user count will not be in the millions.  No university has that many students and anyway they do not hang online browsing the course catalogue.&lt;/p&gt;

&lt;p&gt;On the other hand, if I think of making a social network site with RDF as the exclusive data model, I see things that would be very inefficient. For example, keeping a count of logins or the last time of login would be by default several times less efficient than with a RDBMS.&lt;/p&gt;

&lt;p&gt;If some application is really large scale and has a knowable workload profile, like any social network does, then some task-specific data structure is simply economical.  This does not mean that the application language cannot be SPARQL but this means that the storage format must be tuned to favor some operations over others, relational style.  This is a matter of cost more than of feasibility.  Ten servers cost less than a hundred and have failures ten times less frequently.&lt;/p&gt;

&lt;p&gt;In the near term we will see the birth of an application paradigm for the data web. The data will be open, exposed, first-class citizen; yet the user experience will not have to be in a 1:1 image of the data.&lt;/p&gt;</description></item><item><title>State of the Semantic Web, Part 2 - The Technical Questions (updated)</title><guid>http://www.openlinksw.com/weblog/oerling/?date=2008-10-26#1464</guid><comments>http://www.openlinksw.com/weblog/oerling/?id=1464#comments</comments><pubDate>Sun, 26 Oct 2008 12:02:43 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-10-27T11:28:01-04:00</n0:modified><description>&lt;p&gt;Here I will talk about some more technical questions that came up.  This is mostly general; &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id0x1f53d1a0&quot;&gt;Virtuoso&lt;/a&gt; specific questions and answers are separate.
&lt;/p&gt;

&lt;h3&gt;&amp;quot;How to Bootstrap?  Where will the triples come from?&amp;quot;&lt;/h3&gt;

&lt;p&gt;There are already wrappers producing &lt;a href=&quot;http://dbpedia.org/resource/Resource_Description_Framework&quot; id=&quot;link-id0x1beda278&quot;&gt;RDF&lt;/a&gt; from many applications. Since any structured or semi-structured &lt;a href=&quot;http://dbpedia.org/resource/Data&quot; id=&quot;link-id0x1e57c648&quot;&gt;data&lt;/a&gt; can be converted to RDF and often there is even a pre-existing terminology for the application domain, the availability of the data &lt;i&gt;per se&lt;/i&gt; is not the concern.&lt;/p&gt;

&lt;p&gt;The triples may come from any application or database, but they will not come from the end user directly.  There was a good talk about photograph annotation in &lt;a href=&quot;http://dbpedia.org/resource/Vienna&quot; id=&quot;link-id0x2028b7e8&quot;&gt;Vienna&lt;/a&gt;, describing many ways of deriving metadata for photos.  The essential wisdom is annotating on the spot and wherever possible doing so automatically.  The consumer is very unlikely to go annotate  photos after the fact.  Further, one can infer that photos made with the same camera around the same time are from the same location.  There are other such heuristics.  In this use case, the end user does not need to see triples.  There is some benefit though in using commonly used geographical terminology for linking to other data sources.&lt;/p&gt;

&lt;h3&gt;&amp;quot;How will one develop applications?&amp;quot;&lt;/h3&gt;

&lt;p&gt;I&amp;#39;d say one will develop them much the same way as thus far.  In &lt;a href=&quot;http://dbpedia.org/resource/PHP&quot; id=&quot;link-id0x1eff1748&quot;&gt;PHP&lt;/a&gt;, for example.  Whether one&amp;#39;s query language is &lt;a href=&quot;http://dbpedia.org/resource/SPARQL&quot; id=&quot;link-id0x1d83dff8&quot;&gt;SPARQL&lt;/a&gt; or &lt;a href=&quot;http://dbpedia.org/resource/SQL&quot; id=&quot;link-id0x1e9f4e88&quot;&gt;SQL&lt;/a&gt; does not make a large difference in how basic web UI is made.&lt;/p&gt;

&lt;p&gt;A SPARQL end-point is no more an end-user item than a SQL command-line is.&lt;/p&gt;

&lt;p&gt;A common mistake among techies is that they think the data structure and user experience can or ought to be of the same structure.  The UI dialogs do not, for example, have to have a 1:1 correspondence with SQL tables.&lt;/p&gt;

&lt;p&gt;The idea of generating UI from data, whether relational or data-web, is so seductive that generation upon generation of developers fall for it, repeatedly.  Even I, at OpenLink, after supposedly having been around the block a couple of times made some experiments around the topic.  What does make sense is putting a thin wrapper or HTML around the application, using XSLT and such for formatting.  Since the model does allow for unforeseen properties of data, one can build a viewer for these alongside the regular forms.  For this, Ajax technologies like &lt;a href=&quot;http://oat.openlinksw.com/&quot; id=&quot;link-id0x1d780520&quot;&gt;OAT&lt;/a&gt; (the &lt;a href=&quot;http://oat.openlinksw.com/&quot; id=&quot;link-id0x20943788&quot;&gt;OpenLink AJAX Toolkit&lt;/a&gt;) will be good.&lt;/p&gt;

&lt;p&gt;The UI ought not to completely hide the URIs of the data from the user.  It should offer a drill down to faceted views of the triples for example.  Remember when Xerox talked about graphical user interfaces in 1980? &amp;quot;Don&amp;#39;t mode me in&amp;quot; was the slogan, as I recall.&lt;/p&gt;

&lt;p&gt;Since then, we have vacillated between modal and non-modal interaction models.  Repetitive workflows like order entry go best modally and are anyway being replaced by web services.  Also workflows that are very infrequent benefit from modality; take personal network setup wizards, for example.  But enabling the &lt;a href=&quot;http://dbpedia.org/resource/Knowledge&quot; id=&quot;link-id0x1e14eb88&quot;&gt;knowledge&lt;/a&gt; worker is a domain that by its nature must retain some respect for human intelligence and not kill this by denying access to the underlying data, including provenance and URIs.  Face it: the world is not getting simpler.  It is increasingly data dependent and when this is so, having semantics and flexibility of access for the data is important.&lt;/p&gt;

&lt;p&gt;For a real-time task-oriented user interface like a fighter plane cockpit, one will not show URIs unless specifically requested.  For planning fighter sorties though, there is some potential benefit in having all data such as friendly and hostile assets, geography, organizational structure, etc., as &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id0x1e91d118&quot;&gt;linked data&lt;/a&gt;.  It makes for more flexible querying.  Linked data does not &lt;i&gt;per se&lt;/i&gt; mean open, so one can be joinable with open data through using the same identifiers even while maintaining arbitrary levels of security and compartmentalization.&lt;/p&gt;

&lt;p&gt;For automating tasks that every time involve the same data and queries, RDF has no intrinsic superiority.  Thus the user interfaces in places where RDF will have real edge must be more capable of &lt;i&gt;ad hoc&lt;/i&gt; viewing and navigation than regular real-time or line of business user interfaces.&lt;/p&gt;

&lt;p&gt;The &lt;a href=&quot;http://ode.openlinksw.com/&quot; id=&quot;link-id0x1c7f8ee0&quot;&gt;OpenLink Data Explorer&lt;/a&gt; idea of a &amp;quot;data behind the web page&amp;quot; view goes in this direction. Read the web as before, then hit a switch to go to the data view.  There are and will be separate clarifications and demos about this.&lt;/p&gt;

&lt;h3&gt;&amp;quot;What of the proliferation of standards?  Does this not look too tangled, no clear identity?  How would one know where to begin?&amp;quot;&lt;/h3&gt;

&lt;p&gt;When &lt;a href=&quot;http://www.w3.org/2001/sw/sweo/&quot; id=&quot;link-id0x1d73c268&quot;&gt;SWEO&lt;/a&gt; was beginning, there was an endlessly protracted discussion of the so-called layer cake. This acronym jungle is not good messaging. Just say linked, flexibly repurpose-able data, and rich vocabularies and structure.  Just the right amount of structure for the application, less rigid and easier to change than relational.&lt;/p&gt;

&lt;p&gt;Do not even mention the different serialization formats.  Just say that it fits on top of the accepted web infrastructure â &lt;a href=&quot;http://dbpedia.org/resource/Hypertext_Transfer_Protocol&quot; id=&quot;link-id0x1efefed0&quot;&gt;HTTP&lt;/a&gt;, URIs, and &lt;a href=&quot;http://dbpedia.org/resource/XML&quot; id=&quot;link-id0x1af89b18&quot;&gt;XML&lt;/a&gt; where desired.&lt;/p&gt;

&lt;p&gt;It is misleading to say inference is a box at some specific place in the diagram.  Inference of different types may or may not take place at diverse points, whether presentation or storage, on demand or as a preprocessing step.  Since there is structure and semantics, inference is possible if desired.&lt;/p&gt;

&lt;h3&gt;&amp;quot;Can I make a social network application in RDF only, with no &lt;a href=&quot;http://dbpedia.org/resource/Relational_database_management_system&quot; id=&quot;link-id0x1cb62cd8&quot;&gt;RDBMS&lt;/a&gt;?&amp;quot;&lt;/h3&gt;

&lt;p&gt;Yes, in principle, but what do you have in mind?  The answer is very context dependent.  The person posing the question had an E-learning system in mind, with things such as course catalogues, course material, etc.  In such a case, RDF is a great match, especially since the user count will not be in the millions.  No university has that many students and anyway they do not hang online browsing the course catalogue.&lt;/p&gt;

&lt;p&gt;On the other hand, if I think of making a social network site with RDF as the exclusive data model, I see things that would be very inefficient. For example, keeping a count of logins or the last time of login would be by default several times less efficient than with a RDBMS.&lt;/p&gt;

&lt;p&gt;If some application is really large scale and has a knowable workload profile, like any social network does, then some task-specific data structure is simply economical.  This does not mean that the application language cannot be SPARQL but this means that the storage format must be tuned to favor some operations over others, relational style.  This is a matter of cost more than of feasibility.  Ten servers cost less than a hundred and have failures ten times less frequently.&lt;/p&gt;

&lt;p&gt;In the near term we will see the birth of an application paradigm for the data web. The data will be open, exposed, first-class citizen; yet the user experience will not have to be in a 1:1 image of the data.&lt;/p&gt;</description></item><item><title>Virtuoso, PHP 3.5 Runtime Hosting, phpBB3, and Linked Data</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-10-24#1461</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1461#comments</comments><pubDate>Fri, 24 Oct 2008 19:55:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2009-01-26T13:24:00.000002-05:00</n0:modified><description>
 &lt;p&gt;Runtime hosting is functionality realm of &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id1189fee8&quot;&gt;Virtuoso&lt;/a&gt; that is sometimes easily overlooked. In this post I want to provide a simple no-hassles HOWTO guide for installing Virtuoso on Windows (32 or 64 Bit), Mac OS X (Universal or Native 64 Bit), and Linux (32 or 64 Bit). The installation guide also covers the instantiation of &lt;a href=&quot;http://dbpedia.org/resource/PhpBB&quot; id=&quot;link-id118af3a8&quot;&gt;phpBB3&lt;/a&gt; as verification of the Virtuoso hosted &lt;a href=&quot;http://dbpedia.org/resource/PHP&quot; id=&quot;link-id12736b88&quot;&gt;PHP&lt;/a&gt; 3.5 runtime.&lt;/p&gt;  &lt;h3&gt;What are the benefits of PHP Runtime Hosting?&lt;/h3&gt;  &lt;p&gt;Simple, this means that like &lt;a href=&quot;http://dbpedia.org/resource/Apache&quot; id=&quot;link-id111ca408&quot;&gt;Apache&lt;/a&gt;, Virtuoso is a bona-fide &lt;a href=&quot;http://dbpedia.org/resource/World_Wide_Web&quot; id=&quot;link-id0xba014968&quot;&gt;Web&lt;/a&gt; &lt;a href=&quot;http://dbpedia.org/resource/Application_server&quot; id=&quot;link-id110d2aa8&quot;&gt;Application Server&lt;/a&gt; for an PHP application. Unlike Apache, Virtuoso is also the following:&lt;/p&gt;  &lt;ul&gt; &lt;li&gt;a DBMS Engine (&lt;a href=&quot;http://dbpedia.org/resource/SQL&quot; id=&quot;link-id10f43d78&quot;&gt;SQL&lt;/a&gt;, XML, RDF, and unstructured Text) that is accessible via industry standard interfaces (solely)&lt;/li&gt; &lt;li&gt;a Virtual DBMS or Master &lt;a href=&quot;http://dbpedia.org/resource/Data&quot; id=&quot;link-id0x141b0a20&quot;&gt;Data&lt;/a&gt; Manager (MDM) for heterogeneous and distributed SQL, XML, RDF, unstructured Text based data sources&lt;/li&gt; &lt;li&gt;an &lt;a href=&quot;http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&amp;amp;q=rdf%20middleware&amp;amp;type=text&amp;amp;output=html&quot; id=&quot;link-id1116aad8&quot;&gt;RDF Middleware&lt;/a&gt; solution for RDF-zation of non RDF resources across the Web and enterprise Intranets and/or Extranets (in the form of Cartridges for SOA &amp;amp; REST Servers and RDF Views (Semantic Covers) over SQL and/or XML data sources)&lt;/li&gt; &lt;li&gt;an RDF &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id10fbe088&quot;&gt;Linked Data&lt;/a&gt; Server (meaning it can deploy RDF Linked Data)&lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;As result of the above, when you deploy a PHP application using Virtuoso, you inherit the following benefits:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;Use of PHP-&lt;a href=&quot;http://www.iodbc.org&quot; id=&quot;link-id1159e070&quot;&gt;iODBC&lt;/a&gt; for in-process communication with Virtuoso&lt;/li&gt; &lt;li&gt;Easy generation of RDF Linked Data from the SQL schemas of PHP applications&lt;/li&gt; &lt;li&gt;Easy deployment of RDF Linked Data&lt;/li&gt; &lt;li&gt;Less &lt;a href=&quot;http://dbpedia.org/resource/LAMP_stack&quot; id=&quot;link-id1179dff0&quot;&gt;LAMP&lt;/a&gt; monoculture (*there is no such thing as virtuous monoculture*) when dealing with PHP based Web applications. &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;As indicated in prior posts, producing RDF Linked Data from the existing Web, where a lot of content is deployed by PHP based content managers, should simply come down to RDF Views over the SQL Schemas and deployment / publishing of the RDF Views in RDF Linked data form. In a nutshell,  this is what Virtuoso delivers via its PHP runtime hosting and pre packaged VADs (Virtuoso Application Distribution packages) for popular PHP based applications such as: phpBB3, &lt;a href=&quot;http://dbpedia.org/resource/Drupal&quot; id=&quot;link-id111ff1c0&quot;&gt;Drupal&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/WordPress&quot; id=&quot;link-id111e26f8&quot;&gt;WordPress&lt;/a&gt;, and &lt;a href=&quot;http://dbpedia.org/resource/MediaWiki&quot; id=&quot;link-id10ea0258&quot;&gt;MediaWiki&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;In addition, to the RDF Linked Data deployment, we&amp;#39;ve also taken the traditional LAMP installation tedium out of the typical PHP application deployment process. For instance, you don&amp;#39;t have to rebuild PHP 3.5 (32 or 64 Bit) on Windows, Mac OS X, or Linux to get going, simply install Virtuoso, and then select a VAD package for the relevant application and you&amp;#39;re set. If the application of choice isn&amp;#39;t pre packaged by us, simply install as you would when using Apache, which comes dow to situating the PHP files in your Web structure under the Web Application&amp;#39;s root directory.&lt;/p&gt;  &lt;h3&gt;Installation Guide&lt;/h3&gt; &lt;ol&gt; &lt;li&gt;Download the Virtuoso installer for Windows (&lt;a href=&quot;http://virtuoso-installers.s3.amazonaws.com/virt50_server_Windows_x86_32-20081022.msi&quot; id=&quot;link-id1160cc80&quot;&gt;32 Bit msi file&lt;/a&gt; or &lt;a href=&quot;http://virtuoso-installers.s3.amazonaws.com/virt50_server_Windows_x86_64-20081022.msi&quot; id=&quot;link-id11239828&quot;&gt;64 Bit msi file&lt;/a&gt;), Mac OS X (&lt;a href=&quot;http://virtuoso-installers.s3.amazonaws.com/Virtuoso-PersonalEdition-V5.0-MacOSX-10.5-Universal.dmg&quot; id=&quot;link-id110511f8&quot;&gt;Universal Binary dmg file&lt;/a&gt;), or instantiate the &lt;a href=&quot;http://www.openlinksw.com/oat/wiki/main/Main/ODSInstallationEC2&quot; id=&quot;link-id111fe248&quot;&gt;Virtuoso EC2 AMI&lt;/a&gt; search for pattern: &amp;quot;OpenLink, when using the Firefox extension or Web Interface based EC2 management consoles or look for:&lt;/li&gt;  &lt;ul&gt;   &lt;li&gt;Â AMI ID: ami-c46084ad and Manifest Name: openlink/virtuoso-uim-unisvr-psnl/5.0/i686-fedora-linux-9.manifest.xml (32 bit edition)   &lt;/li&gt;   &lt;li&gt;AMI ID:Â  ami-59628630 and Manifest Name: openlink/virtuoso-uim-unisvr-psnl/5.0/i686-fedora-linux-9.manifest.xml (64 bit edition)&lt;br /&gt;Â    &lt;/li&gt;  &lt;/ul&gt; &lt;li&gt;Run the installer (or download the movies using the links in the related section below)&lt;/li&gt; &lt;li&gt;Go to the Virtuoso Conductor (*which will show up at the end of the installation process* or go to http://localhost:8890/conductor)&lt;/li&gt; &lt;li&gt;Go to the &amp;quot;Admin&amp;quot; tab within the (X)HTML based UI and select the &amp;quot;Packages&amp;quot; sub-menu item (a Tab)&lt;/li&gt; &lt;li&gt;Pick phpBB3 (or any other pre-packaged PHP app) and then click on &amp;quot;Install/Upgrase&amp;quot;&lt;/li&gt; &lt;li&gt;The watch one of my silent movies or read the initial startup guides for Virtuoso hosted phpBB3, Drupal, Wordpress, MediaWiki.&lt;/li&gt; &lt;/ol&gt; &lt;h3&gt;Related&lt;/h3&gt; &lt;p&gt; At the current time, I&amp;#39;ve only provided links to ZIP files containing the Virtuoso installation &amp;quot;silent movies&amp;quot;. This approach is a short-term solution to some of my current movie publishing challenges re. YouTube and Vimeo -- where the compressed output hasn&amp;#39;t been of acceptable visual quality. Once resolved, I will publish much more &amp;quot;Multimedia Web&amp;quot; friendly movies :-)&lt;/p&gt; &lt;ul&gt; &lt;li&gt;   &lt;a href=&quot;http://my-movies.s3.amazonaws.com/Virtuoso_PHPBB3_Vista_Linked_Data_Demo.mov.zip&quot; id=&quot;link-id11642450&quot;&gt;Windows Vista (x64) Installation Movie&lt;/a&gt; &lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://my-movies.s3.amazonaws.com/Virtuoso_PHPBB3_MacOSX_Linked_Data_Demo.mov.zip&quot; id=&quot;link-id11210498&quot;&gt;Mac OS X (x64 &amp;amp; Universal binary) Installation Movie&lt;/a&gt; &lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://my-movies.s3.amazonaws.com/Virtuoso_PHPBB3_EC2_AMI_Linked_Data_Demo.zip&quot; id=&quot;link-id111ff268&quot;&gt;Virtuoso EC2 Cloud Edition Installation Movie&lt;/a&gt; &lt;/li&gt; &lt;/ul&gt;  
</description></item><item><title>Where Are All the RDF-based Semantic Web Applications?</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-10-01#1447</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1447#comments</comments><pubDate>Wed, 01 Oct 2008 23:09:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-10-02T15:27:41-04:00</n0:modified><description>&lt;p&gt;
In response to the &amp;quot;&lt;a href=&quot;http://dbpedia.org/resource/Semantic_Web&quot; id=&quot;link-id15971040&quot;&gt;Semantic Web&lt;/a&gt; Technology&amp;quot; application classification scheme espoused by &lt;a href=&quot;http://www.readwriteweb.com&quot; id=&quot;link-id16391540&quot;&gt;ReadWriteWeb&lt;/a&gt; (RWW), emphasized in the post titled:  &lt;a href=&quot;http://www.readwriteweb.com/archives/rdf_semantic_web_apps.php&quot; id=&quot;link-id1157eaa0&quot;&gt;Where are all the RDF-based Semantic Web Apps?&lt;/a&gt;, here is my attempt to clarify and reintroduce what &lt;a href=&quot;http://www.openlinksw.com/dataspace/organization/openlink#this&quot; id=&quot;link-id15a43758&quot;&gt;OpenLink Software&lt;/a&gt; offers (today) in relation to Semantic Web technology.
&lt;/p&gt;
&lt;p&gt;
From the RWW Top-Down category, which I interpret as: technologies that produce RDF from non RDF &lt;a href=&quot;http://dbpedia.org/resource/Data&quot;&gt;data&lt;/a&gt; sources. Our product portfolio is comprised of the following; &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id14f05818&quot;&gt;Virtuoso Universal Server&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/OpenLink_Data_Spaces&quot; id=&quot;link-id162c8630&quot;&gt;OpenLink Data Spaces&lt;/a&gt;, &lt;a href=&quot;http://oat.openlinksw.com&quot; id=&quot;link-id134e1a00&quot;&gt;OpenLink Ajax Toolkit&lt;/a&gt;, and &lt;a href=&quot;http://ode.openlinksw.com&quot; id=&quot;link-id160b3bf8&quot;&gt;OpenLink Data Explorer&lt;/a&gt; (which includes ubiquity commands).&lt;/p&gt;

&lt;h3&gt;Virtuoso Universal Server functionality summary:&lt;/h3&gt;

&lt;ol&gt;
  &lt;li&gt;Generation of RDF &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id161d5f50&quot;&gt;Linked Data&lt;/a&gt; Views of &lt;a href=&quot;http://dbpedia.org/resource/SQL&quot; id=&quot;link-id161d5978&quot;&gt;SQL&lt;/a&gt;, XML, and &lt;a href=&quot;http://dbpedia.org/resource/World_Wide_Web&quot;&gt;Web&lt;/a&gt; Services in general &lt;/li&gt;
  &lt;li&gt;Deployment of RDF Linked Data &lt;/li&gt;
  &lt;li&gt;&amp;quot;On the Fly&amp;quot; generation of RDF Linked Data from Document Web &lt;a href=&quot;http://www.w3.org/TR/webarch/&quot; id=&quot;link-id178bbc08&quot;&gt;information resources&lt;/a&gt; (i.e. distillation of entities from their containers e.g. Web pages) via Cartridges / Drivers&lt;/li&gt;
  &lt;li&gt;
  &lt;a href=&quot;http://dbpedia.org/resource/SPARQL&quot; id=&quot;link-id162c2118&quot;&gt;SPARQL&lt;/a&gt; query language support &lt;/li&gt;
  &lt;li&gt;SPARQL extensions that bring SPARQL closer to SQL e.g Aggregates, Update, Insert, Delete
    Named Graph support (i.e. use of logical names to partition RDF data within Virtuoso&amp;#39;s multi-model dbms engine)    &lt;/li&gt;
  &lt;li&gt;Inference Engine (currently in use re. &lt;a href=&quot;http://dbpedia.org/resource/DBpedia&quot; id=&quot;link-id14f563c0&quot;&gt;DBpedia&lt;/a&gt; via Yago and &lt;a href=&quot;http://umbel.org/about/&quot; id=&quot;link-id113273b8&quot;&gt;UMBEL&lt;/a&gt;)&lt;/li&gt;
  &lt;li&gt;Host and exposes data from &lt;a href=&quot;http://dbpedia.org/resource/Drupal&quot; id=&quot;link-id123d3bd8&quot;&gt;Drupal&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/WordPress&quot; id=&quot;link-id141adf40&quot;&gt;Wordpress&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/MediaWiki&quot; id=&quot;link-id1604b450&quot;&gt;MediaWiki&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/PhpBB&quot; id=&quot;link-id141013a8&quot;&gt;phpBB3&lt;/a&gt; as RDF Linked Data via in-built support for &lt;a href=&quot;http://dbpedia.org/resource/PHP&quot; id=&quot;link-id14661e58&quot;&gt;PHP&lt;/a&gt; runtime&lt;/li&gt;
  &lt;li&gt;
  &lt;a href=&quot;http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/ODSInstallationEC2&quot; id=&quot;link-id146c84d0&quot;&gt;Available as an EC2 AMI&lt;/a&gt;
&lt;/li&gt;
  &lt;li&gt;etc..&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;OpenLink Data Spaces functionality summary:&lt;/h3&gt;
&lt;ol&gt;
  &lt;li&gt;Simple mechanism for Linked Data &lt;a href=&quot;http://dbpedia.org/resource/Giant_Global_Graph&quot; id=&quot;link-id15473770&quot;&gt;Web&lt;/a&gt; enabling yourself by giving you an &lt;a href=&quot;http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/GetAPersonalURIIn5MinutesOrLess&quot; id=&quot;link-id15f6d278&quot;&gt;HTTP based User ID&lt;/a&gt; (a de-referencable &lt;a href=&quot;http://dbpedia.org/resource/Uniform_Resource_Identifier&quot; id=&quot;link-id15aaeb68&quot;&gt;URI&lt;/a&gt;) that is linked to a &lt;a href=&quot;http://myopenlink.net/dataspace/person/kidehen&quot; id=&quot;link-id15a7a840&quot;&gt;FOAF based Profile page&lt;/a&gt; and OpenID&lt;/li&gt;
  &lt;li&gt;Binds all your data sources (blogs, wikis, bookmarks, photos, calendar items etc. ) to your URI so can &amp;quot;Find&amp;quot; things by only remembering your URI&lt;/li&gt;
  &lt;li&gt;Makes your profile page and personal URI the focal point of Linked Data Web presence&lt;/li&gt;
  &lt;li&gt;Delivers Data Portability (using data access by value or &lt;a href=&quot;http://dbpedia.org/resource/Reference_(computer_science)&quot; id=&quot;link-id16212838&quot;&gt;data access by reference&lt;/a&gt;) across data silos (e.g. Web 2.0 style social networks)&lt;/li&gt;
  &lt;li&gt;Allows you make annotations about anything in your own &lt;a href=&quot;http://en.wikipedia.org/wiki/Data_Spaces&quot; id=&quot;link-id14668010&quot;&gt;Data Space&lt;/a&gt;(s) on the Web without exposure to RDF markup&lt;/li&gt;
  &lt;li&gt;A Briefcase feature that provides a WebDAV driven RDF Linked Data variant of functionality seen in Mac OS X Spotlight and WinFS with the addition of SPARQL compliance&lt;/li&gt;
  &lt;li&gt;Automatically generates &lt;a href=&quot;http://dbpedia.org/resource/RDFa&quot; id=&quot;link-id14691440&quot;&gt;RDFa&lt;/a&gt; in its (X)HTML pages&lt;/li&gt;
  &lt;li&gt;
  &lt;a href=&quot;http://dbpedia.org/resource/Blog&quot; id=&quot;link-id14fae7b8&quot;&gt;Blog&lt;/a&gt;, Wiki, WebDAV File Server, Shared Bookmarks, Calendar, and other applications that look and feel like Web 2.0 counterparts but emitt RDF Linked Data amongst a plethora of data exchange formats&lt;/li&gt;
  &lt;li&gt;Available as an EC2 AMI&lt;/li&gt;
  &lt;li&gt;etc..&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;OpenLink Ajax Toolkit functionality summary:&lt;/h3&gt;
&lt;ol&gt;
  &lt;li&gt;Provides binding to SQL, RDF, XML, and Web Services via Ajax Database Connectivity Layer (you only need an &lt;a href=&quot;http://dbpedia.org/resource/Open_Database_Connectivity&quot; id=&quot;link-id11550548&quot;&gt;ODBC&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/Java_Database_Connectivity&quot; id=&quot;link-id13ae5f68&quot;&gt;JDBC&lt;/a&gt;, OLE-DB, &lt;a href=&quot;http://dbpedia.org/resource/ADO.NET&quot; id=&quot;link-id162803e8&quot;&gt;ADO&lt;/a&gt;.NET,  XMLA Driver, or Web Service on the backend for dynamic data access from Javascript)&lt;/li&gt;
  &lt;li&gt;All controls are Ajax Database Connectivity bound (widgets get their data from Ajax Database Connectivity data sources)&lt;/li&gt;
  &lt;li&gt;Bundled with Virtuoso and &lt;a href=&quot;http://dbpedia.org/resource/OpenLink_Data_Spaces&quot; id=&quot;link-id161dfe90&quot;&gt;ODS&lt;/a&gt; installations.&lt;/li&gt;
  &lt;li&gt;etc.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;OpenLink Data Explorer functionality summary&lt;/h3&gt;
&lt;ol&gt;
  &lt;li&gt;Distills entities associated with information resource style containers (e.g. Web Pages or files) as RDF Linked Data&lt;/li&gt;
  &lt;li&gt;Exposes the RDF based &lt;a href=&quot;http://dbpedia.org/resource/Resource_Description_Framework&quot; id=&quot;link-id12a42ed8&quot;&gt;Linked Data graph&lt;/a&gt; associated with information resources (see the Linked Data behind Web pages)&lt;/li&gt;
  &lt;li&gt;Ubiquity commands for invoking the above&lt;/li&gt;
  &lt;li&gt;Available as a &lt;a href=&quot;http://linkeddata.uriburner.com/ode&quot; id=&quot;link-id15a0d2b0&quot;&gt;Hosted Service&lt;/a&gt; or &lt;a href=&quot;http://ode.openlinksw.com&quot; id=&quot;link-id138b9fa8&quot;&gt;Firefox Extension&lt;/a&gt;
&lt;/li&gt;
  &lt;li&gt;Bundled with Virtuoso and ODS installations&lt;/li&gt;
  &lt;li&gt;etc.&lt;/li&gt;
&lt;/ol&gt;
&lt;h3&gt;Note:&lt;/h3&gt;
&lt;p&gt;Of course you could have simply looked up &lt;a href=&quot;http://www.openlinksw.com/dataspace/organization/openlink&quot; id=&quot;link-id14ef2c10&quot;&gt;OpenLink Software&amp;#39;s FOAF based Profile page&lt;/a&gt; (*note the Linked Data Explorer tab*), or simply passed the &lt;a href=&quot;http://dbpedia.org/resource/Friend_of_a_friend&quot; id=&quot;link-id14cbf5c8&quot;&gt;FOAF&lt;/a&gt; profile page &lt;a href=&quot;http://dbpedia.org/resource/Uniform_Resource_Locator&quot; id=&quot;link-id16453e28&quot;&gt;URL&lt;/a&gt; to a Linked Data aware client application such as: &lt;a href=&quot;http://linkeddata.uriburner.com/ode&quot; id=&quot;link-id15a80500&quot;&gt;OpenLink Data Explorer&lt;/a&gt;, &lt;a href=&quot;http://zitgist.com/about/&quot; id=&quot;link-id1586a360&quot;&gt;Zitgist&lt;/a&gt; &lt;a href=&quot;http://dataviewer.zitgist.com&quot; id=&quot;link-id16249f60&quot;&gt;Data Viewer&lt;/a&gt;, &lt;a href=&quot;http://beckr.org/marbles&quot; id=&quot;link-id15993fb0&quot;&gt;Marbles&lt;/a&gt;, and &lt;a href=&quot;http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html&quot; id=&quot;link-id14d63048&quot;&gt;Tabulator&lt;/a&gt;, and obtained information. Remember, &lt;a href=&quot;http://www.openlinksw.com/dataspace/organization/openlink#this&quot; id=&quot;link-id138ba838&quot;&gt;OpenLink Software&lt;/a&gt; is an &lt;a href=&quot;http://dbpedia.org/resource/Entity&quot; id=&quot;link-id1173e120&quot;&gt;Entity&lt;/a&gt; of Type: &lt;a href=&quot;http://xmlns.com/foaf/0.1/Organization&quot; id=&quot;link-id138b87b8&quot;&gt;foaf:Organization&lt;/a&gt;, on the burgeoning Linked Data Web :-)&lt;/p&gt;

&lt;h3&gt;Related&lt;/h3&gt;
&lt;ul&gt;
&lt;li&gt;
  &lt;a href=&quot;http://virtuoso.openlinksw.com/presentations/Creating_Deploying_Exploiting_Linked_Data2/Creating_Deploying_Exploiting_Linked_Data2_TimBL_v3.html&quot; id=&quot;link-id163a0c88&quot;&gt;Linked Data Planet Keynote&lt;/a&gt; (RDFa based remix edition)&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://semanticbusiness.blogspot.com/2008/09/report-on-cusp-global-review-of.html&quot; id=&quot;link-id11471a40&quot;&gt;On The Cusp: A Global Review of the Semantic Web Industry.&lt;/a&gt;
&lt;/li&gt;
&lt;/ul&gt;</description></item><item><title>Semantic Web Patterns: A Guide to Semantic Technologies (Update 2)</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-03-27#1329</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1329#comments</comments><pubDate>Thu, 27 Mar 2008 00:08:13 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-07-16T21:43:36-04:00</n0:modified><description>
&lt;p&gt;For all the one-way feed consumers and aggregators, and readers of the original post, here is a variant equipped hyperlinked phrases as opposed to words. As I stated in the prior post, the post (like most of my posts) was part experiment / dog-fodding of automatic tagging and hyper-linking functionality in &lt;a href=&quot;http://dbpedia.org/resource/OpenLink_Data_Spaces&quot; id=&quot;link-id0x194f56f0&quot;&gt;OpenLink Data Spaces&lt;/a&gt;. &lt;/p&gt; &lt;p&gt; &lt;a href=&quot;http://www.readwriteweb.com&quot; id=&quot;link-id0x1bddde00&quot;&gt;ReadWriteWeb&lt;/a&gt; via &lt;a href=&quot;http://alexiskold.wordpress.com/&quot; id=&quot;link-id154ae848&quot;&gt;Alex Iskold&amp;#39;s post&lt;/a&gt; have delivered another iteration of their &amp;quot;Guide to Semantic Technologies&amp;quot;. &lt;/p&gt;  &lt;p&gt;If you look at the title of this post (and &lt;a href=&quot;http://feeds.feedburner.com/%7Er/readwriteweb/%7E3/257943334/semantic_web_patterns.php&quot; id=&quot;link-id10a9a900&quot;&gt;their article&lt;/a&gt;) they seem to be accurately providing a guide to Semantic Technologies, so no qualms there. If on the other hand, this is supposed to he a guide to the &amp;quot;&lt;a href=&quot;http://dbpedia.org/resource/Semantic_Web&quot; id=&quot;link-id0x15ccef28&quot;&gt;Semantic Web&lt;/a&gt;&amp;quot; as prescribed by &lt;a href=&quot;http://www.w3.org/People/Berners-Lee/card#i&quot; id=&quot;link-id0xb94a2d40&quot;&gt;TimBL&lt;/a&gt; then they are completely missing the essence of the whole subject, and demonstrably so I may add, since the entities: &amp;quot;&lt;a href=&quot;http://www.readwriteweb.com&quot;&gt;ReadWriteWeb&lt;/a&gt;&amp;quot; and &amp;quot;&lt;a href=&quot;http://www.linkedin.com/in/iskold&quot; id=&quot;link-id0x19960308&quot;&gt;Alex Iskold&lt;/a&gt;&amp;quot; are only describable today via the attributes of the documents they publish i.e their respective blogs and hosted &lt;a href=&quot;http://dbpedia.org/resource/Blog&quot; id=&quot;link-id0x1a719968&quot;&gt;blog&lt;/a&gt; posts.&lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;Preoccupation with Literal objects as describe above, implies we can only take what &amp;quot;ReadWriteWeb&amp;quot; and &amp;quot;&lt;a href=&quot;http://www.linkedin.com/in/iskold&quot;&gt;Alex Iskold&lt;/a&gt;&amp;quot; say &amp;quot;Literally&amp;quot; (&lt;a href=&quot;http://dbpedia/resource/Grep&quot; id=&quot;link-id0xbc8568f8&quot;&gt;grep&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/regular_expression&quot; id=&quot;link-id0x1d915e70&quot;&gt;regex&lt;/a&gt;, and &lt;a href=&quot;http://dbpedia.org/resource/XPath&quot; id=&quot;link-id0xbc617820&quot;&gt;XPath&lt;/a&gt;/&lt;a href=&quot;http://dbpedia.org/resource/XQuery&quot; id=&quot;link-id0x150e1c50&quot;&gt;Xquery&lt;/a&gt; are the only tools for searching deeper in this Literal realm), we have no sense of what makes them tick or where they come from, no history (bar &amp;quot;About Page&amp;quot; blurb), no &lt;a href=&quot;http://dbpedia.org/resource/Data&quot;&gt;data&lt;/a&gt; connections beyond anchored text (more pointers to opaque data sources) in post and blogrolls. The only connection between this post and them is the my deliberate use of the same literal text in the Title of this post.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href=&quot;http://www.w3.org/People/Berners-Lee/card#i&quot;&gt;TimBL&lt;/a&gt;&amp;#39;s vision as espoused via the &amp;quot;&lt;a href=&quot;http://dbpedia.org/resource/Semantic_Web&quot;&gt;Semantic Web&lt;/a&gt;&amp;quot; vision is about the production, consumption, and sharing of Data Objects via HTTP based Identifiers called URIs/IRIs (&lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id0xb867ced0&quot;&gt;Hyperdata&lt;/a&gt; Links / &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id0x3c8f438&quot;&gt;Linked Data&lt;/a&gt;). It&amp;#39;s how we use the &lt;a href=&quot;http://dbpedia.org/resource/World_Wide_Web&quot;&gt;Web&lt;/a&gt; as a &lt;a href=&quot;http://dbpedia.org/resource/federated_database_system&quot; id=&quot;link-id0xbcb04f20&quot;&gt;Distributed Database&lt;/a&gt; where (as &lt;a href=&quot;http://www.cs.umd.edu/~hendler/2003/foaf.rdf#jhendler&quot; id=&quot;link-id0xb8595f18&quot;&gt;Jim Hendler&lt;/a&gt; once stated with immense clarity): I can point to records (&lt;a href=&quot;http://dbpedia.org/resource/Entity&quot; id=&quot;link-id0xbc9c8ab8&quot;&gt;entity&lt;/a&gt; instances) in your database (aka &lt;a href=&quot;http://en.wikipedia.org/wiki/Data_Spaces&quot; id=&quot;link-id0x3b911c0&quot;&gt;Data Space&lt;/a&gt;) from mine. Which is to say that if we can all point to data entities/objects (not just data entities of type &amp;quot;Document&amp;quot;) using these Location, Value, and Structure independent Object Identifiers (courtesy of HTTP) we end up with a much more powerful Web, and one that is closer to the &amp;quot;Federated and Open&amp;quot; nature of the Web.&lt;/p&gt;  &lt;p&gt;As I stated in a prior post, if you or your platform of choice aren&amp;#39;t producing de-referencable URIs for your data objects, you may be Semantic (this data model predates the Web), but there is no &amp;quot;&lt;a href=&quot;http://dbpedia.org/resource/World_Wide_Web&quot; id=&quot;link-id0xbcb968b0&quot;&gt;World Wide Web&lt;/a&gt;&amp;quot; in what you are doing.&lt;/p&gt;  &lt;h2&gt;What are the Benefits of the Semantic Web?&lt;/h2&gt; &lt;ul&gt; &lt;strong&gt;Consumer&lt;/strong&gt; - &amp;quot;Discovery of relevant things&amp;quot; and be being &amp;quot;Discovered by relevant things&amp;quot; (people, places, events, and other things)&lt;/ul&gt; &lt;ul&gt; &lt;strong&gt;Enterprise&lt;/strong&gt; - ditto plus the addition of enterprise domain specific things such as market opportunities, product portfolios, human resources, partners, customers, competitors, co-opetitors, acquisition targets, new regulation  etc..)&lt;/ul&gt;  &lt;h2&gt;Simple demo:&lt;/h2&gt; &lt;blockquote&gt; &lt;p&gt;I am a &lt;a href=&quot;http://myopenlink.net/dataspace/person/kidehen#this&quot; id=&quot;link-id0x150661b0&quot;&gt;Kingsley Idehen&lt;/a&gt;, a Person who authors &lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen&quot; id=&quot;link-id0x3b956d0&quot;&gt;this weblog&lt;/a&gt;. I also share bookmarks gathered over the years across an array of subjects via &lt;a href=&quot;http://myopenlink.net/dataspace/kidehen/bookmark/KingsleyBookmarks&quot; id=&quot;link-id0x164fecb0&quot;&gt;my bookmark data space&lt;/a&gt;. I also subscribe to a number of RSS/Atom/RDF feeds, which I share via my feeds subscription data &lt;a href=&quot;http://en.wikipedia.org/wiki/Data_Spaces&quot;&gt;space&lt;/a&gt;. Of course, all of these data sources have Tags which are collectively exposed via my &lt;a href=&quot;http://myopenlink.net/dataspace/kidehen/weblog/MyBlogDataSpace/tagcloud&quot; id=&quot;link-id0x15188c50&quot;&gt;weblog tag-cloud&lt;/a&gt;, feeds subscriptions &lt;a href=&quot;http://dbpedia.org/resource/Tag&quot; id=&quot;link-id0x5f38b98&quot;&gt;tag&lt;/a&gt;-cloud, and &lt;a href=&quot;http://myopenlink.net/dataspace/kidehen/bookmark/KingsleyBookmarks/tagcloud&quot; id=&quot;link-id0xb93c2a50&quot;&gt;bookmarks tag-cloud&lt;/a&gt; data spaces.&lt;/p&gt;  &lt;p&gt;As I don&amp;#39;t like repeating myself, and I hate wasting my time or the time of others, I simply share &lt;a href=&quot;http://myopenlink.net/dataspace/kidehen&quot; id=&quot;link-id0x3aeba98&quot;&gt;my Data Space&lt;/a&gt; (a collection of all of my purpose specific data spaces) via the Web so that others (friends, family, employees, partners, customers, project collaborators, competitors, co-opetitors etc.) can can intentionally or serendipitously discover relevant data en route to creating new &lt;a href=&quot;http://dbpedia.org/resource/Information&quot; id=&quot;link-id0x14e35d78&quot;&gt;information&lt;/a&gt; (perspectives) that is hopefully exposed others via the Web.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Bottom-line, the Semantic Web is about adding the missing &amp;quot;Open Data Access &amp;amp; Connectivity&amp;quot; feature to the current Document Web (we have to beyond &lt;a href=&quot;http://dbpedia.org/resource/regular_expression&quot;&gt;regex&lt;/a&gt;, &lt;a href=&quot;http://dbpedia/resource/Grep&quot;&gt;grep&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/XPath&quot;&gt;xpath&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/XQuery&quot;&gt;xquery&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/Full_text_search&quot; id=&quot;link-id0x1c1bf9c8&quot;&gt;full text search&lt;/a&gt;, and other literal scrapping approaches). The &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot;&gt;Linked Data&lt;/a&gt; &lt;a href=&quot;http://dbpedia.org/resource/Giant_Global_Graph&quot; id=&quot;link-id0x14c9e0e8&quot;&gt;Web&lt;/a&gt; of de-referencable data object URIs is the critical foundation layer that makes this feasible.&lt;/p&gt; &lt;p&gt; Remember, It&amp;#39;s not about &amp;quot;Applications&amp;quot; it&amp;#39;s about Data and actually freeing Data from the &amp;quot;tyranny of Applications&amp;quot;. Unfortunately, application inadvertently always create silos (esp. on the Web) since &lt;a href=&quot;http://dbpedia.org/resource/Entity&quot;&gt;entity&lt;/a&gt; data modeling, open data access, and other database technology realm matters, remain of secondary interest to many application developers.&lt;/p&gt;  &lt;p&gt;Final comment, RDF facilitates Linked Data on the Web, but all RDF isn&amp;#39;t endowed with de-referencable URIs (a major source of confusion and misunderstanding). Thus, you can have RDF Data Source Providers that simply project RDF data silos via Web Services APIs if RDF output emanating from a Web Service doesn&amp;#39;t provide out-bound pathways to other data via de-referencable URIs. Of course the same also applies to Widgets that present you with all the things they&amp;#39;ve discovered without exposing de-referencable URIs for each item.&lt;/p&gt;  &lt;p&gt;BTW - my final comments above aren&amp;#39;t in anyway incongruent with devising successful business models for the Web. As you may or may not know, OpenLink is not only a major platform provider for the Semantic Web (expressed in our UDA, &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id0xb919b098&quot;&gt;Virtuoso&lt;/a&gt;, OpenLink Data Spaces, and OAT products), we are also actively seeding Semantic Web (tribe: Linked Data of course) startups. For instance, &lt;a href=&quot;http://zitgist.com/about/&quot; id=&quot;link-id0x1481b218&quot;&gt;Zitgist&lt;/a&gt;, which now has &lt;a href=&quot;http://community.linkeddata.org/dataspace/person/mkbergman#this&quot; id=&quot;link-id0xb869bb18&quot;&gt;Mike Bergman&lt;/a&gt; as it&amp;#39;s CEO alongside &lt;a href=&quot;http://fgiasson.com/me/&quot; id=&quot;link-id0x1d18fe50&quot;&gt;Frederick Giasson&lt;/a&gt; as CTO. Of course, I cannot do &lt;a href=&quot;http://zitgist.com/about/&quot;&gt;Zitgist&lt;/a&gt; justice via a footnote in a &lt;a href=&quot;http://dbpedia.org/resource/Blog&quot;&gt;blog&lt;/a&gt; post, so I will expand further in a separate post.&lt;/p&gt;  &lt;h2&gt;Additional &lt;a href=&quot;http://dbpedia.org/resource/Information&quot;&gt;information&lt;/a&gt; about this blog post: &lt;/h2&gt; &lt;ol&gt; &lt;li&gt; I didn&amp;#39;t spent hours looking for URIs used in my hyperlinks&lt;/li&gt; &lt;li&gt; The post is best viewed via an RDF Linked Data aware user agents (&lt;a href=&quot;http://demo.openlinksw.com/rdfbrowser&quot; id=&quot;link-id0x19af3468&quot;&gt;OpenLink RDF Browser&lt;/a&gt;, Zitgist &lt;a href=&quot;http://dataviewer.zitgist.com&quot; id=&quot;link-id0x13b17138&quot;&gt;Data Viewer&lt;/a&gt;, &lt;a href=&quot;http://www4.wiwiss.fu-berlin.de/rdf_browser&quot; id=&quot;link-id0xbc8579e0&quot;&gt;DISCO Hyperdata Browser&lt;/a&gt;, &lt;a href=&quot;http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html&quot; id=&quot;link-id0x18ad0ec8&quot;&gt;Tabulator&lt;/a&gt;).&lt;/li&gt; &lt;/ol&gt;
</description></item><item><title>Semantic Web Patterns: A Guide to Semantic Technologies (Update 1)</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-03-26#1328</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1328#comments</comments><pubDate>Wed, 26 Mar 2008 22:44:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-07-16T21:43:04-04:00</n0:modified><description>
&lt;p&gt; &lt;a href=&quot;http://www.readwriteweb.com&quot; id=&quot;link-id11846528&quot;&gt;ReadWriteWeb&lt;/a&gt; via &lt;a href=&quot;http://alexiskold.wordpress.com/&quot; id=&quot;link-id154ae848&quot;&gt;Alex Iskold&lt;/a&gt; have delivered another iteration of their &amp;quot;Guide to Semantic Technologies&amp;quot;. &lt;/p&gt;  &lt;p&gt;If you look at the title of this post (and &lt;a href=&quot;http://feeds.feedburner.com/%7Er/readwriteweb/%7E3/257943334/semantic_web_patterns.php&quot; id=&quot;link-id10a9a900&quot;&gt;their article&lt;/a&gt;) they seem to be accurately providing a guide to Semantic Technologies, so no qualms there. If on the other hand, this is supposed to he a guide to the &amp;quot;&lt;a href=&quot;http://dbpedia.org/resource/Semantic_Web&quot; id=&quot;link-id0xbcb19320&quot;&gt;Semantic Web&lt;/a&gt;&amp;quot; as prescribed by &lt;a href=&quot;http://www.w3.org/People/Berners-Lee/card#i&quot; id=&quot;link-id0xb8725878&quot;&gt;TimBL&lt;/a&gt; then they are completely missing the essence of the whole subject, and demonstrably so I may add, since the entities: &amp;quot;&lt;a href=&quot;http://www.readwriteweb.com&quot; id=&quot;link-id0x16804040&quot;&gt;ReadWriteWeb&lt;/a&gt;&amp;quot; and &amp;quot;&lt;a href=&quot;http://www.linkedin.com/in/iskold&quot; id=&quot;link-id0x13f08538&quot;&gt;Alex Iskold&lt;/a&gt;&amp;quot; are only describable today via the attributes of the documents they publish i.e their respective blogs and hosted &lt;a href=&quot;http://dbpedia.org/resource/Blog&quot; id=&quot;link-id0x1850ca98&quot;&gt;blog&lt;/a&gt; posts. &lt;/p&gt; &lt;blockquote&gt; &lt;p&gt;Preoccupation with Literal objects as describe above, implies we can only take what &amp;quot;&lt;a href=&quot;http://www.readwriteweb.com&quot;&gt;ReadWriteWeb&lt;/a&gt;&amp;quot; and &amp;quot;&lt;a href=&quot;http://www.linkedin.com/in/iskold&quot;&gt;Alex Iskold&lt;/a&gt;&amp;quot; say &amp;quot;Literally&amp;quot; (&lt;a href=&quot;http://dbpedia/resource/Grep&quot; id=&quot;link-id0xb95a6a40&quot;&gt;grep&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/regular_expression&quot; id=&quot;link-id0x1a719968&quot;&gt;regex&lt;/a&gt;, and &lt;a href=&quot;http://dbpedia.org/resource/XPath&quot; id=&quot;link-id0xb89d78b8&quot;&gt;XPath&lt;/a&gt;/&lt;a href=&quot;http://dbpedia.org/resource/XQuery&quot; id=&quot;link-id0x1bddde00&quot;&gt;Xquery&lt;/a&gt; are the only tools for searching deeper in this Literal realm), we have no sense of what makes them tick or where they come from, no history (bar &amp;quot;About Page&amp;quot; blurb), no &lt;a href=&quot;http://dbpedia.org/resource/Data&quot;&gt;data&lt;/a&gt; connections beyond anchored text (more pointers to opaque data sources) in post and blogrolls. The only connection between this post and them is the my deliberate use of the same literal text in the Title of this post.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;&lt;a href=&quot;http://www.w3.org/People/Berners-Lee/card#i&quot;&gt;TimBL&lt;/a&gt;&amp;#39;s vision as espoused via the &amp;quot;&lt;a href=&quot;http://dbpedia.org/resource/Semantic_Web&quot;&gt;Semantic Web&lt;/a&gt;&amp;quot; vision is about the production, consumption, and sharing of Data Objects via HTTP based Identifiers called URIs/IRIs (&lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id0x150e7be0&quot;&gt;Hyperdata&lt;/a&gt; Links / &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id0x18e50818&quot;&gt;Linked Data&lt;/a&gt;). It&amp;#39;s how we use the &lt;a href=&quot;http://dbpedia.org/resource/World_Wide_Web&quot;&gt;Web&lt;/a&gt; as a &lt;a href=&quot;http://dbpedia.org/resource/federated_database_system&quot; id=&quot;link-id0x194f56f0&quot;&gt;Distributed Database&lt;/a&gt; where (as &lt;a href=&quot;http://www.cs.umd.edu/~hendler/2003/foaf.rdf#jhendler&quot; id=&quot;link-id0x17043b38&quot;&gt;Jim Hendler&lt;/a&gt; once stated with immense clarity): I can point to records (&lt;a href=&quot;http://dbpedia.org/resource/Entity&quot; id=&quot;link-id0x1476f788&quot;&gt;entity&lt;/a&gt; instances) in your database (aka &lt;a href=&quot;http://en.wikipedia.org/wiki/Data_Spaces&quot; id=&quot;link-id0x2621140&quot;&gt;Data Space&lt;/a&gt;) from mine. Which is to say that if we can all point to data entities/objects (not just data entities of type &amp;quot;Document&amp;quot;) using these Location, Value, and Structure independent Object Identifiers (courtesy of HTTP) we end up with a much more powerful Web, and one that is closer to the &amp;quot;Federated and Open&amp;quot; nature of the Web.&lt;/p&gt;  &lt;p&gt;As I stated in a prior post, if you or your platform of choice aren&amp;#39;t producing de-referencable URIs for your data objects, you may be Semantic (this data model predates the Web), but there is no &amp;quot;&lt;a href=&quot;http://dbpedia.org/resource/World_Wide_Web&quot; id=&quot;link-id0xb860eec8&quot;&gt;World Wide Web&lt;/a&gt;&amp;quot; in what you are doing.&lt;/p&gt;  &lt;h2&gt;What are the Benefits of the Semantic Web?&lt;/h2&gt; &lt;ul&gt; &lt;strong&gt;Consumer&lt;/strong&gt; - &amp;quot;Discovery of relevant things&amp;quot; and be being &amp;quot;Discovered by relevant things&amp;quot; (people, places, events, and other things)&lt;/ul&gt; &lt;ul&gt; &lt;strong&gt;Enterprise&lt;/strong&gt; - ditto plus the addition of enterprise domain specific things such as market opportunities, product portfolios, human resources, partners, customers, competitors, co-opetitors, acquisition targets, new regulation  etc..)&lt;/ul&gt;  &lt;h2&gt;Simple demo:&lt;/h2&gt; &lt;blockquote&gt; &lt;p&gt;I am a &lt;a href=&quot;http://myopenlink.net/dataspace/person/kidehen#this&quot; id=&quot;link-id0x15394798&quot;&gt;Kingsley Idehen&lt;/a&gt;, a Person who authors &lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen&quot; id=&quot;link-id0x2556670&quot;&gt;this weblog&lt;/a&gt;. I also share bookmarks gathered over the years across an array of subjects via &lt;a href=&quot;http://myopenlink.net/dataspace/kidehen/bookmark/KingsleyBookmarks&quot; id=&quot;link-id0x142eaa10&quot;&gt;my bookmark data space&lt;/a&gt;. I also subscribe to a number of RSS/Atom/RDF feeds, which I share via my feeds subscription data &lt;a href=&quot;http://en.wikipedia.org/wiki/Data_Spaces&quot;&gt;space&lt;/a&gt;. Of course, all of these data sources have Tags which are collectively exposed via my &lt;a href=&quot;http://myopenlink.net/dataspace/kidehen/weblog/MyBlogDataSpace/tagcloud&quot; id=&quot;link-id0x140b8050&quot;&gt;weblog tag-cloud&lt;/a&gt;, feeds subscriptions &lt;a href=&quot;http://dbpedia.org/resource/Tag&quot; id=&quot;link-id0x15158d60&quot;&gt;tag&lt;/a&gt;-cloud, and &lt;a href=&quot;http://myopenlink.net/dataspace/kidehen/bookmark/KingsleyBookmarks/tagcloud&quot; id=&quot;link-id0xb8652490&quot;&gt;bookmarks tag-cloud&lt;/a&gt; data spaces.&lt;/p&gt;  &lt;p&gt;As I don&amp;#39;t like repeating myself, and I hate wasting my time or the time of others, I simply share &lt;a href=&quot;http://myopenlink.net/dataspace/kidehen&quot; id=&quot;link-id0x13b63208&quot;&gt;my Data Space&lt;/a&gt; (a collection of all of my purpose specific data spaces) via the Web so that others (friends, family, employees, partners, customers, project collaborators, competitors, co-opetitors etc.) can can intentionally or serendipitously discover relevant data en route to creating new &lt;a href=&quot;http://dbpedia.org/resource/Information&quot; id=&quot;link-id0x14365150&quot;&gt;information&lt;/a&gt; (perspectives) that is hopefully exposed others via the Web.&lt;/p&gt; &lt;/blockquote&gt;  &lt;p&gt;Bottom-line, the Semantic Web is about adding the missing &amp;quot;Open Data Access &amp;amp; Connectivity&amp;quot; feature to the current Document Web (we have to beyond &lt;a href=&quot;http://dbpedia.org/resource/regular_expression&quot;&gt;regex&lt;/a&gt;, &lt;a href=&quot;http://dbpedia/resource/Grep&quot;&gt;grep&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/XPath&quot;&gt;xpath&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/XQuery&quot;&gt;xquery&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/Full_text_search&quot; id=&quot;link-id0x15ccef28&quot;&gt;full text search&lt;/a&gt;, and other literal scrapping approaches). The &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot;&gt;Linked Data&lt;/a&gt; &lt;a href=&quot;http://dbpedia.org/resource/Giant_Global_Graph&quot; id=&quot;link-id0x1a2810b8&quot;&gt;Web&lt;/a&gt; of de-referencable data object URIs is the critical foundation layer that makes this feasible.&lt;/p&gt; &lt;p&gt; Remember, It&amp;#39;s not about &amp;quot;Applications&amp;quot; it&amp;#39;s about Data and actually freeing Data from the &amp;quot;tyranny of Applications&amp;quot;. Unfortunately, application inadvertently always create silos (esp. on the Web) since &lt;a href=&quot;http://dbpedia.org/resource/Entity&quot;&gt;entity&lt;/a&gt; data modeling, open data access, and other database technology realm matters, remain of secondary interest to many application developers.&lt;/p&gt;  &lt;p&gt;Final comment, RDF facilitates Linked Data on the Web, but all RDF isn&amp;#39;t endowed with de-referencable URIs (a major source of confusion and misunderstanding). Thus, you can have RDF Data Source Providers that simply project RDF data silos via Web Services APIs if RDF output emanating from a Web Service doesn&amp;#39;t provide out-bound pathways to other data via de-referencable URIs. Of course the same also applies to Widgets that present you with all the things they&amp;#39;ve discovered without exposing de-referencable URIs for each item.&lt;/p&gt;  &lt;p&gt;BTW - my final comments above aren&amp;#39;t in anyway incongruent with devising successful business models for the Web. As you may or may not know, OpenLink is not only a major platform provider for the Semantic Web (expressed in our UDA, &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id0x19e44e80&quot;&gt;Virtuoso&lt;/a&gt;, &lt;a href=&quot;http://dbpedia.org/resource/OpenLink_Data_Spaces&quot; id=&quot;link-id0xb8637720&quot;&gt;OpenLink Data Spaces&lt;/a&gt;, and OAT products), we are also actively seeding Semantic Web (tribe: Linked Data of course) startups. For instance, &lt;a href=&quot;http://zitgist.com/about/&quot; id=&quot;link-id0x397b940&quot;&gt;Zitgist&lt;/a&gt;, which now has &lt;a href=&quot;http://community.linkeddata.org/dataspace/person/mkbergman#this&quot; id=&quot;link-id0x5fabcf0&quot;&gt;Mike Bergman&lt;/a&gt; as it&amp;#39;s CEO alongside &lt;a href=&quot;http://fgiasson.com/me/&quot; id=&quot;link-id0xb84720f8&quot;&gt;Frederick Giasson&lt;/a&gt; as CTO. Of course, I cannot do &lt;a href=&quot;http://zitgist.com/about/&quot;&gt;Zitgist&lt;/a&gt; justice via a footnote in a &lt;a href=&quot;http://dbpedia.org/resource/Blog&quot;&gt;blog&lt;/a&gt; post, so I will expand further in a separate post.&lt;/p&gt;  &lt;h2&gt;Additional &lt;a href=&quot;http://dbpedia.org/resource/Information&quot;&gt;information&lt;/a&gt; about this blog post:&lt;/h2&gt; &lt;ol&gt; &lt;li&gt; I didn&amp;#39;t spent hours looking for URIs used in my hyperlinks &lt;/li&gt; &lt;li&gt; The post is best viewed via an RDF Linked Data aware user agents (&lt;a href=&quot;http://demo.openlinksw.com/rdfbrowser&quot; id=&quot;link-id0x3ac1b68&quot;&gt;OpenLink RDF Browser&lt;/a&gt;, Zitgist &lt;a href=&quot;http://dataviewer.zitgist.com&quot; id=&quot;link-id0x1d8e7ec0&quot;&gt;Data Viewer&lt;/a&gt;, &lt;a href=&quot;http://www4.wiwiss.fu-berlin.de/rdf_browser&quot; id=&quot;link-id0x19af3468&quot;&gt;DISCO Hyperdata Browser&lt;/a&gt;, &lt;a href=&quot;http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html&quot; id=&quot;link-id0x1532e630&quot;&gt;Tabulator&lt;/a&gt;).&lt;/li&gt; &lt;/ol&gt;
</description></item><item><title>Reminder: Why We Need Linked Data!</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-11-02#1267</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1267#comments</comments><pubDate>Fri, 02 Nov 2007 22:50:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-11-02T18:52:34-04:00</n0:modified><description>
&lt;blockquote&gt;
&lt;p&gt;&amp;quot;The phrase Open Social implies portability of personal and social data. That would be exciting but there are entirely different protocols underway to deal with those ideas. As some people have told me tonight, it may have been more accurate to call this &amp;quot;OpenWidget&amp;quot; - though the press wouldn&amp;#39;t have been as good. We&amp;#39;ve been waiting for data and identity portability - is this all we get?&amp;quot; &lt;br /&gt; 
[Source: &lt;a href=&quot;http://blogs.usnet.private:8893/[Excerpted from: http://feeds.feedburner.com/~r/readwriteweb/~3/178622741/opensocial_three_big_concerns.php]&quot; id=&quot;link-id1143a428&quot;&gt;Read/Write Web&amp;#39;s Commentary &amp;amp; Analysis of Google&amp;#39;s OpenSocial API&lt;/a&gt;]&lt;/p&gt;
&lt;/blockquote&gt;
&lt;blockquote&gt;
&lt;p&gt;..Perhaps the world will read the terms of use of the API, and realize this is not an open API; this is a free API, owned and controlled by one company only: Google. Hopefully, the world will remember another time when Google offered a free API and then pulled it. Maybe the world will also take a deeper look and realize that the functionality is dependent on Google hosted technology, which has its own terms of service (including adding ads at the discretion of Google), and that building an OpenSocial application ties Google into your application, and Google into every social networking site that buys into the Dream. Hopefully the world will remember. Unlikely, though, as such memories are typically filtered in the Great Noise....&lt;/p&gt;[Source: &lt;a href=&quot;http://burningbird.net/technology/terms/&quot; id=&quot;link-id116f8c98&quot;&gt;Poignant commentary excerpt from &lt;a href=&quot;http://burningbird.net&quot; id=&quot;link-id11216e98&quot;&gt;Shelly Power&amp;#39;s Blog&lt;/a&gt;&lt;/a&gt; (as always)]&lt;/blockquote&gt;


&lt;p&gt;The &amp;quot;&lt;a href=&quot;http://dbpedia.org/resource/Semantic_Web&quot; id=&quot;link-id1102bc20&quot;&gt;Semantic Data Web&lt;/a&gt;&amp;quot; vision has always been about &amp;quot;Data &amp;amp; Identity&amp;quot; portability across the Web. Its been that and more from day one.&lt;/p&gt;

&lt;p&gt;In a nutshell, we continue to exhibit varying degrees of &lt;a href=&quot;http://dbpedia.org/resource/Cognitive_dissonance&quot; id=&quot;link-id121bb728&quot;&gt;Cognitive Dissonance&lt;/a&gt; re the following realities:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;The &lt;a href=&quot;http://dbpedia.org/resource/Network&quot; id=&quot;link-id114567b0&quot;&gt;Network&lt;/a&gt; is the Computer (Internet/Intranet/Extranet depending on your TCP/IP usage scenarios)&lt;/li&gt;
&lt;li&gt;The Web is the OS (ditto) and it provides a communications subsystem (&lt;a href=&quot;http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s+BLOG+%5B127%5D/1231&quot; id=&quot;link-id1212b390&quot;&gt;Information BUS&lt;/a&gt;) comprised of&lt;/li&gt;
   &lt;ul&gt;- &lt;a href=&quot;http://dbpedia.org/resource/Hypertext_Transfer_Protocol&quot; id=&quot;link-id11b1b760&quot;&gt;HTTP&lt;/a&gt; Protocol&lt;/ul&gt;
   &lt;ul&gt;- &lt;a href=&quot;http://dbpedia.org/resource/Uniform_Resource_Identifier&quot; id=&quot;link-id11043020&quot;&gt;URI&lt;/a&gt;s (pointer system for identifying, accessing, and manipulating data)&lt;/ul&gt;
&lt;li&gt;HTTP based Interprocess (i.e Web Apps are processes when you discard the HTML UI and interact with the application logic containers called &amp;quot;Web Services&amp;quot; behind the pages) ultimately hit data&lt;/li&gt;
&lt;li&gt;Web Data is best Modeled as a Graph (RDF, Containers/Items/Item Types, Property &amp;amp; Value Pairs associated with something, and other labels)&lt;/li&gt;
&lt;li&gt;Network are Graphs and vice versa&lt;/li&gt;
&lt;li&gt;Social Networks are graphs where nodes are connected via social connectors ( [x]--knows--&amp;gt;[y] )
&lt;/li&gt;
&lt;li&gt;The Web is a Graph that exposes a People and Data Network (to the degree we allude to humans not being data containers i.e. just nodes in a network, otherwise we are talking about a Data Network)&lt;/li&gt;
&lt;li&gt;Data access and manipulation depends inherently on canonical Data Access mechanisms such as Data Source Identifiers / Names (time-tested practice in various DBMS realms)&lt;/li&gt;
&lt;li&gt;Data is forever, it is the basis of Information, and it is increasing exponentially due to proliferation of Web Services induced user activities (User Generated Content)&lt;/li&gt;
&lt;li&gt;Survival, Vitality, Longevity, Efficiency, Productivity etc.. are all depend on our ability to process data effectively in a shrinking time continuum where Data and/or Information overload is the alternative.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;
The Data Web is about Presence over Eyeballs due to the following realities:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Eyeballs are input devices for a &lt;a href=&quot;http://dbpedia.org/resource/DNA&quot; id=&quot;link-id118b29a0&quot;&gt;DNA&lt;/a&gt; based processing system (Humans). The aforementioned processing system can reason very well, but simply cannot effectively process masses of data or information&lt;/li&gt;
&lt;li&gt;Widgets offer little value long term re. the imminent data and information overload dilemma, ditto Web pages (however pretty), and any other Eyeballs-only centric Web Apps&lt;/li&gt;
&lt;li&gt;Computers (machines) are equipped with inorganic (non DNA) based processing power, they are equipped to process huge volumes of data and/or information, but they cannot reason&lt;/li&gt;
&lt;li&gt;To be effective in the emerging frontier comprised of a Network Computer and a Web OS, we need an effective mechanism that makes best use of the capabilities possessed by humans and machines, by shifting the focus to creation and interaction with points of &amp;quot;Data Web Presence&amp;quot; that openly expose &amp;quot;&lt;a href=&quot;http://dbpedia.org/resource/Data_structure&quot; id=&quot;link-id10e56458&quot;&gt;Structured Linked Data&lt;/a&gt;&amp;quot;.
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;This is why we need to inject a mesh of Linked Data into the existing Web. This is what the often misunderstood vision of the &amp;quot;Semantic Data Web&amp;quot; or &amp;quot;Web of Data&amp;quot; or &amp;quot;Web or Structured Data&amp;quot; is all about. &lt;/p&gt;

&lt;p&gt;As stated earlier (point 10 above), &amp;quot;Data is forever&amp;quot; and there is only more of it to come! Sociality and associated Social Networking oriented solutions are at best a spec in the Web&amp;#39;s ocean of data once you comprehend this reality.&lt;/p&gt;

&lt;p&gt;Note: I am writing this post as an early implementor of &lt;a href=&quot;http://dbpedia.org/resource/GData&quot; id=&quot;link-id11349808&quot;&gt;GData&lt;/a&gt; and an implementor of &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id120f3a68&quot;&gt;RDF Linked Data&lt;/a&gt; technology and a &amp;quot;Web Purist&amp;quot;. &lt;/p&gt; &lt;blockquote&gt;
&lt;p&gt;OpenSocial implementation and support across our relevant product families: &lt;a href=&quot;http://dbpedia.org/resource/Virtuoso_Universal_Server&quot; id=&quot;link-id1217bf20&quot;&gt;Virtuoso&lt;/a&gt; (i.e the &lt;a href=&quot;http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html&quot; id=&quot;link-id12154258&quot;&gt;Sponger Middleware&lt;/a&gt; for RDF component), &lt;a href=&quot;http://virtuoso.openlinksw.com/wiki/main/Main/Ods&quot; id=&quot;link-id11369930&quot;&gt;OpenLink Data Spaces&lt;/a&gt; (Data Space Controller / Services), and the &lt;a href=&quot;http://oat.openlinksw.com/&quot; id=&quot;link-id113e4da0&quot;&gt;OpenLink Ajaxt Toolkit&lt;/a&gt; (i.e OAT Widgets and Libraries), is a triviality now that the OpenSocial APIs are public. &lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;The concern I have, and the problem that remains mangled in the vast realms of Web Architecture incomprehension, is the fact that GData and GData based APIs cannot deliver Structured Linked Data in line with the essence of the Web without introducing &amp;quot;lock-in&amp;quot; that ultimately compromises the &amp;quot;Open Purity&amp;quot; of the Web. &lt;a href=&quot;http://dbpedia.org/resource/Facebook&quot; id=&quot;link-id11073980&quot;&gt;Facebook&lt;/a&gt; and Google&amp;#39;s &lt;a href=&quot;http://code.google.com/apis/opensocial/docs/&quot; id=&quot;link-id1215e020&quot;&gt;OpenSocial&lt;/a&gt; response to the Facebook juggernaut  (i.e. open variant of the Facebook Activity Dashboard and Social Network functionality realms, primarily), are at best icebergs in the ocean we know as the &amp;quot;World Wide Web&amp;quot;. The nice and predictable thing about icebergs is that they ultimately melt into the larger ocean :-)&lt;/p&gt;

On a related note, I had the pleasure of attending the &lt;a href=&quot;http://www.w3.org/2007/03/RdfRDB/&quot; id=&quot;link-id1106f678&quot;&gt;W3C&amp;#39;s RDF and DBMS Integration Workshop&lt;/a&gt;, last week. The event was well attended by organizations with knowledge, experience, and a vested interested in addressing the issues associated with exposing none RDF data (e.g. SQL) as RDF, and the imminence of data and/or information overload covered in different ways via the following presentations:
&lt;ul&gt;- &lt;a href=&quot;http://virtuoso.openlinksw.com/presentations/RDF_Mapping_Presentation_W3C_workshop3.ppt&quot; id=&quot;link-id11053440&quot;&gt;RDF Views of SQL Data&lt;/a&gt; - &lt;a href=&quot;http://www.openlinksw.com/weblog/oerling&quot; id=&quot;link-id1218bf70&quot;&gt;Orri Erling &lt;/a&gt;on behalf of OpenLink Software&lt;/ul&gt; 
&lt;ul&gt;- &lt;a href=&quot;http://www.michaelbrodie.com/documents/Brodie%20VLDB%202007%20V3.zip&quot; id=&quot;link-id11eda380&quot;&gt;Computer Science 2.0&lt;/a&gt; (covering User Generated Content Explosion) - Michael Brodie&lt;/ul&gt; 
&lt;ul&gt;- &lt;a href=&quot;http://www.w3.org/2007/03/RdfRDB/talks/Finding_our_way.ppt&quot; id=&quot;link-id113b9620&quot;&gt;Experiences re. solving SPARQL Access to Distributed Data Sources&lt;/a&gt; - Phil Ashworth &lt;/ul&gt; 
&lt;ul&gt;- &lt;a href=&quot;http://www.w3.org/2007/03/RdfRDB/program&quot; id=&quot;link-id11265180&quot;&gt;Other presentations&lt;/a&gt;
&lt;/ul&gt;.



</description></item><item><title>Virtuoso 5.0.2 Released!</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-10-06#1265</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1265#comments</comments><pubDate>Sat, 06 Oct 2007 16:03:49 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-10-08T10:27:27-04:00</n0:modified><description>&lt;p&gt;A new release of Virtuoso is now available in both &lt;a href=&quot;http://virtuoso.openlinksw.com/wiki/main/&quot; id=&quot;link-id1282d260&quot;&gt;Open Source&lt;/a&gt; and &lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id1317deb0&quot;&gt;Commercial&lt;/a&gt; variants. The main features and Enhancements associated with this release include:&lt;/p&gt;
&lt;ul&gt;
   * 64-bit Integer Support&lt;/ul&gt;
  &lt;ul&gt; * RDF Sink Folders for WebDAV - enabling RDF Quad Store population by
simply dropping RDF files into WebDAV or via HTTP (meaning you can use CURL as an RDF in put mechanism for instance)&lt;/ul&gt;
   &lt;ul&gt;* Additional Sponger Cartridges from Audio binary files (i.e ID3 tag extraction and Music Ontology mapping which exposes the fine details of music as RDF based Structured Data; one for the DJs &amp;amp; Remixers out there!)&lt;/ul&gt;
   &lt;ul&gt;* New Sponger Cartridges for Facebook, Freebase, Wikipedia, GRDDL, RDFa,
eRDF and more&lt;/ul&gt;
   &lt;ul&gt;* Support for PHP 5.2 runtime hosting (Virtuoso is a bona fide deployment platform for: Wordpress, MediaWiki, phpBB, Drupal etc.)&lt;/ul&gt;
   &lt;ul&gt;* Enhanced UI for managing &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot; id=&quot;link-id12837b20&quot;&gt;RDF Linked Data&lt;/a&gt; deployment (covering Multi Homed domains, Virtual Directories associated with URL-rewrite rules&lt;/ul&gt;
   &lt;ul&gt;* Demonstration Database includes &lt;a href=&quot;http://www.openlinksw.com/virtuoso/Whitepapers/html/rdf_views/virtuoso_rdf_views_example.html&quot; id=&quot;link-id130c2830&quot;&gt;SQL-RDF Views &lt;/a&gt;&amp;amp; SQL Table samples for the
THALIA Web Data Integration benchmark and test-suite&lt;/ul&gt;
   &lt;ul&gt;* Tutorial Application includes Linked Data style SQL-RDF Views for the
Northwind SQL DBMS schema (which is the same as the standard Virtuoso demo
atabase schema)&lt;/ul&gt;
   &lt;ul&gt;* SQL-RDF Views implementation of the TPC-D benchmark (Yes, we can run this grueling SQL benchmark via RDF views of SQL Data!)&lt;/ul&gt;
   &lt;ul&gt;* A new Amazon EC2 Image for Virtuoso that enables you to instantiate a fully configured instance comprising the Virtuoso core,&lt;a href=&quot;http://virtuoso.openlinksw.com/wiki/main/Main/OdsIndex&quot; id=&quot;link-id126c5eb8&quot;&gt; OpenLink Data Spaces&lt;/a&gt; platform  and the &lt;a href=&quot;http://sourceforge.net/projects/oat&quot; id=&quot;link-id1341cb68&quot;&gt;OpenLink Ajax Toolkit&lt;/a&gt; (OAT) (we now have bona fide Data Spaces in the Clouds as an addition to the emerging Semantic Data Web mesh).&lt;/ul&gt;

&lt;p&gt;Download Lnks: &lt;/p&gt;
&lt;ul&gt;* &lt;a href=&quot;http://virtuoso.openlinksw.com/wiki/main/Main/VOSDownload&quot; id=&quot;link-id12745128&quot;&gt;Open Source Edition&lt;/a&gt;
&lt;/ul&gt;
&lt;ul&gt;* &lt;a href=&quot;http://download.openlinksw.com/download/product_matrix.vsp?p=f_os&amp;fm=26&amp;fam=2&amp;df=16&quot; id=&quot;link-id12f15ed0&quot;&gt;Commercial Edition&lt;/a&gt;
&lt;/ul&gt;</description></item><item><title>Fourth Platform: Data Spaces in The Cloud (Update)</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-09-22#1261</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1261#comments</comments><pubDate>Sat, 22 Sep 2007 23:43:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-10-26T17:59:33-04:00</n0:modified><description>
&lt;p&gt;I&amp;#39;ve written extensively on the subject of &lt;a href=&quot;http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&amp;amp;q=data%20spaces&amp;amp;type=text&amp;amp;output=html&quot; id=&quot;link-id134c2280&quot;&gt;Data Spaces&lt;/a&gt; in relation to the &lt;a href=&quot;http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&amp;amp;q=data%20web%0D%0A&amp;amp;type=text&amp;amp;output=html&quot; id=&quot;link-id105aef90&quot;&gt;Data Web&lt;/a&gt; for while. I&amp;#39;ve also written sparingly about &lt;a href=&quot;http://virtuoso.openlinksw.com/wiki/main/Main/OdsIndex&quot; id=&quot;link-id105bd100&quot;&gt;OpenLink Data Spaces&lt;/a&gt; (a Data Web Platform that build using Virtuoso). On the other hand, I haven&amp;#39;t shed much light on installation and deployment of OpenLink Data Spaces.&lt;/p&gt; &lt;p&gt; &lt;a href=&quot;http://blog.jonudell.net&quot; id=&quot;link-id14347f20&quot;&gt;Jon Udell&lt;/a&gt; recently penned a post titled: &lt;a href=&quot;http://blog.jonudell.net/2007/09/21/the-fourth-platform/&quot; id=&quot;link-id1439ed48&quot;&gt;The Fourth Platform&lt;/a&gt;. The post arrives at a spookily coincidental time (this happens quite often between Jon and I as demonstrated last year during our &lt;a href=&quot;http://weblog.infoworld.com/udell/gems/ju_idehen.mp3&quot; id=&quot;link-id107d17a8&quot;&gt;podcast&lt;/a&gt;; the &amp;quot;Fourth&amp;quot; in his Innovators Podcast series).&lt;/p&gt; &lt;p&gt;The platform that Jon describes is &amp;quot;Cloud Based&amp;quot; and comprised of Storage and Computation. I would like to add Data Access and Management (native and virtual) under the fourth platform banner with the end product called: &amp;quot;Cloud based Data Spaces&amp;quot;. &lt;/p&gt; &lt;p&gt;As I write, we are releasing a Virtuoso AMI (Amazon Image) labeled: virtuoso-dataspace-server. This edition of&lt;a href=&quot;http://virtuoso.openlinksw.com&quot; id=&quot;link-id13543210&quot;&gt; Virtuoso&lt;/a&gt; includes the OpenLink Data Spaces Layer and all of the OAT applications we&amp;#39;ve been developing for a while.&lt;/p&gt; &lt;h2&gt;What Benefits Does this offer?&lt;/h2&gt; &lt;ol&gt; &lt;li&gt;Personal Data Spaces in the Cloud - a place where you can control and consolidate data across your Blogs, Wikis, RSS/Atom Feed Subscriptions, Shared Bookmarks, Shared Calendars, Discussion Threads, Photo Galleries etc&lt;/li&gt; &lt;li&gt;All the data in your Data &lt;a href=&quot;http://en.wikipedia.org/wiki/Data_Spaces&quot;&gt;Space&lt;/a&gt; is &lt;a href=&quot;http://dbpedia.org/resource/SPARQL&quot; id=&quot;link-id1149a4f8&quot;&gt;SPARQL&lt;/a&gt; or &lt;a href=&quot;http://dbpedia.org/resource/GData&quot; id=&quot;link-id107a9f28&quot;&gt;GData&lt;/a&gt; accessible.&lt;/li&gt; &lt;li&gt;All of the data in your Personal Data Space is &lt;a href=&quot;http://dbpedia.org/resource/Linked_Data&quot;&gt;Linked Data&lt;/a&gt; from the get go. Each Item of data is &lt;a href=&quot;http://dbpedia.org/resource/Uniform_Resource_Identifier&quot;&gt;URI&lt;/a&gt; addressable&lt;/li&gt; &lt;li&gt; &lt;a href=&quot;http://dbpedia.org/resource/SIOC&quot; id=&quot;link-id104f4160&quot;&gt;SIOC&lt;/a&gt; support - your Blogs, Wikis, Bookmarks etc.. are based on the SIOC ontology for Semantically Interlinking Online Communities (think: Open social-graph++) &lt;/li&gt; &lt;li&gt; &lt;a href=&quot;http://dbpedia.org/resource/Friend_of_a_friend&quot; id=&quot;link-id105beb78&quot;&gt;FOAF&lt;/a&gt; support - your FOAF Profile page provides a URI that is an in-road to all Data in your Data Space.&lt;/li&gt; &lt;li&gt; &lt;a href=&quot;http://dbpedia.org/resource/OpenID&quot; id=&quot;link-id1144e138&quot;&gt;OpenID&lt;/a&gt; support - your Personal Data Space ID is usable wherever OpenID is supported. OpenID and FOAF are integrated as per latest FOAF specs&lt;/li&gt; &lt;li&gt;Two Integration with Facebook - You can access your Data Space from Facebook or access Facebook from your Data Space&lt;/li&gt; &lt;li&gt;Unified Storage - The WebDAV based filesystem provides Cloud Storage that&amp;#39;s integrated with Amazon S3; It also exposes all of your Data Space data via a traditional filesystem UI (think virtual Spotlight); You can also mount this drive to your local filesystem via your native operating system&amp;#39;s WebDAV support&lt;/li&gt; &lt;li&gt; &lt;a href=&quot;http://dbpedia.org/resource/SyncML&quot; id=&quot;link-id11128f48&quot;&gt;SyncML&lt;/a&gt; - you can sync calendar and contact details with your Data Space in the cloud from your Mobile phone.&lt;/li&gt; &lt;li&gt;A practical Semantic Data Web solution - based on Web Infrastructure and doesn&amp;#39;t require you to do anything beyond exposing URIs for data in your Data Spaces.&lt;/li&gt; &lt;/ol&gt; &lt;h2&gt; &lt;a href=&quot;http://dbpedia.org/resource/Amazon_Elastic_Compute_Cloud&quot; id=&quot;link-id115d1920&quot;&gt;EC2&lt;/a&gt;-AMI Details:&lt;/h2&gt; &lt;ul&gt;AMI ID: ami-e2ca2f8b&lt;/ul&gt; &lt;ul&gt;Manifest file: virtuoso-images/virtuoso-dataspace-server.manifest.xml&lt;/ul&gt; &lt;h2&gt;Installation Guide:&lt;/h2&gt; &lt;ol&gt; &lt;li&gt;Get an Amazon Web Services (AWS) account&lt;/li&gt; &lt;li&gt;Signup for S3 and EC2 services&lt;/li&gt; &lt;li&gt;Install the EC2 plugin for Firefox&lt;/li&gt; &lt;li&gt;Start the EC2 plugin&lt;/li&gt; &lt;li&gt;Locate the row containingÂ &lt;b&gt;ami-7c31d515Â Â ManifestÂ virtuoso-test/virtuoso-cloud-beta-9-i386.manifest.xmlÂ &lt;/b&gt;(sort using the AMI ID or Manifest Columns or search on pattern: virtuoso, due to name flux)&lt;/li&gt; &lt;li&gt;Start the Virtuoso Data Space Server AMI&lt;/li&gt; &lt;li&gt;Wait 4-5 minutes (*take a few minutes to create the pre-configured Linux Image*)&lt;/li&gt; &lt;li&gt;Connect to http://&lt;public_dns_name_of_your_instance&gt;http://your-ec2-instance-cname:8890/ Log in with user/password dba/dba&lt;/public_dns_name_of_your_instance&gt; &lt;/li&gt; &lt;li&gt;Go to the Admin UI (Virtuoso Conductor) and change the PWDs for the &amp;#39;dba&amp;#39; and &amp;#39;dav&amp;#39; accounts (*Important!*)&lt;/li&gt; &lt;li&gt;Give the &amp;quot;SPARQL&amp;quot; user &amp;quot;SPARQL_UPDATE&amp;quot; privileges (required if you want to exploit the in-built Sponger Middleware)&lt;/li&gt; &lt;li&gt;Click on the &lt;a href=&quot;http://dbpedia.org/resource/OpenLink_Data_Spaces&quot;&gt;ODS&lt;/a&gt; (OpenLink Data Spaces) link to start an Personal Editon of OpenLink Data Spaces (or go to: http://your-ec2-instance-cname/dataspace/ods/index.html)&lt;/li&gt; &lt;li&gt;Log-in using the username and password credentials for the &amp;#39;dav&amp;#39; account (or register a new user note: OpenID is an option here also) Create an Data Space Application Instance by clicking on a Data Space App. Tab&lt;/li&gt; &lt;li&gt;Import data from your existing Web 2.0 style applications into OpenLink Data Spaces e.g. subscribe to a few RSS/Atom feeds via the &amp;quot;Feeds Manager&amp;quot; application or import some Bookmarks using the &amp;quot;Bookmarks&amp;quot; application&lt;/li&gt; &lt;li&gt;Then look at the imported data in Linked Data form via your ODS generated URIs based on the patterns: http://your-ec2-instance-cname/dataspace/person/your-ods-id#this (URI for You the Person), http://your-ec2-instance-cname/dataspace/person/your-ods-id (FOAF File URI), http://your-ec2-instance-cname/dataspace/your-ods-id (SIOC File URI)&lt;br /&gt; &lt;/li&gt; &lt;/ol&gt; &lt;h2&gt; (OAT) from your Data Space instance&lt;/h2&gt;Install the OAT VAD package via the Admin UI and then apply the URI patterns below within your browser:&lt;br /&gt; &lt;ol&gt; &lt;li&gt;http://&lt;public_dns_name_of_your_instance&gt;:8890/oatdemo - Entire OAT Demo Collection&lt;/public_dns_name_of_your_instance&gt; &lt;/li&gt; &lt;li&gt;http://&lt;public_dns_name_of_your_instance&gt;:8890/rdfbrowser - RDF Browser&lt;/public_dns_name_of_your_instance&gt; &lt;/li&gt; &lt;li&gt;http://&lt;public_dns_name_of_your_instance&gt;:8890/isparql - SPARQL Query Builder (iSPARQL)&lt;/public_dns_name_of_your_instance&gt; &lt;/li&gt; &lt;li&gt;http://&lt;public_dns_name_of_your_instance&gt;:8890/qbe - SQL Query Builder (iSQL)&lt;/public_dns_name_of_your_instance&gt; &lt;/li&gt; &lt;li&gt;http://&lt;public_dns_name_of_your_instance&gt;:8890/formdesigner - Forms Builder (for building Meshups based on RDF, SQL, or Web Servives Data Souces)&lt;/public_dns_name_of_your_instance&gt; &lt;/li&gt; &lt;li&gt;http://&lt;public_dns_name_of_your_instance&gt;:8890/dbdesigner - SQL DB Schema Designer (note a Visual SQL-RDF Mapper is also on it&amp;#39;s way&lt;/public_dns_name_of_your_instance&gt; &lt;/li&gt; &lt;li&gt;http://&lt;public_dns_name_of_your_instance&gt;:8890/DAV/JS/ - To view the OAT Tree (there are some experimental demos that are missing from the main demo app etc..) &lt;/public_dns_name_of_your_instance&gt; &lt;/li&gt; &lt;/ol&gt; &lt;p&gt;There&amp;#39;s more to come!&lt;/p&gt;

</description></item><item><title>Yet Another RDFa Demo</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-09-03#1249</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1249#comments</comments><pubDate>Mon, 03 Sep 2007 17:59:02 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-02-04T20:44:37.000009-05:00</n0:modified><description>&lt;p&gt;
&lt;a href=&quot;http://www.ivan-herman.net/Ivan_Herman&quot;&gt;Ivan Herman&lt;/a&gt; just posted another nice example of practical &lt;a href=&quot;http://dbpedia.org/resource/RDFa&quot;&gt;RDFa&lt;/a&gt; usage in a blog post titled: &lt;a href=&quot;http://ivanherman.wordpress.com/2007/09/03/yet-another-rdfa-processor…/&quot;&gt;Yet Another RDFa Proccessor&lt;/a&gt;. In his post, Ivan exposes a &lt;a href=&quot;http://dbpedia.org/resource/Uniform_Resource_Identifier&quot;&gt;URI&lt;/a&gt; for his&lt;a href=&quot;http://www.ivan-herman.net/foaf.html&quot;&gt; FOAF-in-RDFa file&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Since I am &lt;a href=&quot;http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1243&quot;&gt;aggressively tracking RDFa developments&lt;/a&gt;, I decided to quickly view &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/ivan_herman_foaf_via_rdfa.wqx&quot;&gt;Ivan&amp;#39;s FOAF-in-RDFa file via the OpenLink RDF Browser&lt;/a&gt;. The full implications are best understood when you click on each of the Browser&amp;#39;s Tabs -- each providing a different perspective on this interesting addition to the Semantic Data Web (note: the &lt;a href=&quot;http://www.w3.org/2005/04/fresnel-info/&quot;&gt;Fresnel&lt;/a&gt; Tab which demonstrates declarative UI templating using N3).&lt;/p&gt;

&lt;h3&gt;What&amp;#39;s Going on Here?&lt;/h3&gt;
&lt;p&gt;The &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html&quot;&gt;OpenLink RDF Browser&lt;/a&gt; is a &lt;a href=&quot;http://en.wikipedia.org/wiki/Rich_internet_application&quot;&gt;Rich Internet Application&lt;/a&gt; built using OAT (&lt;a href=&quot;http://oat.openlinksw.com&quot;&gt;OpenLink Ajax Toolkit&lt;/a&gt;). In my case, I am deploying the RDF Browser from a &lt;a href=&quot;http://virtuoso.openlinksw.com&quot;&gt;Virtuoso&lt;/a&gt; instance, which implies that the Browser is able to use the &lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/?id=1172&quot;&gt;Virtuoso Sponger&lt;/a&gt; Middleware (exposed as a REST Service at the Virtuoso instance endpoint: /proxy); which includes an RDFa Cartridge comprised of a metadata extractor and an &lt;a href=&quot;http://dbpedia.org/resource/RDF_Schema&quot;&gt;RDF Schema&lt;/a&gt; / &lt;a href=&quot;http://dbpedia.org/resource/Web_Ontology_Language&quot;&gt;OWL Ontology&lt;/a&gt; mapper. That&amp;#39;s it!&lt;/p&gt;</description></item><item><title>The Power of Structured Data Exposure via RDFa</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-08-23#1243</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1243#comments</comments><pubDate>Thu, 23 Aug 2007 22:41:36 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-02-04T20:45:02.000004-05:00</n0:modified><description>I regularly check announcement from &lt;a href=&quot;http://ben.adida.net/&quot;&gt;Ben Adida&lt;/a&gt; re. &lt;a href=&quot;http://dbpedia.org/page/RDFa&quot;&gt;RDFa&lt;/a&gt; as part of a perpetual certification process for my ODS based Weblog. The most recent post from Ben contains a link to an &amp;quot;&lt;a href=&quot;http://rdfa.info/rdfa-in-the-wild/&quot;&gt;RDFa in the Wild&lt;/a&gt;&amp;quot; portal (in the making).&lt;br /&gt;
&lt;br /&gt;One I installed Opertaor 0.8 and then scanned a few of the pages from the RDFa portal. &lt;a href=&quot;http://www.kaply.com/operator/operator.xpi&quot;&gt;Operator 0.8&lt;/a&gt; didn&amp;#39;t do much for me i.e. if the RDFa didn&amp;#39;t express RDF aligned in some form to a microformat that it understood, it simply routed it&amp;#39;s findings to a generic &amp;quot;resource&amp;quot; category :-( Of course, it is possible to enhance this aspect of Operator (and I may get round to that some day). Anyway, I pressed on, and took one of the more interesting URIs from the RDFa page and pasted that into the OpenLink RDF Browser instead. Here are the links:&lt;br /&gt;
&lt;br /&gt;1. &lt;a href=&quot;http://seal.ifi.unizh.ch/%7Emhermann/pax/web/index.php/publication/rdfalist%20&quot;&gt;Semantically annotated publication database using Ajax&lt;/a&gt; (a page containing structured data expressed in RDF and exposed via RDFa)&lt;br /&gt;
&lt;br /&gt;2. &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html?uri=http%3A%2F%2Fseal.ifi.unizh.ch%2F%7Emhermann%2Fpax%2Fweb%2Findex.php%2Fpublication%2Frdfalist&quot;&gt;Same Page via OpenLink RDF Browser&lt;br /&gt;
&lt;/a&gt;
&lt;br /&gt;The RDF Browser uses the &lt;a href=&quot;http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&amp;q=sponger&amp;type=text&amp;output=html&quot;&gt;Virtuoso Sponger&lt;/a&gt; to extract the embedded &lt;a href=&quot;http://dbpedia.org/page/RDF&quot;&gt;RDF&lt;/a&gt; from RDFa embedded in the page.</description></item><item><title>OpenLink Ajax Toolkit (OAT) 2.6 Released!</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-08-01#1238</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1238#comments</comments><pubDate>Wed, 01 Aug 2007 18:34:07 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-08-01T14:49:17-04:00</n0:modified><description>&lt;p&gt;
&lt;a href=&quot;http://www.openlinksw.com&quot;&gt;OpenLink Software&lt;/a&gt; are pleased to announce release 2.6 of the &lt;a href=&quot;http://oat.openlinksw.com&quot;&gt;OpenLink AJAX
Toolkit&lt;/a&gt; (OAT).&lt;/p&gt;
&lt;p&gt;
New Semantic Data Web related features and enhancements include:&lt;/p&gt;
&lt;ul&gt;
* A Javascript-based &lt;a href=&quot;http://www.w3.org/2005/04/fresnel-info/&quot;&gt;Fresnel&lt;/a&gt; processor enabling declarative RDF-based display templates for RDF Data Sources&lt;/ul&gt;  
&lt;ul&gt;* An XSLT template for generating HTML pages from the Fresnel processor&amp;#39;s
XML output&lt;/ul&gt;
&lt;ul&gt;* &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/isparql/index.html&quot;&gt;Interactive Query Builder for SPARQL&lt;/a&gt; (iSPARQL). This version of the
iSPARQL application includes support for INSERTs and DELETEs&lt;/ul&gt;
&lt;ul&gt;* Enhanced Javascript-based N3/Turtle parser&lt;/ul&gt;
&lt;ul&gt;* New Navigator viewer panel for &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html&quot;&gt;RDF Browser&lt;/a&gt;.&lt;/ul&gt;

Related Items:

&lt;ul&gt;*&lt;a href=&quot;http://sourceforge.net/projects/oat&quot;&gt;Project Home Page&lt;/a&gt;
&lt;/ul&gt;

&lt;ul&gt;*&lt;a href=&quot;http://sourceforge.net/projects/oat/files&quot;&gt;Source Code&lt;/a&gt;
&lt;/ul&gt;

&lt;ul&gt;*&lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/demo/index.html&quot;&gt;Live Features Demonstrations&lt;/a&gt;.&lt;/ul&gt;
</description></item><item><title>Virtuoso Sponger &amp; RDFa</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-07-25#1236</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1236#comments</comments><pubDate>Wed, 25 Jul 2007 11:15:14 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-07-25T07:03:46-04:00</n0:modified><description>&lt;p&gt;Triggered by &lt;a href=&quot;http://ivanherman.wordpress.com/2007/07/22/yet-another-rdfa-converter/&quot;&gt;Ivan&amp;#39;s Herman&amp;#39;s post about Triplr &lt;/a&gt;and &lt;a href=&quot;http://www.w3.org/TR/xhtml-rdfa-primer/&quot;&gt;RDFa&lt;/a&gt;, I quickly took the &lt;a href=&quot;http://rdfa.info/&quot;&gt;RDFa Info page URI&lt;/a&gt; from his post and pasted it into the &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html&quot;&gt;OpenLink RDF Browser&lt;/a&gt;. As expected, I received &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/RDFa_Tracker.wqx&quot;&gt;RDF Triples from the RDFa Data Source&lt;/a&gt;. &lt;/p&gt;
&lt;p&gt;Note:This all happens because the &lt;a href=&quot;http://sourceforge.net/projects/oat&quot;&gt;OAT&lt;/a&gt; based RDF Browser simply makes a call to the &lt;a href=&quot;http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s+BLOG+%5B127%5D/1172&quot;&gt;Virtuoso Sponger&lt;/a&gt;&amp;#39;s REST service which is exposed at the endpoint &amp;quot;/proxy&amp;quot; (note: this is standard with all Virtuoso Installations).&lt;/p&gt;</description></item><item><title>Exploring a Music Data Space via Linked Data </title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-05-25#1204</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1204#comments</comments><pubDate>Fri, 25 May 2007 22:57:32 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-02-04T23:20:47.000003-05:00</n0:modified><description>&lt;p&gt;
&lt;a href=&quot;http://fgiasson.com/&quot;&gt;Frederick Giasson&lt;/a&gt; has put out a number of interesting posts (via his &lt;a href=&quot;http://fgiasson.com/blog/&quot;&gt;blog&lt;/a&gt;) about a conceptual &lt;a href=&quot;http://fgiasson.com/blog/index.php/2007/05/24/the-music-data-space&quot;&gt;Music Data Space&lt;/a&gt; (one of many Data Spaces that will ultimately permeate the Semantic Data Web). Anyway, While reading his initial post covering &lt;a href=&quot;http://fgiasson.com/blog/index.php/2007/05/22/browsing-musicbrainzs-dataset-via-uri-dereferencing&quot;&gt;Music Domain URIs and Linked Data&lt;/a&gt;, it occurred to me that by only exposing the raw RDF instance data (RDF/XML format in this case) via URIs for: Diana Ross, Paul McCartney, The Beatles, and Madonna, the essence of the post may not be revealed to all, so I&amp;#39;ve knocked up a few demos to illustrate the core message:&lt;/p&gt;

&lt;p&gt;
&lt;b&gt;Note&lt;/b&gt;: the enhanced hyperlink (typed data link) lookup presents options to perform an Explore (all data about subject across Domains in the data space i.e. data links to and from Subject), Dereference (specific data in the Subject&amp;#39;s Domain i.e. data links originating from subject).&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://dbpedia.openlinksw.com:8890/DAV/home/demo/dataweb/linked_data_pages/Diana_Ross.isparql&quot;&gt;Diana Ross&lt;/a&gt;
&lt;/li&gt;
 &lt;li&gt;
  &lt;a href=&quot;http://dbpedia.openlinksw.com:8890/DAV/home/demo/dataweb/linked_data_pages/Paul_McCartney.isparql&quot;&gt;Paul McCartney&lt;/a&gt;
 &lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://dbpedia.openlinksw.com:8890/DAV/home/demo/dataweb/linked_data_pages/The_Beatles.isparql&quot;&gt;The Beatles&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://dbpedia.openlinksw.com:8890/DAV/home/demo/dataweb/linked_data_pages/Madonna.isparql&quot;&gt;Madonna&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I built these Linked Data Pages by simply doing the following:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Open up our &lt;a href=&quot;http://oat.openlinksw.com&quot;&gt;OAT&lt;/a&gt; based &lt;a href=&quot;http://dbpedia.openlinksw.com:8890/isparql&quot;&gt;iSPARQL (Interactive SPARQL Query By Example)&lt;/a&gt; Tool&lt;/li&gt;
&lt;li&gt;Paste a URI of Interest into the Data Source URI input field&lt;/li&gt;
&lt;li&gt;Execute the Query (hitting the &amp;quot;&amp;gt;&amp;quot; button)
&lt;/li&gt;
&lt;li&gt;Saving the Query to WebDAV as a Linked Data Page (or what I initial called Dynamic Data Web pages in my Hello Data Web series of posts).&lt;/li&gt;
&lt;li&gt;Share your Data, Information, Knowledge with others via URIs (as shown in the section above).
&lt;/li&gt;
&lt;/ol&gt;

</description></item><item><title>Semantic Web Data Spaces</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-04-13#1185</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1185#comments</comments><pubDate>Fri, 13 Apr 2007 21:15:54 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-04-13T18:19:29.000001-04:00</n0:modified><description>&lt;b&gt;Web Data Spaces&lt;/b&gt;
&lt;p&gt;Now that broader understanding of the Semantic Data Web is emerging, I would like to revisit the issue of &amp;quot;&lt;a href=&quot;http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&amp;q=&#39;data%20spaces&#39;&amp;type=text&amp;output=html&quot;&gt;Data Spaces&lt;/a&gt;&amp;quot;.&lt;/p&gt;
&lt;p&gt;A Data Space is a place where Data Resides. It isn&amp;#39;t inherently bound to a specific Data Model (&lt;a href=&quot;http://en.wikipedia.org/wiki/Network_model&quot;&gt;Concept Oriented&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/Relational_model&quot;&gt;Relational&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/Hierarchical_database&quot;&gt;Hierarchical&lt;/a&gt; etc..). Neither is it implicitly an access point to Data, Information, or Knowledge (the perception is purely determined through the experiences of the user agents interacting with the Data Space.&lt;/p&gt;
&lt;p&gt;A Web Data Space is a Web accessible Data Space.&lt;/p&gt;
&lt;p&gt;Real world example:&lt;/p&gt;
&lt;p&gt;Today we increasing perform one of more of the following tasks as part of our professional and personal interactions on the Web:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Blog via many service providers or personally managed weblog platforms&lt;/li&gt;
&lt;li&gt;Create Event Calendars via &lt;a href=&quot;http://upcoming.com&quot;&gt;Upcoming.com&lt;/a&gt; and &lt;a href=&quot;http://eventful.com&quot;&gt;Eventful&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Maintain and participate in Social Networks (e.g. &lt;a href=&quot;http://facebook.com&quot;&gt;Facebook&lt;/a&gt;, &lt;a href=&quot;http://orkut.com&quot;&gt;Orkut&lt;/a&gt;, &lt;a href=&quot;http://myspace.com&quot;&gt;MySpace&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;Create and Participate in Discussions (note: when you comment on blogs or wikis for instance, you are participating in, or creating, a conversation)&lt;/li&gt;
&lt;li&gt;Track news by subscribing to &lt;a href=&quot;http://web.resource.org/rss/1.0/&quot;&gt;RSS 1.0&lt;/a&gt;, &lt;a href=&quot;http://cyber.law.harvard.edu/rss/rss.html&quot;&gt;RSS 2.0&lt;/a&gt;, or &lt;a href=&quot;http://en.wikipedia.org/wiki/Atom_(standard)&quot;&gt;Atom&lt;/a&gt; Feeds&lt;/li&gt;
&lt;li&gt;Share Bookmarks &amp;amp; Tags via &lt;a href=&quot;http://del.icio.us&quot;&gt;Del.icio.us&lt;/a&gt; and other Services&lt;/li&gt;
&lt;li&gt;Share Photos via &lt;a href=&quot;http://flickr.com&quot;&gt;Flickr&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Buy, Review, or Search for books via &lt;a href=&quot;http://amazon.com&quot;&gt;Amazon&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Participates in auctions via &lt;a href=&quot;http://ebay.com&quot;&gt;eBay&lt;/a&gt; &lt;/li&gt;
&lt;li&gt;Search for data via &lt;a href=&quot;http://google.com&quot;&gt;Google&lt;/a&gt; (of course!)&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;
&lt;a href=&quot;http://www.johnbreslin.com/&quot;&gt;John Breslin&lt;/a&gt; has nice a &lt;a href=&quot;http://www.johnbreslin.com/blog/wp-content/20051015a.gif&quot;&gt;animation depicting the creation of Web Data Spaces&lt;/a&gt; that drives home the point.&lt;/p&gt;
&lt;b&gt;Web Data Space Silos&lt;/b&gt;
&lt;p&gt;
Unfortunately, what isn&amp;#39;t as obvious to many netizens, is the fact that each of the activities above results in the creation of data that is put into some context by you the user. Even worse, you eventually realize that the service providers aren&amp;#39;t particularly willing, or capable of,  giving you unfettered access to your own data. Of course, this isn&amp;#39;t always by design as the infrastructure behind the service can make this a nightmare from security and/or load balancing perspectives. Irrespective of cause, we end up creating our own &amp;quot;Data Spaces&amp;quot; all over the Web without a coherent mechanism for accessing and meshing these &amp;quot;Data Spaces&amp;quot;.&lt;/p&gt;
&lt;b&gt;What are Semantic Web Data Spaces?&lt;/b&gt;
&lt;p&gt;Data Spaces on the Web that provide granular access to RDF Data.&lt;/p&gt;
&lt;b&gt;What&amp;#39;s OpenLink Data Spaces (ODS) About?&lt;/b&gt;
&lt;blockquote&gt;
&lt;p&gt;Short History&lt;/p&gt;
&lt;p&gt;In anticipation of this the &amp;quot;Web Data Silo&amp;quot; challenge (an issue that we tackled within internal enterprise networks for years) we commenced the development (circa. 2001) of a distributed collaborative application suite called OpenLink Data Spaces (ODS). The project was never released to the public since the problems associated with the deliberate or inadvertent creation of Web Data silos hadn&amp;#39;t really materialized (silos only emerged  in concreted form after the emergence of the Blogosphere and Web 2.0). In addition, there wasn&amp;#39;t a clear standard Query Language for the RDF based Web Data Model (i.e. the SPARQL Query Language didn&amp;#39;t exist).&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;
Today, ODS is delivered as a packaged solution (in Open Source and Commercial flavors) that alleviates the pain associated with Data Space Silos that exist on the Web and/or behind corporate firewalls. In either scenario, ODS simply allows you to create Open and Secure Data Spaces (via it&amp;#39;s suite of applications) that expose data via SQL, RDF, XML oriented data access and data management technologies. Of course it also enables you to integrates transparently with existing 3rd party data space generators (Blogs, Wikis, Shared Bookmrks, Discussion etc. services) by supporting industry standards that cover:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
Content Publishing - Atom, &lt;a href=&quot;http://www.sixapart.com/developers/product_documentation/movable_type/&quot;&gt;Moveable Type&lt;/a&gt;, &lt;a href=&quot;http://www.xmlrpc.com/metaWeblogApi&quot;&gt;MetaWeblog&lt;/a&gt;, Blogger protocols
&lt;/li&gt;
&lt;li&gt;
Content Syndication Formats - RSS 1.0, RSS 2.0, Atom, OPML etc.
&lt;/li&gt;
&lt;li&gt;
Data Management - &lt;a href=&quot;http://en.wikipedia.org/wiki/SQL&quot;&gt;SQL&lt;/a&gt;, &lt;a href=&quot;http://www.w3.org/RDF/&quot;&gt;RDF&lt;/a&gt;, XML, Free Text
&lt;/li&gt;
&lt;li&gt;
Data Access - SQL, &lt;a href=&quot;http://www.w3.org/TR/rdf-sparql-query/&quot;&gt;SPARQL&lt;/a&gt;, GData, Web Services (SOAP or REST styles), WebDAV/HTTP
&lt;/li&gt;
&lt;li&gt;
Semantic Data Web Middleware - &lt;a href=&quot;http://www.w3.org/2004/01/rdxh/spec&quot;&gt;GRDDL&lt;/a&gt;, &lt;a href=&quot;http://www.w3.org/TR/xslt&quot;&gt;XSLT&lt;/a&gt;, SPARQL, XPath/XQuery, HTTP (Content Negotiation) for producing RDF from non RDF Data ((X)HTML, Microformats, XML, Web Services Response Data etc).
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Thus, by installing ODS on your Desktop, Workgroup, Enterprise, or public Web Server, you end up with a very powerful solution for creating Open Data access oriented presence on the &amp;quot;Semantic Data Web&amp;quot; without incurring any of the typically assumed &amp;quot;RDF Tax&amp;quot;.&lt;/p&gt;  
&lt;p&gt;Naturally, ODS is built atop &lt;a href=&quot;http://virtuoso.openlinksw.com&quot;&gt;Virtuoso&lt;/a&gt; and of course it exploits Virtuoso&amp;#39;s feature-set to the max. It&amp;#39;s also beginning to exploit functionality offered by the OpenLink Ajax Toolkit (&lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/demo/index.html&quot;&gt;OAT&lt;/a&gt;).&lt;/p&gt;



</description></item><item><title> More Ajax Security </title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-04-04#1177</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1177#comments</comments><pubDate>Wed, 04 Apr 2007 12:16:21 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-04-04T19:49:07.000003-04:00</n0:modified><description>&lt;p&gt;The Recent security Ajax security alert &lt;a href=&quot;http://blogs.usnet.private:8893/RPC2&quot;&gt;&lt;/a&gt; have attracted comments from: &lt;/p&gt;
&lt;p&gt;
&lt;a href=&quot;http://burningbird.net/&quot;&gt;Shelley Powers&lt;/a&gt; via her post titled: &lt;a href=&quot;http://burningbird.net/adding-ajax/more-ajax-security/&quot;&gt; More Ajax Security &lt;/a&gt; and many others.&lt;/p&gt;
&lt;p&gt;In anticipation of the obvious concerns of many Javascript based developers,&lt;a href=&quot;http://myopenlink.net/dataspace/ondras&quot;&gt; Ondrej Zara&lt;/a&gt; (lead developer of the &lt;a href=&quot;http://oat.openlinksw.com&quot;&gt;OpenLink Ajax Toolkit&lt;/a&gt;) has written a post titled: &lt;a href=&quot;http://www.openlinksw.com/weblog/oat/index.vspx?page=&amp;id=1176&quot;&gt;OAT and JS Hijacking&lt;/a&gt;, that explains the security aspects our Javascript Toolkit in relation to this alert&lt;/p&gt;
 </description></item><item><title>OAT and JS Hijacking</title><guid>http://www.openlinksw.com/weblog/oat/?date=2007-04-04#1176</guid><comments>http://www.openlinksw.com/weblog/oat/?id=1176#comments</comments><pubDate>Wed, 04 Apr 2007 08:18:16 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-02-05T08:48:48.000017-05:00</n0:modified><description>&lt;div&gt;
&lt;div style=&quot;display:none;&quot;&gt;OAT and JS Hijacking&lt;/div&gt;
      &lt;div class=&quot;moz-text-flowed&quot; style=&quot;font-family: Verdana,Arial,Helvetica,sans-serif; font-size: 13px;&quot; lang=&quot;x-western&quot;&gt;There has been some &lt;a href=&quot;http://ajaxian.com/archives/towards-secure-ajax-mashups&quot;&gt;recent&lt;/a&gt; &lt;a href=&quot;http://www.networkworld.com/news/2007/040207-javascript-ajax-applications.html&quot;&gt;buzz&lt;/a&gt; regarding security issues of Web 2.0 sites. I decided to thoroughly study and analyze how this works, manifests and influences JS toolkits.&lt;br /&gt; &lt;br /&gt;The best approach here is to study whitepaper located at  &lt;a class=&quot;moz-txt-link-freetext&quot; href=&quot;http://www.fortifysoftware.com/servlet/downloads/public/JavaScript_Hijacking.pdf&quot;&gt;http://www.fortifysoftware.com/servlet/downloads/public/JavaScript_Hijacking.pdf&lt;/a&gt;. One can find a typical attack scenario, some defense suggestions and security considerations. While the paper is (in my opinion) oversized, telling rather small amount of facts on large amount of pages, it contains some interesting information. Let me share how all this relates to OAT.&lt;br /&gt; &lt;br /&gt;First of all, I must conclude that none of OAT-based apps is   vulnerable to mentioned attacks, for two reasons:  &lt;br /&gt;  &lt;ol&gt;   &lt;li&gt;attacks are only appliable in JSON documents, fetched via GET method.   Our OAT apps use XML format, requested with POST (via XML/A - SOAP).&lt;/li&gt;   &lt;li&gt;attacks are only appliable when security tokens (i.e. user name,   password) are passed via browser cookie. This is not our case, since we   pass these in POST request&amp;#39;s body.  &lt;br /&gt;   &lt;/li&gt;  &lt;/ol&gt;However, we might take into consideration the fact that OAT can be used   for building different applications. So I added some low-level support   for security countermeasures mentioned in the PDF document. Specifically   (as a client-side only toolkit), the following two methods:  &lt;br /&gt;  &lt;br /&gt;  a) cookie-based secret, passed as URL parameter in GET requests. So   every OAT.AJAX.GET invocation will  &lt;ul&gt;   &lt;li&gt;set a cookie called &amp;#39;oatSecurityCookie&amp;#39; to some random value&lt;/li&gt;   &lt;li&gt;add &amp;#39;oatSecurityCookie=xxx&amp;#39; to URL string, where xxx equals to   the random value mentioned above. &lt;/li&gt; &lt;/ul&gt;  b) enhanced JSON parser with smarter text analysis, effectively   filtering out  &lt;br /&gt;  &lt;ul&gt;   &lt;li&gt;comments (at the beginning and end of JSONified text)&lt;/li&gt;   &lt;li&gt;the &amp;#39;while(1);&amp;#39; trap, situated at the beginning of received text  &lt;br /&gt;   &lt;/li&gt;  &lt;/ul&gt;  Both methods are now mentioned in the OAT documentation. Of course, applying OAT eqipped with these countermeasures doesn&amp;#39;t make (yet) your app secure: one must explicitely use one (or both) methods on server side, to complement OAT&amp;#39;s security features.&lt;br /&gt;  &lt;br /&gt;  To sum this up - OAT is now providing a maximum support for securing GETting JSONified data. It is up to user whether he wants to take advantage of this. We are - as (nearly) always - ready :)&lt;br /&gt;
&lt;br /&gt;  &lt;/div&gt;    
&lt;/div&gt;</description></item><item><title>RDF Browsers &amp; RDF Data Middleware</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-03-28#1172</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1172#comments</comments><pubDate>Wed, 28 Mar 2007 23:17:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-04-29T14:59:05-04:00</n0:modified><description>&lt;p&gt; &lt;a href=&quot;http://fgiasson.com/blog&quot;&gt;Frederick Giasson&lt;/a&gt; penned an interesting post earlier today that highlighted the RDF Middleware services offered by  &lt;a href=&quot;http://fgiasson.com/blog/index.php/2007/03/28/making-the-bridge-between-the-web-and-the-semantic-web/#comments&quot;&gt;Triplr and the Virtuoso Sponger&lt;/a&gt; &lt;/p&gt; &lt;p&gt;Some Definitions (as per usual):&lt;/p&gt; &lt;p&gt;RDF Middleware (as defined in this context) is about producing RDF from non RDF Data Sources. This implies that you can use non RDF Data Sources (e.g. (X)HTML Web Pages, (X)HTML Web Pages hosting Microformats, and even Web Services such as those from Google, Del.icio.us, Flickr etc..) as Semantic Web Data Source URIs (pointers to RDF Data).&lt;/p&gt; &lt;p&gt;In this post I would like to provide a similar perspective on this ability to treat non RDF as RDF from RDF Browser perspective.&lt;/p&gt; &lt;p&gt;First off, what&amp;#39;s an RDF Browser?&lt;/p&gt; &lt;p&gt;An RDF Browser is a piece of technology that enables you to Browse &lt;a href=&quot;http://esw.w3.org/topic/SweoIG/TaskForces/CommunityProjects/LinkingOpenData&quot;&gt;RDF Data Sources&lt;/a&gt; by way of Data Link Traversal. The key difference between this approach and traditional browsing is that Data Links are typed (they possess inherent meaning and context) whereas traditional links are untyped (although universally we have been trained to type them as links to Blurb in the form of (X)HTML pages or what is popularly called &amp;quot;Web Content&amp;quot;.).&lt;/p&gt; &lt;p&gt;There are a number of RDF Browsers that I am aware off (note: pop me a message directly of by way of a comment to this post if you have a browser that I am unaware of), and they include (in order of creation and availability):&lt;/p&gt; &lt;ol&gt; &lt;li&gt;   &lt;a href=&quot;http://www.w3.org/2005/ajar/tab&quot;&gt;Tabulator&lt;/a&gt; &lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://sites.wiwiss.fu-berlin.de/suhl/bizer/ng4j/disco/&quot;&gt;DISCO - Hyperdata Browser&lt;/a&gt; &lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html&quot;&gt;OpenLink Ajax Toolkit&amp;#39;s  RDF Browser&lt;/a&gt; (a component of the &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/demo/index.html&quot;&gt;OAT Javascript Toolkit&lt;/a&gt;)&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;Each of the browsers above can consume the services of Triplr or the Virtuoso Sponger en route to unveiling a RDF Data that is traversable via &lt;a href=&quot;http://www.w3.org/TR/2004/REC-webarch-20041215/#dereference-uri&quot;&gt;URI dereferencing&lt;/a&gt; (HTTP GETing the data exposed by the Data Pointer). Thus you can cut&amp;amp;paste the following into each of the aforementioned RDF Browsers:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;   &lt;a href=&quot;http://triplr.org/rdf/http://www.w3.org/People/Connolly/&quot;&gt;Triplr&amp;#39;s RDF Data (Triples) extractions from Dan Connolly&amp;#39;s Home Page&lt;/a&gt; &lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/proxy?url=http://www.w3.org/People/Connolly/&amp;force=rdf&quot;&gt;The Virtuoso Sponger&amp;#39;s RDF Data (Triples) extractions from Dan Connolly&amp;#39;s Home Page&lt;/a&gt; &lt;/li&gt; &lt;/ol&gt; &lt;p&gt;Since we are all time challenged (naturally!) you can also just click on these permalinks for the OAT RDF Browser demos:&lt;/p&gt; 
&lt;ol&gt; 
&lt;li&gt; &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html?uri[]=http%3A%2F%2Ftriplr.org%2Frdf%2Fhttp%3A%2F%2Fwww.w3.org%2FPeople%2FConnolly%2F&amp;amp;&amp;quot;&quot;&gt;Permalink for Triplr&amp;#39;s RDF Data (Triples) extractions from Dan Connolly&amp;#39;s Home Page&lt;/a&gt; 
&lt;/li&gt; 
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html?uri=http%3A%2F%2Fwww.w3.org%2FPeople%2FConnolly%2F%23me&quot;&gt;Permalink for the Virtuoso Sponger&amp;#39;s RDF Data (Triples) extractions from Dan Connolly&amp;#39;s Home Page&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;</description></item><item><title>Data Web, Googlebase, and Yahoo!</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-03-22#1165</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1165#comments</comments><pubDate>Thu, 22 Mar 2007 23:04:21 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-03-22T19:14:55-04:00</n0:modified><description>&lt;p&gt;A defining characteristic of the Data Web (Context Oriented Web 3.0) is that it facilitates Meshups rather than Mashups.&lt;/p&gt;

&lt;p&gt;Quick Definitions:&lt;/p&gt;
&lt;ul&gt;
Mashups - Brute force joining of disparate Web Data&lt;/ul&gt;
&lt;ul&gt;
Meshups - Natural joining of disparate Web Data 
&lt;/ul&gt;
&lt;p&gt;
Reasons for the distinction:&lt;/p&gt;
&lt;ul&gt;Mashups are Data Model oblivious.&lt;/ul&gt;
&lt;ul&gt;Meshups are Data Model driven.&lt;/ul&gt;

&lt;p&gt;Examples:&lt;/p&gt;

&lt;ul&gt;
Mashups are based on RSS 2.0 most of the time (RSS 2.0 is at best a Tree Structure that contains untyped or meaning challenged links.&lt;/ul&gt;
&lt;ul&gt;
Meshups are RDF based and the data is self describing since the links are typed (posses inherent meaning thereby providing context).&lt;/ul&gt;

&lt;p&gt;So what? You may be thinking.&lt;/p&gt;
&lt;p&gt;For starters, I can quite easily Mesh data from Googlebase (which emits RSS 2.0 or Atom) and other data sources with the Mapping Services from Yahoo!&lt;/p&gt;

&lt;p&gt;I can achieve this in minutes without writing a single line of code. I can do it because of the Data Model prowess of RDF (self-describing instance-data), the data interchange and transformation power of XML and XSLT respectively, the inherent power of XML based Web Services (REST or SOAP), and of course, having a Hybrid Server product like &lt;a href=&quot;http://en.wikipedia.org/wiki/Virtuoso_Universal_Server&quot;&gt;Virtuoso&lt;/a&gt; at my disposal that delivers a cross platform solution for exploiting all of these standards coherently.&lt;/p&gt;

&lt;p&gt;I can share the self-describing describing data source that serves my Meshup. Try reusing the data presented by a Mashup via the same URL that you used to locate Mashup to get my drift.&lt;/p&gt;

&lt;p&gt;Demo Links:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html#http%3A%2F%2Fdemo.openlinksw.com%2FDAV%2Fhome%2Fdemo%2FPublic%2FQueries%2FDataWeb%2Fgoogle_base_jobs_dataspace.isparql&quot;&gt;Googlebase Query URL as an RDF Data Source&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;Perform a simple Data Mesh by adding (via link copy and paste) this &lt;a href=&quot;http://upcoming.org/search/?q=ajax&amp;scope=allmetros&amp;type=Events&quot;&gt;Upcoming.org Query Services URL for Ajax Events&lt;/a&gt; to the RDF Browsers list of Data Sources (paste into the Data Source URI input field).&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;What does this all mean?&lt;/p&gt;
&lt;p&gt;&amp;quot;Context&amp;quot; is the catalyst of the burgeoning Data Web (Semantic Web Layer - 1). It&amp;#39;s the &lt;a href=&quot;http://sramanamitra.com/blog/729&quot;&gt;emerging appreciation of &amp;quot;Context&amp;quot;&lt;/a&gt; that is driving the growing desire to increment Web versions from 2.0 to 3.0. It also the the very same &amp;quot;Context&amp;quot; that has been a preoccupation of &lt;a href=&quot;http://www.w3.org/2001/sw/Activity&quot;&gt;Semantic Web vision&lt;/a&gt; since its inception.&lt;/p&gt;
&lt;p&gt;The journey towards a more Semantic Web is all inclusive (all &amp;quot;ANDs&amp;quot; and no &amp;quot;ORs&amp;quot; re. participation).&lt;/p&gt;
&lt;p&gt;The Semantic Web is &lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/?id=887&quot;&gt;self-annotating&lt;/a&gt;. Web 2.0 has provided a huge contribution to the self annotation effort: on the Web we now have Data Spaces for Bookmarks (e.g del.icio.us), Image Galleries ( e.g Flickr), Discussion Forums (remember those comments associated with blog posts? ditto the pingbacks and trackbacks?), People Profiles (FOAF, XFN, del.icio.us, and those crumbling walled-gardens around many Social Networks), and more..&lt;/p&gt;
&lt;p&gt;A Web without granular access to Data is simply not a Web worth having (think about the menace of click-fraud and spam).&lt;/p&gt;

</description></item><item><title>Exhibit &amp; SPARQL</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-03-15#1158</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1158#comments</comments><pubDate>Fri, 16 Mar 2007 01:37:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-03-20T00:14:10-04:00</n0:modified><description>
&lt;p&gt;Here are some examples of using &lt;a href=&quot;http://simile.mit.edu/exhibit/&quot; id=&quot;link-id0xa014fae8&quot;&gt;Exhibit&lt;/a&gt; against &lt;a href=&quot;http://en.wikipedia.org/wiki/Resource_Description_Framework&quot; id=&quot;link-id0xa257aae0&quot;&gt;RDF&lt;/a&gt; via &lt;a href=&quot;http://en.wikipedia.org/wiki/SPARQL&quot; id=&quot;link-id0xa0ab8fc8&quot;&gt;SPARQL&lt;/a&gt; on the fly:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/DAV/VAD/ajax-tools/exhibit-sparql/flickr_semweb_tags.html&quot; id=&quot;link-id0xa2ad8550&quot;&gt;Flickr photos tagged under rdf and semanticweb&lt;/a&gt; &lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/DAV/VAD/ajax-tools/exhibit-sparql/del_icio_us_tags.html&quot; id=&quot;link-id0x9e814cf8&quot;&gt;Del.icio.us tags for semanticweb&lt;/a&gt; &lt;/li&gt; &lt;/ol&gt;  &lt;p&gt;The examples above combine &lt;a href=&quot;http://oat.openlinksw.com&quot; id=&quot;link-id0x9ee07e88&quot;&gt;OAT&lt;/a&gt; and Exhibit. OAT handles the binding to SPARQL.&lt;/p&gt;  &lt;p&gt;Here is a pure OAT variation of the prior examples that includes an enhanced anchor (hyperlink) feature that enables a variety of traversal behaviors and actions against the same RDF Data:&lt;/p&gt; &lt;ol&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/flickr_semanticweb_rdf_dataspace.isparql.xml&quot; id=&quot;link-id0x9ee87f70&quot;&gt;Dynamic Data Web Page for Flickr photos tagged under rdf and semanticweb&lt;/a&gt; (click on a URI associated with a jpeg to see metadata for a given picture)&lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/delicious_semantic_dataspace.isparql.xml&quot; id=&quot;link-id0xa014e408&quot;&gt;Del.icio.us tags for semanticweb&lt;/a&gt;.&lt;/li&gt; &lt;/ol&gt; &lt;p&gt;Note: Use the &amp;quot;dereference option&amp;quot; (retrieve/get data associated with URI) for maximum effect. The &amp;quot;explore&amp;quot; is useful after you&amp;#39;ve dereferenced a few URIs. Also note that columns are resizable, like those in a spreadsheet, which also implies dynamic sorting capability.&lt;/p&gt;
</description></item><item><title>Personal URIs &amp; Data Spaces</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-03-01#1148</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1148#comments</comments><pubDate>Thu, 01 Mar 2007 19:42:41 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-03-02T09:14:02.000004-05:00</n0:modified><description>&lt;blockquote&gt;
&lt;p&gt;
  &lt;a href=&quot;http://www.johnbreslin.com/blog/2007/03/01/linking-personal-posted-content-across-communities/#comments&quot;&gt;Linking personal posted content across communities&lt;/a&gt;: &amp;quot;&lt;/p&gt;
&lt;p&gt;With the help of Kingsley, Uldis and I have been looking at how &lt;a href=&quot;http://sioc-project.org/&quot;&gt;SIOC&lt;/a&gt; can be used to link the content that a single person posts to a number of community sites.  The picture below shows an example of stuff that Iâve created on Flickr, YouTube, etc. through my various user identities on those sites (these match some &lt;a href=&quot;http://wiki.sioc-project.org/index.php/TypesModule&quot;&gt;SIOC types&lt;/a&gt; that we want to add to a separate module).  We can also say that each Web 2.0 content item is a user-contributed post, with some attached or embedded content (e.g. a file or maybe just some metadata).  This is part of a new discussion on the &lt;a href=&quot;http://groups.google.com/group/sioc-dev&quot;&gt;sioc-dev&lt;/a&gt; mailing list, and weâd value your contributions.&lt;/p&gt;
&lt;p&gt;
  &lt;img id=&quot;image1178&quot; src=&quot;http://www.johnbreslin.com/blog/wp-content/uploads/2007/03/20070228a.png&quot; alt=&quot;20070228a.png&quot; /&gt;
&lt;/p&gt;
&lt;p&gt;Edit: The inner layer is a person (semantically described in FOAF), the next layer is their user accounts (described in FOAF, SIOC) and the outer layer is the posted content - text, files, associated metadata - on community sites (again described using SIOC).
&lt;/p&gt;
No Tags&amp;quot;

&lt;p&gt;(Via &lt;a href=&quot;http://www.johnbreslin.com/blog&quot;&gt;John Breslin - Cloudlands&lt;/a&gt;.)&lt;/p&gt;
&lt;/blockquote&gt;
&lt;p&gt;The point that John is making about the Data Web and Interlinked &lt;a href=&quot;http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&amp;q=&#39;data%20spaces&#39;&amp;type=text&amp;output=html&quot;&gt;Data Spaces&lt;/a&gt; exposed via &lt;a href=&quot;http://en.wikipedia.org/wiki/Uniform_Resource_Identifier&quot;&gt;URI&lt;/a&gt;s (e.g Personal URIs), crystallizes a number of very important issues about the Data Web that may remain unclear. I am hoping that by digesting the post excerpt above, in conjunction with the items below, aids the pursuit of clarity and comprehension about the all important Data Web (Semantic Web - Layer 1):&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://kidehen.idehen.net/dataspace/kidehen&quot;&gt;Your OpenID can be Your Personal URI&lt;/a&gt; (as noted by &lt;a href=&quot;http://blogs.sun.com/bblfish/&quot;&gt;Henry Story&lt;/a&gt;&amp;#39;s post about: &lt;a href=&quot;http://blogs.sun.com/bblfish/entry/openid_for_blogs_sun_com&quot;&gt;The Many Uses of OpenID&lt;/a&gt;). That that&amp;#39;s what I have courtesy of OpenLink Data Spaces (ODS)&lt;/li&gt;
&lt;li&gt;The above only works unobtrusively (i.e. OpenID and Personal sharing a URI) if Content Negotiation is exploited on the Client and Server sides.&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://www.w3.org/People/Berners-Lee/card.rdf&quot;&gt;TimBL&lt;/a&gt;&amp;#39;s call out to &lt;a href=&quot;http://www.w3.org/DesignIssues/LinkedData.html&quot;&gt;Share Your Data and Link to Other Data&lt;/a&gt; via URIs via post titled: &lt;a href=&quot;http://dig.csail.mit.edu/breadcrumbs/node/71&quot;&gt;Give Yourself a URI&lt;/a&gt;.&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://www.w3.org/TR/swbp-vocab-pub/&quot;&gt;W3C&amp;#39;s Best Practice Recipes for Publishing RDF Vocabularies&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://www.w3.org/TR/2004/REC-webarch-20041215/#dereference-uri&quot;&gt;W3C&amp;#39;s Architecture of the World Wide Web - Vol 1&lt;/a&gt; which covers URI Dereferencing (HTTP GET-ing the data that a URI points to)&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://www4.wiwiss.fu-berlin.de/is-group/page/persons/Person6&quot;&gt;Richard Cyganiak&lt;/a&gt;&amp;#39;s post titled: &lt;a href=&quot;http://dowhatimean.net/2007/02/debugging-semantic-web-sites-with-curl&quot;&gt;Debugging Semantic Web Sites with Curl&lt;/a&gt;.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;Examples of some of these principles in practice:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;Chris Bizer, Tobias Gaub, and Richard&amp;#39;s Javascript based&lt;a href=&quot;http://sites.wiwiss.fu-berlin.de/suhl/bizer/ng4j/semwebclient/&quot;&gt; Semantic Web Client Library&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://sites.wiwiss.fu-berlin.de/suhl/bizer/ng4j/disco/&quot;&gt;DISCO RDF Browser&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://oat.openlinksw.com&quot;&gt;OpenLink Ajax Toolkit&lt;/a&gt;&amp;#39;s (OAT) &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/tests/rdfbrowser/index.html&quot;&gt;RDF Browser&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;OpenLink &lt;a href=&quot;http://demo.openlinksw.com/isparql&quot;&gt;Interactive SPARQL Query by Example&lt;/a&gt; (iSPARQL QBE)&lt;/li&gt;
&lt;li&gt;Dynamic Data Web Pages from my prior posts [&lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/?id=1144&quot;&gt;1&lt;/a&gt;][&lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/index.vspx?page=&amp;id=1145&quot;&gt;2&lt;/a&gt;][&lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/index.vspx?page=&amp;id=1146&quot;&gt;3&lt;/a&gt;]&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://dbpedia.org/docs/&quot;&gt;dbpedia&lt;/a&gt; (Wikipedia as a Data Web oriented Data Source)&lt;/li&gt;
&lt;li&gt;And of course this blog post&amp;#39;s permalink is a bona fide dereferencable URI.&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;And of course there is more to come such as Grandma&amp;#39;s Semantic Web Browser which is coming from &lt;a href=&quot;http://fgiasson.com/blog/index.php/2007/02/18/zitgist_a_semantic_web_search_engine&quot;&gt;Zitgist LLC&lt;/a&gt; (pronounced: Zeitgeist) a joint venture of OpenLink Software and &lt;a href=&quot;http://fgiasson.com/blog/&quot;&gt;Frederick Giasson&lt;/a&gt;.&lt;/p&gt;</description></item><item><title>Using The Data Web to Research Oscar Winners</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-02-26#1146</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1146#comments</comments><pubDate>Mon, 26 Feb 2007 17:36:40 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-02-27T00:29:02-05:00</n0:modified><description>&lt;p&gt;Situation Analysis: Pre or Post Oscars, you want to research Forest Whitaker, Helen Mirren, or Jennifer Hudson. What do you do? Go on a screen scrapping and keyword regular expression odyssey? Or you simply lookup a Data Web oriented Data Source like &lt;a href=&quot;http://dbpedia.org&quot;&gt;dbpedia&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Here is what I was I was able to knock together using my &lt;a href=&quot;http://demo3.openlinksw.com:8890/isparql&quot;&gt;SPARQL QBE&lt;/a&gt; (without writing the SPARQL by hand):&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
&lt;a href=&quot;http://demo3.openlinksw.com:8890/DAV/home/demo/Forest_Whitaker_DataSpace.isparql.xml&quot;&gt;Forest Whitaker Data&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&quot;http://demo3.openlinksw.com:8890/DAV/home/demo/Helen_Mirren_DataSpace.isparql.xml&quot;&gt;Helen Mirren Data&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
&lt;a href=&quot;http://demo3.openlinksw.com:8890/DAV/home/demo/Jennifer_Hudson_DataSpace.isparql.xml&quot;&gt;Jennifer Hudson Data&lt;/a&gt;.
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Note: Just select the &amp;quot;Explore&amp;quot; option when the link-lookup window appears in response to you clicking on any of the links. That said, if you are using the &lt;a href=&quot;https://addons.mozilla.org/firefox/190/&quot;&gt;Firefox Linkification&lt;/a&gt; extension the page will not work properly (as per this &lt;a href=&quot;http://www.beggarchooser.com/forum/index.php?topic=37.0&quot;&gt;discussion about disabling Linkification&lt;/a&gt;) :-(&lt;/p&gt;
&lt;p&gt;BTW - I have a comments page, so don&amp;#39;t be shy about showing me how you could produce this kind of data driven web page much quicker than I have :-)&lt;/p&gt;
&lt;p&gt;Warning: IE6 and Safari (use &lt;a href=&quot;http://webkit.org/&quot;&gt;Webkit&lt;/a&gt; instead) cannot process these pages due to the use of Ajax.&lt;/p&gt;

</description></item><item><title>Hello Data Web (Take 3 - Feel The &quot;RDF&quot; Force)</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-02-24#1144</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1144#comments</comments><pubDate>Sat, 24 Feb 2007 21:43:39 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-02-24T17:01:28-05:00</n0:modified><description>&lt;p&gt;As I have stated, and implied, in various posts about the Data Web and burgeoning Semantic Web in general; the value of RDF is felt rather than seen (driven by presence as opposed to web sites). That said, it is always possible to use the visual Interactive-Web dimension (Web 1.0) as a conduit to the Data-Web dimension.&lt;/p&gt;
&lt;p&gt;In this third take on my introduction to the Data Web I would like to share a link with you (a Dynamic Start Page in Web 2.0 parlance) with a Data Web twist: You do not have to preset the Start Page Data Sources (this is a small-big thing, if you get my drift, hopefully!).&lt;/p&gt;
&lt;p&gt;Here are some Data Web based Dynamic Start Pages that I have built for some key play ers from the Semantic Web realm (in random order):&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/danbri_dataspace.isparql.xml&quot;&gt;Dan Brickley&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/timbl_dataspace.isparql.xml&quot;&gt;Tim Berners-Lee&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/danc_dataspace.isparql.xml&quot;&gt;Dan Connolly&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/danja_dataspace.isparql.xml&quot;&gt;Danny Ayers&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/planet_rdf_dataspace.isparql.xml&quot;&gt;Planet RDF&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;
&lt;p&gt;&amp;quot;These are RDF prepped Data Sources....&amp;quot;, you might be thinking, right? Well here is the reminder: &lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/?id=1122&quot;&gt;The Data Web is a Global Data Generation and Integration Effort&lt;/a&gt;. Participation may be active (Semantic Web &amp;amp; Microformats Community), or passive (web sites, weblogs, wikis, shared bookmarks, feed subscription, discussion forums, mailing lists etc..). Irrespective of participation mode, RDF instance can be generated from close to anything (I say this because I plan to add binary files holding metadata to this mix shortly). Here are examples of Dynamic Start Pages for non RDF Data Sources:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/delicious_web20_events_dataspace.isparql.xml&quot;&gt;del.icio.us Web 2.0 Events Bookmarks&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/vecosys_dataspace.isparql.xml&quot;&gt;Vecosys&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/techcrunch_dataspace.isparql.xml&quot;&gt;Techcrunch&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/jonudell_dataspace.isparql.xml&quot;&gt;Jon Udell&amp;#39;s Blog&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/davewiner_dataspace.isparql.xml&quot;&gt;Dave Winer&amp;#39;s Scripting News&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/scobelizer_dataspace.isparql.xml&quot;&gt;Robert Scoble&amp;#39;s Blog&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;what about Microformats you may be wondering? Here goes:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/microformats_dataspace.isparql.xml&quot;&gt;Microformats Wiki&lt;/a&gt; (click on the Brian Suda link for instance) &lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/planet_microformats_dataspace.isparql.xml&quot;&gt;Microformats Planet&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/delicious_microformats_dataspace.isparql.xml&quot;&gt;Del.icio.us Microformats Bookmarks&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/ben_adida_dataspace.isparql.xml&quot;&gt;Ben Adida&amp;#39;s home page&lt;/a&gt; (RDFa)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Let&amp;#39;s carry on.&lt;/p&gt;
&lt;p&gt;How about some traditional Web Sites? Here goes:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/openlink_dataspace.isparql.xml&quot;&gt;OpenLink Software&amp;#39;s Home Page&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/oracle_dataspace.isparql.xml&quot;&gt;Oracle&amp;#39;s Home Page&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/apple_dataspace.isparql.xml&quot;&gt;Apple&amp;#39;s Home Page&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/microsoft_dataspace.isparql.xml&quot;&gt;Microsoft&amp;#39;s Home Page&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/ibm_dataspace.isparql.xml&quot;&gt;IBM&amp;#39;s Home Page&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;And before I forget, here is &lt;a href=&quot;http://demo.openlinksw.com/DAV/home/demo/Public/Queries/kidehen_dataspace.isparql.xml&quot;&gt;My Data Web Start Page &lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;Due to the use of Ajax in the Data Web Start Pages, IE6 and Safari will not work. For Mac OS X users, Webkit works fine. Ditto re. IE7 on Windows.&lt;/p&gt;
</description></item><item><title>Hello Data Web!</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-02-08#1134</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1134#comments</comments><pubDate>Thu, 08 Feb 2007 19:13:48 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-02-04T23:22:04.000001-05:00</n0:modified><description>&lt;p&gt;The simple demo use our Ajax based Visual Query Builder for the SPARQL Query Language (this isn&amp;#39;t Grandma&amp;#39;s Data Web UI, but not to worry, that is on it&amp;#39;s way also). Here goes:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;
go to http://demo.openlinksw.com/isparql
&lt;/li&gt;
&lt;li&gt;
Enter any of the following values into the &amp;quot;Default Data URI&amp;quot;; field:
&lt;/li&gt;

&lt;ul&gt;- http://www.mkbergman.com/?p=336&lt;/ul&gt;

&lt;ul&gt;- http://radar.oreilly.com/archives/2007/02/pipes_and_filte.html&lt;/ul&gt;

&lt;ul&gt;- http://jeremy.zawodny.com/blog/archives/008513.html&lt;/ul&gt;

&lt;ul&gt;- Other URIs
&lt;/ul&gt;
&lt;/ol&gt;
&lt;p&gt;
What I am demonstrating is how existing Web Content hooks transperently into the &lt;a href=&quot;http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&amp;q=data%20web&amp;type=text&amp;output=html&quot;&gt;&amp;quot;Data Web&amp;quot;&lt;/a&gt;. Zero RDF Tax :-) Everything is good!&lt;/p&gt;

&lt;p&gt;Note: Please look to the bottom of the screen for the &amp;quot;Run Query&amp;quot; Button. Remember, it not quite Grandma&amp;#39;s UI but should do for Infonauts etc.. A screencast will follow.&lt;/p&gt;
</description></item><item><title>OAT: OpenAjax Alliance Compliant Toolkit (Live Links Version)</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-01-29#1129</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1129#comments</comments><pubDate>Mon, 29 Jan 2007 16:16:14 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2007-02-02T10:29:55-05:00</n0:modified><description>&lt;blockquote&gt;
&lt;p&gt;
  &lt;a href=&quot;http://ajaxian.com/archives/oat-openajax-alliance-compliant-toolkit&quot;&gt;OAT: OpenAjax Alliance Compliant Toolkit&lt;/a&gt;: &amp;quot;&lt;/p&gt;
&lt;p&gt;Ondrej Zara and his team at Openlink Software have created a Openlink Software JS Toolkit, known as OAT. It is a full-blown JS framework, suitable for developing&lt;br /&gt;
rich applications with special focus to data access.&lt;/p&gt;
	&lt;p&gt;OAT works standalone, offers vast number of widgets and has some rarely seen features, such as on-demand library loading (which reduces the total amount of downloaded JS code).&lt;/p&gt;
	&lt;p&gt;OAT is one of the first JS toolkits which show full OpenAjax Alliance conformance: see the appropriate &lt;a href=&quot;http://www.openajax.org/member/wiki/InteropFest_2007_March)&quot;&gt;wiki page&lt;/a&gt; and &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/openajax/HubTest-OATConformance.html&quot;&gt;conformance test page&lt;/a&gt;.&lt;/p&gt;
	&lt;p&gt;There is a lot to see with this toolkit:&lt;/p&gt;
	&lt;p&gt;You can see some of the widgets in a &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/demo/index.html&quot;&gt;Kitchen sink application&lt;/a&gt;
&lt;/p&gt;
	&lt;p&gt;Sample data access applications:&lt;/p&gt;
	&lt;ul&gt;
	&lt;li&gt;
    &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/qbe/index.html&quot;&gt;SQL Query By Example&lt;/a&gt;
  &lt;/li&gt;
	&lt;li&gt;
    &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/formdesigner/index.html&quot;&gt;Forms designer&lt;/a&gt;
  &lt;/li&gt;
	&lt;li&gt;
    &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/designer/index.html&quot;&gt;DB Designer&lt;/a&gt;
  &lt;/li&gt;
	&lt;/ul&gt;
	&lt;p&gt;OAT is Open Source and GPLâed over at &lt;a href=&quot;http://sourceforge.net/project/showfiles.php?group_id=168143&quot;&gt;sourceforge&lt;/a&gt;   and the team has recently managed to incorporate our OAT data access layer as a&lt;br /&gt;
module to &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/dojo-oatstore-demo/test_OATStore_in_FilteringTable.html&quot;&gt;dojo datastore&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;(Via &lt;a href=&quot;http://ajaxian.com&quot;&gt;Ajaxian Blog&lt;/a&gt;.)&lt;/p&gt;
&lt;/blockquote&gt;

&lt;p&gt;This is a corrected version of the initial post. Unfortunately, the initial post was inadvertently littered with invalid links :-( Also, since the original post we have released &lt;a href=&quot;http://sourceforge.net/mailarchive/forum.php?thread_id=31568932&amp;amp;forum_id=49207&quot;&gt;OAT 1.2&lt;/a&gt; that includes integration of our iSPARQL QBE into the OAT Form Designer application.&lt;/p&gt;

&lt;p&gt;Re. Data Access, It is important to note that OAT&amp;#39;s Ajax Database Connectivity layers supports data binding to the following data source types:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://www.w3.org/TR/rdf-primer/&quot;&gt;RDF&lt;/a&gt; - via &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/demo/index.html?dav&quot;&gt;SPARQL&lt;/a&gt; (Query Language, Protocol, and Resultset Serialization formats: &lt;a href=&quot;http://en.wikipedia.org/wiki/JDBC&quot;&gt;RDF/XML&lt;/a&gt;, &lt;a href=&quot;http://www.w3.org/DesignIssues/Notation3&quot;&gt;RDF/N3&lt;/a&gt;, &lt;a href=&quot;http://www.dajobe.org/2004/01/turtle/&quot;&gt;RDF/Turtle&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/XML&quot;&gt;XML&lt;/a&gt;, and &lt;a href=&quot;http://www.json.org/&quot;&gt;JSON&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://en.wikipedia.org/wiki/SQL&quot;&gt;SQL&lt;/a&gt; - via &lt;a href=&quot;http://www.xmla.org/faq.asp&quot;&gt;XMLA&lt;/a&gt; (somewhat forgotten &lt;a href=&quot;http://en.wikipedia.org/wiki/SOAP&quot;&gt;SOAP&lt;/a&gt; protocol for SQL Data Access that can sit atop &lt;a href=&quot;http://en.wikipedia.org/wiki/Open_Database_Connectivity&quot;&gt;ODBC&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/ADO.NET&quot;&gt;ADO.NET&lt;/a&gt;, &lt;a href=&quot;http://en.wikipedia.org/wiki/OLE_DB&quot;&gt;OLE-DB&lt;/a&gt;, and even &lt;a href=&quot;http://en.wikipedia.org/wiki/JDBC&quot;&gt;JDBC&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;XML - via SOAP or &lt;a href=&quot;http://en.wikipedia.org/wiki/Representational_State_Transfer&quot;&gt;REST&lt;/a&gt; style Web Services&lt;/li&gt;
&lt;/ol&gt;

In all cases, OAT also provides Data Aware controls for the above that include:
&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlnksw.com/DAV/JS/demo/index.html?grid&quot;&gt;Tabular Grids&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/demo/index.html?pivot&quot;&gt;Pivot Tables&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlnksw.com/DAV/JS/demo/index.html?timeline&quot;&gt;TimeLines&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/demo/index.html?anchor&quot;&gt;Extended Anchor Tags&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlnksw.com/DAV/JS/demo/index.html?mashups&quot;&gt;Map Service Controls&lt;/a&gt; (Google, Yahoo!, OpenLayers, Microsoft Visual Earth)&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/demo/index.html?rdf&quot;&gt;SVG based RDF Graph Control&lt;/a&gt; (Opera 9.x provides best viewing experience at the current time)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;OAT also includes a number of prototype applications that are completely developed using OAT Controls and Libraries:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlnksw.com/isparql/&quot;&gt;Visual SPARQL Query Builder&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/qbe/index.html&quot;&gt;Visual SQL Query Builder&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/formdesigner/index.html&quot;&gt;Web Forms Designer&lt;/a&gt; (includes Drag-Drop usage of Data Aware Controls etc.)&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/designer/index.html&quot;&gt;Visual DB Designer&lt;/a&gt;
&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Note: Pick &amp;quot;Local DSN&amp;quot; from page initialization dialog&amp;#39;s drop-down list control when prompted&lt;/p&gt;</description></item><item><title>SPARQL, Ajax, Tagging, Folksonomies, Share Ontologies and Semantic Web</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-12-07#1095</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1095#comments</comments><pubDate>Thu, 07 Dec 2006 17:35:29 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-12-13T15:09:50-05:00</n0:modified><description>&lt;p&gt;A quick dump that demonstrates how I integrate tags and links from del.icio.us with links from my local bookmark database via one of my public Data Spaces (this demo uses the &lt;a href=&quot;http://myopenlink.net:8890/dataspace/kidehen&quot;&gt;kidehen Data Space&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;
&lt;a href=&quot;http://www.w3.org/TR/rdf-sparql-query/&quot;&gt;SPARQL&lt;/a&gt; (query language for the Semantic Web) basically enables me to query a collection of typed links (predicates/properties/attributes) in my Data Space (&lt;a href=&quot;http://virtuoso.openlinksw.com/wiki/main/Main/OdsIndex&quot;&gt;ODS&lt;/a&gt; based of course) without breaking my existing local bookmarks database or the one I maintain at del.icio.us.&lt;/p&gt;

&lt;p&gt;I am also demonstrating how &lt;a href=&quot;http://en.wikipedia.org/wiki/Web_2.0&quot;&gt;Web 2.0&lt;/a&gt; concepts such as &lt;a href=&quot;http://en.wikipedia.org/wiki/Tags&quot;&gt;Tagging&lt;/a&gt; mesh nicely with the more formal concepts of Topics in the Semantic Web realm. The key to all of this is the ability to generate &lt;a href=&quot;http://www.w3.org/TR/rdf-primer/&quot;&gt;RDF Data Model&lt;/a&gt; Instance Data based on &lt;a href=&quot;http://en.wikipedia.org/wiki/Upper_ontology_(computer_science)&quot;&gt;Shared Ontologies&lt;/a&gt; such as &lt;a href=&quot;http://rdfs.org/sioc/spec/&quot;&gt;SIOC&lt;/a&gt; (from &lt;a href=&quot;http://www.semanticweb.org/&quot;&gt;DERI&lt;/a&gt;&amp;#39;s &lt;a href=&quot;http://sioc-project.org/&quot;&gt;SIOC Project&lt;/a&gt;) and &lt;a href=&quot;http://www.w3.org/2004/02/skos/&quot;&gt;SKOS&lt;/a&gt; (again showing that &lt;a href=&quot;http://tomgruber.org/writing/ontology-of-folksonomy.htm&quot;&gt;Ontologies and Folksonomies&lt;/a&gt; are complimentary).&lt;/p&gt;

&lt;p&gt;This demo also shows that Ajax also works well in the Semantic Web realm (or &lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/?id=1037&quot;&gt;web dimension of interaction 3.0&lt;/a&gt;) especially when you have a toolkit with Data Aware controls (for SQL, RDF, and XML) such as OAT (&lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/demo/index.html&quot;&gt;OpenLink Ajax Toolkit&lt;/a&gt;). For instance, we&amp;#39;ve successfully used this to build a &lt;a href=&quot;http://myopenlink.net:8890/isparl/&quot;&gt;Visual Query Building Tool for SPARQL&lt;/a&gt; (alpha) that really takes a lot of the pain out of constructing SPARQL Queries (there is much more to come on this front re. handling of DISTINCT, FILTER, ORDER BY etc..). &lt;/p&gt;

&lt;p&gt;For now, take a look at the SPARQL Query dump generated by this &lt;a href=&quot;http://myopenlink.net:8890/DAV/home/kidehen/gallery/my_photos/sparql_qbe_sioc_skos_shot1.png&quot;&gt;SIOC &amp;amp; SKOS SPARQL QBE Canvas Screenshot&lt;/a&gt;. &lt;/p&gt;

&lt;p&gt;You can cut and paste the queries that follow into the Query Builder or use the screenshot to build your variation of this query sample. Alternatively, you can simply click on *&lt;a href=&quot;http://myopenlink.net:8890/sparql?default-graph-uri=http%3A%2F%2Fmyopenlink.net%2Fdataspace&amp;query=PREFIX+rdf%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F1999%2F02%2F22-rdf-syntax-ns%23%3E%0D%0APREFIX+sioc%3A+++%3Chttp%3A%2F%2Frdfs.org%2Fsioc%2Fns%23%3E%0D%0APREFIX+dct%3A+%3Chttp%3A%2F%2Fpurl.org%2Fdc%2Felements%2F1.1%2F%3E%0D%0APREFIX+skos%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2004%2F02%2Fskos%2Fcore%23%3E%0D%0A%0D%0ASELECT+distinct+%3Fforum_name%2C+%3Fowner%2C+%3Fpost%2C+%3Ftitle%2C+%3Flink%2C+%3Furl+%3Ftag%0D%0AFROM+%3Chttp%3A%2F%2Fmyopenlink.net%2Fdataspace%3E%0D%0AWHERE+%7B%0D%0A++++++++%3Fforum+a+sioc%3AForum.%0D%0A++++++++%3Fforum+sioc%3Atype+%22bookmark%22.%0D%0A++++++++%3Fforum+sioc%3Aid+%3Fforum_name.%0D%0A++++++++%3Fforum+sioc%3Ahas_member+%3Fowner.%0D%0A++++++++%3Fowner+sioc%3Aid+%22kidehen%22.%0D%0A++++++++%3Fforum+sioc%3Acontainer_of+%3Fpost+.%0D%0A++++++++%3Fpost++dct%3Atitle+%3Ftitle+.%0D%0A++++++++optional+%7B+%3Fpost+sioc%3Atopic+%3Ftopic.%0D%0A+++++++++++++++++++%3Ftopic+a+skos%3AConcept%3B%0D%0A+++++++++++++++++++++++++skos%3AprefLabel+%3Ftag.+%7D%0D%0A++++++++optional%7B+%3Fpost+sioc%3Alink+%3Flink++%7D+.%0D%0A++++++++optional%7B+%3Fpost+sioc%3Alinks_to+%3Furl+%7D%0D%0A++++++%7D%0D%0AORDER+BY+%3Ftitle&amp;format=text%2Fhtml&quot;&gt;This&lt;/a&gt;* &lt;a href=&quot;http://www.w3.org/TR/rdf-sparql-protocol/&quot;&gt;SPARQL Protocol&lt;/a&gt; URL to see the query results in a basic HTML Table. And one last thing, you can grab the &lt;a href=&quot;http://myopenlink.net:8890/DAV/home/kidehen/SPARQL/tagging_sioc_skos_delicios_my_bookmarks.rq&quot;&gt;SPARQL Query File&lt;/a&gt; saved into my &lt;a href=&quot;http://virtuoso.openlinksw.com/wiki/main/Main/OdsBriefcase&quot;&gt;ODS-Briefcase&lt;/a&gt; (the &lt;a href=&quot;http://en.wikipedia.org/wiki/WebDAV&quot;&gt;WebDAV&lt;/a&gt; repository aspect of my Data Space).
&lt;/p&gt;

&lt;p&gt;
&lt;b&gt;Note the following SPARQL Protocol Endpoints:&lt;/b&gt;
&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://myopenlink.net:8890/sparql/&quot;&gt;MyOpenLink Data Space&lt;/a&gt;
&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://myopenlink.net:8890/isparql/&quot;&gt;Experimental Data Space SPARQL Query Builder&lt;/a&gt; (you need to register at http://myopenlink.net:8890/ods to use this version)&lt;/li&gt;
 &lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/sparql/&quot;&gt;Live Demo Sever&lt;/a&gt;
 &lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://demo.openlinksw.com/isparql/&quot;&gt;Demo Server SPARQL Query Builder&lt;/a&gt; (use: demo for both username and pwd when prompted)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;My beautified Version of the SPARQL Generated by QBE (you can cut and paste into &amp;quot;Advanced Query&amp;quot; section of QBE) is presented below:&lt;/p&gt;
&lt;pre&gt;
PREFIX rdf: &amp;lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&amp;gt;
PREFIX sioc: &amp;lt;http://rdfs.org/sioc/ns#&amp;gt;
PREFIX dct: &amp;lt;http://purl.org/dc/elements/1.1/&amp;gt;
PREFIX skos: &amp;lt;http://www.w3.org/2004/02/skos/core#&amp;gt;
&lt;br /&gt;
SELECT distinct 
       ?forum_name, 
       ?owner, 
       ?post, 
       ?title, 
       ?link, 
       ?url, 
       ?tag
FROM &amp;lt;http://myopenlink.net/dataspace&amp;gt;
WHERE {
       ?forum a sioc:Forum;
                   sioc:type &amp;quot;bookmark&amp;quot;;
                   sioc:id ?forum_name;
                   sioc:has_member ?owner.
       ?owner sioc:id &amp;quot;kidehen&amp;quot;.
       ?forum sioc:container_of ?post .
       ?post  dct:title ?title .
       optional { ?post sioc:link ?link  }
       optional { ?post sioc:links_to ?url }
       optional { ?post sioc:topic ?topic.
                        ?topic a skos:Concept;
                                  skos:prefLabel ?tag}.
     } 
&lt;/pre&gt;
&lt;p&gt;Unmodified dump from the QBE (this will be beautified automatically in due course by the QBE):&lt;/p&gt;

&lt;pre&gt;
PREFIX rdf: &amp;lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&amp;gt;
PREFIX sioc: &amp;lt;http://rdfs.org/sioc/ns#&amp;gt;
PREFIX dct: &amp;lt;http://purl.org/dc/elements/1.1/&amp;gt;
PREFIX skos: &amp;lt;http://www.w3.org/2004/02/skos/core#&amp;gt;
&lt;br /&gt;
SELECT ?var8 ?var9 ?var13 ?var14 ?var24 ?var27 ?var29 ?var54 ?var56
WHERE
{
graph ?graph {
 ?var8 rdf:type sioc:Forum .
 ?var8 sioc:container_of ?var9 .
 ?var8 sioc:type &amp;quot;bookmark&amp;quot; .
 ?var8 sioc:id ?var54 .
 ?var8 sioc:has_member ?var56 .
 ?var9 rdf:type sioc:Post .
 OPTIONAL {?var9 dc:title ?var13} .
 OPTIONAL {?var9 sioc:links_to ?var14} .
 OPTIONAL {?var9 sioc:link ?var29} .
 ?var9 sioc:has_creator ?var37 .
 OPTIONAL {?var9 sioc:topic ?var24} .
 ?var24 rdf:type skos:Concept .
 OPTIONAL {?var24 skos:prefLabel ?var27} .
 ?var56 rdf:type sioc:User .
 ?var56 sioc:id &amp;quot;kidehen&amp;quot; .
 }
} 
&lt;/pre&gt;

&lt;p&gt;
Current missing items re. Visual QBE for SPARQL are:&lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
Ability to Save properly to WebDAV so that I can then expose various saved SPARQL Queries (.rq file) from my Data Space via URIs
&lt;/li&gt;
&lt;li&gt;
Handling of DISTINCT, FILTERS (note: OPTIONAL is handled via dotted predicate-links)
&lt;/li&gt;
&lt;li&gt;General tidying up re. click event handling etc.
&lt;/li&gt;
&lt;/ol&gt;

Note:
You can even open up your own account (using our &lt;a href=&quot;http://demo.openlinksw.com/ods&quot;&gt;Live Demo&lt;/a&gt; or &lt;a href=&quot;http://myopenlink.net:8890/ods&quot;&gt;Live Experiment Data&lt;/a&gt; Space servers) which enables you to repeat this demo by doing the following (post registration/sign-up):

&lt;ol&gt;
&lt;li&gt;Export some bookmarks from your local browser to the usual HTML bookmarks dump file&lt;/li&gt;
&lt;li&gt;Create an ODS-Bookmarks Instance using your new ODS account&lt;/li&gt;
&lt;li&gt;Use the ODS-Bookmark Instance to import your local bookmarks from the HTML dump file&lt;/li&gt;
&lt;li&gt;Repeat the same import sequence using the ODS-Bookmark Instance, but this time pick the del.icio.us option&lt;/li&gt;
&lt;li&gt;Build your query (change &amp;#39;kidehen&amp;#39; to your ODS-user-name)&lt;/li&gt;
&lt;li&gt;That&amp;#39;s it you now have Semantic Web presence in the form of a Data Space for your local and del.icio.us hosted bookmarks with tags integrated&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Quick Query Builder Tip:
You will need to import the following (using the Import Button in the Ontologies &amp;amp; Schemas side-bar); &lt;/p&gt;
&lt;ol&gt;
&lt;li&gt;
  &lt;a href=&quot;http://www.w3.org/1999/02/22-rdf-syntax-ns#&quot;&gt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&lt;/a&gt; (&lt;a href=&quot;http://www.w3.org/TR/rdf-primer/&quot;&gt;RDF&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://rdfs.org/sioc/ns#&quot;&gt;http://rdfs.org/sioc/ns#&lt;/a&gt; (&lt;a href=&quot;http://rdfs.org/sioc/spec/&quot;&gt;SIOC&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://purl.org/dc/elements/1.1/&quot;&gt;http://purl.org/dc/elements/1.1/&lt;/a&gt; (&lt;a href=&quot;http://dublincore.org/&quot;&gt;Dublin Core&lt;/a&gt;)&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://www.w3.org/2004/02/skos/core#&quot;&gt;http://www.w3.org/2004/02/skos/core#&lt;/a&gt; (&lt;a href=&quot;http://www.w3.org/TR/2005/WD-swbp-skos-core-guide-20050510/&quot;&gt;SKOS&lt;/a&gt;)&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;Browser Support: The SPARQL QBE is SVG based and currently works fine with the following browsers; Firefox 1.5/2.0, Camino (Cocoa variant of Firefox for Mac OS X), Webkit (Safari pre-release / advanced sibling), Opera 9.x. We are evaluating the use of the Adobe SVG plugin re. IE 6/7 support.&lt;/p&gt;

&lt;p&gt;Of course this should be a screencast, but I am the middle of a plethora of things right now :-)
&lt;/p&gt;</description></item><item><title>Data Spaces and Web of Databases</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-08-28#1030</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1030#comments</comments><pubDate>Mon, 28 Aug 2006 19:38:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-09-04T18:58:56.000001-04:00</n0:modified><description>&lt;p&gt;Note: An updated version of a previously unpublished blog post:&lt;/p&gt;
    &lt;p&gt; Continuing from &lt;a href=&quot;http://weblog.infoworld.com/udell/2006/04/28.html&quot;&gt;our recent Podcast conversation&lt;/a&gt;, Jon Udell sheds further insight into the essence of our conversation via a âStrategic Developerâ column article titled: &lt;a href=&quot;http://www.infoworld.com/cgi-bin/redirect?source=rss&amp;url=http://www.infoworld.com/article/06/05/03/77873_19OPstrategic_1.html&quot;&gt;Accessing the web of databases&lt;/a&gt;. &lt;/p&gt; &lt;p&gt; Below, I present an initial dump of a DataSpace FAQ below that hopefully sheds light on the DataSpace vision espoused during my podcast conversation with Jon. &lt;/p&gt; &lt;p&gt; What is a DataSpace? &lt;br /&gt; &lt;/p&gt; &lt;p&gt;A moniker for Web-accessible atomic containers that manage and expose Data, Information, Services, Processes, and Knowledge.  &lt;/p&gt; &lt;p&gt; What would you typically find in a Data Space? Examples include: &lt;/p&gt; &lt;ul&gt; &lt;li&gt;Raw Data - SQL, HTML, XML (raw), XHTML, RDF etc.&lt;br /&gt;   &lt;br /&gt; &lt;/li&gt; &lt;li&gt;Information (Data In Context) - XHTML (various microformats), Blog Posts (in RSS, Atom, RSS-RDF formats), Subscription Lists (OPML, OCS, etc), Social Networks (FOAF, XFN etc.), and many other forms of applied XML.&lt;/li&gt;  &lt;/ul&gt; &lt;ul&gt; &lt;li&gt;Web Services (Application/Service Logic) - REST or SOAP based invocation of application logic for context sensitive and controlled data access and manipulation.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt; &lt;li&gt;Persisted Knowledge - Information in actionable context that is also available in transient or persistent forms expressed using a Graph Data Model. A modern knowledgebase would more than likely have RDF as its Data Language, RDFS as its Schema Language, and OWL as its DomainÂ  Definition  (Ontology) Language. Actual Domain, Schema, and  Instance Data would be serialized using formats such as RDF-XML, N3, Turtle etc).&lt;/li&gt; &lt;/ul&gt; &lt;p&gt; How do Data Spaces and Databases differ? &lt;br /&gt;Data Spaces are fundamentally problem-domain-specific database applications. They offer functionality that you would instinctively expect of a database (e.g. AICD data management) with the additonal benefit of being data model and query language agnostic. Data Spaces are for the most part DBMS Engine and Data Access Middleware hybrids in the sense that ownership and control of data is inherently loosely-coupled. &lt;/p&gt; &lt;p&gt;How do Data Spaces and Content Management Systems differ?&lt;br /&gt;Data Spaces are inherently more flexible, they support multiple data models and data representation formats. Content management systems do not possess the same degree of data model and data representation dexterity. &lt;/p&gt;  &lt;p&gt;How do Data Spaces and Knowledgebases differ?&lt;br /&gt;A Data Space cannot dictate the perception of its content. For instance, what I may consider as knowledge relative to my Data Space may not be the case to a remote client that interacts with it from a distance, Thus, defining my Data Space as Knowledgebase, purely, introduces constraints that reduce its broader effectiveness to third party clients (applications, services, users etc..). A Knowledgebase is based on a Graph Data Model resulting in significant impedance for clients that are built around alternative models. To reiterate, Data Spaces support multiple data models.  &lt;/p&gt; &lt;p&gt; What Architectural Components make up a Data Space? &lt;/p&gt;  &lt;ul&gt; &lt;li&gt;ORDBMS Engine - for Data Modeling agility (via complex purpose specific data types and data access methods), Data Atomicity, Data Concurrency, Transaction Isolation, and Durability (aka ACID).&lt;br /&gt;   &lt;br /&gt; &lt;/li&gt; &lt;li&gt;Virtual Database Engine - for creating a single view of, and access point to,  heterogeneous SQL, XML, Free Text, and other data. This is all about Virtualization at the Data Access Level.&lt;/li&gt; &lt;/ul&gt; &lt;ul&gt; &lt;li&gt;Web Services Platform - enabling controlled access and manipulation (via application, service, or protocol logic) of Virtualized or Disparate Data. This layer handles the decoupling of functionality from monolithic wholes for function specific invocation via Web Services using either the SOAP or REST approach.&lt;/li&gt; &lt;/ul&gt; &lt;br /&gt;Where do Data Spaces fit into the Web&amp;#39;s rapid evolution?&lt;br /&gt;They are an essential part of the burgeoning Data Web / Semantic Web. In short, they will take us from data âMash-upsâ (combining web accessible data that exists without integration and repurposing in mind) to âMesh-upsâ (combining web accessible data that exists with integration and repurposing in mind).&lt;p&gt; Where can I see a DataSpace along the lines described, in action? &lt;/p&gt; &lt;p&gt; Just look at my blog, and take the journey as follows: &lt;/p&gt;  &lt;ul&gt; &lt;li&gt;   &lt;a href=&quot;http://www.openlinksw.com/blog/%7Ekidehen/&quot;&gt;Front Door&lt;/a&gt; (Web 1.0)&lt;/li&gt; &lt;li&gt;Lounge (Web 2.0) via &lt;a href=&quot;http://www.openlinksw.com/GData/127&quot;&gt;GData&lt;/a&gt; or &lt;a href=&quot;http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&amp;type=text&amp;kwds=%27semantic+web%27&amp;amp;OpenSearch&quot;&gt;OpenSearch&lt;/a&gt; &lt;/li&gt; &lt;li&gt;Floor Plan via &lt;a href=&quot;http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/about.rdf&quot;&gt;FOAF&lt;/a&gt; or &lt;a href=&quot;http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/sioc.rdf&quot;&gt;SIOC&lt;/a&gt; RDF Data Sets (Graphs)&lt;/li&gt;  &lt;li&gt;Rest of the house (beyond Web 2.0) sendingÂ  &lt;a href=&quot;http://virtuoso.openlinksw.com/wiki/main/Main/VOSODSSparqlSamples&quot;&gt;SPARQL Queries&lt;/a&gt; to a &lt;a href=&quot;http://myopenlink.net:8890/sparql/&quot;&gt;SPARQL Endpoint&lt;/a&gt;.&lt;br /&gt;  &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt; What about other Data Spaces? &lt;/p&gt; &lt;p&gt; There are several and I will attempt to categorize along the lines of query method available: &lt;br /&gt;Type 1 (Free Text Search over HTTP): &lt;br /&gt;Google, MSN, Yahoo!, Amazon, eBay, and most Web 2.0 plays . &lt;/p&gt; &lt;p&gt; Type 2 (Free Text Search and XQuery/XPath over HTTP) &lt;br /&gt;A few blogs and Wikis (Jon Udell&amp;#39;s and a few others)&lt;/p&gt;Type 3 (RDF Data Sets and SPARQL Queryable):&lt;br /&gt; &lt;ul&gt; &lt;li&gt;Â Â  &lt;a href=&quot;http://esw.w3.org/topic/SIOC/EnabledSites&quot;&gt;SIOC enabled sites&lt;/a&gt; (aka points of semantic web presence)&lt;br /&gt;
&lt;/li&gt;  &lt;li&gt;Â Â  &lt;a href=&quot;http://pingthesemanticweb.com/&quot;&gt;PingTheSemantic&lt;/a&gt; &lt;br /&gt;  &lt;/li&gt; &lt;/ul&gt;Type 4 (Generic Free Text Search, OpenSearch, GData, XQuery/XPath, and SPARQL):&lt;br /&gt;Points of Semantic Web presence such as the Data Spaces at: &lt;br /&gt; &lt;ul&gt;  &lt;li&gt;
  &lt;a href=&quot;http://www.openlinksw.com/dataspace/kidehen@openlinksw.com&quot;&gt;My Blog Data Space&lt;/a&gt; (as stated earlier in this post)&lt;br /&gt;  &lt;/li&gt;  &lt;li&gt;
  &lt;a href=&quot;http://myopenlink.net:8890/dataspace/kidehen@openlinksw.com&quot;&gt;My General Data Space&lt;/a&gt; - (ditto; note that this is currently experimental)&lt;br /&gt;  &lt;/li&gt; &lt;/ul&gt; &lt;p&gt;What About Data Space aware tools?&lt;br /&gt; &lt;br /&gt; &lt;/p&gt; &lt;ul&gt; &lt;li&gt;Â Â  &lt;a href=&quot;http://demo.openlinksw.com/DAV/JS/oat/index.html/&quot;&gt;OpenLink Ajax Toolkit &lt;/a&gt;- provides Javascript Control level binding to Query Services such as XMLA for SQL, GData for Free Text, OpenSearch for Free Text, SPARQL for RDF, in addition to service specific Web Services (Web 2.0 hosted solutions that expose service specific APIs)&lt;/li&gt; &lt;li&gt;Â Â  &lt;a href=&quot;http://rdfs.org/sioc/firefox&quot;&gt;Semantic Radar &lt;/a&gt;- a Firefox Extension&lt;/li&gt; &lt;li&gt;Â Â  &lt;a href=&quot;http://pingthesemanticweb.com/&quot;&gt;PingTheSemantic&lt;/a&gt; - the Semantic Webs equivalent of Web 2.0&amp;#39;s weblogs.com&lt;/li&gt; &lt;li&gt;Â Â  &lt;a href=&quot;http://simile.mit.edu/piggy-bank/&quot;&gt;PiggyBank&lt;/a&gt; - a Firefox Extension&lt;/li&gt; &lt;/ul&gt; &lt;p&gt; &lt;/p&gt;    
</description></item><item><title>Paul Graham was Surprised by Google Calendar?</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-08-19#1028</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1028#comments</comments><pubDate>Sat, 19 Aug 2006 20:17:31 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-08-19T23:39:03-04:00</n0:modified><description>&lt;p&gt;Dare&amp;#39;s insightful take below, sheds light on the problems associated with building Web 2.0 business offerings around a single Collaborative Application feature as opposed to a coherently integrated platform.&lt;/p&gt;
&lt;p&gt; BTW - I am just as perplexed as Dare about Paul Graham being blind-sided by the integration of Calendaring and Email by Google.&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;
  &lt;a href=&quot;http://www.25hoursaday.com/weblog/CommentView.aspx?guid=a0e893a1-95a1-4277-b635-2b4abb240b69&quot;&gt;Paul Graham was Surprised by Google Calendar?&lt;/a&gt;: &amp;quot;&lt;/p&gt;
&lt;p&gt;
I was just reading Paul Graham&amp;#39;s post entitled &lt;a href=&quot;http://paulgraham.infogami.com/blog/kiko&quot;&gt;The
Kiko Affair&lt;/a&gt; which talks about &lt;a href=&quot;http://jkanstyle.com/2006/08/17/actual-lessons-from-kiko/&quot;&gt;the
recent failure of Kiko&lt;/a&gt;, an AJAX web-calendaring application. I was quite surprised
to see the following sentence in Paul Graham&amp;#39;s post 
&lt;/p&gt;
        &lt;blockquote&gt;
          &lt;i&gt;The killer, unforseen by the Kikos and by us, was Google Calendar&amp;#39;s
integration with Gmail. The Kikos can&amp;#39;t very well write their own Gmail to compete.&lt;/i&gt;
        &lt;/blockquote&gt;
        &lt;p&gt;
Integrating a calendaring application with an email application seems pretty obvious
to me especially since the most popular usage of calendaring applications is using
Outlook/Exchange to schedule meetings in corporate environments. What&amp;#39;s surprising
to me is how surprised people are that &lt;a href=&quot;http://news.com.com/2100-1023-219412.html?legacy=cnet&quot;&gt;an
idea that failed in 1990s&lt;/a&gt; will turn out any differently now because you sprinkle
the AJAX magic pixie dust on it. 
&lt;/p&gt;
        &lt;p&gt;
          &lt;a href=&quot;http://www.kiko.com/&quot;&gt;Kiko&lt;/a&gt; was a feature, not a full-fledged online destination
let alone a viable business. There&amp;#39;ll be a lot more entrants into the &lt;a href=&quot;http://www.techcrunch.com/tag/deadpool&quot;&gt;TechCrunch
deadpool&lt;/a&gt; that are features masquerading as companies before the &amp;#39;Web 2.0&amp;#39; hype
cycle runs its course. 
&lt;/p&gt;&amp;quot;

&lt;p&gt;(Via &lt;a href=&quot;http://www.25hoursaday.com/weblog/&quot;&gt;Dare Obasanjo aka Carnage4Life&lt;/a&gt;.)&lt;/p&gt;
&lt;/blockquote&gt;</description></item><item><title>OpenLink Ajax Toolkit (OAT) 1.0 Released</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-08-08#1023</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1023#comments</comments><pubDate>Tue, 08 Aug 2006 22:11:45 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-08-09T05:12:48-04:00</n0:modified><description>&lt;p&gt;
We have finally released the 1.0 edition of OAT.
&lt;/p&gt;
&lt;p&gt;
OAT offers a broad Javascript-based, browser-independent widget set  
&lt;br /&gt;for building data source independent rich internet applications that are usable across a broad range of Ajax-capable web browsers.
&lt;/p&gt;
&lt;p&gt;
OAT&amp;#39;s support binding to the following data sources via its Ajax Database Connectivity Layer:
&lt;/p&gt;
&lt;p&gt;
SQL Data via XML for Analysis (XMLA)
&lt;br /&gt;Web Data via SPARQL, GData, and OpenSearch Query Services
&lt;br /&gt;Web Services specific Data via service specific binding to SOAP and REST style web services
&lt;/p&gt;
&lt;p&gt;
The toolkit includes a collection of powerful rich internet application prototypes include: SQL Query By Example, Visual Database Modeling, and Data bound Web Form Designer.
&lt;/p&gt;
&lt;p&gt;
Project homepage on sourceforge.net:
&lt;/p&gt;
&lt;p&gt;
&lt;span style=&quot;color:#0000ff;text-decoration:underline;&quot;&gt;http://sourceforge.net/projects/oat&lt;/span&gt;    
&lt;/p&gt;
&lt;p&gt;
Source Code:
&lt;/p&gt;
&lt;p&gt;
&lt;span style=&quot;color:#0000ff;text-decoration:underline;&quot;&gt;http://sourceforge.net/projects/oat/files&lt;/span&gt;    
&lt;/p&gt;
&lt;p&gt;
Live demonstration:
&lt;/p&gt;
&lt;p&gt;
&lt;span style=&quot;color:#0000ff;text-decoration:underline;&quot;&gt;http://www.openlinksw.com/oat/&lt;/span&gt;
&lt;/p&gt;</description></item><item><title>New Toolkit for Rich Web Applications</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-07-19#1014</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=1014#comments</comments><pubDate>Wed, 19 Jul 2006 00:26:36 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-07-18T21:39:38.000002-04:00</n0:modified><description>&lt;p&gt;
&lt;a href=&quot;http://tirania.org/blog/archive/2006/Jun-28-1.html&quot;&gt;New Toolkit for Rich Web Applications&lt;/a&gt;: &amp;quot;&lt;/p&gt;
&lt;p&gt;The other day I ran into &lt;a href=&quot;http://www.jitsu.org/jitsu/&quot;&gt;Jitsu&lt;/a&gt;, a new toolkit
	for creating Ajax-y applications.

	&lt;/p&gt;
&lt;p&gt;Jitsu takes an interesting &lt;a href=&quot;http://www.jitsu.org/jitsu/guide/approach.html&quot;&gt;approach&lt;/a&gt;
	in the Ajaxy space.&amp;quot;&lt;/p&gt;

&lt;p&gt;(Via &lt;a href=&quot;http://tirania.org/blog/index.html&quot;&gt;Miguel de Icaza&lt;/a&gt;.)&lt;/p&gt;</description></item><item><title>Contd: Ajax Database Connectivity Demos</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-06-01#988</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=988#comments</comments><pubDate>Fri, 02 Jun 2006 02:48:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>
&lt;p&gt; Last week I put out a series of screencast style demos that sought to demonstrate the core elements of our soon to be released Javascript Toolkit called OAT (&lt;a href=&quot;http://www.openlinksw.com/oat/&quot;&gt;OpenLink Ajax Toolkit&lt;/a&gt;) and its Ajax Database Connectivity layer. &lt;/p&gt; &lt;p&gt; The screencasts covered the following functionality realms: &lt;/p&gt; &lt;ol&gt; &lt;li&gt;   &lt;a href=&quot;http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&amp;id=982&quot;&gt;SQL Query By Example (basic)&lt;/a&gt; &lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&amp;id=983&quot;&gt;SQL Query By Example (advanced - pivot table construction)&lt;/a&gt; &lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&amp;id=981&quot;&gt;Web Form Design (basic database driven map based mashup)&lt;/a&gt; &lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&amp;id=985&quot;&gt;Web Form Design (advanced database driven map based mashup)&lt;/a&gt; &lt;/li&gt; &lt;/ol&gt; &lt;p&gt; To bring additional clarity to the screencasts demos and OAT in general, I have saved a number of documents that are the by products of activities in the screenvcasts: &lt;/p&gt; &lt;ol&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/public_demos/queries/customer_qry1.xml&quot;&gt;Live XML Document produced using SQL Query By Example (basic)&lt;/a&gt; (you can use drag and drop columns across the grid to reorder and sort presentation)&lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/public_demos/reports/Pivots/employee_sales_by_ship_country_pivot.xml&quot;&gt;Live XML Document produced using QBE and Pivot Functionality&lt;/a&gt; (you can drag and drop the aggregate columns and rows to create your own views etc..)&lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/public_demos/reports/MapMashups/country_flags_google_frm2.xml&quot;&gt;Basic database driven map based mashup&lt;/a&gt; (works with FireFox, Webkit, Camino; click on pins to see national flag)&lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/public_demos/reports/MapMashups/employee_sales_by_ship_country_pivot_google.xml&quot;&gt;Advanced database driven map based mashup&lt;/a&gt; (works with FireFox, Webkit, Camino; records, 36, 87, and 257 will unveil pivots via lookup pin)&lt;/li&gt; &lt;/ol&gt; &lt;p&gt; Notes: &lt;/p&gt; &lt;ul&gt; &lt;li&gt;“Advanced”, as used above,  simply means that I am embedding images (employee photos and national flags) and a database driven pivot into the map pins that serve as details lookups in classic SQL master/details type scenarios.&lt;/li&gt; &lt;li&gt;The “Ajax Call In Progress..” dialog is there to show live interaction with a remote database (in this case &lt;a href=&quot;http://virtuoso.openlinksw.com&quot;&gt;Virtuoso&lt;/a&gt; but this could be any ODBC, JDBC, OLEDB, ADO.NET, or XMLA accessible data source)&lt;/li&gt; &lt;li&gt;The data access magic source (if you want to call it that) is XMLA - a standard that has been in place for years but completely misunderstood and as a result under utilized&lt;/li&gt; &lt;/ul&gt; &lt;p&gt; You can see a full collection of saved documents at the following locations:   &lt;/p&gt; &lt;ul&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/public_demos/reports/MapMashups/&quot;&gt;My Mashups demo directory&lt;/a&gt; (Google and Yahoo! demo variants but note these do not work with Safari or IE at the current time. IE7 issues will be resolved in the next day or so) &lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/public_demos/reports/Pivots/&quot;&gt;My Pivots demo directory&lt;/a&gt; (other Pivots will be added as I build and save them) &lt;/li&gt; &lt;li&gt;   &lt;a href=&quot;http://demo.openlinksw.com/public_demos/queries/&quot;&gt;My Saved Queries&lt;/a&gt;  (a collection of saved QBE generated queries)&lt;/li&gt; &lt;/ul&gt;
</description></item><item><title>Screencast: Yahoo! Maps variation of Ajax Database Connectivity Maps Mash-up</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-05-26#986</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=986#comments</comments><pubDate>Fri, 26 May 2006 22:49:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>
  This is a Yahoo! maps variation of the &lt;a href=&quot;http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&amp;id=985&quot;&gt;Google Maps based Forms Designer mash-up screencast&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt; &lt;br /&gt;    
</description></item><item><title>Screencast: Building Database Centric Web 2.0 Mash-ups using Ajax Database Connectivity</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-05-26#985</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=985#comments</comments><pubDate>Fri, 26 May 2006 22:38:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>
     This screencast covers the actual codeless process of building a database centric Web 2.0 mash-up using OAT&amp;#39;s database-aware Forms Designer. This is basically the simplicity of Paradox or Microsoft ACCESS form building delivered via Ajax without any database or operating system lock-in. This demo uses the Google Mapping Service (note: there is a &lt;a href=&quot;http://www.openlinksw.com/dataspace/%7Ekidehen/blog/public/Screencasts/oat-formdesigner-mashup-yahoo-maps-demo1.mov&quot;&gt;Yahoo! Mapping Service screencast demo&lt;/a&gt; that follows this post). Also note that fact that in this demonstration I actually incorporate the Pivot building functionality from an earlier &lt;a href=&quot;http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&amp;id=983&quot;&gt;Ajax based Pivot Building screencast&lt;/a&gt;.&lt;br /&gt; &lt;br /&gt;       
</description></item><item><title>Screencast: Using a Live Report (mash-up) that exploits AJAX Database Connectivity</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-05-26#984</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=984#comments</comments><pubDate>Fri, 26 May 2006 22:27:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>
     Another demo. This time around you are looking at a quick and dirty mashup assembled using the &lt;a href=&quot;http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&amp;id=981&quot;&gt;OAT FormDesigner&lt;/a&gt;. There is a follow-on demo that shows how this was assembled (no coding whatsoever!).&lt;br /&gt;       
</description></item><item><title>Building Pivot Tables using Ajax Database Connectivity</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-05-26#983</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=983#comments</comments><pubDate>Fri, 26 May 2006 22:08:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2008-02-04T20:43:35.000004-05:00</n0:modified><description>
    This screencast demo (enclosure attached) is a continuation from my earlier &lt;a href=&quot;http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&amp;id=982&quot;&gt;Ajax and QBE screencast&lt;/a&gt; demo. This time the focus is on building Excel like Pivot tables using data exposed via Ajax Database Connectivity.&lt;br /&gt;      
</description></item><item><title>Screencast: Ajax Database Connectivity and SQL Query By Example</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-05-26#982</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=982#comments</comments><pubDate>Fri, 26 May 2006 21:59:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>
  AJAX Database Connectivity is the Data Access Component of OAT (&lt;a href=&quot;http://www.openlinksw.com/oat/&quot;&gt;OpenLink AJAX Toolkit&lt;/a&gt;). It&amp;#39;s basically an &lt;a href=&quot;http://www.xmla.org/&quot;&gt;XML for Analysis&lt;/a&gt; (XMLA) client that enables the development and deployment of database independent Rich Internet Applications (RIAs). Thus, you can now develop database centric AJAX applications without lock-in at the Operating System, Database Connectivity mechanism (ODBC, JDBC, OLEDB, ADO.NET), or back-end Database levels. &lt;br /&gt; &lt;br /&gt;XMLA has been around for a long time. Its fundamental goal was to provide Web Applications with Tabular and Multi-dimensional data access before it fell off the radar (a story too long to tell in this post).&lt;br /&gt; &lt;br /&gt;AJAX Database connectivity only requires your target DBMS to be XMLA (direct), ODBC, JDBC, OLEDB, or ADO.NET accessible. &lt;br /&gt; &lt;br /&gt;I have attached a Query By Example (QBE) screencast movie enclosure to this post (should you be reading this post Web 1.0 style). The demo shows how Paradox-, Quattro Pro-, Access-, and MS Query-like user friendly querying is achieved using AJAX Database  Connect Connectivity&lt;br /&gt; &lt;br /&gt;</description></item><item><title>A Web 2.0 Style Mash-up using the OpenLink Ajax Toolkit (OAT)</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-05-25#981</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=981#comments</comments><pubDate>Thu, 25 May 2006 20:47:00 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>
           We are now on the verge of finally releasing one of the many items discussed in my recent &lt;a href=&quot;http://www.usnet.private:8889/weblog/kidehen@openlinksw.com/127/index.vspx?page=&amp;id=965&amp;sid=e295397b4a9d07fa9c12baf31569aa97&amp;realm=wa&quot;&gt;chat with Jon Udell&lt;/a&gt;. The item in question is the OpenLink Ajax Toolkit (OAT) that enables the rapid development of Database Independent Rich Internet Applications. My very first public screencast is deliberately silent (since its a live work in progress etc.). &lt;br /&gt; &lt;br /&gt;The screencast style demo covers the production of a map based mashup that simply unveils the national flag of each country underneath its map marker (a lookup associated with geocoded map pin).&lt;br /&gt; &lt;br /&gt;This post is also a deliberate test of the automatic production of IPod and Yahoo RSS sytle syndication gems based on the content of my blog post. Naturally, this is a demonstration of the soon to be unveiled OpenLink Data Spaces technology (the one that supports GData and SPARQL Query Services).&lt;br /&gt; &lt;br /&gt;BTW - The the Data Space that is this blog has been &lt;a href=&quot;http://www.openlinksw.com/dataspace/%7Ekidehen/GData&quot;&gt;GData&lt;/a&gt; aware for a few weeks now (I digress, just watch the movie!):&lt;br /&gt; &lt;br /&gt;Note: If you are reading this post Web 1.0 style (i.e. via traditional non aggregating browser UI) then click on the &amp;quot;enclosure&amp;quot; link to grab the quicktime movie file. If on the other hand your are reading via a Web 2.0 aggregator, note that the Podcast Gem should alert you to the existence of the movie enclosure.&lt;br /&gt;             
</description></item><item><title>New XTech web site, and why we don&#39;t sell presentation space</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-03-14#939</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=939#comments</comments><pubDate>Tue, 14 Mar 2006 21:24:26 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>&lt;p&gt;
&lt;a href=&quot;http://times.usefulinc.com/2006/03/14-xtech&quot;&gt;New XTech web site, and why we don&amp;#39;t sell presentation space&lt;/a&gt;: &amp;quot;&lt;/p&gt;
&lt;p&gt;My too-long absence from writing much here can be ascribed to two, differently pleasant, activities. First, a fantastic vacation in Cuba, and second, the redesign and launch of the &lt;a href=&quot;http://xtech06.usefulinc.com/&quot;&gt;XTech web site&lt;/a&gt;.&lt;/p&gt;
&lt;p&gt;Of the first, come to my place for dinner and I&amp;#39;ll bore you at length about how amazing it was. Of the second, I&amp;#39;d like to bore you right now!&lt;/p&gt;
&lt;p&gt;Thanks to Ruby on Rails and a few late nights, the XTech site now has these new features:&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;
  &lt;a href=&quot;http://xtech06.usefulinc.com/schedule&quot;&gt;Full conference schedule&lt;/a&gt; (apart from 6 Mozilla talks I&amp;#39;m still nailing down)&lt;/li&gt;
&lt;li&gt;
  &lt;a href=&quot;http://xtech06.usefulinc.com/&quot;&gt;A blog&lt;/a&gt;. With go-faster Atom 1.0 stripes and everything!&lt;/li&gt;
&lt;li&gt;Details on the newly-added &lt;a href=&quot;http://xtech06.usefulinc.com/content/ajax&quot;&gt;Ajax Developers&amp;#39; Day&lt;/a&gt;.&lt;/li&gt;
&lt;/ul&gt;
&lt;p&gt;A few more details on the Ajax Developers&amp;#39; Day. As I mentioned before, when putting together the schedule we felt there was a lot of excellent content still missed out (I&amp;#39;m still feeling guilty at having rejected proposals from many good friends and excellent speakers). So, we put together an extra day at the beginning of the conference where we could go further into detail on Ajax technologies.&lt;/p&gt;
&lt;p&gt;This day, featuring speakers such as Simon Willison from Yahoo!, XML expert Kurt Cagle and OpenLaszlo&amp;#39;s Max Carlson, will allow those working on Ajax projects--either deployment or toolkits--to meet, discuss best practice and move forward on new ideas. Although it&amp;#39;s a day-long event, we didn&amp;#39;t want to make the price tag as high as a full-day tutorial, so you can &lt;a href=&quot;http://xtech06.usefulinc.com/content/registration&quot;&gt;register&lt;/a&gt; for the cost of a half-day tutorial.&lt;/p&gt;
&lt;h4&gt;A few implementation details&lt;/h4&gt;
&lt;p&gt;If that all sounded a little like advertising, here are some technical details worth sharing. The site&amp;#39;s CMS is built on Ruby on Rails. Development was done on Linux, with the help of WINE to check out the view from Internet Explorer. The &lt;a href=&quot;http://xtech06.usefulinc.com/public/newsletter&quot;&gt;newsletter&lt;/a&gt; is managed by the absurdly wonderful &lt;a href=&quot;http://www.campaignmonitor.com/&quot;&gt;CampaignMonitor&lt;/a&gt;.&lt;/p&gt;
&lt;h4&gt;This conference not for sale&lt;/h4&gt;
&lt;p&gt;Before I went on vacation, there was some debate in various quarters about paid-for plenary and keynote slots in conferences. Though I hope it is obvious, I wanted to state where I, and thus the XTech conference, stand on this issue.&lt;/p&gt;
&lt;p&gt;It has always been my policy to maintain a strict separation between the commercial and editorial aspects of XTech. Although each year there&amp;#39;s always a company who thinks they can buy a speaking slot, I never let this happen. The content of the conference is formed by editorial selection by the programme committee, who take the scores from the peer review panel as their primary guide.&lt;/p&gt;
&lt;p&gt;Aside from what I hope shows in the excellent quality of the talks and generally interesting keynotes (yes, we get it wrong occasionally!), there are two effects on the conference.&lt;/p&gt;
&lt;ul&gt;
 &lt;li&gt;Sponsors are that much more respected. When a sponsor respects the delegates&amp;#39; time and intelligence, but still attends, you know they&amp;#39;re serious about engagement with attendees.&lt;br /&gt;
 &lt;/li&gt;
&lt;li&gt;A higher portion of the conference cost is in the registration fees than for some other conferences. We&amp;#39;re still trying to keep the costs as low as we can, but we&amp;#39;re not prepared to compromise the quality of the schedule by letting vendors buy talk time. &lt;/li&gt;
&lt;/ul&gt;I hope this explains a little of my position. As a stance, it often creates more issues for me than it solves, but I believe it preserves XTech&amp;#39;s reputation as a conference where you can hear some of the best no-fluff presentations on web technology.&lt;br /&gt;&amp;quot;

&lt;p&gt;(Via &lt;a href=&quot;http://times.usefulinc.com/&quot;&gt;Edd Dumbill&amp;#39;s Weblog: Behind the Times&lt;/a&gt;.)&lt;/p&gt;</description></item><item><title>Design Pattern: Read/Write Div</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-01-26#927</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=927#comments</comments><pubDate>Thu, 26 Jan 2006 13:06:36 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>
&lt;p&gt;
&lt;a href=&quot;http://ajaxian.com/archives/design-pattern-readwrite-div&quot;&gt;Design Pattern: Read/Write Div&lt;/a&gt;: &amp;quot;&lt;/p&gt;
&lt;p&gt;Jonathan Boutelle has written about, what he calls, the &lt;a href=&quot;http://www.jonathanboutelle.com/mt/archives/2006/01/ajax_design_pat.html&quot;&gt;Read/Write Div pattern&lt;/a&gt;.&lt;/p&gt; 	&lt;blockquote&gt; 	&lt;b&gt;What is the Read/Write Div pattern?&lt;/b&gt; 	&lt;p&gt;A new AJAX convention cropping up in a few places, one that is easy to implement and has real benefit to end users. I haven’t found a description of it anywhere, so I thought I’d write it up here.&lt;/p&gt; 	&lt;p&gt;The basic idea is that user controls (typically for editing the displayed data) should be hidden from the user until needed. At ‘rest’, an area of the screen displays information in read-only fashion. &lt;/p&gt; 	&lt;b&gt;Why the Read/Write Div Works&lt;/b&gt; 	&lt;p&gt;Fewer controls means that the user has to make fewer choices before taking an action, and therefore it takes less time for the user to choose which item to click on. The technical term for this effect is ‘Hicks Law’.&lt;/p&gt; 	&lt;p&gt;Also, the ‘read-only’ view of the data takes up much less space than the ‘read-write’ view does, so much more information can be packed into a given page, which means that the user doesn’t have to scroll down to read content. Avoiding the scrolling saves the user a measureable amount of time while browsing (3.05 seconds, according to my back-of-the-envelope GOMS keystroke analysis). &lt;/p&gt; 	&lt;p&gt;
  &lt;a href=&quot;http://www.usernomics.com/news/2006/01/ajax-design-pattern-readwrite-div.html&quot;&gt;&lt;img src=&quot;http://ajaxian.com/wp-content/images/readwritedivpattern.jpg&quot; alt=&quot;ReadWrite Div Pattern&quot; border=&quot;0&quot; height=&quot;361&quot; width=&quot;235&quot; /&gt;
  &lt;/a&gt;
&lt;/p&gt;
&lt;/blockquote&gt;  &lt;div class=&quot;feedflare&quot;&gt;
 &lt;a href=&quot;http://feeds.feedburner.com/%7Ef/ajaxian?a=a4ssZyRX&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/%7Ef/ajaxian?i=a4ssZyRX&quot; border=&quot;0&quot; /&gt;
 &lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/%7Ef/ajaxian?a=h0P2MErn&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/%7Ef/ajaxian?i=h0P2MErn&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/%7Ef/ajaxian?a=4pdOaWls&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/%7Ef/ajaxian?i=4pdOaWls&quot; border=&quot;0&quot; /&gt;&lt;/a&gt; &lt;a href=&quot;http://feeds.feedburner.com/%7Ef/ajaxian?a=D3dLrHwC&quot;&gt;&lt;img src=&quot;http://feeds.feedburner.com/%7Ef/ajaxian?i=D3dLrHwC&quot; border=&quot;0&quot; /&gt;&lt;/a&gt;
&lt;/div&gt;&amp;quot;  &lt;p&gt;(Via &lt;a href=&quot;http://ajaxian.com&quot;&gt;Ajaxian Blog&lt;/a&gt;.)&lt;/p&gt;
</description></item><item><title>what is web 2.0?</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-11-18#909</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=909#comments</comments><pubDate>Fri, 18 Nov 2005 21:49:15 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>&lt;p&gt;&lt;a href=&quot;http://blog.del.icio.us/blog/2005/11/there_has_been_.html&quot;&gt;what is web 2.0?&lt;/a&gt;: &amp;quot;
&lt;/p&gt;&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;&lt;p&gt;&lt;a href=&quot;http://blog.del.icio.us/.shared/image.html?/photos/uncategorized/graph1.png&quot; onclick=&quot;window.open(this.href, &#39;_blank&#39;, &#39;width=600,height=463,scrollbars=no,resizable=no,toolbar=no,directories=no,location=no,menubar=no,status=no,left=0,top=0&#39;); return false&quot;&gt;&lt;img height=&quot;77&quot; border=&quot;0&quot; alt=&quot;Graph1&quot; width=&quot;100&quot; src=&quot;http://blog.del.icio.us/blog/images/graph1.png&quot; style=&quot;float: left; margin: 0px 5px 5px 0px;&quot; title=&quot;Graph1&quot; /&gt;&lt;/a&gt;There has been lot of discussion about what Web 2.0 really is, so we thought we’d use the power of Web 2.0 itself to come up with the answer, and here it is:&lt;/p&gt;&lt;p&gt;42.&lt;/p&gt;
&lt;p&gt;Just kidding. What we actually did was take a look at all the tag data going back to February 2004 (the month of the first use of Web 2.0 as a tag on del.icio.us), and analyzed all the bookmarks and tags related to the term. We can report that as of October 31, 2005 there have been over 230,000 separate bookmarks and over 7,000 unique tags associated with the term ‘Web 2.0’ by del.icio.us users. So for this exercise, we lopped off the really long tail and normalized some similar terms (e.g. combining blog, blogs, and blogging), and came up with this snapshot of what Web 2.0 REALLY is – at least according to del.icio.us users&amp;#39; most popular tags through the end of October 2005:&lt;/p&gt;
&lt;table&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://del.icio.us/tag/ajax&quot;&gt;ajax&lt;/a&gt;&lt;/td&gt;&lt;td&gt;9.9%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://del.icio.us/tag/blog&quot;&gt;blog&lt;/a&gt;&lt;/td&gt;&lt;td&gt;6.1%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://del.icio.us/tag/social&quot;&gt;social&lt;/a&gt;&lt;/td&gt;&lt;td&gt;4.2%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://del.icio.us/tag/tools&quot;&gt;tools&lt;/a&gt;&lt;/td&gt;&lt;td&gt;4.1%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://del.icio.us/tag/software&quot;&gt;software&lt;/a&gt;&lt;/td&gt;&lt;td&gt;3.3%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://del.icio.us/tag/tagging&quot;&gt;tagging&lt;/a&gt;&lt;/td&gt;&lt;td&gt;3.3%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://del.icio.us/tag/javascript&quot;&gt;javascript&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2.8%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://del.icio.us/tag/internet&quot;&gt;internet&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2.6%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://del.icio.us/tag/programming&quot;&gt;programming&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2.5%&lt;/td&gt;&lt;/tr&gt;
&lt;tr&gt;&lt;td&gt;&lt;a href=&quot;http://del.icio.us/tag/rss&quot;&gt;rss&lt;/a&gt;&lt;/td&gt;&lt;td&gt;2.5%&lt;/td&gt;&lt;/tr&gt;
&lt;/table&gt;

&lt;p&gt;Other notable tags included 
&lt;a href=&quot;http://del.icio.us/tag/rubyonrails&quot;&gt;rubyonrails&lt;/a&gt; (1.8%),
&lt;a href=&quot;http://del.icio.us/tag/del.icio.us&quot;&gt;del.icio.us&lt;/a&gt; (1.6%),
&lt;a href=&quot;http://del.icio.us/tag/folksonomy&quot;&gt;folksonomy&lt;/a&gt; (1.4%),
&lt;a href=&quot;http://del.icio.us/tag/community&quot;&gt;community&lt;/a&gt; (1.1%),
&lt;a href=&quot;http://del.icio.us/tag/wiki&quot;&gt;wiki&lt;/a&gt; (.9%),
&lt;a href=&quot;http://del.icio.us/tag/flickr&quot;&gt;flickr&lt;/a&gt; (.8%),
&lt;a href=&quot;http://del.icio.us/tag/free&quot;&gt;free&lt;/a&gt; (.7%),
&lt;a href=&quot;http://del.icio.us/tag/trends&quot;&gt;trends&lt;/a&gt; (.6%),
&lt;a href=&quot;http://del.icio.us/tag/flock&quot;&gt;flock&lt;/a&gt; (.4%) and
&lt;a href=&quot;http://del.icio.us/tag/googlemaps&quot;&gt;googlemaps&lt;/a&gt; (.3%).&lt;/p&gt;
&lt;p&gt;So there you have it - interesting, but it still seems to fall short of a definitive answer. Maybe the blinding flash of the obvious is that Web 2.0 is best defined as arguing about what Web 2.0 is really about.&lt;/p&gt;&lt;/div&gt;
&amp;quot;

&lt;p&gt;(Via &lt;a href=&quot;http://blog.del.icio.us/blog/&quot;&gt;del.icio.us&lt;/a&gt;.)&lt;/p&gt;&lt;a href=&quot;index.vspx?tag=webservices&quot; rel=&quot;tag&quot; style=&quot;display:none;&quot;&gt;webservices&lt;/a&gt;&lt;a href=&quot;index.vspx?tag=web2.0&quot; rel=&quot;tag&quot; style=&quot;display:none;&quot;&gt;web2.0&lt;/a&gt;&lt;a href=&quot;index.vspx?tag=web20&quot; rel=&quot;tag&quot; style=&quot;display:none;&quot;&gt;web20&lt;/a&gt;&lt;a href=&quot;index.vspx?tag=ajax&quot; rel=&quot;tag&quot; style=&quot;display:none;&quot;&gt;ajax&lt;/a&gt;</description></item><item><title>Ajax-S: Ajaxian slideshow software</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-11-16#905</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=905#comments</comments><pubDate>Wed, 16 Nov 2005 20:50:32 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>&lt;blockquote&gt;&lt;p&gt;&lt;a href=&quot;http://www.ajaxian.com/archives/2005/11/ajaxs_ajaxian_s.html&quot;&gt;Ajax-S: Ajaxian slideshow software&lt;/a&gt;: &amp;quot;The idea came to me because I wanted a lightweight slideshow based on HTML, CSS and JavaScript, but I also wanted to separate the data of each page from the actual code that presents it. Therefore, I decided to move the data into an XML file and then use AJAX to retrieve it. The name AJAX-S is short for AJAX-Slides (or Asynchronous JavaScript and XML Slides, if you want to).&amp;quot;&lt;/p&gt;&lt;p&gt;(Via &lt;a href=&quot;http://www.ajaxian.com/&quot;&gt;Ajaxian Blog&lt;/a&gt;.)&lt;/p&gt;&lt;/blockquote&gt;&lt;p&gt;AJAX is clearly illuminating one of my pet issues: Separation of Application/Service Logic and Data. Even better, the concept of XML instance data is gradually getting much clearer. AJAX has created context for validating the concept of browser hosted Rich Internet Applications (RIA).&lt;/p&gt;&lt;p&gt;AJAX has become a widely accepted framework for the InternetOS that facilitates Rich Internet Application development using Web 2.0 (and beyond) APIs.&lt;/p&gt;</description></item><item><title>Solutions to allow XMLHttpRequest to talk to external services</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-11-11#900</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=900#comments</comments><pubDate>Fri, 11 Nov 2005 21:01:15 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-07-21T07:23:03.000001-04:00</n0:modified><description>&lt;blockquote&gt;&lt;p&gt;&lt;a href=&quot;http://www.ajaxian.com/archives/2005/11/solutions_to_al.html&quot;&gt;Solutions to allow XMLHttpRequest to talk to external services&lt;/a&gt;: &amp;quot;&lt;/p&gt;&lt;p&gt;Over on XML.com they published &lt;a href=&quot;http://www.xml.com/pub/a/2005/11/09/fixing-ajax-xmlhttprequest-considered-harmful.html&quot;&gt;Fixing AJAX: XmlHttpRequest Considered Harmful&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;This article discusses a few ways to get around the security constraints that we have to live with in the browsers theses days, in particular, only being able to talk to your domain via XHR.&lt;/p&gt;

&lt;p&gt;The article walks you through three potential solutions:&lt;/p&gt;

&lt;ol&gt;
&lt;li&gt;&lt;strong&gt;Application proxies&lt;/strong&gt;. Write an application in your favorite programming language that sits on your server, responds to &lt;code&gt;XMLHttpRequest&lt;/code&gt;s from users, makes the web service call, and sends the data back to users.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Apache proxy&lt;/strong&gt;. Adjust your Apache web server configuration so that &lt;code&gt;XMLHttpRequest&lt;/code&gt;s can be invisibly re-routed from your server to the target web service domain.&lt;/li&gt;
&lt;li&gt;&lt;strong&gt;Script tag hack with application proxy&lt;/strong&gt; (doesn&amp;#39;t use &lt;code&gt;XMLHttpRequest&lt;/code&gt; at all). Use the HTML &lt;code&gt;script&lt;/code&gt; tag to make a request to an application proxy (see #1 above) that returns your data wrapped in JavaScript. This approach is also known as &lt;a href=&quot;http://ajaxpatterns.org/On-Demand_Javascript&quot;&gt;On-Demand JavaScript&lt;/a&gt;.&lt;/li&gt;
&lt;/ol&gt;

&lt;p&gt;I can&amp;#39;t wait for &lt;em&gt;Trusted Relationships&lt;/em&gt; within the browser - server infrastructure. &lt;/p&gt;

&lt;p&gt;With respect to Apache proxies, these things are priceless. I recently talked about them in relation to &lt;a href=&quot;http://www.almaer.com/blog/archives/001099.html&quot;&gt;Migrating data centers with zero downtime&lt;/a&gt;.&lt;/p&gt;

&lt;p&gt;What do you guys think about this general issue? Have you come up with any interesting solutions? Any ideas on how we can keep security, yet give us the freedom that we want?&lt;/p&gt;

&lt;p&gt;(Via &lt;a href=&quot;http://www.ajaxian.com/&quot;&gt;Ajaxian Blog&lt;/a&gt;.)&lt;/p&gt;&lt;/blockquote&gt;

&lt;p&gt;Well here is what I think (actually know): &lt;/p&gt;
&lt;p&gt;Our &lt;a href=&quot;http://virtuoso.openlinksw.com&quot;&gt;Virtuoso Universal Server&lt;/a&gt; has been sitting waiting to deliver this for years (for the record see the &lt;a href=&quot;http://www.openlinksw.com/press/v2releas.htm&quot;&gt;Virtuoso 2000 Press Release&lt;/a&gt;). Virtuoso can proxy for disparate data sources and expose disparate data as Well-Formed XML using an array of vocabularies (you experience this SQL-XML integration on the fly every time you interact with various elements of my &lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/&quot;&gt;public blog&lt;/a&gt;).&lt;/p&gt;

&lt;p&gt;Virtuoso has always been able to expose Application Logic as SOAP and/or RESTful/RESTian style XML Web Services. &lt;a href=&quot;http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&quot;&gt;This blog&amp;#39;s search page&lt;/a&gt; is a simple demo of this capability.&lt;/p&gt;

&lt;p&gt;Virtuoso is basically a Junction Box / Aggregator / Proxy for disparate Data, Applications, Services, and BPEL compliant business processes. AJAX clients talk to this single multi-purpose server which basically acts as a conduit to content/data, services, and processes (which are composite services).&lt;/p&gt;

&lt;p&gt;BTW - there is a lot more, but for now, thou shall have to seek in order to find :-)
&lt;/p&gt;</description></item><item><title>TechCrunch Top Web 2.0 VCs</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-10-20#876</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=876#comments</comments><pubDate>Thu, 20 Oct 2005 03:50:55 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>&lt;p&gt;&lt;span style=&quot;font-family:Verdana;font-size:10pt;&quot;&gt;
By way of the upcoming &lt;a href=&quot;http://wiki.techcrunch.com/third_meetup&quot;&gt;TechCrunch âun-conferenceâ style demo-brainstorm-fest Wiki&lt;/a&gt; I came across a blog post by &lt;a href=&quot;http://www.techcrunch.com/&quot;&gt;Michael Arrington&lt;/a&gt; titled: &lt;a href=&quot;http://www.techcrunch.com/2005/10/19/top-five-web-20-venture-capitalists/&quot;&gt;Top 5 Web 2.0 VCs&lt;/a&gt;. Here is the entire list (Top 5, Notables, and Up and Coming) extracted from the post (see &lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/index.vspx?page=linkblog&quot;&gt;my linkblog page&lt;/a&gt; to get some insight into the motivation behind this post): &lt;/span&gt;
&lt;/p&gt;&lt;blockquote&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.bvp.com/about/bio.asp?id=7&quot; id=&quot;7&quot;&gt;David Cowan&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; is a partner at &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.bvp.com/&quot;&gt;Bessemer Venture Partners&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; and writes a blog called &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://whohastimeforthis.blogspot.com/&quot;&gt;Who Has Time For This&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;. Heâs on this list partially because he incubated the hottest and most anticipated company on the web right now, Flock.
&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.dfj.com/team/tim_bio.shtml&quot;&gt;Tim Draper&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; invested in Skype. Done. He also sits on the board of SocialText, and his fund was in Baidu.
&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.augustcap.com/team/dh.shtml&quot;&gt;David Hornik&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; is is a General Partner at August Capital and writes a &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.ventureblog.com/&quot;&gt;blog&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; that has over 10,000 RSS readers.
&lt;br /&gt;Josh Kopelman, through &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.firstroundcapital.com/&quot;&gt;FirstRoundCapital&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;, is quietly filtering through just about every young web 2.0 company, and investing in many of them.
&lt;br /&gt;&lt;br /&gt;Fred Wilson is a founding partner of &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.unionsquareventures.com/&quot;&gt;Union Square Ventures&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; and writes the extremely popular &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://avc.blogs.com/a_vc/&quot;&gt;A VC&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;. If you are new to web 2.0, start with his &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://avc.blogs.com/a_vc/2005/02/blogging_10.html&quot;&gt;Blogging 1.0&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; post.
&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://softtechvc.blogs.com&quot;&gt;Jeff Clavier&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; - &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://softtechvc.blogs.com/about.html&quot;&gt;Jeff&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; is a former VC and still makes the odd angel investment (Feedster, Truveo, and a few others). His &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.softtechvc.com/&quot;&gt;new venture&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; allows him to work with pre-funding companies and get them ready for prime time.
&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.feld.com/blog/&quot;&gt;Brad Feld&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; - Brad is a managing director at &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.mobiusvc.com/index.php&quot;&gt;Mobius Venture Capital&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; and writes a must-read web 2.0 blog called Feld Thoughts. Read his &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.feld.com/blog/archives/term_sheet/index.html&quot;&gt;posts on Term Sheets&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; if you are in the process of raising capital. 
&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.oatv.com/&quot;&gt;OâReilly AlphaTech Ventures&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-size:9pt;&quot;&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; - This is the only non-person on here. &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.oatv.com/&quot;&gt;OATV&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; just closed a $50 million fund to invest in young companies. Given the incredible access Tim OâReilly has to these companies, OATV could quickly become an important fund in the web 2.0 space.
&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://pierre.typepad.com/&quot;&gt;Pierre Omidyar&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; - &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://pierre.typepad.com/&quot;&gt;Pierre&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; founded ebay and is the Co-founder of &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.omidyar.net/index.html&quot;&gt;Omidyar Network&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;, where heâs invested in a number of interesting companies including EVDB, SocialText and Feedster, and others.
&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://earlystagevc.typepad.com/&quot;&gt;Peter Rip&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; - Peter is a founding partner of &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.leapfrogventures.com/&quot;&gt;Leapfrog Ventures&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;, a $100 million fund. Peter also writes &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://earlystagevc.typepad.com/&quot;&gt;Early Stage VC&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;, another must-read blog. His investments include ojos, an incredible new photo-metadata service that is going to be extremely disruptive (and useful).
&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.thefoundersfund.com/index.html&quot;&gt;Peter Thiel&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; - Peter, the former CEO of paypal, has invested in LinkedIn, Friendster, LinkedIn and other web 2.0 companies. Heâs just created the &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.thefoundersfund.com/index.html&quot;&gt;Founders Fund&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-size:9pt;&quot;&gt;.
&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;color:#51796f;font-size:9pt;&quot;&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.austinventures.com/team/teammember.asp?id=81&quot; id=&quot;81&quot;&gt;Thomas Ball&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; - &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.austinventures.com/team/teammember.asp?id=81&quot; id=&quot;81&quot;&gt;Tom&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; is a Venture Partner at Austin Ventures, a fund with $3 billion under management. Heâs their consumer and web 2.0 guy and seems to be spending a lot of time in Silicon Valley and at web 2.0 event.
&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.venrock.com/bio_deg.html&quot;&gt;Dan Grossman&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; - &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.venrock.com/bio_deg.html&quot;&gt;Dan&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; is a principal at Venrock Associates and has recently started a great blog called &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.aventureforth.com/&quot;&gt;A Venture Forth&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; (where he wrote a much bookmarked post on &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.aventureforth.com/2005/09/06/top-10-ajax-applications/&quot;&gt;Ajax&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;).
&lt;br /&gt;&lt;br /&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.shastaventures.com/pressman.htm&quot;&gt;Jason Pressman&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; - &lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt;&lt;a href=&quot;http://www.shastaventures.com/pressman.htm&quot;&gt;Jason&lt;/a&gt;&lt;/span&gt;&lt;span style=&quot;font-family:Verdana;font-size:9pt;&quot;&gt; is a principal at Shasta Ventures, a young $200 million fund that has a deep commitment to and expertise in consumer-focused businesses.
&lt;br /&gt;&lt;/span&gt;&lt;/blockquote&gt;</description></item><item><title>Web 2.0 Conference Trip Report: Mash-ups 2.0 - Where#39s the Business Model?</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-10-06#871</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=871#comments</comments><pubDate>Thu, 06 Oct 2005 18:43:31 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>&lt;p&gt;Great report from Dare as usual :-) 
Beyond the obvious value of the post (information wise), I am also using the post placement here as a simple demonstration of what Blogs can offer (if driven or built atop a Web 2.0+ platform like&lt;a href=&quot;http://www.openlinksw.com/virtuoso&quot;&gt; Virtuoso&lt;/a&gt;). See the post that follows...&lt;/p&gt;&lt;blockquote&gt;&lt;p&gt;&lt;a href=&quot;http://www.25hoursaday.com/weblog/PermaLink.aspx?guid=fe52dada-78e0-4508-80c2-8764d9668651&quot;&gt;Web 2.0 Conference Trip Report: Mash-ups 2.0 - Where&amp;#39;s the Business Model?&lt;/a&gt;: &amp;quot;&lt;/p&gt;&lt;p&gt;
      I attended the panel on business models for mash-ups hosted by &lt;a href=&quot;http://www.web2con.com/cs/web2005/view/e_spkr/2453&quot;&gt;DaveÂ McClure&lt;/a&gt;,&lt;br /&gt;&lt;a href=&quot;http://www.web2con.com/cs/web2005/view/e_spkr/1637&quot;&gt;JeffreyÂ McManus&lt;/a&gt;,Â &lt;a href=&quot;http://www.web2con.com/cs/web2005/view/e_spkr/2277&quot;&gt;PaulÂ Rademacher&lt;/a&gt;,
      and &lt;a href=&quot;http://www.web2con.com/cs/web2005/view/e_spkr/1518&quot;&gt;AdamÂ Trachtenberg&lt;/a&gt;.
   &lt;/p&gt;&lt;p&gt;
      A mash up used to mean remixing two songs into something new and cool but now the
      term has been hijacked by geeks to means mixing two or more web-based data sources
      and/or services.
   &lt;/p&gt;&lt;p&gt;
      Paul Rademacher is theÂ author ofÂ the &lt;a href=&quot;http://www.housingmaps.com/&quot;&gt;Housing
      Maps mash-up&lt;/a&gt; which he usedÂ as a way to find a house using Craig&amp;#39;sList + Google
      Maps. The data obtained from Craig&amp;#39;s List is fetched via screen scraping. AlthoughÂ Craig&amp;#39;s
      List has RSS feeds, they didn&amp;#39;t meet his needs. Paul also talked about some of the
      issues he had with building the site such as the fact that since most browsers block
      cross-site scripting using XMLHttpRequest then a server needs to be set up to aggregate
      the data instead of all the code running in the browser. The site has been very popular
      and has garnered over 900,000 unique visitors based solely on word-of-mouth. 
   &lt;/p&gt;&lt;p&gt;
      The question was asked as to whyÂ he didn&amp;#39;t make this a businessÂ but instead
      took a job atÂ Google. HeÂ listed a number of very good reasons 
   &lt;/p&gt;&lt;ol&gt;&lt;li&gt;
         He did not own the data that was powering the application.&lt;/li&gt;&lt;li&gt;
         The barrier to entry for such an application was low since there was no unique intellectual
         property or user interface design to his application 
      &lt;/li&gt;&lt;/ol&gt;&lt;p&gt;
      I asked whether he&amp;#39;d gotten any angry letters from the legal department at Craig&amp;#39;s
      List and he said they seem to be tolerating him because he drives traffic to their
      site and caches a bunch of data on his servers so as not to hit their servers with
      a lot of traffic.Â 
   &lt;/p&gt;&lt;p&gt;
      A related mash-up site which scrapes real estate websites called &lt;a href=&quot;http://www.trulia.com/&quot;&gt;Trulia&lt;/a&gt; was
      then demoed. A member of the audience askedÂ whether Paul thoughtÂ the complexity
      of mash-ups using more than two data sources and/or services increased in a linear
      or exponential fashion. Paul saidÂ he felt it increased in a linear fashion.Â This
      segued into a demo of &lt;a href=&quot;http://www.simplyhired.com/&quot;&gt;SimplyHired&lt;/a&gt; with integrates
      with a number of sites including &lt;a href=&quot;http://www.payscale.com/&quot;&gt;PayScale&lt;/a&gt;, &lt;a href=&quot;http://www.linkedin.com/&quot;&gt;LinkedIn&lt;/a&gt;,
      Job databases, etc. 
   &lt;/p&gt;&lt;p&gt;
      At this point I asked whether they would have service providers giving their perspective
      on making money from mash-ups since they are the gating factor because they own the
      data and/or services mash-ups are built on.Â TheÂ reply was that the eBay
      &amp;amp; Yahoo folks would give their perspective later. 
   &lt;/p&gt;&lt;p&gt;
      Then we get a demo of aÂ &lt;a href=&quot;http://www.trachtenberg.com/emgm/&quot;&gt;Google Maps
      &amp;amp; eBay Motors mash-up&lt;/a&gt;. Unlike the &lt;a href=&quot;http://www.housingmaps.com/&quot;&gt;Housing
      Maps mash-up&lt;/a&gt;, all the data is queried live instead of cached on the server. eBay
      has dozens of APis that encourage people to build against their platform and they
      have an affiliates program so people can make money from building on their API. We
      also got showed &lt;a href=&quot;http://www.unwiredbuyer.com/&quot;&gt;Unwired Buyer&lt;/a&gt;Â which
      is a site that enables you to bid on eBay using your cell phone and even calls you
      just beforeÂ anÂ auction is about to close. Adam Trachtenberg pointed out
      that since there is a &lt;a href=&quot;http://share.skype.com/sdp&quot;&gt;Skype API&lt;/a&gt; perhaps some
      enterprising soul could mash-up eBay &amp;amp; Skype. 
   &lt;/p&gt;&lt;p&gt;
      Jeffrey McManus of Yahoo! pointed out that you don&amp;#39;t even need coding skills to build
      a Yahoo! Maps mash-up since all it takes is specifying your RSS feed with longitude
      and latitude elements on each item to have it embedded in the map. I asked why unlike
      Google Maps and MSN Virtual Earth, Yahoo! Maps doesn&amp;#39;t allow users to host the maps
      on their page nor does there seem to be an avenue for revenue sharing with mash-up
      authors via syndicated advertising. The response I got was that they polled various
      developers and there wasn&amp;#39;t significant interest in embedding the maps on developer&amp;#39;s
      sites especially when this would require paying for hosting. 
   &lt;/p&gt;&lt;p&gt;
      We then got showed a number mapping mashups includingÂ a mashup of the &lt;a href=&quot;http://geepster.com/london.php&quot;&gt;London
      bombings which used Google Maps, Flickr &amp;amp; RSS feeds of news&lt;/a&gt; (the presenter
      had the poor taste to point out opportunities to place ads on the site),Â a mashup
      from alkemis which &lt;a href=&quot;http://www.alkemis.com/default.php?pID=laboratory&amp;pID2=googleMapA&quot;&gt;mashes
      Google Maps, A9.com street level photos and traffic cams&lt;/a&gt;, and a mash-up from Analygis
      which &lt;a href=&quot;http://www.analygis.com/products/google_api.htm&quot;&gt;integrates census
      data with Google Maps data&lt;/a&gt;. 
   &lt;/p&gt;&lt;p&gt;
      The following items were then listed as the critical components of mash-ups&lt;br /&gt;
      Â - AJAX (Jeffrey McManusÂ said it isn&amp;#39;t key but a few of the guys on the
      panel felt that at least dynamic UIs are better) 
      &lt;br /&gt;
      Â - APIs&lt;br /&gt;
      Â - Advertising&lt;br /&gt;
      Â - Payment&lt;br /&gt;
      Â - Identity/Acct mgmt&lt;br /&gt;
      Â - Mapping Services&lt;br /&gt;
      Â - Content Hosting&lt;br /&gt;
      Â - Other?
   &lt;/p&gt;&lt;p&gt;
      On the topic of identity and account management, the problem of how mash-ups handle
      user passwords came up as a problem. If a website is password protected then user&amp;#39;s
      often have to enter their usernames and passwords into third party sites. An example
      of this was the fact that PayPal used to store lots of username/password information
      of eBay users which caused the company some consternation since eBay went through
      a lot of trouble to protect their sensitive data only to have a lot of it being stored
      on Paypal servers. 
   &lt;/p&gt;&lt;p&gt;
      eBay&amp;#39;s current solution is similar to that used by &lt;a href=&quot;http://www.passport.net&quot;&gt;Microsoft
      Passport&lt;/a&gt; in that applications are expected to have user&amp;#39;s login via the eBay website
      then the user is redirected to the originating website with a ticket indicating they
      have been authenticated. I pointed out that although this works fine for websites,
      it offers no solution for people trying to build desktop applications that are not
      browser based. The response I got indicated that eBay hasn&amp;#39;t solved this problem. 
   &lt;/p&gt;&lt;p&gt;
      My main comment about this panel is that it didn&amp;#39;t meet expectations. I&amp;#39;d expected
      to hear a discussion about turning mashups [and maybe the web platforms they are built
      on] into money making businesses. What I got was a show-and-tell of various mapping
      mashups. Disappointing. 
   &lt;/p&gt;&amp;quot;

&lt;p&gt;(Via &lt;a href=&quot;http://www.25hoursaday.com/weblog/&quot;&gt;Dare Obasanjo aka Carnage4Life&lt;/a&gt;.)&lt;/p&gt;&lt;/blockquote&gt;</description></item><item><title>Ajax, Hard Facts, Brass Tacks ... and Bad Slacks</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-04-29#825</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=825#comments</comments><pubDate>Fri, 29 Apr 2005 20:11:22 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>&lt;p&gt;By &lt;a href=&quot;http://internet-apps.blogspot.com/&quot;&gt;Mark Bierbeck&lt;/a&gt;:&lt;/p&gt;
&lt;p&gt;&lt;a href=&quot;http://internet-apps.blogspot.com/2005/04/ajax-hard-facts-brass-tacks-and-bad.html&quot;&gt;Ajax, Hard Facts, Brass Tacks ... and Bad Slacks&lt;/a&gt; &lt;/p&gt;
&lt;div xmlns=&quot;http://www.w3.org/1999/xhtml&quot;&gt;A number of people have contacted me recently about Ajax [&lt;a href=&quot;about:blank#20050426-1&quot;&gt;1&lt;/a&gt;] -- a catchy name -- coined to provide an umbrella term for a particular group of technologies used to build web applications. The use of the word comes from Jesse James Garrett in a recent blog [&lt;a href=&quot;about:blank#20050426-2&quot;&gt;2&lt;/a&gt;], and describes a class of internet applications written using JavaScript in a browser. By using JavaScript these apps have full access to the DOM, and as a consequence are able to make all sorts of changes to the page that the user is interacting with, without having to go back to the server.&lt;br&gt;&lt;br&gt;When the application &lt;em&gt;does&lt;/em&gt; need to go back to the server -- to deliver some data and get a response -- the idea is to keep the DOM intact so that the user has a smooth experience. This means that all communication with the server needs to take place outside of the normal HTML form mechanism, since this would obviously replace the current page.&lt;br&gt;&lt;br&gt;Ajax addressed this, with what it calls &#39;asynchronous-JavaScript&#39; -- retrieve only the data you need, and then directly manipulate the DOM to get the effect you want. &#39;Asynchronous-JavaScript&#39; accounts for the first few letters of the name, with the remainder being the obligatory &#39;X&#39; for XML (although XML is not really key to this technology, and many of the applications that are often cited as Ajax-apps don&#39;t use XML as the data medium).&lt;br&gt;&lt;br&gt;
&lt;h2&gt;Buzzing&lt;/h2&gt;The response to Ajax has been pretty positive. In fact the only negatives have been either to suggest a change of name or to moan a little that &quot;I&#39;ve been doing this for years, why hasn&#39;t anyone noticed me?&quot; (I won&#39;t put any links to those sort of articles, since they are a little embarassing -- after all, &lt;em&gt;everyone&lt;/em&gt; has been doing this for years!)&lt;br&gt;&lt;br&gt;Anyway, despite a couple of sour-pusses, the software community is almost universally excited, and the blog wires have glowed over the last few months with descriptions of Google Maps, GMail, and so on.&lt;br&gt;&lt;br&gt;Just about everyone who has asked me about Ajax has expected me to be disappointed. Surely, they say, this makes the case for XForms weaker? But my answer is the exact opposite -- XForms and standards-based web applications are in every way superior to the techniques described as Ajax, since the whole &lt;em&gt;raison d&#39;ÃÂªtre&lt;/em&gt; of XForms and XHTML 2 is to address the very problems that Ajax-like techniques suffer from.&lt;br&gt;&lt;br&gt;That may come across as a little bold...so perhaps I should explain.&lt;br&gt;&lt;br&gt;
&lt;h2&gt;From Workaround to Feature&lt;/h2&gt;We&#39;ve all been using HTML mark-up for years now, and the language hasn&#39;t changed much in that time. As a consequence, the increasing demand for more complex web-pages has meant that the balance in our documents has shifted increasingly from vanilla mark-up to &#39;the workaround&#39;. &lt;br&gt;&lt;br&gt;Whether it&#39;s providing tooltips, dynamic/repeating data sections, or small portions of our page that change without having to request a new document, we&#39;ve generally had to dive into script. But the shift from mark-up to script has meant that the mark-up language itself has been relegated to a mere carrier for programs.&lt;br&gt;&lt;br&gt;Unfortunately this means that no-one gains -- it&#39;s annoying for the programmer to have to produce ever more convoluted spaghetti JavaScript to meet the demands of their audience, but it&#39;s also annoying for the non-programmer, who probably only wants a tooltip. And its particularly annoying for those who want to use documents on the web for more ambitious applications to find that most of the important stuff in a document is hidden away in script.&lt;br&gt;&lt;br&gt;All is not lost, however, since this collection of &#39;workarounds&#39; provides a rich source of real-life patterns that appear for authors and programmers, time and again. They may be workarounds, but they are much-needed ones.&lt;br&gt;&lt;br&gt;The aim of the new generation of languages like XForms and XHTML 2 is to take these &#39;common patterns&#39; and turn them into mark-up. Just like the HTML elements &lt;code&gt;&amp;lt;a&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;form&amp;gt;&lt;/code&gt; pack an enormous amount of functionality into deceptively simple tags, so too can new declarative mark-up capture patterns that have emerged &#39;in the wild&#39;.&lt;br&gt;&lt;br&gt;(Note that this is the opposite of so-called folksonomies, where popular practice that occurs in the wild is left it the wild, and codification is regarded as a dirty word.)&lt;br&gt;&lt;br&gt;
&lt;h2&gt;The XML HTTP Request Object&lt;/h2&gt;Let&#39;s take the much talked about XML HTTP Request Object (XMLHttpRequest). If you are not familiar with it, it was originally part of Microsoft&#39;s XML parser, and allows you to send and receive data outside of the normal HTML form processing. Since it&#39;s a handy feature to have in a client, other browsers have followed suit and it&#39;s now becoming the &#39;standard&#39; way to communicate with servers without messing up your page. It&#39;s a corner-stone of Ajax. (A good summary with examples is on Jim Ley&#39;s jibbering.com site [&lt;a href=&quot;about:blank#20050426-3&quot;&gt;3&lt;/a&gt;].)&lt;br&gt;&lt;br&gt;But...we need to be clear that we&#39;re using XMLHttpRequest to get round a weakness in HTML forms. The problem we have is that even if you know that a server is about to give you some data, and the &lt;em&gt;server&lt;/em&gt; knows it&#39;s about to give you some data, there&#39;s no way to tell your &lt;em&gt;form&lt;/em&gt; that -- instead your page will be wiped out and replaced with whatever the server sends back.&lt;br&gt;&lt;br&gt;Of course, constant round-tripping doesn&#39;t make it completely impossible to produce applications, and a lot of books and airline tickets are bought every day without the facility to get &#39;just the data&#39;. But we all know it would reduce network traffic and create a smoother user experience if we could just send a list of books or seats, rather than a whole new page.&lt;br&gt;&lt;br&gt;Over the years applications such as Microsoft&#39;s &lt;em&gt;Outlook Web Access&lt;/em&gt; (OWA), have had to step around the HTML form to get just the data they need. But, whilst OWA considerably predates GMail, until the advent of XMLHttpRequest, the techniques used were quite difficult to manage. (Google Suggest is often cited as a good example of an Ajax-app, but interestingly merges old and new techniques; XMLHttpRequest is used to obtain a piece of JavaScript from a server, and this script contains a call to a client-side function, but using server-provided parameters. It&#39;s one of the techniques you might have used in the past with a hidden frame.)&lt;br&gt;&lt;br&gt;So as many have said on their blogs, XMLHttpRequest is not a newly devised technique, but rather a generally accepted replacement for a very old technique. But ultimately that technique is a workaround since the &lt;em&gt;real&lt;/em&gt; problem is that HTML forms will always replace the current page.&lt;br&gt;&lt;br&gt;&lt;br&gt;
&lt;h2&gt;Beyond HTML Forms&lt;/h2&gt;Whilst XMLHttpRequest gives us a way to get data to and from the server without losing our document, we&#39;ve unfortunately thrown the baby out with the bath-water; whatever the weaknesses of HTML forms, you have to acknowledge that they are pretty simple to use. Here&#39;s an abbreviated version of Google&#39;s search form (note that the mark-up is HTML, not XML):&lt;br&gt;&lt;code&gt;&lt;pre&gt;&lt;br&gt;&amp;lt;form action=/search name=f&amp;gt;&lt;br&gt;  &amp;lt;input type=hidden name=hl value=en&amp;gt;&lt;br&gt;  &amp;lt;input maxLength=256 size=55 name=q value=&quot;&quot;&amp;gt;&lt;br&gt;  &amp;lt;input type=submit value=&quot;Google Search&quot; name=btnG&amp;gt;&lt;br&gt;&amp;lt;/form&amp;gt;&lt;br&gt;
&lt;/pre&gt;&lt;/code&gt;&lt;br&gt;As you can see, the simple problem with HTML forms is that we don&#39;t say anything about where the data should go when we&#39;ve received it from the server. The assumption in HTML of old is that we are just doing a kind of &#39;super-navigation&#39;, and no matter what we send to the server, it will only ever give us back a new web-page. (To put it a different way, you could say that &lt;code&gt;&amp;lt;a&amp;gt;&lt;/code&gt; and &lt;code&gt;&amp;lt;form&amp;gt;&lt;/code&gt; are pretty much the same thing.)&lt;br&gt;&lt;br&gt;To see how this problem is resolved, let&#39;s code the same Google search in XForms:&lt;br&gt;&lt;code&gt;&lt;pre&gt;&lt;br&gt;&amp;lt;xf:submission id=&quot;sub-search&quot;&lt;br&gt; action=&quot;http://www.google.com/complete/search?hl=en&quot;&lt;br&gt; method=&quot;get&quot; separator=&quot;&amp;amp;&quot;&lt;br&gt; replace=&quot;all&quot;&lt;br&gt;/&amp;gt;&lt;br&gt;
&lt;br&gt;&amp;lt;xf:input ref=&quot;q&quot;&amp;gt;&lt;br&gt;  &amp;lt;xf:label&amp;gt;Query:&amp;lt;/xf:label&amp;gt;&lt;br&gt;&amp;lt;/xf:input&amp;gt;&lt;br&gt;
&lt;br&gt;&amp;lt;xf:submit submission=&quot;sub-search&quot;&amp;gt;&lt;br&gt;  &amp;lt;xf:label&amp;gt;Google Search&amp;lt;/xf:label&amp;gt;&lt;br&gt;&amp;lt;/xf:submit&amp;gt;&lt;br&gt;
&lt;/pre&gt;&lt;/code&gt;&lt;br&gt;Although it will do exactly the same -- right down to replacing the current page -- it&#39;s a little different to the HTML mark-up. But the changes in structure have given us some major benefits, from accessible labels on our form controls, to the possibility of many different submissions for the same data.&lt;br&gt;&lt;br&gt;But what it has also given us is the possibility of solving our data update problem. The &lt;code&gt;replace&lt;/code&gt; attribute is actually optional in XForms, but I showed it in the previous mark-up so that you can compare it to this:&lt;br&gt;&lt;code&gt;&lt;pre&gt;&lt;br&gt;&amp;lt;xf:submission id=&quot;sub-search&quot;&lt;br&gt; action=&quot;http://www.google.com/complete/search?hl=en&quot;&lt;br&gt; method=&quot;get&quot; separator=&quot;&amp;amp;&quot;&lt;br&gt; replace=&quot;&lt;span style=&quot;COLOR: red&quot;&gt;instance&lt;/span&gt;&quot;&lt;br&gt;/&amp;gt;&lt;br&gt;
&lt;/pre&gt;&lt;/code&gt;&lt;br&gt;In this example the data returned from the server will just replace the instance that was sent, and our page will remain completely intact. (The &lt;code&gt;replace&lt;/code&gt; attribute can take the values &lt;code&gt;all&lt;/code&gt;, &lt;code&gt;instance&lt;/code&gt;, or &lt;code&gt;none&lt;/code&gt;.)&lt;br&gt;&lt;br&gt;I won&#39;t show the full equivalent using XMLHttpRequest since it&#39;s pretty large, but I&#39;ll give a flavour of it. (Jim Ley&#39;s page -- referenced earlier -- shows how to search Google with XMLHttpRequest.)&lt;br&gt;&lt;br&gt;
&lt;h3&gt;The Script Version&lt;/h3&gt;First we need to create an XMLHttpRequest object, but we need to do it in such a way that it will work on both Mozilla and IE:&lt;br&gt;&lt;code&gt;&lt;pre&gt;&lt;br&gt;var req;&lt;br&gt;
&lt;br&gt;function loadXMLDoc(url) {&lt;br&gt;    // native XMLHttpRequest object&lt;br&gt;    if (window.XMLHttpRequest) {&lt;br&gt;        req = new XMLHttpRequest();&lt;br&gt;        req.onreadystatechange = readyStateChange;&lt;br&gt;        req.open(&quot;GET&quot;, url, true);&lt;br&gt;        req.send(null);&lt;br&gt;    // IE/Windows ActiveX version&lt;br&gt;    } else if (window.ActiveXObject) {&lt;br&gt;        req = new ActiveXObject(&quot;Microsoft.XMLHTTP&quot;);&lt;br&gt;        if (req) {&lt;br&gt;            req.onreadystatechange = readyStateChange;&lt;br&gt;            req.open(&quot;GET&quot;, url, true);&lt;br&gt;            req.send();&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;
&lt;/pre&gt;&lt;/code&gt;&lt;br&gt;When a document is loaded via this function, the &lt;code&gt;readyStateChange()&lt;/code&gt; method is invoked:&lt;br&gt;&lt;code&gt;&lt;pre&gt;&lt;br&gt;function readyStateChange() {&lt;br&gt;    // &#39;4&#39; means document &quot;loaded&quot;&lt;br&gt;    if (req.readyState == 4) {&lt;br&gt;        // 200 means &quot;OK&quot;&lt;br&gt;        if (req.status == 200) {&lt;br&gt;            // do something here&lt;br&gt;        } else {&lt;br&gt;            // error processing here&lt;br&gt;        }&lt;br&gt;    }&lt;br&gt;}&lt;br&gt;
&lt;/pre&gt;&lt;/code&gt;&lt;br&gt;From a &lt;em&gt;programming&lt;/em&gt; point of view, I guess you could say that there isn&#39;t a lot wrong with this, but then from a programming point of view there wasn&#39;t a lot wrong with Z80 or 6502 assembly languages -- I just wouldn&#39;t want to go back to them!&lt;br&gt;&lt;br&gt;But the most important issue is that we have lost the very thing that was responsible for HTML&#39;s success -- the use of simple, clear, declarative mark-up, in which we simply state our intent, without having to write a program to do it for us. After all, the web took off because authors only had to master &lt;code&gt;&amp;lt;a&amp;gt;&lt;/code&gt; in order to enter the exciting new world of &#39;hypertext&#39; -- but XMLHttpRequest raises the bar again, and takes us right back into the heart of geek-world.&lt;br&gt;&lt;br&gt;
&lt;h2&gt;Beyond XMLHttpRequest&lt;/h2&gt;But in keeping with the principle that I outlined above -- that XForms and XHTML 2 try to provide mark-up for commonly existing design patterns -- let&#39;s see if there are any other patterns that XMLHttpRequest has thrown up.&lt;br&gt;&lt;br&gt;You will have noticed in the earlier script that we had tests for success and failure:&lt;br&gt;&lt;code&gt;&lt;pre&gt;&lt;br&gt;if (req.status == 200) {&lt;br&gt;  // do something here&lt;br&gt;} else {&lt;br&gt;  // error processing here&lt;br&gt;}&lt;br&gt;
&lt;/pre&gt;&lt;/code&gt;&lt;br&gt;XForms provides the same functionality through the use of events -- on success do this, on failure do that. This is far more powerful, since it hides the protocol-specific aspects of this code (&quot;200&quot; may be &#39;success&#39; for HTTP, but it isn&#39;t &#39;success&#39; when saving data to the hard-drive or sending an email).&lt;br&gt;&lt;br&gt;XForms uses declarative mark-up to express those events, which again dramatically reduces coding:&lt;br&gt;&lt;code&gt;&lt;pre&gt;&lt;br&gt;&amp;lt;xf:action ev:observer=&quot;sub-search&quot; ev:event=&quot;xforms-submit-error&quot;&amp;gt;&lt;br&gt;  &amp;lt;xf:message level=&quot;modal&quot;&amp;gt;&lt;br&gt;    Submission failed&lt;br&gt;  &amp;lt;/xf:message&amp;gt;&lt;br&gt;&amp;lt;/xf:action&amp;gt;&lt;br&gt;
&lt;/pre&gt;&lt;/code&gt;&lt;br&gt;But there&#39;s lots, lots more in the &lt;code&gt;submission&lt;/code&gt; part of XForms:&lt;br&gt;
&lt;ul&gt;&lt;br&gt;
&lt;li&gt;it can provide full XML Schema validation before submitting the data;&lt;/li&gt;&lt;br&gt;
&lt;li&gt;there is built in support for numerous types of serialisation, such as &lt;code&gt;multipart/related&lt;/code&gt;;&lt;/li&gt;&lt;br&gt;
&lt;li&gt;abstract methods are used so the code is independent of protocol. For example, since &lt;code&gt;put&lt;/code&gt; means the same thing whether the target URL begins &lt;code&gt;http:&lt;/code&gt; or &lt;code&gt;file:&lt;/code&gt;, a form with relative paths will run unchanged on a local machine or a web server;&lt;/li&gt;&lt;br&gt;
&lt;li&gt;it&#39;s extensible -- in formsPlayer 2.0 we have used the &lt;code&gt;submission&lt;/code&gt; element to read and write from an ADO database, allowing programmers to convert forms from using the web to using a local database by doing nothing more than changing a single target URL. (Try doing that with XMLHttpRequest!)&lt;/li&gt;&lt;br&gt;&lt;/ul&gt;&lt;br&gt;&lt;br&gt;The &lt;code&gt;submission&lt;/code&gt; part of XForms is in fact so powerful that it will eventually form a separate specification, for use in other languages.&lt;br&gt;&lt;br&gt;
&lt;h2&gt;From Patterns to Mark-up&lt;/h2&gt;And there are plenty more patterns out there that were crying out to be turned into mark-up, and which are now incorporated into XForms and XHTML 2. Do you remember the days when if we wanted a tooltip that contained mark-up -- perhaps an image, or bold text -- we had to use a carefully placed &lt;code&gt;&amp;lt;div&amp;gt;&lt;/code&gt;, a CSS &lt;code&gt;display: none;&lt;/code&gt;, a &lt;code&gt;mouseover&lt;/code&gt; event handler and a timer? Nowadays the programmer with better things to do than work with spaghetti-JavaScript just uses the XForms &lt;code&gt;&amp;lt;hint&amp;gt;&lt;/code&gt; element, and for free they get platform independence (and therefore accessibility), as well as the ability to insert any mark-up.&lt;br&gt;&lt;br&gt;And what about the days when we had to write code to open up a text-to-speech engine, and then invoke the various methods on the object to get it to speak its mind? Nowadays who wouldn&#39;t just use a CSS property on their XForms&#39; &lt;code&gt;message&lt;/code&gt;s?&lt;br&gt;&lt;br&gt;
&lt;h3&gt;Bad Slacks&lt;/h3&gt;And do you remember...I&#39;m sorry, this one always makes me laugh...do you remember how we used to write lots of JavaScript to recalculate the shopping-cart when a new item was added? I know it&#39;s hard to believe -- it&#39;s like looking at old photos of us all wearing flares. Anyway, thank God for straight trousers and the XForms dependency-engine.&lt;br&gt;&lt;br&gt;&lt;img border=&quot;1&quot; src=&quot;http://www.npr.org/programs/morning/features/2004/sep/fashion_week/satfever_nano140.jpg&quot;&gt; &lt;br&gt;But enough of the good old days, the days of assembly language, C and JavaScript...let&#39;s stick with the new.&lt;br&gt;&lt;br&gt;
&lt;h2&gt;Do Try This at Home&lt;/h2&gt;&lt;br&gt;To round all of this off, we&#39;ll take a look at Google Suggest, and we&#39;ll use XForms to implement it. I&#39;ll walk through the demo in a separate blog [&lt;a href=&quot;about:blank#20050426-4&quot;&gt;4&lt;/a&gt;] so that this one doesn&#39;t get too cluttered -- and hopefully by disecting this simple but useful application, we can show how declarative mark-up scores over scripting.&lt;br&gt;&lt;br&gt;&lt;br&gt;&lt;a name=&quot;20050426-1&quot;&gt;[1] Will AJAX help Google clean up?, c|net, &lt;a href=&quot;http://news.com.com/Will+AJAX+help+Google+clean+up/2100-1032_3-5621010.html&quot;&gt;http://news.com.com/Will+AJAX+help+Google+clean+up/2100-1032_3-5621010.html&lt;/a&gt; &lt;br&gt;&lt;br&gt;&lt;a name=&quot;20050426-2&quot;&gt;[2] Ajax: A New Approach to Web Applications, Jesse James Garrett, Adaptive Path blog, &lt;a href=&quot;http://www.adaptivepath.com/publications/essays/archives/000385.php&quot;&gt;http://www.adaptivepath.com/publications/essays/archives/000385.php&lt;/a&gt; &lt;br&gt;&lt;br&gt;&lt;a name=&quot;20050426-3&quot;&gt;[3] Using the XML HTTP Request object, &lt;a href=&quot;http://jibbering.com/2002/4/httprequest.html&quot;&gt;http://jibbering.com/2002/4/httprequest.html&lt;/a&gt; &lt;br&gt;&lt;br&gt;&lt;a name=&quot;20050426-4&quot;&gt;[4] &quot;Google Suggest&quot; Using XForms, &lt;a href=&quot;http://internet-apps.blogspot.com/2005/04/google-suggest-using-xforms.html&quot;&gt;http://internet-apps.blogspot.com/2005/04/google-suggest-using-xforms.html&lt;/a&gt; &lt;br&gt;&lt;br&gt;Tags: &lt;a href=&quot;http://technorati.com/tag/xforms&quot; rel=&quot;tag&quot;&gt;xforms&lt;/a&gt; | &lt;a href=&quot;http://technorati.com/tag/xbl&quot; rel=&quot;tag&quot;&gt;xbl&lt;/a&gt; | &lt;a href=&quot;http://technorati.com/tag/webapps&quot; rel=&quot;tag&quot;&gt;webapps&lt;/a&gt; | &lt;a href=&quot;http://technorati.com/tag/ajax&quot; rel=&quot;tag&quot;&gt;ajax&lt;/a&gt; | &lt;a href=&quot;http://technorati.com/tag/javascript&quot; rel=&quot;tag&quot;&gt;javascript&lt;/a&gt; &lt;/div&gt;
&lt;div align=&quot;right&quot;&gt;[via &lt;a href=&quot;http://internet-apps.blogspot.com/&quot;&gt;Internet Applications&lt;/a&gt;]&lt;/div&gt;</description></item><item><title>SOA, AJAX and REST: The Software Industry Devolves into the Fashion Industry</title><guid>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-03-24#763</guid><comments>http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?id=763#comments</comments><pubDate>Thu, 24 Mar 2005 15:20:36 GMT</pubDate><n0:modified xmlns:n0="http://www.openlinksw.com/weblog/">2006-06-22T08:56:58-04:00</n0:modified><description>&lt;p&gt;Dare Obasanjo ponders about: &lt;a href=&quot;http://blogs.msdn.com/dareobasanjo/archive/2005/03/22/400372.aspx&quot;&gt;SOA, AJAX and REST: The Software Industry Devolves into the Fashion Industry&lt;/a&gt; .&lt;/p&gt;
&lt;p&gt;I absolutely understand the frustration expressed in Dare&#39;s post. An additional comment from my perspective is that this devolution has been in motion for a while and it is an integral part of the Misinformation and Disinformation based marketing strategies of many companies.&lt;/p&gt;
&lt;p&gt;Misinformation and Disinformation only work when the target audience&amp;nbsp;is apathetic (unfortunately the sad&amp;nbsp;reality to date!). The bad news for marketing strategies that assume perpetuation of the aforementioned apathy is that the Internet is fundamentally reducing the cost of knowledge acquisition; by implication today&#39;s naive customer is tomorrow&#39;s knowledgeable decision maker. Vendors have a choice: build valuable products, and then market these products by disseminating knowledge. If a competitor&#39;s product is&amp;nbsp;better than yours, get back to the labs (developers are actually stimulated and motivated by constructive challenges; especially as any developer worth his or her salt intrinsically believes they are the best at their craft deep down; and so they should!). &lt;/p&gt;
&lt;p&gt;In the imminent future (Internet time)&amp;nbsp;I expect to see&amp;nbsp;the Wikisphere, Blogosphere, and other Web 2.0 (and beyond) realms bring clarity to the futility of Misinformation and Disinformation based marketing and PR (see my post about the &lt;a href=&quot;http://www.openlinksw.com/blog/~kidehen/index.vspx?id=746&quot;&gt;Wikipedia induced inflection on Marketing and PR&lt;/a&gt;&amp;nbsp;).&lt;/p&gt;
&lt;p&gt;BTW -- Does anyone know what&#39;s the difference between an &lt;a href=&quot;http://en.wikipedia.org/wiki/Enterprise_Service_Bus&quot;&gt;ESB&lt;/a&gt; and a &lt;a href=&quot;http://en.wikipedia.org/wiki/Enterprise_Service_Bus&quot;&gt;Universal Server&lt;/a&gt;? Likewise, the difference between a &lt;a href=&quot;http://en.wikipedia.org/wiki/Virtual_database&quot;&gt;Virtual Database&lt;/a&gt; and an &lt;a href=&quot;http://en.wikipedia.org/wiki/EII&quot;&gt;EII&lt;/a&gt; solution?&lt;/p&gt;</description></item>
</channel>
</rss>
