http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/
Kingsley Idehen's Blog Data Space
I have seen the future and it's full of Linked Data! :-)
kidehen@openlinksw.com
kidehen@openlinksw.com
2024-03-29T14:06:13Z
Virtuoso Universal Server 08.03.3327
http://www.openlinksw.com/weblog/public/images/vbloglogo.gif
New Preconfigured Virtuoso AMI for Amazon EC2 Cloud comprised of Linked Data from BBC & DBpedia
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2011-02-18#1657
2011-02-19T01:20:30Z
2011-03-29T09:52:17.000001-04:00
<h2>What?</h2> <p>Introducing a new preloaded and preconfigured <a class="auto-href" href="http://virtuoso.openlinksw.com" id="link-id0x1bbe32d8">Virtuoso</a> (Cluster Edition) AMI for the Amazon EC2 Cloud that hosts combined Linked Datasets from: </p> <ul> <li> <a href="http://dbpedia.org/About" id="link-id0x1d21e780">DBpedia 3.6</a> </li> <li> <a href="http://www.bbc.co.uk/programmes" id="link-id0x1e1e0b10">BBC Programmes</a> </li> <li> <a href="http://www.bbc.co.uk/music" id="link-id0x1db12bd0">BBC Music</a> </li> <li> <a href="http://www.bbc.co.uk/nature/" id="link-id0x1bd46450">BBC Nature</a> </li> <li> <a href="http://www.bbc.co.uk/food/recipes/" id="link-id0x1d1b2468">BBC Food Recipes</a> </li> </ul> <h2>Why?</h2> <p> Predictably instantiate a powerful database with high quality <a href="http://dbpedia.org/resource/Data">data</a> and cross links within minutes, for personal or service specific use. </p> <h2>How?</h2> <p>Simply follow the instructions in our <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtAWSBBCMusicProgNatureFoodAndDBpedia36" id="link-id0x1d4f3210">Amazon EC2 guide for the BBC + DBpedia 3.6 Linked Dataset</a> guide.</p> <p>Your installation steps are as follows:</p> <ol> <li> Instantiate a Virtuoso EC2 AMI </li> <li> Mount the Amazon Elastic Block Storage (EBS) snapshot that hosts the preloaded Virtuoso Database. </li> </ol> <h2>Related</h2> <ul> <li> <a href="http://www.slideshare.net/reduxd/beyond-the-polar-bear" id="link-id0x1b384af0">BBC Linked Data Spaces Presentation</a> </li> <li> <a href="http://kidehen-images.s3.amazonaws.com/bbc_music_solo_artists_snapshot.png" id="link-id0x1a7a5ae0">BBC Music Linked Dataset Snapshot</a> -- PivotViewer Page Screenshot </li> <li> <a href="http://kidehen-images.s3.amazonaws.com/bbc_programmes_snapshot_sorted_by_genre.png" id="link-id0x1c2022a8">BBC Programmes Linked Dataset Snapshot</a> -- -- PivotViewer Page Screenshot </li> <li> <a href="http://kidehen-images.s3.amazonaws.com/bbc_nature_snapshot_sorted_by_adaptation.png" id="link-id0x1e138ac0">BBC Nature Linked Dataset Snapshot</a> -- PivotViewer Page Screenshot </li> <li> <a href="http://kidehen-images.s3.amazonaws.com/bbc_recipes_snapshot.png" id="link-id0x1b795100">BBC Food Recipes Snapshot </a> -- PivotViewer Page Screenshot </li> <li> <a href="http://www.delicious.com/kidehen/bbc_linkeddata" id="link-id0x1a581cf8">My Del.icio.us bookmark collection re. BBC Linked Data Demos</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtAWSDBpediaBBC" id="link-id0x1dc0cc08">Amazon EC2 Snapshots for DBpedia 3.6 + BBC combo</a> -- delivers the BBC and DBpedia dataset combo via a mountable Elastic Block Storage (EBS) device usable with an Amazon Machine Image (AMI) </li> <li> <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtAWSDBpedia351C" id="link-id0x1de33b50">Amazon EC2 Snapshots for DBpedia 3.6 & 3.5</a> </li> <li> <a href="http://virtuoso.openlinksw.com/download/" id="link-id0x1c3e27c8">Virtuoso Commercial Edition Download Page</a> </li> <li> <a href="http://docs.openlinksw.com/virtuoso/clusterstcnf.html" id="link-id0x1d0ff170">Virtuoso Cluster Edition Guide</a> </li> </ul>
DBpedia + BBC (combined) Linked Data Space Installation Guide
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2011-02-17#1656
2011-02-17T22:15:41Z
2011-03-29T10:09:45.000001-04:00
<h2>What? </h2> <p> The <i><a class="auto-href" href="http://dbpedia.org/resource/DBpedia" id="link-id0x1c489cc8">DBpedia</a> + <a class="auto-href" href="http://dbpedia.org/resource/BBC" id="link-id0x1bf12698">BBC</a> Combo Linked Dataset </i> is a preconfigured <a class="auto-href" href="http://virtuoso.openlinksw.com" id="link-id0x1b16cbb0">Virtuoso</a> Cluster (4 Virtuoso Cluster Nodes, each comprised of one Virtuoso Instance; initial deployment is to a single Cluster Host, but license may be converted for physically distributed deployment), available via the Amazon EC2 Cloud, preloaded with the following datasets: </p> <ul> <li> <a href="http://dbpedia.org/About" id="link-id0x1d21e780">DBpedia 3.6</a> </li> <li> <a href="http://www.bbc.co.uk/programmes" id="link-id0x1e1e0b10">BBC Programmes</a> </li> <li> <a href="http://www.bbc.co.uk/music" id="link-id0x1db12bd0">BBC Music</a> </li> <li> <a href="http://www.bbc.co.uk/nature/" id="link-id0x1bd46450">BBC Nature</a> </li> <li> <a href="http://www.bbc.co.uk/food/recipes/" id="link-id0x1d1b2468">BBC Food Recipes</a> </li> </ul> <h2>Why?</h2> <p>The BBC has been publishing <a class="auto-href" href="http://dbpedia.org/resource/Linked_Data" id="link-id0x1b15eb60">Linked Data</a> from its <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> <a class="auto-href" href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id0x1c4c38a8">Data Space</a> for a number of years. In line with best practices for injecting Linked Data into the <a class="auto-href" href="http://dbpedia.org/resource/World_Wide_Web" id="link-id0x1e5acda0">World Wide Web</a> (Web), the BBC datasets are interlinked with other datasets such as DBpedia and MusicBrainz. </p> <p>Typical follow-your-nose exploration using a Web Browser (or even via sophisticated <a class="auto-href" href="http://dbpedia.org/resource/SPARQL" id="link-id0x1d21e728">SPARQL</a> query crawls) isn't always practical once you get past the initial euphoria that comes from comprehending the Linked Data concept. As your queries get more complex, the overhead of remote sub-queries increases its impact, until query results take so long to return that you simply give up.</p> <p>Thus, maximizing the effects of the BBC's efforts requires Linked Data that shares locality in a Web-accessible Data Space â i.e., where all Linked Data sets have been loaded into the same data store or warehouse. This holds true even when leveraging SPARQL-FED style virtualization â there's always a need to localize data as part of any marginally-decent locality-aware cost-optimization algorithm.</p> <p>This DBpedia + BBC dataset, exposed via a preloaded and preconfigured Virtuoso Cluster, delivers a practical point of presence on the Web for immediate and cost-effective exploitation of Linked Data at the individual and/or service specific levels.</p> <h2>How?</h2> To work through this guide, you'll need to start with 90 GB of free disk space. (Only 41 GB will be consumed after you delete the installer archives, but starting with 90+ GB ensures enough work space for the installation.) <h3>Install Virtuoso</h3> <ol> <li> <p> <a href="http://virtuoso.openlinksw.com/download/" id="link-id0x1af0d230">Download Virtuoso installer archive(s)</a>. You must deploy the Personal or Enterprise Edition; the Open Source Edition does not support Shared-Nothing Cluster Deployment.</p> </li> <li> <p> <a href="http://virtuoso.openlinksw.com/pricing/" id="link-id0x1e089f40">Obtain a Virtuoso Cluster license</a>.</p> </li> <li> <p> <a href="http://wikis.openlinksw.com/dataspace/owiki/wiki/VirtuosoWikiWeb/VirtuosoInstallDocs" id="link-id0x1e86d060">Install Virtuoso</a>.</p> </li> <li> <p>Set key environment variables and start the OpenLink License Manager, using command (this may vary depending on your shell and install directory): </p> <blockquote> <code>. /opt/virtuoso/virtuoso-enterprise.sh</code> </blockquote> </li> <li> <p> <i>Optional:</i> To keep the default single-server configuration file and demo database intact, set the <code>VIRTUOSO_HOME</code> environment variable to a different directory, e.g., </p> <blockquote> <code>export VIRTUOSO_HOME=/opt/virtuoso/cluster-home/</code> </blockquote> <p> <i><b>Note:</b> You will have to adjust this setting every time you shift between this cluster setup and your single-server setup. Either may be made your environment's default through the <code>virtuoso-enterprise.sh</code> and related scripts.</i> </p> </li> <li> <p> <a href="http://docs.openlinksw.com/virtuoso/clusterstcnf.html" id="link-id0x1e184dc0">Set up your cluster</a> by running the <code>mkcluster.sh</code> script. Note that initial deployment of the <i>DBpedia + BBC Combo</i> requires a 4 node cluster, which is the default for this script.</p> </li> <li> <p>Start the Virtuoso Cluster with this command:</p> <blockquote> <code>virtuoso-start.sh</code> </blockquote> </li> <li> <p>Stop the Virtuoso Cluster with this command:</p> <blockquote> <code>virtuoso-stop.sh</code> </blockquote> </li> </ol> <h3>Using the DBpedia + BBC Combo dataset</h3> <ol> <li> <p>Navigate to your installation directory.</p> </li> <li> <p>Download the combo dataset installer script â <code><a href="https://s3.amazonaws.com/bbc-dbpedia-36-usa/bbc-dbpedia-install.sh" id="link-id0x195d7940">bbc-dbpedia-install.sh</a></code>.</p> </li> <li> <p>For best results, set the downloaded script to fully executable using this command:</p> <blockquote> <code>chmod 755 bbc-dbpedia-install.sh </code> </blockquote> </li> <li> <p>Shut down any Virtuoso instances that may be currently running.</p> </li> <li> <p> <i>Optional:</i> As above, if you have decided to keep the default single-server configuration file and demo database intact, set the <code>VIRTUOSO_HOME</code> environment variable appropriately, e.g., </p> <blockquote> <code>export VIRTUOSO_HOME=/opt/virtuoso/cluster-home/</code> </blockquote> </li> <li> <p>Run the combo dataset installer script with this command:</p> <blockquote> <code>sh bbc-dbpedia-install.sh</code> </blockquote> </li> </ol> <h3>Verify installation</h3> <p>The combo dataset typically deploys to EC2 virtual machines in under 90 minutes; your time will vary depending on your network connection speed, machine speed, and other variables.</p> <p>Once the script completes, perform the following steps:</p> <ol> <li> <p>Verify that the Virtuoso Conductor (HTTP-based Admin UI) is in place via:</p> <blockquote> <code>http://localhost:[port]/conductor</code> </blockquote> </li> <li> <p>Verify that the Virtuoso SPARQL endpoint is in place via:</p> <blockquote> <code>http://localhost:[port]/sparql</code> </blockquote> </li> <li> <p>Verify that the Precision Search & Find UI is in place via:</p> <blockquote> <code>http://localhost:[port]/fct</code> </blockquote> </li> <li> <p>Verify that the Virtuoso hosted PivotViewer is in place via:</p> <blockquote> <code>http://localhost:[port]/PivotViewer</code> </blockquote> </li> </ol> <h2>Related</h2> <ul> <li> <a href="http://www.slideshare.net/reduxd/beyond-the-polar-bear" id="link-id0x1bd43bf0">BBC Linked Data Spaces Presentation</a> </li> <li> <a href="http://kidehen-images.s3.amazonaws.com/bbc_music_solo_artists_snapshot.png" id="link-id0x1a7a5ae0">BBC Music Linked Dataset Snapshot</a> -- PivotViewer Page Screenshot </li> <li> <a href="http://kidehen-images.s3.amazonaws.com/bbc_programmes_snapshot_sorted_by_genre.png" id="link-id0x1c2022a8">BBC Programmes Linked Dataset Snapshot</a> -- -- PivotViewer Page Screenshot </li> <li> <a href="http://kidehen-images.s3.amazonaws.com/bbc_nature_snapshot_sorted_by_adaptation.png" id="link-id0x1e138ac0">BBC Nature Linked Dataset Snapshot</a> -- PivotViewer Page Screenshot </li> <li> <a href="http://kidehen-images.s3.amazonaws.com/bbc_recipes_snapshot.png" id="link-id0x1b795100">BBC Food Recipes Snapshot </a> -- PivotViewer Page Screenshot </li> <li> <a href="http://www.delicious.com/kidehen/bbc_linkeddata" id="link-id0x1c0ffcc8">My Del.icio.us bookmark collection re. BBC Linked Data Demos</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtAWSDBpediaBBC" id="link-id0x1dc0cc08">Amazon EC2 Snapshots for DBpedia 3.6 + BBC combo</a> -- delivers the BBC and DBpedia dataset combo via a mountable Elasti<a class="auto-href" href="http://dbpedia.org/resource/C%2B%2B" id="link-id0x1c2ad728">c</a> Block Storage (EBS) device usable with an Amazon Machine Image (AMI) </li> <li> <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtAWSDBpedia351C" id="link-id0x1de33b50">Amazon EC2 Snapshots for DBpedia 3.6 & 3.5</a> </li> <li> <a href="http://virtuoso.openlinksw.com/download/" id="link-id0x1c3e27c8">Virtuoso Commercial Edition Download Page</a> </li> <li> <a href="http://docs.openlinksw.com/virtuoso/clusterstcnf.html" id="link-id0x1d0ff170">Virtuoso Cluster Edition Guide</a> </li> </ul>
SPARQL Guide for the Perl Developer
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2011-01-25#1655
2011-01-25T16:05:17Z
2011-01-26T18:11:13-05:00
<h3>What?</h3> <p>A simple guide usable by any <a class="auto-href" href="http://dbpedia.org/resource/Perl" id="link-id0x1bdcab80">Perl</a> developer seeking to exploit <a class="auto-href" href="http://dbpedia.org/resource/SPARQL" id="link-id0x17b447e8">SPARQL</a> without hassles.</p> <h3>Why?</h3> <p>SPARQL is a powerful query language, results serialization format, and an HTTP based <a href="http://dbpedia.org/resource/Data">data</a> access protocol from the W3C. It provides a mechanism for accessing and integrating data across <a href="http://en.wikipedia.org/wiki/Deductive_database" id="link-id0x1cc76540">Deductive Database Systems</a> (colloquially referred to as triple or quad stores in <a class="auto-href" href="http://dbpedia.org/resource/Semantic_Web" id="link-id0x1d944d78">Semantic Web</a> and <a class="auto-href" href="http://dbpedia.org/resource/Linked_Data" id="link-id0x1c7a87c8">Linked Data</a> circles) -- database systems (or data spaces) that manage proposition oriented records in 3-tuple (triples) or 4-tuple (quads) form. </p> <h3>How?</h3> <p>SPARQL queries are actually HTTP payloads (typically). Thus, using a RESTful client-server interaction pattern, you can dispatch calls to a SPARQL compliant data server and receive a payload for local processing.</p> <h4>Steps:</h4> <ol> <li>Determine which SPARQL endpoint you want to access e.g. <a href="http://dbpedia.org/sparql" id="link-id0x1d476520">DBpedia</a> or a local <a class="auto-href" href="http://virtuoso.openlinksw.com" id="link-id0x1bcfe140">Virtuoso</a> instance (typically: http://localhost:8890/sparql). </li> <li>If using Virtuoso, and you want to populate its quad store using SPARQL, assign "<a href="http://docs.openlinksw.com/virtuoso/rdfsparql.html#rdfsupportedprotocolendpointuri" id="link-id0x1c7630b8">SPARQL_SPONGE</a>" privileges to user "SPARQL" (this is basic control, more sophisticated WebID based ACLs are available for controlling SPARQL access).</li> </ol> <h4>Script:</h4> <pre> # # Demonstrating use of a single query to populate a # Virtuoso Quad Store via Perl. # # # HTTP <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id0x1d6465e8">URL</a> is constructed accordingly with CSV query results format as the default via mime type. # use CGI qw/:standard/; use LWP::UserAgent; use Data::Dumper; use Text::CSV_XS; sub sparqlQuery(@args) { my $query=shift; my $baseURL=shift; my $format=shift; %params=( "default-graph" => "", "should-sponge" => "soft", "query" => $query, "debug" => "on", "timeout" => "", "format" => $format, "save" => "display", "fname" => "" ); @fragments=(); foreach $k (keys %params) { $fragment="$k=".CGI::escape($params{$k}); push(@fragments,$fragment); } $query=join("&", @fragments); $sparqlURL="${baseURL}?$query"; my $ua = LWP::UserAgent->new; $ua->agent("MyApp/0.1 "); my $req = HTTP::Request->new(GET => $sparqlURL); my $res = $ua->request($req); $str=$res->content; $csv = Text::CSV_XS->new(); foreach $line ( split(/^/, $str) ) { $csv->parse($line); @bits=$csv->fields(); push(@rows, [ @bits ] ); } return \@rows; } # Setting Data Source Name (DSN) $dsn="http://dbpedia.org/resource/DBpedia"; # Virtuoso pragmas for instructing SPARQL engine to perform an HTTP GET using the IRI in # FROM clause as Data Source URL en route to DBMS # record Inserts. $query="DEFINE get:soft \"replace\"\n # Generic (non Virtuoso specific SPARQL # Note: this will not add records to the # DBMS SELECT DISTINCT * FROM <$dsn> WHERE {?s ?p ?o}"; $data=sparqlQuery($query, "http://localhost:8890/sparql/", "text/csv"); print "Retrieved data:\n"; print Dumper($data); </pre> <h4>Output</h4> <pre> Retrieved data: $VAR1 = [ [ 's', 'p', 'o' ], [ 'http://dbpedia.org/resource/DBpedia', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://www.w3.org/2002/07/owl#Thing' ], [ 'http://dbpedia.org/resource/DBpedia', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://dbpedia.org/ontology/Work' ], [ 'http://dbpedia.org/resource/DBpedia', 'http://www.w3.org/1999/02/22-rdf-syntax-ns#type', 'http://dbpedia.org/class/yago/Software106566077' ], ... </pre> <h3>Conclusion</h3> <p> CSV was chosen over XML (re. output format) since this is about a "no-brainer installation and utilization" guide for a Perl developer that already knows how to use Perl for HTTP based data access within HTML. SPARQL just provides an added bonus to URL dexterity (delivered via <a class="auto-href" href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id0x1d29da98">URI</a> abstraction) with regards to constructing Data Source Names or Addresses.</p> <h3>Related</h3> <ul> <li> <a href="http://cpansearch.perl.org/src/TOBYINK/RDF-Query-Client-0.103/README" id="link-id0x1c279130">RDF::Query::Client Guide</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1653" id="link-id0x1cf307f0">SPARQL Guide for the Perl Developer</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1652" id="link-id0x1b0ffb28">SPARQL Guide for the PHP Developer</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1651" id="link-id0x1a8c5ae0">SPARQL Guide for the Python Developer</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1648" id="link-id0x1b86ad28">SPARQL Guide for the Ruby Developer</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1646" id="link-id0x1c7af188">Simple Guide for using SPARQL with Virtuoso</a> </li> <li> <a href="http://www.delicious.com/kidehen/sparql_tutorial" id="link-id0x1ac1ba48">General SPARQL Tutorial Collection</a> </li> <li> <a href="http://www.delicious.com/kidehen/virtuoso_sparql_tutorial" id="link-id0x1c7be660">Virtuoso Specific SPARQL Tutorial Collection</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1567" id="link-id0x1c52b438">The URI, URL, and Linked Data Meme's Generic HTTP URI</a>. </li> </ul>
Virtuoso + DBpedia 3.6 Installation Guide (Update 1)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2011-01-24#1654
2011-01-25T01:08:55Z
2011-01-25T14:46:26-05:00
<h3>What is <a class="auto-href" href="http://dbpedia.org/resource/DBpedia" id="link-id0x1d8b5df0">DBpedia</a>?</h3> <p> DBpedia is a community effort to provide a contemporary deductive database derived from Wikipedia content. Project contributions can be partitioned as follows: </p> <ol> <li> Ontology Construction and Maintenance </li> <li> Dataset Generation via Wikipedia Content Extraction & Transformation </li> <li> Live Database Maintenance & Administration -- includes actual <a class="auto-href" href="http://dbpedia.org/resource/Linked_Data" id="link-id0x1ba81190">Linked Data</a> loading and publishing, provision of <a class="auto-href" href="http://dbpedia.org/resource/SPARQL" id="link-id0x1d8af808">SPARQL</a> endpoint, and traditional DBA activity </li> <li> Internationalization. </li> </ol> <h3>Why is DBpedia important?</h3> <p> Comprising the nucleus of the Linked Open <a href="http://dbpedia.org/resource/Data">Data</a> effort, DBpedia also serves as a fulcrum for the burgeoning <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> of Linked Data by delivering a dense and highly-interlinked lookup database. In its most basic form, DBpedia is a great source of strong and resolvable identifiers for People, Places, Organizations, Subject Matter, and many other data items of interest. Naturally, it provides a fantastic starting point for comprehending the fundamental concepts underlying <a class="auto-href" href="http://www.w3.org/People/Berners-Lee/card#i" id="link-id0x1a8cc3d0">TimBL</a>'s initial <a href="http://blogs.usnet.private:8893/www.w3.org/DesignIssues/LinkedData.html" id="link-id0x1cbbaf50">Linked Data</a> meme. </p> <h3>How do I use DBpedia?</h3> <p> Depending on your particular requirements, whether personal or service-specific, DBpedia offers the following: </p> <ul> <li> Datasets that can be loaded on your deductive database (also known as triple or quad stores) platform of choice </li> <li> Live browsable HTML+<a class="auto-href" href="http://dbpedia.org/resource/RDFa" id="link-id0x1d6b2148">RDFa</a> based <a class="auto-href" href="http://dbpedia.org/resource/Entity" id="link-id0x1d766a98">entity</a> description pages </li> <li> A wide variety of data formats for importing entity description data into a broad range of existing applications and services </li> <li> A SPARQL endpoint allowing ad-hoc querying over HTTP using the SPARQL query language, and delivering results serialized in a variety of formats </li> <li> A broad variety of tools covering query by example, faceted browsing, <a class="auto-href" href="http://dbpedia.org/resource/Full_text_search" id="link-id0x1b330ff8">full text search</a>, entity name lookups, etc. </li> </ul> <h3>What is the DBpedia 3.6 + <a class="auto-href" href="http://virtuoso.openlinksw.com" id="link-id0x1d705780">Virtuoso</a> Cluster Edition Combo?</h3> <p> <a class="auto-href" href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id0x1c894338">OpenLink Software</a> has preloaded the DBpedia 3.6 datasets into a preconfigured Virtuoso Cluster Edition database, and made the package available for easy installation.</p> <h3>Why is the DBpedia+Virtuoso package important?</h3> <p> The DBpedia+Virtuoso package provides a cost-effective option for personal or service-specific incarnations of DBpedia. </p> <p>For instance, you may have a service that isn't best-served by competing with the rest of the world for ad-hoc query time and resources on the live instance, which itself operates under various restrictions which enable this ad-hoc query service to be provided at Web Scale.</p> <p>Now you can easily commission your own instance and quickly exploit DBpedia and Virtuoso's database feature set to the max, powered by your own hardware and network infrastructure. </p> <h3>How do I use the DBpedia+Virtuoso package?</h3> <p>Pre-requisites are simply:</p> <ol> <li> <a href="http://wikis.openlinksw.com/dataspace/owiki/wiki/VirtuosoWikiWeb/VirtuosoInstallConfig" id="link-id0x19e3e450">Functional Virtuoso Cluster Edition installation</a>. </li> <li> <a href="http://virtuoso.openlinksw.com/pricing/" id="link-id0x1b703ad8">Virtuoso Cluster Edition License</a>. </li> <li>90 GB of free disk space -- you ultimately only need 43 gigs, but this our recommended free disk space size pre installation completion.</li> </ol> <p> To install the Virtuoso Cluster Edition simply perform the following steps: </p> <ol> <li> <a href="http://virtuoso.openlinksw.com/download/" id="link-id0x17b41648">Download Software</a>. </li> <li> Run installer </li> <li> <p>Set key environment variables and start the OpenLink License Manager, using command (this may vary depending on your shell): </p> <blockquote> <code>. /opt/virtuoso/virtuoso-enterprise.sh</code> </blockquote> </li> <li> Run the <code>mkcluster.sh</code> script which defaults to a 4 node cluster </li> <li> Set <code>VIRTUOSO_HOME</code> environment variable -- if you want to start cluster databases distinct from single server databases via distinct root directory for database files (one that isn't adjacent to single-server database directories) </li> <li> Start Virtuoso Cluster Edition instances using command: <blockquote> <code>virtuoso-start.sh</code> </blockquote> </li> <li> Stop Virtuoso Cluster Edition instances using command: <blockquote> <code>virtuoso-stop.sh</code> </blockquote> </li> </ol> <p>To install your personal or service specific edition of DBpedia simply perform the following steps:</p> <ol> <li> Navigate to your installation directory </li> <li> Download Installer script (<code><a href="https://s3.amazonaws.com/dbpedia-36-usa/dbpedia-install.sh" id="link-id0x1da0c978">dbpedia-install.sh</a></code>) </li> <li> Set execution mode on script using command: <blockquote> <code>chmod 755 dbpedia-install.sh </code> </blockquote> </li> <li> Shutdown any Virtuoso instances that may be currently running </li> <li> Set your <code>VIRTUOSO_HOME</code> environment variable, e.g., to the current directory, via command (this may vary depending on your shell): <blockquote> <code>export VIRTUOSO_HOME=`pwd`</code> </blockquote> </li> <li> Run script using command: <blockquote> <code>sh dbpedia-install.sh</code> </blockquote> </li> </ol> <p> Once the installation completes (approximately 1 hour and 30 minutes from start time), perform the following steps: </p> <ol> <li> Verify that the Virtuoso Conductor (HTML based Admin UI) is in place via: <blockquote> <code>http://localhost:[port]/conductor</code> </blockquote> </li> <li> Verify that the Precision Search & Find UI is in place via: <blockquote> <code>http://localhost:[port]/fct</code> </blockquote> </li> <li>Verify that DBpedia's Green Entity Description Pages are in place via: <blockquote> <code>http://localhost:[port]/resource/DBpedia</code> </blockquote> </li> </ol> <h3>Related</h3> <ul> <li> <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtAWSDBpedia351C" id="link-id0x1d819b90">Amazon EC2 Snapshots for DBpedia 3.6 & 3.5</a> </li> <li> <a href="http://virtuoso.openlinksw.com/download/" id="link-id0x1c3e27c8">Virtuoso Commercial Edition Download Page</a> </li> <li> <a href="http://docs.openlinksw.com/virtuoso/clusterstcnf.html" id="link-id0x1d0ff170">Virtuoso Cluster Edition Guide</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1594" id="link-id0x1c891cf8">What is the DBpedia Project?</a> </li> </ul>
SPARQL Guide for the Javascript Developer
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2011-01-21#1653
2011-01-21T19:59:49Z
2011-01-26T18:10:28-05:00
<h3>What?</h3> <p>A simple guide usable by any Javascript developer seeking to exploit <a class="auto-href" href="http://dbpedia.org/resource/SPARQL" id="link-id0x17b447e8">SPARQL</a> without hassles.</p> <h3>Why?</h3> <p>SPARQL is a powerful query language, results serialization format, and an HTTP based <a href="http://dbpedia.org/resource/Data">data</a> access protocol from the W3C. It provides a mechanism for accessing and integrating data across <a href="http://en.wikipedia.org/wiki/Deductive_database" id="link-id0x1cc76540">Deductive Database Systems</a> (colloquially referred to as triple or quad stores in <a class="auto-href" href="http://dbpedia.org/resource/Semantic_Web" id="link-id0x1d944d78">Semantic Web</a> and <a class="auto-href" href="http://dbpedia.org/resource/Linked_Data" id="link-id0x1c7a87c8">Linked Data</a> circles) -- database systems (or data spaces) that manage proposition oriented records in 3-tuple (triples) or 4-tuple (quads) form. </p> <h3>How?</h3> <p>SPARQL queries are actually HTTP payloads (typically). Thus, using a RESTful client-server interaction pattern, you can dispatch calls to a SPARQL compliant data server and receive a payload for local processing.</p> <h4>Steps:</h4> <ol> <li>Determine which SPARQL endpoint you want to access e.g. <a href="http://dbpedia.org/sparql" id="link-id0x1d476520">DBpedia</a> or a local <a class="auto-href" href="http://virtuoso.openlinksw.com" id="link-id0x1bcfe140">Virtuoso</a> instance (typically: http://localhost:8890/sparql). </li> <li>If using Virtuoso, and you want to populate its quad store using SPARQL, assign "<a href="http://docs.openlinksw.com/virtuoso/rdfsparql.html#rdfsupportedprotocolendpointuri" id="link-id0x1c7630b8">SPARQL_SPONGE</a>" privileges to user "SPARQL" (this is basic control, more sophisticated WebID based ACLs are available for controlling SPARQL access).</li> </ol> <h4>Script:</h4> <pre> /* Demonstrating use of a single query to populate a # Virtuoso Quad Store via Javascript. */ /* HTTP <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id0x1bc27a18">URL</a> is constructed accordingly with JSON query results format as the default via mime type. */ function sparqlQuery(query, baseURL, format) { if(!format) format="application/json"; var params={ "default-graph": "", "should-sponge": "soft", "query": query, "debug": "on", "timeout": "", "format": format, "save": "display", "fname": "" }; var querypart=""; for(var k in params) { querypart+=k+"="+encodeURIComponent(params[k])+"&"; } var queryURL=baseURL + '?' + querypart; if (window.XMLHttpRequest) { xmlhttp=new XMLHttpRequest(); } else { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.open("GET",queryURL,false); xmlhttp.send(); return JSON.parse(xmlhttp.responseText); } /* setting Data Source Name (DSN) */ var dsn="http://dbpedia.org/resource/DBpedia"; /* Virtuoso pragma "DEFINE get:soft "replace" instructs Virtuoso SPARQL engine to perform an HTTP GET using the IRI in FROM clause as Data Source URL with regards to DBMS record inserts */ var query="DEFINE get:soft \"replace\"\nSELECT DISTINCT * FROM <"+dsn+"> WHERE {?s ?p ?o}"; var data=sparqlQuery(query, "/sparql/"); </pre> <h4>Output</h4> <p> Place the snippet above into the <script/> section of an HTML document to see the <a href="http://twitpic.com/3s2vs3/full" id="link-id0x1cff2288">query result</a>. </p> <h3>Conclusion</h3> <p> JSON was chosen over XML (re. output format) since this is about a "no-brainer installation and utilization" guide for a Javascript developer that already knows how to use Javascript for HTTP based data access within HTML. SPARQL just provides an added bonus to URL dexterity (delivered via <a class="auto-href" href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id0x1d29da98">URI</a> abstraction) with regards to constructing Data Source Names or Addresses.</p> <h3>Related</h3> <ul> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1652" id="link-id0x1b0ffb28">SPARQL Guide for the PHP Developer</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1651" id="link-id0x1a8c5ae0">SPARQL Guide for the Python Developer</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1648" id="link-id0x1b86ad28">SPARQL Guide for the Ruby Developer</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1646" id="link-id0x1c7af188">Simple Guide for using SPARQL with Virtuoso</a> </li> <li> <a href="http://www.delicious.com/kidehen/sparql_tutorial" id="link-id0x1ac1ba48">General SPARQL Tutorial Collection</a> </li> <li> <a href="http://www.delicious.com/kidehen/virtuoso_sparql_tutorial" id="link-id0x1c7be660">Virtuoso Specific SPARQL Tutorial Collection</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1567" id="link-id0x1c52b438">The URI, URL, and Linked Data Meme's Generic HTTP URI</a>. </li> </ul>
SPARQL Guide for the PHP Developer
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2011-01-20#1652
2011-01-20T21:25:49Z
2011-01-25T10:36:58-05:00
<h3>What?</h3> <p>A simple guide usable by any <a class="auto-href" href="http://dbpedia.org/resource/PHP_programming_language" id="link-id0x1bdca7b8">PHP</a> developer seeking to exploit <a class="auto-href" href="http://dbpedia.org/resource/SPARQL" id="link-id0x1c894338">SPARQL</a> without hassles.</p> <h3>Why?</h3> <p>SPARQL is a powerful query language, results serialization format, and an HTTP based <a href="http://dbpedia.org/resource/Data">data</a> access protocol from the W3C. It provides a mechanism for accessing and integrating data across <a href="http://en.wikipedia.org/wiki/Deductive_database" id="link-id0x1c319af0">Deductive Database Systems</a> (colloquially referred to as triple or quad stores in <a class="auto-href" href="http://dbpedia.org/resource/Semantic_Web" id="link-id0x1d944d78">Semantic Web</a> and <a class="auto-href" href="http://dbpedia.org/resource/Linked_Data" id="link-id0x1c7a87c8">Linked Data</a> circles) -- database systems (or data spaces) that manage proposition oriented records in 3-tuple (triples) or 4-tuple (quads) form. </p> <h3>How?</h3> <p>SPARQL queries are actually HTTP payloads (typically). Thus, using a RESTful client-server interaction pattern, you can dispatch calls to a SPARQL compliant data server and receive a payload for local processing e.g. local object binding re. PHP.</p> <h4>Steps:</h4> <ol> <li> From your command line execute: aptitude search '^PHP26', to verify PHP is in place </li> <li>Determine which SPARQL endpoint you want to access e.g. <a href="http://dbpedia.org/sparql" id="link-id0x1d476520">DBpedia</a> or a local <a class="auto-href" href="http://virtuoso.openlinksw.com" id="link-id0x1bcfe140">Virtuoso</a> instance (typically: http://localhost:8890/sparql). </li> <li>If using Virtuoso, and you want to populate its quad store using SPARQL, assign "<a href="http://docs.openlinksw.com/virtuoso/rdfsparql.html#rdfsupportedprotocolendpointuri" id="link-id0x1c7630b8">SPARQL_SPONGE</a>" privileges to user "SPARQL" (this is basic control, more sophisticated WebID based ACLs are available for controlling SPARQL access).</li> </ol> <h4>Script:</h4> <pre> #!/usr/bin/env php <?php # # Demonstrating use of a single query to populate a # Virtuoso Quad Store via PHP. # # HTTP <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id0x1ce1d6d8">URL</a> is constructed accordingly with JSON query results format in mind. function sparqlQuery($query, $baseURL, $format="application/json") { $params=array( "default-graph" => "", "should-sponge" => "soft", "query" => $query, "debug" => "on", "timeout" => "", "format" => $format, "save" => "display", "fname" => "" ); $querypart="?"; foreach($params as $name => $value) { $querypart=$querypart . $name . '=' . urlencode($value) . "&"; } $sparqlURL=$baseURL . $querypart; return json_decode(file_get_contents($sparqlURL)); }; # Setting Data Source Name (DSN) $dsn="http://dbpedia.org/resource/DBpedia"; #Virtuoso pragmas for instructing SPARQL engine to perform an HTTP GET #using the IRI in FROM clause as Data Source URL $query="DEFINE get:soft \"replace\" SELECT DISTINCT * FROM <$dsn> WHERE {?s ?p ?o}"; $data=sparqlQuery($query, "http://localhost:8890/sparql/"); print "Retrieved data:\n" . json_encode($data); ?> </pre> <h4>Output</h4> <pre> Retrieved data: {"head": {"link":[],"vars":["s","p","o"]}, "results": {"distinct":false,"ordered":true, "bindings":[ {"s": {"type":"<a class="auto-href" href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id0x1ca44a98">uri</a>","value":"http:\/\/dbpedia.org\/resource\/DBpedia"},"p": {"type":"uri","value":"http:\/\/www.w3.org\/1999\/02\/22-rdf-syntax-ns#type"},"o": {"type":"uri","value":"http:\/\/www.w3.org\/2002\/07\/owl#Thing"}}, {"s": {"type":"uri","value":"http:\/\/dbpedia.org\/resource\/DBpedia"},"p": {"type":"uri","value":"http:\/\/www.w3.org\/1999\/02\/22-rdf-syntax-ns#type"},"o": {"type":"uri","value":"http:\/\/dbpedia.org\/ontology\/Work"}}, {"s": {"type":"uri","value":"http:\/\/dbpedia.org\/resource\/DBpedia"},"p": {"type":"uri","value":"http:\/\/www.w3.org\/1999\/02\/22-rdf-syntax-ns#type"},"o": {"type":"uri","value":"http:\/\/dbpedia.org\/class\/yago\/Software106566077"}}, ... </pre> <h3>Conclusion</h3> <p> JSON was chosen over XML (re. output format) since this is about a "no-brainer installation and utilization" guide for a PHP developer that already knows how to use PHP for HTTP based data access. SPARQL just provides an added bonus to URL dexterity (delivered via URI abstraction) with regards to constructing Data Source Names or Addresses.</p> <h3>Related</h3> <ul> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1651" id="link-id0x1a8c5ae0">SPARQL Guide for the Python Developer</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1648" id="link-id0x1b86ad28">SPARQL Guide for the Ruby Developer</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1646" id="link-id0x1c7af188">Simple Guide for using SPARQL with Virtuoso</a> </li> <li> <a href="http://www.delicious.com/kidehen/sparql_tutorial" id="link-id0x1ac1ba48">General SPARQL Tutorial Collection</a> </li> <li> <a href="http://www.delicious.com/kidehen/virtuoso_sparql_tutorial" id="link-id0x1c7be660">Virtuoso Specific SPARQL Tutorial Collection</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1567" id="link-id0x1c52b438">The URI, URL, and Linked Data Meme's Generic HTTP URI</a>. </li> </ul>
SPARQL Guide for Python Developer
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2011-01-19#1651
2011-01-19T17:13:30Z
2011-01-25T10:35:46-05:00
<h3>What?</h3> <p>A simple guide usable by any <a class="auto-href" href="http://dbpedia.org/resource/Python_programming_language" id="link-id0x1bdca7b8">Python</a> developer seeking to exploit <a class="auto-href" href="http://dbpedia.org/resource/SPARQL" id="link-id0x1c894338">SPARQL</a> without hassles.</p> <h3>Why?</h3> <p>SPARQL is a powerful query language, results serialization format, and an HTTP based <a href="http://dbpedia.org/resource/Data">data</a> access protocol from the W3C. It provides a mechanism for accessing and integrating data across <a href="http://en.wikipedia.org/wiki/Deductive_database" id="link-id0x1c319af0">Deductive Database Systems</a> (colloquially referred to as triple or quad stores in <a class="auto-href" href="http://dbpedia.org/resource/Semantic_Web" id="link-id0x1d944d78">Semantic Web</a> and <a class="auto-href" href="http://dbpedia.org/resource/Linked_Data" id="link-id0x1c7a87c8">Linked Data</a> circles) -- database systems (or data spaces) that manage proposition oriented records in 3-tuple (triples) or 4-tuple (quads) form. </p> <h3>How?</h3> <p>SPARQL queries are actually HTTP payloads (typically). Thus, using a RESTful client-server interaction pattern, you can dispatch calls to a SPARQL compliant data server and receive a payload for local processing e.g. local object binding re. Python.</p> <h4>Steps:</h4> <ol> <li> From your command line execute: aptitude search '^python26', to verify Python is in place </li> <li>Determine which SPARQL endpoint you want to access e.g. <a href="http://dbpedia.org/sparql" id="link-id0x1d476520">DBpedia</a> or a local <a class="auto-href" href="http://virtuoso.openlinksw.com" id="link-id0x1bcfe140">Virtuoso</a> instance (typically: http://localhost:8890/sparql). </li> <li>If using Virtuoso, and you want to populate its quad store using SPARQL, assign "<a href="http://docs.openlinksw.com/virtuoso/rdfsparql.html#rdfsupportedprotocolendpointuri" id="link-id0x1c7630b8">SPARQL_SPONGE</a>" privileges to user "SPARQL" (this is basic control, more sophisticated WebID based ACLs are available for controlling SPARQL access).</li> </ol> <h4>Script:</h4> <pre> #!/usr/bin/env python # # Demonstrating use of a single query to populate a # Virtuoso Quad Store via Python. # import urllib, json # HTTP <a class="auto-href" href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id0x1bd91cf0">URL</a> is constructed accordingly with JSON query results format in mind. def sparqlQuery(query, baseURL, format="application/json"): params={ "default-graph": "", "should-sponge": "soft", "query": query, "debug": "on", "timeout": "", "format": format, "save": "display", "fname": "" } querypart=urllib.urlencode(params) response = urllib.urlopen(baseURL,querypart).read() return json.loads(response) # Setting Data Source Name (DSN) dsn="http://dbpedia.org/resource/DBpedia" # Virtuoso pragmas for instructing SPARQL engine to perform an HTTP GET # using the IRI in FROM clause as Data Source URL query="""DEFINE get:soft "replace" SELECT DISTINCT * FROM <%s> WHERE {?s ?p ?o}""" % dsn data=sparqlQuery(query, "http://localhost:8890/sparql/") print "Retrieved data:\n" + json.dumps(data, sort_keys=True, indent=4) # # End </pre> <h4>Output</h4> <pre> Retrieved data: { "head": { "link": [], "vars": [ "s", "p", "o" ] }, "results": { "bindings": [ { "o": { "type": "<a class="auto-href" href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id0x1b1470b8">uri</a>", "value": "http://www.w3.org/2002/07/owl#Thing" }, "p": { "type": "uri", "value": "http://www.w3.org/1999/02/22-rdf-syntax-ns#type" }, "s": { "type": "uri", "value": "http://dbpedia.org/resource/DBpedia" } }, ... </pre> <h3>Conclusion</h3> <p> JSON was chosen over XML (re. output format) since this is about a "no-brainer installation and utilization" guide for a Python developer that already knows how to use Python for HTTP based data access. SPARQL just provides an added bonus to URL dexterity (delivered via URI abstraction) with regards to constructing Data Source Names or Addresses.</p> <h3>Related</h3> <ul> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1648" id="link-id0x1c9e26b0">SPARQL Guide for the Ruby Developer</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1646" id="link-id0x1c7af188">Simple Guide for using SPARQL with Virtuoso</a> </li> <li> <a href="http://www.delicious.com/kidehen/sparql_tutorial" id="link-id0x1ac1ba48">General SPARQL Tutorial Collection</a> </li> <li> <a href="http://www.delicious.com/kidehen/virtuoso_sparql_tutorial" id="link-id0x1c7be660">Virtuoso Specific SPARQL Tutorial Collection</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1567" id="link-id0x1c52b438">The URI, URL, and Linked Data Meme's Generic HTTP URI</a>. </li> </ul>
SPARQL for the Ruby Developer
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2011-01-18#1648
2011-01-18T19:48:34Z
2011-01-25T10:17:12.000002-05:00
<h3>What?</h3> <p>A simple guide usable by any <a class="auto-href" href="http://dbpedia.org/resource/Ruby_programming_language" id="link-id0x1bb88908">Ruby</a> developer seeking to exploit <a class="auto-href" href="http://dbpedia.org/resource/SPARQL" id="link-id0x1ae67500">SPARQL</a> without hassles.</p> <h3>Why?</h3> <p>SPARQL is a powerful query language, results serialization format, and an HTTP based <a href="http://dbpedia.org/resource/Data">data</a> access protocol from the W3C. It provides a mechanism for accessing and integrating data across <a href="http://en.wikipedia.org/wiki/Deductive_database" id="link-id0x1bc61d88">Deductive Database Systems</a> (colloquially referred to as triple or quad stores in <a class="auto-href" href="http://dbpedia.org/resource/Semantic_Web" id="link-id0x1cc11420">Semantic Web</a> and <a class="auto-href" href="http://dbpedia.org/resource/Linked_Data" id="link-id0x1b2e7780">Linked Data</a> circles) -- database systems (or data spaces) that manage proposition oriented records in 3-tuple (triples) or 4-tuple (quads) form. </p> <h3>How?</h3> <p>SPARQL queries are actually HTTP payloads (typically). Thus, using a RESTful client-server interaction pattern, you can dispatch calls to a SPARQL compliant data server and receive a payload for local processing e.g. local object binding re. Ruby. </p> <h4>Steps:</h4> <ol> <li> From your command line execute: aptitude search '^ruby', to verify Ruby is in place </li> <li>Determine which SPARQL endpoint you want to access e.g. <a href="http://dbpedia.org/sparql" id="link-id0x1d476520">DBpedia</a> or a local <a class="auto-href" href="http://virtuoso.openlinksw.com" id="link-id0x1bcfe140">Virtuoso</a> instance (typically: http://localhost:8890/sparql). </li> <li>If using Virtuoso, and you want to populate its quad store using SPARQL, assign "<a href="http://docs.openlinksw.com/virtuoso/rdfsparql.html#rdfsupportedprotocolendpointuri" id="link-id0x1c7630b8">SPARQL_SPONGE</a>" privileges to user "SPARQL" (this is basic control, more sophisticated WebID based ACLs are available for controlling SPARQL access).</li> </ol> <h4>Script:</h4> <pre> #!/usr/bin/env ruby # # Demonstrating use of a single query to populate a # Virtuoso Quad Store. # require 'net/http' require 'cgi' require 'csv' # # We opt for CSV based output since handling this format is straightforward in Ruby, by default. # HTTP <a class="auto-href" href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id0x1acee348">URL</a> is constructed accordingly with CSV as query results format in mind. def sparqlQuery(query, baseURL, format="text/csv") params={ "default-graph" => "", "should-sponge" => "soft", "query" => query, "debug" => "on", "timeout" => "", "format" => format, "save" => "display", "fname" => "" } querypart="" params.each { |k,v| querypart+="#{k}=#{CGI.escape(v)}&" } sparqlURL=baseURL+"?#{querypart}" response = Net::HTTP.get_response(<a class="auto-href" href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id0x1d24dfd8">URI</a>.parse(sparqlURL)) return CSV::parse(response.body) end # Setting Data Source Name (DSN) dsn="http://dbpedia.org/resource/DBpedia" #Virtuoso pragmas for instructing SPARQL engine to perform an HTTP GET #using the IRI in FROM clause as Data Source URL query="DEFINE get:soft \"replace\" SELECT DISTINCT * FROM <#{dsn}> WHERE {?s ?p ?o} " #Assume use of local installation of Virtuoso #otherwise you can change URL to that of a public endpoint #for example DBpedia: http://dbpedia.org/sparql data=sparqlQuery(query, "http://localhost:8890/sparql/") puts "Got data:" p data # # End </pre><h4>Output</h4> <pre> Got data: [["s", "p", "o"], ["http://dbpedia.org/resource/DBpedia", "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", "http://www.w3.org/2002/07/owl#Thing"], ["http://dbpedia.org/resource/DBpedia", "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", "http://dbpedia.org/ontology/Work"], ["http://dbpedia.org/resource/DBpedia", "http://www.w3.org/1999/02/22-rdf-syntax-ns#type", "http://dbpedia.org/class/yago/Software106566077"], ... </pre> <h3>Conclusion</h3> <p> <a href="http://en.wikipedia.org/wiki/Comma-separated_values" id="link-id0x1cac8420">CSV</a> was chosen over XML (re. output format) since this is about a "no-brainer installation and utilization" guide for a Ruby developer that already knows how to use Ruby for HTTP based data access. SPARQL just provides an added bonus to URL dexterity (delivered via URI abstraction) with regards to constructing Data Source Names or Addresses.</p> <h3>Related</h3> <ul> <li> <a href="http://www.taxonconcept.org/how-to/ruby-code-examples/how-do-i-use-ruby-to-query-a-sparql-endpoint.html" id="link-id0x1aa83678">SPARQL and Ruby SPARQL Client Library Example</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1646" id="link-id0x1c7af188">Simple Guide for using SPARQL with Virtuoso</a> </li> <li> <a href="http://www.delicious.com/kidehen/sparql_tutorial" id="link-id0x1ac1ba48">General SPARQL Tutorial Collection</a> </li> <li> <a href="http://www.delicious.com/kidehen/virtuoso_sparql_tutorial" id="link-id0x1c7be660">Virtuoso Specific SPARQL Tutorial Collection</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1567" id="link-id0x1c52b438">The URI, URL, and Linked Data Meme's Generic HTTP URI</a>. </li> </ul>
Simple Virtuoso Installation & Utilization Guide for SPARQL Users (Update 5)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2011-01-16#1647
2011-01-16T07:06:21Z
2011-01-19T10:43:35-05:00
<h3>What is <a class="auto-href" href="http://dbpedia.org/resource/SPARQL" id="link-id0x1ab60ac0">SPARQL</a>?</h3> <p>A declarative query language from the W3C for querying structured propositional <a href="http://dbpedia.org/resource/Data">data</a> (in the form of 3-<a href="http://en.wikipedia.org/wiki/Tuple" id="link-id0x1b1e0010">tuple</a> [triples] or 4-tuple [quads] records) stored in a <a href="http://en.wikipedia.org/wiki/Deductive_database" id="link-id0x1cf8af98">deductive database</a> (colloquially referred to as triple or quad stores in <a class="auto-href" href="http://dbpedia.org/resource/Semantic_Web" id="link-id0x1caf5050">Semantic Web</a> and <a class="auto-href" href="http://dbpedia.org/resource/Linked_Data" id="link-id0x19d781b8">Linked Data</a> parlance).</p> <p>SPARQL is inherently platform independent. Like <a class="auto-href" href="http://dbpedia.org/resource/SQL" id="link-id0x1b879140">SQL</a>, the query language and the backend database engine are distinct. Database clients capture SPARQL queries which are then passed on to compliant backend databases.</p> <h3>Why is it important?</h3> <p>Like SQL for relational databases, it provides a powerful mechanism for accessing and joining data across one or more data partitions (named graphs identified by IRIs). The aforementioned capability also enables the construction of sophisticated Views, Reports (HTML or those produced in native form by desktop productivity tools), and data streams for other services.</p> <p>Unlike SQL, SPARQL includes result serialization formats and an HTTP based wire protocol. Thus, the ubiquity and sophistication of HTTP is integral to SPARQL i.e., client side applications (user agents) only need to be able to perform an HTTP GET against a <a class="auto-href" href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id0x1ba287e8">URL</a> en route to exploiting the power of SPARQL.</p> <h3>How do I use it, generally?</h3> <ol> <li>Locate a SPARQL endpoint (<a href="http://dbpedia.org/sparql" id="link-id0x1d7436b0">DBpedia</a>, <a href="http://lod.openlinksw.com/sparql" id="link-id0x1bf20690">LOD Cloud Cache</a>, <a href="http://semantic.data.gov" id="link-id0x1a8ebc28">Data.Gov</a>, <a href="http://linkeddata.uriburner.com/sparql" id="link-id0x1be93070">URIBurner</a>, <a href="http://www.delicious.com/kidehen/sparql_endpoint" id="link-id0x1cce9b40">others</a>), or;</li> <li>Install a SPARQL compliant database server (quad or triple store) on your desktop, workgroup server, data center, or cloud (e.g., <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtuosoEC2AMI" id="link-id0x1cd697a0">Amazon EC2 AMI</a>)</li> <li>Start the database server</li> <li>Execute SPARQL Queries via the <a href="http://lod.openlinksw.com/sparql" id="link-id0x1b99d790">SPARQL endpoint.</a> </li> </ol> <h3>How do I use SPARQL with <a class="auto-href" href="http://virtuoso.openlinksw.com" id="link-id0x1c9adc80">Virtuoso</a>?</h3> <p>What follows is a very simple guide for using SPARQL against your own instance of Virtuoso:</p> <ol> <li>Software Download and Installation</li> <li>Data Loading from Data Sources exposed at Network Addresses (e.g. HTTP URLs) using very simple methods</li> <li>Actual SPARQL query execution via SPARQL endpoint.</li> </ol> <h3>Installation Steps</h3> <ol> <li> Download <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VOSDownload" id="link-id0x1b795100">Virtuoso Open Source</a> or <a href="http://download.openlinksw.com/virtwiz/virtuoso.php" id="link-id0x1cce46f0">Virtuoso Commercial</a> Editions </li> <li> Run installer (if using Commercial edition of Windows Open Source Edition, otherwise follow build guide) </li> <li> Follow post-installation guide and verify installation by typing in the command: virtuoso -? (if this fails check you've followed installation and setup steps, then verify environment variables have been set) </li> <li> Start the Virtuoso server using the command: virtuoso-start.sh </li> <li> Verify you have a connection to the Virtuoso Server via the command: isql localhost (assuming you're using default DB settings) or the command: isql localhost:1112 (assuming demo database) or goto your browser and type in: http://<virtuoso-server-host-name>:[port]/conductor (e.g. http://localhost:8889/conductor for default DB or http://localhost:8890/conductor if using Demo DB) </li> <li> Go to SPARQL endpoint which is typically -- http://<virtuoso-server-host-name>:[port]/sparql </li> <li> Run a quick sample query (since the database always has system data in place): select distinct * where {?s ?p ?o} limit 50 .</li> </ol> <h3>Troubleshooting</h3> <ol> <li>Ensure environment settings are set and functional -- if using Mac OS X or Windows, so you don't have to worry about this, just start and stop your Virtuoso server using native OS services applets</li> <li>If using the Open Source Edition, follow the <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VOSMake#Getting%20Started" id="link-id0x1bfa7548">getting started guide</a> -- it covers PATH and startup directory location re. starting and stopping Virtuoso servers.</li> <li>Sponging (HTTP GETs against external Data Sources) within SPARQL queries is disabled by default. You can enable this feature by assigning "<a href="http://docs.openlinksw.com/virtuoso/rdfsparql.html#rdfsupportedprotocolendpointuri" id="link-id0x1d566270">SPARQL_SPONGE</a>" privileges to user "SPARQL". Note, more sophisticated security exists via <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtAuthPolicyFOAFSSL" id="link-id0x1a3c9eb8">WebID based ACLs</a>. </li> </ol> <h3>Data Loading Steps</h3> <ol> <li> Identify an RDF based structured data source of interest -- a file that contains 3-tuple / triples available at an address on a public or private HTTP based network </li> <li>Determine the Address (URL) of the RDF data source</li> <li>Go to your Virtuoso SPARQL endpoint and type in the following SPARQL query: DEFINE GET:SOFT "replace" SELECT DISTINCT * FROM <RDFDataSourceURL> WHERE {?s ?p ?o} </li> <li> All the triples in the RDF resource (data source accessed via URL) will be loaded into the Virtuoso Quad Store (using RDF Data Source URL as the internal quad store Named Graph IRI) as part of the SPARQL query processing pipeline. </li> </ol> <p> Note: the data source URL doesn't even have to be RDF based -- which is where the Virtuoso <a class="auto-href" href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id0x1d1a0978">Sponger</a> Middleware comes into play (download and install the <a href="http://s3.amazonaws.com/opldownload/uda/vad-packages/6.1/virtuoso/rdf_mappers_dav.vad" id="link-id0x1d0e1530">VAD installer package</a> first) since it delivers the following features to Virtuoso's SPARQL engine: </p> <ol> <li> Transformation of data from non RDF data sources (file content, hypermedia resources, <a href="http://dbpedia.org/resource/World_Wide_Web">web</a> services output etc..) into RDF based 3-tuples (triples)</li> <li> Cache Invalidation Scheme Construction -- thus, subsequent queries (without the define get:soft "replace" pragma will not be required bar when you forcefully want to override cache).</li> <li> If you have very large data sources like DBpedia etc. from CKAN, simply use our <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtBulkRDFLoader" id="link-id0x1d19b4b0">bulk loader</a> . </li> </ol> <h3>SPARQL Endpoint Discovery</h3> <p>Public SPARQL endpoints are emerging at an ever increasing rate. Thus, we've setup up a DNS lookup service that provides access to a large number of SPARQL endpoints. Of course, this doesn't cover all existing endpoints, so if our endpoint is missing please ping <a class="auto-href" href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id0x1d634848">me</a>.</p> <p>Here are a collection of commands for using DNS-SD to discover SPARQL endpoints:</p> <ol> <li>dns-sd -B _sparql._tcp sparql.openlinksw.com -- browse for services instances</li> <li>dns-sd -Z _sparql._tcp sparql.openlinksw.com -- output results in Zone File format</li> <li></li> </ol> <h3>Related</h3> <ol> <li> <a href="http://www.ensta.fr/~diam/ruby/online/ruby-doc-stdlib/libdoc/net/http/rdoc/index.html" id="link-id0x1b156610">Using HTTP from Ruby</a> -- you can just make <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VOSSparqlProtocol" id="link-id0x1d024d60">SPARQL Protocol URLs</a> re. SPARQL</li> <li> <a href="http://sparql.rubyforge.org/client/" id="link-id0x1cd43a48">Using SPARQL Endpoints via Ruby</a> -- Ruby example using DBpedia endpoint</li> <li> <a href="http://wikis.openlinksw.com/dataspace/owiki/wiki/OATWikiWeb/InteractiveSparqlQueryBuilder" id="link-id0x1b9d2190">Interactive SPARQL Query By Example (QBE) tool</a> -- provides a graphical user interface (as is common in SQL realm re. query building against <a class="auto-href" href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id0x1bfffb70">RDBMS</a> engines) that works with any SPARQL endpoint </li> <li> <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtRDFInsert" id="link-id0x1ab63de0">Other methods of loading RDF data into Virtuoso</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSponger" id="link-id0x1ca248e0">Virtuoso Sponger</a> -- architecture and how it turns a wide variety of non RDF data sources into SPARQL accessible data </li> <li> <a href="http://ode.openlinksw.com/example.html" id="link-id0x1be34758">Using OpenLink Data Explorer</a> (ODE) to populate Virtuoso -- locate a resource of interest; click on a bookmarklet or use <a class="auto-href" href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id0x1ca84af0">context</a> menus (if using ODE extensions for Firefox, Safari, or Chrome); and you'll have SPARQL accessible data automatically inserted into your Virtuoso instance. </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1295" id="link-id0x1c9060f0">W3C's SPARQLing Data Access Ingenuity</a> -- an older generic SPARQL introduction post </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSPARQLRef" id="link-id0x1cf1e298">Collection of SPARQL Query Examples </a>-- GoodRelations (Product Offers), <a class="auto-href" href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id0x1c0445d0">FOAF</a> (Profiles), <a class="auto-href" href="http://dbpedia.org/resource/SIOC" id="link-id0x1b785e48">SIOC</a> (Data Spaces -- <a href="http://ods.openlinksw.com/dataspace/dav/wiki/ODS/ODSAtomOWLRefExampleBlog" id="link-id0x1b6c9f78">Blogs</a>, <a href="http://ods.openlinksw.com/dataspace/dav/wiki/ODS/ODSAtomOWLRefExampleWiki" id="link-id0x1c188280">Wikis</a>, <a href="http://ods.openlinksw.com/dataspace/dav/wiki/ODS/ODSAtomOWLRefExampleBookmarks" id="link-id0x1a9a8f98">Bookmarks</a>, <a href="http://ods.openlinksw.com/dataspace/dav/wiki/ODS/ODSAtomOWLRefExampleFeeds" id="link-id0x1720c658">Feed Collections</a>, <a href="http://ods.openlinksw.com/dataspace/dav/wiki/ODS/ODSAtomOWLRefExampleGallery" id="link-id0x1cdba348">Photo Galleries</a>, <a href="http://ods.openlinksw.com/dataspace/dav/wiki/ODS/ODSAtomOWLRefExampleBriefcase" id="link-id0x1c8f1148">Briefcase/DropBox</a>, <a href="http://ods.openlinksw.com/dataspace/dav/wiki/ODS/ODSAtomOWLRefExampleAddressbook" id="link-id0x1b5eb7e0">AddressBook</a>, <a href="http://ods.openlinksw.com/dataspace/dav/wiki/ODS/ODSAtomOWLRefExampleCalendar" id="link-id0x1c575120">Calendars</a>, <a href="http://ods.openlinksw.com/dataspace/dav/wiki/ODS/ODSAtomOWLRefExampleDiscussions" id="link-id0x1c73be98">Discussion Forums</a>) </li> <li> <a href="http://lod.openlinksw.com/demo_queries/" id="link-id0x1b08aa00">Collection of Live SPARQL Queries against LOD Cloud Cache</a> -- simple and advanced queries. </li> </ol>
Virtuoso Linked Data Deployment In 3 Simple Steps
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-10-29#1642
2010-10-29T22:54:32Z
2010-11-02T11:55:31.000005-04:00
<p>Injecting <a class="auto-href" href="http://dbpedia.org/resource/Linked_Data" id="link-id0x17012e18">Linked Data</a> into the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> has been a major pain point for those who seek personal, service, or organization-specific variants of <a class="auto-href" href="http://dbpedia.org/resource/DBpedia" id="link-id0x196518a8">DBpedia</a>. Basically, the sequence goes something like this: </p> <ol> <li> You encounter DBpedia or the <a class="auto-href" href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id0x1b26d008">LOD</a> Cloud Pictorial.</li> <li> You look around (typically following your nose from link to link). </li> <li> You attempt to publish your own stuff. </li> <li> You get stuck. </li> </ol> <p>The problems typically take the following form:</p> <ol> <li> Functionality confusion about the complementary Name and Address functionality of a single <a class="auto-href" href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id0xa108a00">URI</a> abstraction </li> <li> Terminology confusion due to conflation and over-loading of terms such as Resource, <a class="auto-href" href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id0x1b3d08f8">URL</a>, Representation, Document, etc. </li> <li> Inability to find robust tools with which to generate Linked Data from existing <a href="http://dbpedia.org/resource/Data">data</a> sources such as relational databases, CSV files, XML, Web Services, etc. </li> </ol> <p>To start addressing these problems, here is a simple guide for generating and publishing Linked Data using <a class="auto-href" href="http://virtuoso.openlinksw.com" id="link-id0x1a7841e0">Virtuoso</a>.</p> <h3>Step 1 - RDF Data Generation</h3> <p>Existing RDF data can be added to the Virtuoso RDF Quad Store via a variety of built-in data loader utilities.</p> <p>Many options allow you to easily and quickly generate RDF data from other data sources:</p> <ul> <li> Install the Sponger Bookmarklet for the <a href="http://uriburner.com" id="link-id0x1aa50800">URIBurner service</a>. Bind this to your own <a class="auto-href" href="http://dbpedia.org/resource/SPARQL" id="link-id0x1a4255e0">SPARQL</a>-compliant backend RDF database (in this scenario, your local Virtuoso instance), and then Sponge some HTTP-accessible resources. </li> <li> Convert relational DBMS data to RDF using the Virtuoso RDF Views Wizard. </li> <li> Starting with CSV files, you can <ul> <li>Place them at an HTTP-accessible location, and use the Virtuoso <a class="auto-href" href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id0x16f7ba58">Sponger</a> to convert them to RDF or; </li> <li> Use the CVS import feature to import their content into Virtuoso's relational data engine; then use the built-in RDF Views Wizard as with other <a class="auto-href" href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id0x1982ea80">RDBMS</a> data. </li> </ul> </li> <li> Starting from XML files, you can <ul> <li> Use Virtuoso's inbuilt XSLT-Processor for manual XML to RDF/XML transformation or;</li> <li>Leverage the Sponger Cartridge for <a class="auto-href" href="http://dbpedia.org/resource/GRDDL" id="link-id0x1b350968">GRDDL</a>, if there is a transformation service associated with your XML data source, or;</li> <li>Let the Sponger analyze the XML data source and make a best-effort transformation to RDF.</li> </ul> </li> </ul> <h3>Step 2 - Linked Data Deployment</h3> <p> Install the <a href="http://download.openlinksw.com/packages/6.2/virtuoso/fct_dav.vad" id="link-id0x19845ad0">Faceted Browser VAD package (<code>fct_dav.vad</code>)</a> which delivers the following:</p> <ol> <li> Faceted Browser Engine UI</li> <li> Dynamic Hypermedia Resource Generator <ul> <li>delivers descriptor resources for every <a class="auto-href" href="http://dbpedia.org/resource/Entity" id="link-id0x1b3a69f0">entity</a> (data object) in the Native or Virtual Quad Stores</li> <li>supports a broad array of output formats, including HTML+<a class="auto-href" href="http://dbpedia.org/resource/RDFa" id="link-id0x1a92d2f8">RDFa</a>, RDF/XML, N3/Turtle, NTriples, RDF-JSON, OData+Atom, and OData+JSON. </li> </ul> </li> </ol> <h3>Step 3 - Linked Data Consumption & Exploitation</h3> <p> Three simple steps allow you, your enterprise, and your customers to consume and exploit your newly deployed Linked Data -- </p> <ol> <li> Load a page like this in your browser: <code>http://<cname>[:<port>]/describe/?uri=<entity-uri></code> <ul> <li> <code><cname>[:<port>]</code> gets replaced by the host and port of your Virtuoso instance</li> <li> <code><entity-uri></code> gets replaced by the URI you want to see described -- for instance, the URI of one of the resources you let the Sponger handle. </li> </ul> </li> <li> Follow the links presented in the descriptor page. </li> <li>If you ever see a blank page with a hyperlink subject name in the About: section at the top of the page, simply add the parameter "&sp=1" to the URL in the browser's Address box, and hit [ENTER]. This will result in an "on the fly" resource retrieval, transformation, and descriptor page generation.</li> <li> Use the navigator controls to page up and down the data associated with the "in scope" resource descriptor. </li> </ol> <h3>Related</h3> <ul> <li> <a href="http://linkeddata.uriburner.com/describe/?url=http%3A%2F%2Flinkeddata.uriburner.com%2Fabout%2Fid%2Fentity%2Fhttp%2Fwww.amazon.com%2Fo%2FASIN%2F006251587X" id="link-id0x1a8aeaf8">Sample Descriptor Page</a> (what you see post completion of the steps in this post) </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1639" id="link-id0x1af66f38">What is Linked Data, really?</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1613" id="link-id0x1acdbc58">Painless Linked Data Generation via URIBurner</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtRDFInsert" id="link-id0x1abe3b18">How To Load RDF Data Into Virtuoso</a> (various methods)</li> <li> <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtBulkRDFLoader" id="link-id0x1a441ff0">Virtuoso Bulk Loader Script for RDF</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtCsvFileBulkLoader" id="link-id0x190382e8">Bulk Loader Script for CSV</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtRdb2RDFViewsGeneration#OneClickLinkedDataGenerationAndDemployment" id="link-id0x1ac9c9c0">Wizard based generation of RDF based Linked Data from ODBC accessible Relational Databases </a> </li> </ul>
URIBurner: Painless Generation & Exploitation of Linked Data (Update 1 - Demo Links Added)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-03-10#1613
2010-03-10T17:52:03Z
2010-03-11T10:16:34.000003-05:00
<h2>What is URIBurner? </h2> <p>A service from <a href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id11a8a2768">OpenLink Software</a>, available at: <a href="http://uriburner.com" id="link-id11ace9988">http://uriburner.com</a>, that enables anyone to generate structured descriptions -on the fly- for resources that are already published to HTTP based networks. These descriptions exist as hypermedia resource representations where links are used to identify: </p> <ul> <li> the <a href="http://dbpedia.org/resource/Entity" id="link-id11ae10768">entity</a> (<a href="http://dbpedia.org/resource/Data">data</a> object or datum) being described,</li> <li>each of its attributes, and</li> <li>each of its attributes values (optionally).</li> </ul> <p>The hypermedia resource representation outlined above is what is commonly known as an <a href="http://dbpedia.org/resource/Entity-attribute-value_model" id="link-id121aec368">Entity</a>-Attribute-Value (EAV) Graph. The use of generic HTTP scheme based Identifiers is what distinguishes this type of hypermedia resource from others.</p> <h2>Why is it Important?</h2> <p> The virtues (dual pronged serendipitous discovery) of publishing HTTP based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11f5f53e8">Linked Data</a> across public (<a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id11b14e1f8">World Wide Web</a>) or private (Intranets and/or Extranets) is rapidly becoming clearer to everyone. That said, the nuance laced nature of Linked Data publishing presents significant challenges to most. Thus, for Linked Data to really blossom the process of publishing needs to be simplified i.e., "just click and go" (for human interaction) or REST-ful orchestration of HTTP CRUD (Create, Read, Update, Delete) operations between Client Applications and Linked Data Servers.</p> <h2>How Do I Use It?</h2> <p> In similar vane to the role played by FeedBurner with regards to Atom and RSS feed generation, during the early stages of the Blogosphere, it enables anyone to publish Linked Data bearing hypermedia resources on an HTTP network. Thus, its usage covers two profiles: Content Publisher and Content Consumer. </p> <h3> </h3> <h3>Content Publisher </h3> <h3> </h3> <p>The steps that follow cover all you need to do:</p> <ul> <li>place a <link /> <a href="http://dbpedia.org/resource/Tag" id="link-id11a62f908">tag</a> within your HTTP based hypermedia resource (e.g. within section for HTML )</li> <li>use a <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id11e7e5228">URL</a> via the @href attribute value to identify the location of the structured description of your resource, in this case it takes the form: http://linkeddata.uriburner.com/about/id/{scheme-or-protocol}/{your-hostname-or-authority}/{your-local-resource}</li> <li>for human visibility you may consider adding associating a button (as you do with Atom and RSS) with the URL above.</li> </ul> <p> That's it! The discoverability (SDQ) of your content has just multiplied significantly, its structured description is now part of the Linked Data Cloud with a reference back to your site (which is now a bona fide HTTP based Linked Data <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id120a6e5c8">Space</a>).</p> <h4>Examples</h4> <p> <strong>HTML+<a href="http://dbpedia.org/resource/RDFa" id="link-id11ae8fdc8">RDFa</a> based representation of a structured resource description:</strong> </p> <blockquote> <link rel="describedby" title="Resource Description (HTML)"type="text/html" href="http://linkeddata.uriburner.com/about/id/http/example.org/xyz.html"/></blockquote> <p> <strong>JSON based representation of a structured resource description:</strong> </p> <blockquote><link rel="describedby" title="Resource Description (JSON)" type="application/json" href="http://linkeddata.uriburner.com/about/id/http/example.org/xyz.html"/></blockquote> <p> <strong>N3 based representation of a structured resource description:</strong> </p> <blockquote><link rel="describedby" title="Resource Description (N3)" type="text/n3" href="http://linkeddata.uriburner.com/about/id/http/example.org/xyz.html"/></blockquote> <p> <strong>RDF/XML based representations of a structured resource description</strong>: </p> <blockquote><link rel="describedby" title="Resource Description (RDF/XML)" type="application/rdf+xml" href="http://linkeddata.uriburner.com/about/id/http/example.org/xyz.html"/></blockquote> <h3>Content Consumer</h3> <p>As an end-user, obtaining a structured description of any resource published to an HTTP network boils down to the following steps:</p> <ol> <li>go to: http://uriburner.com</li> <li>drag the Page Metadata Bookmarklet link to your Browser's toolbar</li> <li>whenever you encounter a resource of interest (e.g. an HTML page) simply click on the Bookmarklet</li> <li>you will be presented with an HTML representation of a structured resource description (i.e., identifier of the entity being described, its attributes, and its attribute values will be clearly presented).</li> </ol> <h3>Examples</h3> <ul> <li> <a href="http://linkeddata.uriburner.com/about/id/entity/http/www.amazon.com/o/ASIN/1591842778" id="link-id11ba54a48">Description of a Book culled from an Amazon web page</a> </li> <li> <a href="http://linkeddata.uriburner.com/about/id/entity/http/www.bestbuy.com/site/Flip+Video+-+UltraHD+Camcorder+-+Black/Chrome/9281984.p?id=1218073822126&skuId=9281984" id="link-id11f621848">Description of a product offering culled from a BestBuy web page</a> </li> <li> <a href="http://linkeddata.uriburner.com/about/id/entity/http/reviews.cnet.com/digital-cameras/canon-eos-5d-mark/4505-6501_7-33280763.html?tag=tpr" id="link-id115f27e08">Description of a product (a camera) culled from a CNET web page</a> </li> <li> <a href="http://linkeddata.uriburner.com/about/id/entity/http/cgi.ebay.com/23PORT-Canon-SLR-EOS-5D-Mark-II-Body-Only-New_W0QQitemZ140367785136QQcategoryZ31388QQcmdZViewItem#Offer" id="link-id120b4b258">Description of the same CNET product as an Offer on eBay</a> (exposed by the description above via seeAlso property value).</li> </ul> <p>If you are a developer, you can simply perform an HTTP operation request (from your development environment of choice) using any of the URL patterns presented below:</p> <a id="HTML:"> </a><strong>HTML: </strong> <ul> <li> <tt>curl -I -H "Accept: text/html" http://linkeddata.uriburner.com/about/id/{scheme}/{authority}/{local-path} </tt> </li> </ul> <h4> <a id="JSON:"> </a>JSON:</h4> <ul> <li> <tt>curl -I -H "Accept: application/json" http://linkeddata.uriburner.com/about/id/{scheme}/{authority}/{local-path} </tt> </li> <li> <tt>curl http://linkeddata.uriburner.com/about/data/json/{scheme}/{authority}/{local-path}</tt> </li> </ul> <h4> <a id="Notation_3_N3:"> </a>Notation 3 (N3):</h4> <ul> <li> <tt>curl -I -H "Accept: text/n3" http://linkeddata.uriburner.com/about/id/{scheme}/{authority}/{local-path} </tt> </li> <li> <tt>curl http://linkeddata.uriburner.com/about/data/n3/{scheme}/{authority}/{local-path}</tt> </li> </ul> <ul> <li> <tt>curl -I -H "Accept: text/turtle" http://linkeddata.uriburner.com/about/id/{scheme}/{authority}/{local-path}</tt> </li> <li> <tt>curl http://linkeddata.uriburner.com/about/data/ttl/{scheme}/{authority}/{local-path} </tt> </li> </ul> <h4> <a id="RDFXML:"> </a>RDF/XML:</h4> <ul> <li> <tt>curl -I -H "Accept: application/rdf+xml" http://linkeddata.uriburner.com/about/id/{scheme}/{authority}/{local-path} </tt> </li> <li> <tt>curl http://linkeddata.uriburner.com/about/data/xml/{scheme}/{authority}/{local-path} </tt> </li> </ul> <h2>Conclusion</h2> <p>URIBurner is a "deceptively simple" solution for cost-effective exploitation of HTTP based Linked Data meshes. It doesn't require any programming or customization en route to immediately realizing its virtues. </p> <p> If you like what URIBurner offers, but prefer to leverage its capabilities within your domain -- such that resource description URLs reside in your domain, all you have to do is perform the following steps:</p> <ol> <li> <a href="http://download.openlinksw.com/virtwiz/" id="link-id1158f8658">download a copy of Virtuoso</a> (for local desktop, workgroup, or data center installation) or</li> <li>instantiate <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtInstallationEC2" id="link-id11e03e558">Virtuoso via the Amazon EC2 Cloud</a> </li> <li>enable the Sponger Middleware component via the RDF Mapper VAD package (which includes <a href="http://www.openlinksw.com/dataspace/dav/wiki/Main/VirtSpongerCartridgeSupportedDataSources" id="link-id1205ffe78">cartridges for over 30 different resources types</a>)</li> </ol> <p>When you install your own URIBurner instances, you also have the ability to perform customizations that increase resource description fidelity in line with your specific needs. All you need to do is develop a custom extractor cartridge and/or meta cartridge. </p> <h2>Related:</h2> <ul> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSponger" id="link-id120582118"> Virtuoso Sponger Middleware</a> -- (technology behind <a href="http://uriburner.com" id="link-id11b634448">URIBurner Service</a>)</li> <li> <a href="http://virtuoso.openlinksw.com/screencasts/virtuoso-rdf-middleware3.swf" id="link-id12082e958">Animation demonstrating how the Virtuoso Sponger works</a>.</li> </ul>
Meshups Demonstrating How SPARQL-GEO Enhances Linked Data Exploitation (Update 2)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-03-06#1612
2010-03-06T22:43:49Z
2010-03-24T11:44:24.000002-04:00
<p>Deceptively simple demonstrations of how <a href="http://virtuoso.openlinksw.com" id="link-id11dfe45b8">Virtuoso</a>'s <a href="http://dbpedia.org/resource/SPARQL" id="link-id11a3d8968">SPARQL</a>-GEO extensions to SPARQL lay critical foundation for Geo Spatial solutions that seek to leverage the burgeoning <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11ae855b8">Linked Data</a>. </p> <h3>Setup <a href="http://dbpedia.org/resource/Information" id="link-id120a6f478">Information</a> </h3> <p>SPARQL Endpoint: <a href="http://lod.openlinksw.com/sparql" id="link-id120401958">Linked Open Data Cache</a> (8.5 Billion+ Quad Store which includes data from Geonames and the <a href="http://dl-learner.org/Projects/LinkedGeoData" id="link-id11b8f31d8">Linked GeoData Project</a> Data Sets) .</p> <h3>Live Linked Data Meshup Links:</h3> <ul> <li> <a href="http://bit.ly/cyJjwo" id="link-id120396168">LinkedGeoData things within 2km ORDER BY Dist LIMIT 10 </a>(Use from <strong>iPhone</strong> only since its an iPhone oriented Linked Data driven application)</li> <li> <a href="http://uriburner.com/isparql/view/?query=PREFIX%20foaf%3A%20%3Chttp%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2F%3E%0APREFIX%20lgv%3A%20%3Chttp%3A%2F%2Flinkedgeodata.org%2Fvocabulary%23%3E%0Aconstruct%20%7B%3Fthing%20a%20%3Ftype%3B%0A%20geo%3Ageometry%20%3Fgeo%3B%0A%20foaf%3Aname%20%3Fname%7D%0Awhere%20%7B%0A%3Fthing%20geo%3Ageometry%20%3Fgeo%20.%0A%3Fthing%20lgv%3Aname%20%3Fname%20.%0A%3Fthing%20a%20%3Ftype.%0AFILTER%20%28bif%3Ast_intersects%20%28%3Fgeo%2C%20bif%3Ast_point%20%28-0.128056%2C%2051.508057%29%2C%202%29%29%0A%7D%0ALIMIT%20100&endpoint=http://lod.openlinksw.com/sparql&resultview=map&maxrows=50" id="link-id1209a6f38">LinkedGeoData things within 2km of Trafalgar Square</a> | <a href="http://uriburner.com/isparql/view/?query=PREFIX%20foaf%3A%20%3Chttp%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2F%3E%0APREFIX%20lgv%3A%20%3Chttp%3A%2F%2Flinkedgeodata.org%2Fvocabulary%23%3E%0Aconstruct%20%7B%0A%20%3Fthing%20rdfs%3Atype%20%3Ftype%3B%0A%20geo%3Ageometry%20%3Fgeo%3B%0A%20foaf%3Aname%20%3Fname%7D%0Awhere%20%7B%0A%20%3Fthing%20geo%3Ageometry%20%3Fgeo%20.%0A%20%3Fthing%20lgv%3Aname%20%3Fname%20.%0A%20%3Fthing%20a%20%3Ftype.%0AFILTER%20(bif%3Ast_intersects%20(%3Fgeo%2C%20bif%3Ast_point%20(-0.128056%2C%2051.508057)%2C%202))%0A%7D%0Aorder%20by%20asc%20(bif%3Ast_distance%20(%3Fgeo%2C%20bif%3Ast_point%20(-0.128056%2C%2051.508057)))%0ALIMIT%20100&endpoint=http://lod.openlinksw.com/sparql&resultview=map&maxrows=50" id="link-id11ebb07f8">ORDER By Distance - closest first</a> | <a href="http://uriburner.com/isparql/view/?query=PREFIX%20foaf%3A%20%3Chttp%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2F%3E%0APREFIX%20lgv%3A%20%3Chttp%3A%2F%2Flinkedgeodata.org%2Fvocabulary%23%3E%0Aconstruct%20%7B%0A%20%3Fthing%20rdfs%3Atype%20%3Ftype%3B%0A%20geo%3Ageometry%20%3Fgeo%3B%0A%20foaf%3Aname%20%3Fname%7D%0Awhere%20%7B%0A%20%3Fthing%20geo%3Ageometry%20%3Fgeo%20.%0A%20%3Fthing%20lgv%3Aname%20%3Fname%20.%0A%20%3Fthing%20a%20%3Ftype.%0AFILTER%20(bif%3Ast_intersects%20(%3Fgeo%2C%20bif%3Ast_point%20(-0.128056%2C%2051.508057)%2C%202))%0A%7D%0Aorder%20by%20desc%20(bif%3Ast_distance%20(%3Fgeo%2C%20bif%3Ast_point%20(-0.128056%2C%2051.508057)))%0ALIMIT%20100&endpoint=http://lod.openlinksw.com/sparql&resultview=map&maxrows=50" id="link-id1207a27e8">ORDER By Distance - most distant first</a> .</li> </ul> <h3>Related</h3> <ul> <li> <a href="http://delicious.com/kidehen/linked_data_demo" id="link-id11ac9a2a8">Collection of Live Linked Data Demos</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1587" id="link-id11aca1d68">Virtuoso's SPARQL-GEO Extensions</a> </li> </ul>
Revisiting HTTP based Linked Data (Update 1 - Demo Video Links Added)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-03-04#1611
2010-03-04T15:16:14Z
2010-03-08T09:59:37.000010-05:00
<p>Motivation for this post arose from a series of Twitter exchanges between <a href="http://ouseful.wordpress.com/about/#this" id="link-id115699ae8">Tony Hirst</a> and I, in relation to his <a href="http://dbpedia.org/resource/Blog" id="link-id11a0cbc08">blog</a> post titled: <a href="http://ouseful.wordpress.com/2010/03/03/so-what-is-it-about-linked-data-that-makes-it-linked-data%e2%84%a2/" id="link-id1158f8ce8">So What Is It About Linked Data that Makes it Linked Data⢠?</a> </p> <p>At the end of the marathon session, it was clear to <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id11557da58">me</a> that a blog post was required for future reference, at the very least :-)</p> <h3>What is <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11a7ee3a8">Linked Data</a>?</h3> <p>"<a href="http://dbpedia.org/resource/Reference_(computer_science)" id="link-id11a682338">Data Access by Reference</a>" mechanism for Data Objects (or Entities) on HTTP networks. It enables you to Identify a Data Object and Access its structured Data Representation via a single Generic HTTP scheme based Identifier (HTTP <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id125037288">URI</a>). Data Object representation formats may vary; but in all cases, they are <a href="http://dbpedia.org/resource/Hypermedia" id="link-id115548f78">hypermedia</a> oriented, fully structured, and negotiable within the <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id11c955888">context</a> of a client-server message exchange.</p> <h3>Why is it Important?</h3> <p> <a href="http://dbpedia.org/resource/Information" id="link-id125154778">Information</a> makes the world tick!</p> <p>Information doesn't exist without data to contextualize.</p> <p>Information is inaccessible without a projection (presentation) medium. </p> <p>All information (without exception, when produced by humans) is subjective. Thus, to truly maximize the innate heterogeneity of collective human intelligence, loose coupling of our information and associated data sources is imperative.</p> <h3>How is Linked Data Delivered?</h3> <p>Linked Data is exposed to HTTP networks (e.g. <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id125321238">World Wide Web</a>) via hypermedia resources bearing structured representations of data object descriptions. Remember, you have a single Identifier abstraction (generic HTTP URI) that embodies: Data Object Name and Data Representation Location (aka <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id1249a7a88">URL</a>).</p> <h3>How are Linked Data Object Representations Structured?</h3> <p>A structured representation of data exists when an <a href="http://dbpedia.org/resource/Entity" id="link-id1250630d8">Entity</a> (Datum), its Attributes, and its Attribute Values are clearly discernible. In the case of a Linked Data Object, structured descriptions take the form of a hypermedia based <a href="http://dbpedia.org/resource/Entity-attribute-value_model" id="link-id126ed7608">Entity</a>-Attribute-Value (EAV) graph pictorial -- where each Entity, its Attributes, and its Attribute Values (optionally) are identified using Generic HTTP URIs. </p> <p>Examples of structured data representation formats (content types) associated with Linked Data Objects include:</p> <ul> <li>text/html</li> <li>text/turtle</li> <li>text/n3</li> <li>application/json</li> <li>application/rdf+xml</li> <li>Others </li> </ul> <h3>How Do I Create Linked Data oriented Hypermedia Resources?</h3> <p>You markup resources by expressing distinct entity-attribute-value statements (basically these a 3-tuple records) using a variety of notations:</p> <ul> <li>(X)HTML+<a href="http://dbpedia.org/resource/RDFa" id="link-id1252975b8">RDFa</a>,</li> <li> <a href="http://n2.talis.com/wiki/RDF_JSON_Specification" id="link-id115015458">JSON</a>,</li> <li> <a href="http://www.dajobe.org/2004/01/turtle/" id="link-id116458478">Turtle</a>,</li> <li> <a href="http://www.w3.org/DesignIssues/Notation3" id="link-id11a62f9f8">N3</a>,</li> <li> <a href="http://swdev.nokia.com/trix/trix.html" id="link-id11a8f56b8">TriX</a>,</li> <li> <a href="http://www4.wiwiss.fu-berlin.de/bizer/TriG/" id="link-id117156978">TriG</a>,</li> <li> <a href="http://www.w3.org/TR/REC-rdf-syntax/" id="link-id126f52a58">RDF/XML</a>, and</li> <li>Others (for instance you can use Atom data format extensions to model EAV graph as per OData initiative from Microsoft).</li> </ul> <p>You can achieve this task using any of the following approaches:</p> <ul> <li>Notepad</li> <li>WYSIWYG Editor </li> <li>Transformation of Database Records via Middleware</li> <li>Transformation of XML based <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Services output via Middleware</li> <li>Transformation of other Hypermedia Resources via Middleware</li> <li>Transformation of non Hypermedia Resources via Middleware</li> <li>Use a platform that delivers all of the above.</li> </ul> <h3>Practical Examples of Linked Data Objects Enable</h3> <ul> <li>Describe Who You Are, What You Offer, and What You Need via your structured profile, then leave your HTTP network to perform the REST (serendipitous discovery of relevant things)</li> <li>Identify (via map overlay) all items of interest based on a 2km+ radious of my current location (this could include vendor offerings or services sought by existing or future customers)</li> <li>Share the latest and greatest family photos with family members *only* without forcing them to signup for Yet Another Web 2.0 service or Social Network</li> <li>No repetitive signup and username and password based login sequences per Web 2.0 or Mobile Application combo</li> <li>Going beyond imprecise Keyword Search to the new frontier of Precision Find - Example, Find Data Objects associated with the keywords: Tiger, while enabling the seeker disambiguate across the "Who", "What", "Where", "When" dimensions (with negation capability)</li> <li>Determine how two Data Objects are Connected - person to person, person to subject matter etc. (LinkedIn outside the walled garden)</li> <li>Use any resource address (e.g <a href="http://dbpedia.org/resource/Blog" id="link-id124fd8118">blog</a> or bookmark URL) as the conduit into a Data Object mesh that exposes all associated Entities and their social network relationships</li> <li>Apply patterns (social dimensions) above to traditional enterprise data sources in combination (optionally) with external data without compromising security etc.</li> </ul> <h3>How Do <a href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id124fd0d98">OpenLink Software</a> Products Enable Linked Data Exploitation?</h3> <p>Our data access middleware heritage (which spans 16+ years) has enabled us to assemble a rich portfolio of coherently integrated products that enable cost-effective evaluation and utilization of Linked Data, without writing a single line of code, or exposing you to the hidden, but extensive admin and configuration costs. Post installation, the benefits of Linked Data simply materialize (along the lines described above).</p> <p>Our main Linked Data oriented products include:</p> <ul> <li> <a href="http://ode.openlinksw.com" id="link-id125058d68">OpenLink Data Explorer</a> -- visualizes Linked Data or Linked Data transformed "on the fly" from hypermedia and non hypermedia data sources </li> <li> <a href="http://uriburner.com" id="link-id1251db6a8">URIBurner</a> -- a "deceptively simple" solution that enables the generation of Linked Data "on the fly" from a broad collection of data sources and resource types</li> <li> <a href="http://ods.openlinksw.com/wiki/ODS/" id="link-id1252caae8">OpenLink Data Spaces</a> -- a platform for enterprises and individuals that enhances distributed collaboration via Linked Data driven virtualization of data across its native and/or 3rd party content manager for: Blogs, Wikis, Shared Bookmarks, Discussion Forums, Social Networks etc</li> <li> <a href="http://virtuoso.openlinksw.com/overview/index.htm" id="link-id124809b58">OpenLink Virtuoso</a> -- a secure and high-performance native hybrid data server (Relational, RDF-Graph, Document models) that includes in-built Linked Data transformation middleware (aka. Sponger). </li> </ul> <h3>Related</h3> <ul> <li> <a href="http://www.ietf.org/rfc/rfc2616.txt" id="link-id125306d78">Hypertext Transfer Protocol 1.1 RFC</a> </li> <li> <a href="http://www.odata.org/docs/%5BMC-APDSU%5D.htm#_Toc246716495" id="link-id11c948e98">Open Data Protocol Glossary</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1543" id="link-id126fae278">Simple Explanation of RDF and Linked Data Dynamics</a> </li> <li> <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=linked%20data%0D%0A&type=text&output=html" id="link-id1252e0018">Collection of post from the past about Linked Data</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1584" id="link-id124fefea8">Are We There Yet Re. Web++?</a> -- includes link to <a href="http://itc.conversationsnetwork.org/shows/detail4233.html" id="link-id125188078">podcast conversation with Jon Udell</a> </li> <li> <a href="http://www.ted.com/talks/gary_flake_is_pivot_a_turning_point_for_web_exploration.html" id="link-id11a501c28">Web of Linked Data Pivoting Demo from TED</a> -- by Microsoft's Gary Flake </li> <li> <a href="http://www.youtube.com/watch?v=G29DBIEcIuQ" id="link-id1204fff18">Microsoft Pivot atop Virtuoso Quad Store's Faceted Browser Engine</a>-- My Demonstration of EAV model transcending data representation variations (i.e., RDF's EAV data model data served up in Microsoft CXML data representation format). </li> </ul>
Linked Data & Socially Enhanced Collaboration (Enterprise or Individual) -- Update 1
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-03-02#1610
2010-03-02T20:47:54Z
2010-03-03T19:50:37-05:00
<p>Socially enhanced enterprise and invididual collaboration is becoming a focal point for a variety of solutions that offer erswhile distinct content managment features across the realms of Blogging, Wikis, Shared Bookmarks, Discussion Forums etc.. as part of an integrated platform suite. Recently, <a href="http://www.socialtext.com/" id="link-id112be850">Socialtext</a> has caught my attention courtesy of its nice <a href="http://www.socialtext.com/products/socialnetworking.php" id="link-id145d9850">features and benefits page</a> . In addition, I've also found the <a href="http://mike2.openmethodology.org/" id="link-id14103cc8">Mike 2.0 portal</a> immensely interesting and valuable, for those with an enterprise collaboration bent.</p> <p>Anyway, Socialtext and Mike 2.0 (they aren't identical and juxtaposition isn't seeking to imply this) provide nice demonstrations of socially enhanced collaboration for individuals and/or enterprises is all about:</p> <ol> <li>Identifying Yourself</li> <li>Identifying Others (key contributors, peers, collaborators)</li> <li>Serendipitous Discovery of key contributors, peers, and collaborators</li> <li>Serendipitous Discovery by key contributors, peers, and collaborators</li> <li>Develop and sustain relationships via socially enhanced professional network hybrid</li> <li>Utilize your new "trusted network" (which you've personally indexed) when seeking help or propagating a <a href="http://dbpedia.org/resource/Meme" id="link-id13ad00d0">meme</a>.</li> </ol> <p>As is typically the case in this emerging realm, the critical issue of discrete "identifiers" (record keys in sense) for <a href="http://dbpedia.org/resource/Data">data</a> items, data containers, and data creators (individuals and groups) is overlooked albeit unintentionally. </p> <h3>How HTTP based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id112e1ba8">Linked Data</a> Addresses the Identifier Issue</h3> <p>Rather than using platform constrained identifiers such as: </p> <ul> <li>email address (a "mailto" scheme identifier), </li> <li>a dbms user account, </li> <li>application specific account, or</li> <li>OpenID.</li> </ul> <p>It enables you to leverage the platform independence of HTTP scheme Identifiers (Generic URIs) such that Identifiers for: </p> <ol> <li>You, </li> <li>Your Peers, </li> <li>Your Groups, and </li> <li>Your Activity Generated Data, </li> </ol> <p>simply become conduits into a mesh of <a href="http://virtuoso.openlinksw.com/presentations/Creating_Deploying_Exploiting_Linked_Data2/images/My_Data_Spaces.png" id="link-id13fe1168">HTTP -- referencable and accessible -- Linked Data Objects</a> endowed with High SDQ (Serendipitious Discovery Quotient). For example my <a href="http://kingsley.idehen.name/dataspace/person/kidehen#this" id="link-id13bdcc80">Personal WebID </a>is all anyone needs to know if they want to explore:</p> <ol> <li>My Profile (which includes references to data objects associated with my interests, social-network, calendar, bookmarks etc.)</li> <li>Data generated by my activities across various data spaces (via data objects associated with my online accounts e.g. <a href="http://linkeddata.uriburner.com/about/id/entity/http/feeds.delicious.com/v2/rss/kidehen?count=15" id="link-id141cce38">Del.icio.us</a>, <a href="http://linkeddata.uriburner.com/about/id/entity/http/twitter.com/kidehen" id="link-id11802ce8">Twitter</a>, <a href="http://linkeddata.uriburner.com/about/id/entity/http/www.last.fm/user/kidehen" id="link-id118bf470">Last.FM</a>)</li> <li> <a href="http://uriburner.com/fct/rdfdesc/usage.vsp?g=http%3A%2F%2Fkingsley.idehen.name%2Fdataspace%2Fperson%2Fkidehen%23this&tp=4" id="link-id13c0f528">Linked Data Meshups via URIBurner</a> (or any other <a href="http://virtuoso.openlinksw.com" id="link-id11334f00">Virtuoso</a> instance) that provide an extend view of my profile</li> </ol> <h3>How <a href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id14324eb0">FOAF</a>+SSL adds Socially aware Security </h3> <p>Even when you reach a point of equilibrium where: your daily activities trigger orchestratestration of CRUD (Create, Read, Update, Delete) operations against Linked Data Objects within your socially enhanced collaboration network, you still have to deal with the thorny issues of security, that includes the following: </p> <ol> <li>Single Sign On, </li> <li>Authentication, and </li> <li>Data Access Policies.</li> </ol> <p>FOAF+SSL, an application of HTTP based Linked Data, enables you to enhance your Personal HTTP scheme based Identifer (or WebID) via the following steps (peformed by a FOAF+SSL compliant platform):</p> <ol> <li>Imprint WebID within a self-signed x.509 based public key (certificate) associated with your private key (generated by FOAF+SSL platform or manually via OpenSSL)</li> <li>Store public key components (modulous and exponent) into your FOAF based profile document which references your Personal HTTP Identifier as its primary topic</li> <li>Leverage HTTP <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id141f8b30">URL</a> component of WebID for making public key components (modulous and exponent) available for x.509 certificate based authentication challenges posed by systems secured by FOAF+SSL (directly) or OpenID (indirectly via FOAF+SSL to OpenID proxy services).</li> </ol> <p>Contrary to conventional experiences with all things PKI (Public Key Infrastructure) related, FOAF+SSL compliant platforms typically handle the PKI issues as part of the protocol implementation; thereby protecting you from any administrative tedium without compromising security.</p> <h3>Conclusions</h3> <p>Understanding how new technology innovations address long standing problems, or understanding how new solutions inadvertently fail to address old problems, provides time tested mechanisms for product selection and value proposition comprehension that ultimately save scarce resources such as time and money. </p> <p>If you want to understand real world problem solution #1 with regards to HTTP based Linked Data look no further than the issues of secure, socially aware, and platform independent identifiers for data objects, that build bridges across erstwhile data silos.</p> <p>If you want to cost-effectively experience what I've outlined in this post, take a look at <a href="http://ods.openlinksw.com/wiki/ODS/" id="link-id13c21220">OpenLink Data Spaces</a> (<a href="http://ods.openlinksw.com/wiki/ODS/" id="link-id1422cdd8">ODS</a>) which is a distributed collaboration engine (enterprise of individual) built around the <a href="http://virtuoso.openlinksw.com" id="link-id14211c98">Virtuoso</a> database engines. It simply enhances existing collaboration tools via the following capabilities:</p> <p>Addition of Social Dimensions via HTTP based <a href="http://dbpedia.org/resource/Identity_(object-oriented_programming)" id="link-id116ecd88">Data Object Identifiers</a> for all Data Items (if missing)</p> <ol> <li>Ability to integrate across a myriad of Data Source Types rather than a select few across RDBM Engines, LDAP, <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Services, and various HTTP accessible Resources (Hypermedia or Non Hypermedia content types)</li> <li>Addition of FOAF+SSL based authentication</li> <li>Addition of FOAF+SSL based Access Control Lists (ACLs) for policy based data access.</li> </ol> <h3>Related:</h3> <ul> <li> <a href="http://ods.openlinksw.com/dataspace/dav/wiki/ODS/GetAPersonalURIIn5MinutesOrLess" id="link-id117b2610">Get Yourself A WebID in 5 Minutes or Less</a> via OpenLink Data Spaces (an application layer built atop Virtuoso)</li> <li> <a href="http://ods.openlinksw.com/dataspace/dav/wiki/ODS/ODSBriefcaseFOAFSSL" id="link-id140311a0">How To Share Resources Securely Using FOAF+SSL</a> </li> <li> <a href="http://www.youtube.com/watch?v=CRbdeNMPCug" id="link-id11ad5448">FOAF+SSL & WebID Demonstration</a> </li> <li> <a href="http://www.slideshare.net/kidehen/linked-data-spaces-data-portability-access" id="link-id141f43a8">OpenLink Data Spaces & Data Portability</a>.</li> </ul>
OpenLink Virtuoso - Product Value Proposition Overiew
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-02-26#1609
2010-02-26T19:12:32Z
2010-02-27T12:46:36-05:00
<h2>Situation Analysis</h2> <p>Since the beginning of the modern IT era, each period of innovation has inadvertently introduced its fair share of <a href="http://dbpedia.org/resource/Data">Data</a> Silos. The driving force behind this anomaly remains an overemphasis on the role of applications when selecting problem solutions. Unfortunately, most solution selecting decision makers remain oblivious to the fact that most applications are architecturally monolithic; i.e., they fail to separate the following five layers that are critical to all solutions: </p> <ol> <li>Data Unit (Datum or Data Object) Identity,</li> <li>Data Storage/Persistence,</li> <li>Data Access,</li> <li>Data Representation, and</li> <li>Data Presentation/Visualization. </li> </ol> <p>The rise of the <a href="http://dbpedia.org/resource/Internet" id="link-id13fe21b0">Internet</a>, and its exponentially-growing user-friendly enclave known as the <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id1233c608">World Wide Web</a>, is bringing the intrinsic costs of the monolithic application architecture anomaly to bear -- in manners unanticipated by many. For example, the emergence of network-oriented solutions across the realms of Enterprise 2.0-based Collaboration and <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> 2.0-based Software-as-a-Service (SaaS), combined with the overarching influence of Social Media, are producing more heterogeneously-structured and disparately-located data sources than people can effectively process.</p> <p>As is often the case, a variety of problem and product monikers have emerged for the data access and integration challenges outlined above. Contemporary examples include Enterprise <a href="http://dbpedia.org/resource/Information" id="link-id13f7e458">Information</a> Integration, Master Data Management, and <a href="http://dbpedia.org/resource/Federated_database_system" id="link-id13f57da0">Data Virtualization</a>. Labeling aside, the fundamental issues of the unresolved Data Integration challenge boil down to the following:</p> <ul> <li>Data Model Heterogeneity</li> <li>Data Quality (Cleanliness)</li> <li>Semantic Variance across Contexts (e.g., weights and measures).</li> </ul> <p>Effectively solving today's data integration challenges requires a move away from monolithic application architecture to loosely-coupled, network-centric application architectures. Basically, we need a ubiquitous network-centric application protocol that lends itself to loosely-coupled across-the-wire orchestration of data interactions. In short, this will be what revitalizes the art of application development and deployment.</p> <p>The World Wide Web is built around a network application protocol called HTTP. This protocol intrinsically separates the five layers listed earlier, thereby enabling:</p> <ul> <li>Use of Generic HTTP URIs as Data Object (<a href="http://dbpedia.org/resource/Entity" id="link-id113b7318">Entity</a>) Identifiers;</li> <li>Identifier Co-reference, such that multiple <a href="http://dbpedia.org/resource/Identity_(object-oriented_programming)" id="link-id117151d8">Data Object Identifiers</a> may reference the same Data Object;</li> <li>Use of the <a href="http://dbpedia.org/resource/Entity-attribute-value_model" id="link-id13fa4fa0">Entity</a>-Attribute-Value Model to describe Data Objects using real world modeling friendly conceptual graphs;</li> <li>Use of HTTP URLs to Identify Locations of Resources that bear (host) Data Object Descriptions (Representations);</li> <li>Data Access mechanism for retrieving Data Object Representations from persistent or transient storage locations.</li> </ul> <h2>What is <a href="http://virtuoso.openlinksw.com" id="link-id116af950">Virtuoso</a>?</h2> <p>A uniquely designed to address today's escalating Data Access and Integration challenges without compromising performance, security, or platform independence. At its core lies an unrivaled commitment to industry standards combined with unique technology innovation that transcends erstwhile distinct realms such as: </p> <ul> <li>Data Management (<a href="http://blogs.usnet.private:8893/main/rdbms-engine.html" id="link-id11943dc0">Relational</a>, <a href="http://blogs.usnet.private:8893/main/rdf-quad-store.html" id="link-id12312240">RDF Graph</a>, or Document), </li> <li> <a href="http://blogs.usnet.private:8893/main/middleware.htm" id="link-id115d71c0">Data Access Middleware</a>, </li> <li> <a href="http://blogs.usnet.private:8893/main/web-application-server.html" id="link-id142ca788">Web Application & Services Deployment</a>, </li> <li> <a href="http://blogs.usnet.private:8893/main/linked-data.html" id="link-id112b92c0">Linked Data Deployment</a>, and </li> <li>Messaging. </li> </ul> <p>When Virtuoso is installed and running, HTTP-based Data Objects are automatically created as a by-product of its powerful data virtualization, transcending data sources and data representation formats. The benefits of such power extend across profiles such as:</p> <ul> <li> <a href="http://blogs.usnet.private:8893/information-and-knowledge-worker-benefits" id="link-id118df198">Information & Knowledge Workers</a>, </li> <li> <a href="http://blogs.usnet.private:8893/systems-integrator-benefits" id="link-id1429d178">Systems Integrators & Architects</a>, </li> <li> <a href="http://blogs.usnet.private:8893/distributed-collaboration-benefits" id="link-id142fa2a0">Distributed Collaboration & Social Media</a>, </li> <li> <a href="http://blogs.usnet.private:8893/cloud-computing-benefits" id="link-id11aee6b0">Cloud Computing</a>, and </li> <li> <a href="http://blogs.usnet.private:8893/application-developer-benefits" id="link-id142440b8">Application Development</a>. </li> </ul> <h2>Product Benefits Summary</h2> <ul> <li> <b>Enterprise Agility</b> â Virtuoso lets you mix-&-match best-of-class combinations of Operating Systems, Programming Environments, Database Engines and Data-Access Middleware when building or tweaking your IS infrastructure, without the typical impedance of vendor-lock-in.</li> <li> <b>Data Model Dexterity</b> â By supporting multiple protocols and data models in a single product, Virtuoso protects you against costly vulnerabilities such as: perennial acquisition and accumulation of expensive data model specific DBMS products that still operate on the fundamental principle of: proprietary technology lock-in, at a time when heterogeneity continues to intrinsically define the information technology landscape.</li> <li> <b>Cost-effectiveness</b> â By providing a single point of access (and single-sign-on, SSO) to a plethora of Web 2.0-style social networks, Web Services, and Content Management Systems, and by using Data Object Identifiers as units of Data Virtualization that become the focal points of all data access, Virtuoso lowers the cost to exploit emerging frontiers such as socially-enhanced enterprise collaboration.</li> <li> <b>Speed of Exploitation</b> â Virtuoso provides the ability to rapidly assemble 360-degree conceptual views of data, across internal line-of-business application (CRM, ERP, ECM, HR, etc.) data and/or external data sources, whether these are unstructured, semi-structured, or fully structured.</li> </ul> <p>Bottom line, Virtuoso delivers unrivaled flexibility and scalability, without compromising performance or security.</p> <h2>Related</h2> <ul> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com's BLOG [127]/1567" id="link-id13ee6840">HTTP URI Abstraction and Linked Data</a> </li> <li> <a href="http://blog.jonudell.net/2009/09/09/talking-with-kingsley-idehen-about-mastering-your-own-search-index/" id="link-id1428b698">Be The Master of Your Own Search Index</a> </li> <li> <a href="http://walkingoncoals.blogspot.com/2009/12/whos-data-is-it-part-1.html" id="link-id117db508">Who's Data Is It?</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1482" id="link-id13f64d90">MDM & Linked Data</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1453" id="link-id118861d8">What is Linked Data Oriented RDF-zation?</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1444" id="link-id11820d70">Semantic Web: Travails to Harmony Illustrated</a> </li> </ul> <p>Â </p>
Re-introducing the Virtuoso Virtual Database Engine
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-02-17#1608
2010-02-17T21:38:01Z
2010-02-17T16:46:53-05:00
<p>In recent times a lot of the commentary and focus re. <a href="http://virtuoso.openlinksw.com" id="link-id16a22f48">Virtuoso</a> has centered on the RDF Quad Store and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id112d82a0">Linked Data</a>. What sometimes gets overlooked is the sophisticated <a href="http://dbpedia.org/resource/Virtual_Database" id="link-id6493cc8">Virtual Database</a> Engine that provides the foundation for all of Virtuoso's <a href="http://dbpedia.org/resource/Data">data</a> integration capabilities.</p> <p>In this post I provide a brief re-introduction to this essential aspect of Virtuoso.</p> <h3>What is it?</h3> <p>This component of Virtuoso is known as the Virtual Database Engine (VDBMS). It provides transparent high-performance and secure access to disparate data sources that are external to Virtuoso. It enables federated access and integration of data hosted by any <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id13c26008">ODBC</a>- or <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id166604c0">JDBC</a>-accessible <a href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id139dfdb8">RDBMS</a>, RDF Store, XML database, or Document (Free Text)-oriented Content Management System. In addition, it facilitates integration with <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Services (SOAP-based SOA RPCs or REST-fully accessible Web Resources). </p> <h3>Why is it important?</h3> <p>In the most basic sense, you shouldn't need to upgrade your existing database engine version simply because your current DBMS and Data Access Driver combo isn't compatible with ODBC-compliant desktop tools such as Microsoft Access, Crystal Reports, BusinessObjects, Impromptu, or other of ODBC, JDBC, <a href="http://dbpedia.org/resource/ADO.NET" id="link-id13c7ceb8">ADO</a>.NET, or OLE DB-compliant applications. Simply place Virtuoso in front of your so-called "legacy database," and let it deliver the compliance levels sought by these tools</p> <p>In addition, it's important to note that today's enterprise, through application evolution, company mergers, or acquisitions, is often faced with disparately-structured data residing in any number of line-of-business-oriented data silos. Compounding the problem is the exponential growth of user-generated data via new social media-oriented collaboration tools and platforms. For companies to cost-effectively harness the opportunities accorded by the increasing intersection between line-of-business applications and social media, virtualization of data silos must be achieved, and this virtualization must be delivered in a manner that doesn't prohibitively compromise performance or completely undermine security at either the enterprise or personal level. Again, this is what you get by simply installing Virtuoso.</p> <h3>How do I use it?</h3> <p>The VDBMS may be used in a variety of ways, depending on the data access and integration task at hand. Examples include: </p> <h4>Relational Database Federation</h4> <p>You can make a single ODBC, JDBC, ADO.NET, OLE DB, or XMLA connection to multiple ODBC- or JDBC-accessible RDBMS data sources, concurrently, with the ability to perform intelligent distributed joins against externally-hosted database tables. For instance, you can join internal human resources data against internal sales and external stock market data, even when the HR team uses <a href="http://dbpedia.org/resource/Oracle_Database" id="link-id16706720">Oracle</a>, the Sales team uses <a href="http://dbpedia.org/resource/IBM_Informix" id="link-ide5a15c8">Informix</a>, and the Stock Market figures come from <a href="http://dbpedia.org/resource/Ingres" id="link-id13c0e138">Ingres</a>!</p> <h4>Conceptual Level Data Access using the RDF Model</h4> <p>You can construct RDF Model-based Conceptual Views atop Relational Data Sources. This is about generating HTTP-based <a href="http://dbpedia.org/resource/Entity-attribute-value_model" id="link-id115150f8">Entity</a>-Attribute-Value (E-A-V) graphs using data culled "on the fly" from native or external data sources (Relational Tables/Views, XML-based Web Services, or User Defined Types).</p> <p>You can also derive RDF Model-based Conceptual Views from Web Resource transformations "on the fly" -- the Virtuoso <a href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id1675db50">Sponger</a> (RDFizing middleware component) enables you to generate RDF Model Linked Data via a RESTful Web Service or within the process pipeline of the <a href="http://dbpedia.org/resource/SPARQL" id="link-id166b8d90">SPARQL</a> query engine (i.e., you simply use the <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id167d00c8">URL</a> of a Web Resource in the FROM clause of a SPARQL query).</p> <p>It's important to note that Views take the form of HTTP links that serve as both Data Source Names and Data Source Addresses. This enables you to query and explore relationships across entities (i.e., People, Places, and other Real World Things) via HTTP clients (e.g., Web Browsers) or directly via SPARQL Query Language constructs transmitted over HTTP.</p> <h4>Conceptual Level Data Access using ADO.NET <a href="http://dbpedia.org/resource/Entity" id="link-id13c6bb60">Entity</a> <a href="http://dbpedia.org/resource/ADO.NET_Entity_Framework" id="link-id16ad3f68">Frameworks</a> </h4> <p>As an alternative to RDF, Virtuoso can expose ADO.NET Entity Frameworks-based Conceptual Views over Relational Data Sources. It achieves this by generating Entity Relationship graphs via its native ADO.NET Provider, exposing all externally attached ODBC- and JDBC-accessible data sources. In addition, the ADO.NET Provider supports direct access to Virtuoso's native RDF database engine, eliminating the need for resource intensive Entity Frameworks model transformations.</p> <h3>Related</h3> <ul> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtLinkRemoteTables" id="link-id1183acd8">Attaching ODBC or JDBC accessible Relational Tables to Virtuoso</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtRdb2RDFViewsGeneration#One-Click%20Linked%20Data%20Generation%20&%20Deployment" id="link-id113f2fd8">Using an HTML based Wizard to Generate RDF based Linked Views over Relational Tables</a> </li> <li> <a href="http://www.youtube.com/watch?v=bj7AbJ0ZYCk&feature=channel" id="link-id16ad4480">Screencast Demonstrating Wizard based generation of RDF based Linked Data Views Part 1</a> </li> <li> <a href="http://www.youtube.com/watch?v=yXNlcISS0aY&feature=channel" id="link-id114eb720">Screencast Demonstrating Wizard based generation of RDF based Linked Data Views Part 1</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSponger" id="link-id116e5810">Generating RDF based Linked Data from non RDF based Web Resources via the Sponger</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtAdoNet35Provider" id="link-id16706118">Building ADO.NET based Entity Frameworks Views over Relational Data</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSilverlightSPARQLExample" id="link-id139c1278">Building Silverlight Rich Internat Applicaitons using ADO.NET, Entity Frameworks, and RDF based Linked Data</a>.</li> </ul>
What is the DBpedia Project? (Updated)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-01-31#1594
2010-01-31T22:45:55Z
2010-01-31T17:46:10.000002-05:00
<p>The recent <a href="http://en.wikipedia.org/wiki/Talk:DBpedia" id="link-id1120a260">Wikipedia imbroglio</a> centered around <a href="http://dbpedia.org/resource/DBpedia" id="link-id14a5e588">DBpedia</a> is the fundamental driver for this particular <a href="http://dbpedia.org/resource/Blog" id="link-id113ddc10">blog</a> post. At time of writing this blog post, the <a href="http://en.wikipedia.org/wiki/DBpedia" id="link-id158edec0">DBpedia project definition in Wikipedia</a> remains unsatisfactory due to the following shortcomings:</p> <ol> <li>inaccurate and incomplete definition of the Project's What, Why, Who, Where, When, and How</li> <li>inaccurate reflection of project essence, by skewing focus towards <a href="http://dbpedia.org/resource/Data" id="link-id0x1bc892d0">data</a> extraction and data set dump production, which is at best a quarter of the project.</li> </ol> <p>Here are some insights on DBpedia, from the perspective of someone intimately involved with the other three-quarters of the project.</p> <h3>What is DBpedia?</h3> <p>A live <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id0x1c0c0cc0">Web</a> accessible RDF model database (Quad Store) derived from Wikipedia content snapshots, taken periodically. The RDF database underlies a <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11ba0ad0">Linked Data</a> <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id1183c978">Space</a> comprised of: HTML (and most recently HTML+<a href="http://dbpedia.org/resource/RDFa" id="link-id602eab8">RDFa</a>) based data browser pages and a <a href="http://dbpedia.org/resource/SPARQL" id="link-id11af5400">SPARQL</a> endpoint.</p> <p>Note: <a href="http://blog.dbpedia.org/2009/11/11/dbpedia-34-released/" id="link-id110b8248">DBpedia 3.4</a> now exists in snapshot (warehouse) and <a href="http://dbpedia-live.openlinksw.com/stats/" id="link-id6473258">Live Editions</a> (currently being hot-staged). This post is about the snapshot (warehouse) edition, I'll drop a different post about the DBpedia Live Edition where a new Delta-Engine covers both extraction and database record replacement, in realtime.</p> <h3>When was it Created?</h3> <p>As an idea under the moniker "DBpedia" it was conceptualized in late 2006 by researchers at University of Leipzig (lead by Soren Auer) and Freie University, Berlin (lead by <a href="http://www.wiwiss.fu-berlin.de/en/institute/pwo/bizer/" id="link-id14982c78">Chris Bizer</a>). The first public instance of DBpedia (as described above) was released in February 2007. The official DBpedia coming out party occurred at <a href="http://www2007.org/" id="link-id1497c788">WWW2007</a>, Banff, during the <a href="http://esw.w3.org/topic/SweoIG/TaskForces/CommunityProjects/LinkingOpenData/BanffGathering" id="link-id1448b9e8">inaugural Linked Data gathering</a>, where it showcased the virtues and immense potential of <a href="http://www.w3.org/People/Berners-Lee/card#i" id="link-id152257e0">TimBL</a>'s <a href="http://www.w3.org/DesignIssues/LinkedData.html" id="link-id111759a8">Linked Data meme</a>.</p> <h3>Who's Behind It?</h3> <p> <a href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id110e70f8">OpenLink Software</a> (developers of OpenLink <a href="http://virtuoso.openlinksw.com" id="link-id14462f60">Virtuoso</a> and providers of Web Hosting infrastructure), University of Leipzig, and Freie Univerity, Berlin. In addition, there is a burgeoning community of collaborators and contributors responsible DBpedia based applications, cross-linked data sets, ontologies (<a href="http://dbpedia.org/resource/Cyc" id="link-id11244aa0">OpenCyc</a>, <a href="http://www.ontologyportal.org/" id="link-id110e4a40">SUMO</a>, <a href="http://umbel.org/about/" id="link-id11109e48">UMBEL</a>, and <a href="http://www.mpi-inf.mpg.de/yago-naga/yago/" id="link-id10fb4218">YAGO</a>) and other utilities. Finally, DBpedia wouldn't be possible without the global content contribution and curation efforts of Wikipedians, a point typically overlooked (albeit inadvertently).</p> <h3>How is it Constructed?</h3> <p>The steps are as follows:</p> <ol> <li> RDF data set dump preparation via Wikipedia content extraction and transformation to RDF model data, using the N3 data representation format - Java and <a href="http://dbpedia.org/resource/PHP" id="link-id111c93b8">PHP</a> extraction code produced and maintained by the teams at Leipzig and Berlin </li> <li> Deployment of Linked Data that enables Data browsing and exploration using any HTTP aware user agent (e.g. basic Web Browsers) - handled by OpenLink Virtuoso (handled by Berlin via the Pubby Linked Data Server during the early months of the DBpedia project) </li> <li> SPARQL compliant Quad Store, enabling direct access to database records via SPARQL (Query language, REST or SOAP Web Service, plus a variety of query results serialization formats) - OpenLink Virtuoso since first public release of DBpedia </li> </ol> <p> In a nutshell, there are four distinct and vital components to DBpedia. Thus, DBpedia doesn't exist if all the project offered was a collection of RDF data dumps. Likewise, it doesn't exist if you have a SPARQL compliant Quad Store without loaded data sets, and of course it doesn't exist if you have a fully loaded SPARQL compliant Quad Store is up to the cocktail of challenges presented by live Web accessibility.</p> <h3>Why is it Important?</h3> <p> It remains a live exemplar for any individual or organization seeking to publishing or exploit HTTP based Linked Data on the <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id118e6388">World Wide Web</a>. Its existence continues to stimulate growth in both density and quality of the burgeoning Web of Linked Data.</p> <h3>How Do I Use it?</h3> <p> In the most basic sense, simply browse the HTML pages en route to discovery erstwhile relationships that exist across <a href="http://dbpedia.org/resource/Named_entity_recognition" id="link-id112def88">named entities</a> and <a href="http://dbpedia.org/resource/Topic" id="link-id1591c5f8">subject matter concepts</a> / headings. Beyond that, simply look at DBpedia as a master lookup table in a Web hosted <a href="http://dbpedia.org/resource/federated_database_system" id="link-id11762618">distributed database</a> setup; enabling you to mesh your local domain specific details with DBpedia records via structured relations (triples or 3-tuples records) comprised of HTTP URIs from both realms e.g., owl:sameAs relations.</p> <h3>What Can I Use it For?</h3> <p> Expanding on the Master-Details point above, you can use its rich <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id1170c000">URI</a> corpus to alleviate tedium associated with activities such as: </p> <ol> <li>List maintenance - e.g., Countries, States, Companies, Units of Measurement, Subject Headings etc.</li> <li>Tagging - as a compliment to existing practices</li> <li>Analytical Research - you're only a LINK (URI) away from erstwhile difficult to attain research data spread across a broad range of topics</li> <li>Closed Vocabulary Construction - rather than commence the futile quest of building your own closed vocabulary, simply leverage Wikipedia's human curated vocabulary as our common base. </li> </ol> <h3>Related</h3> <ul> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtAWSDBpedia34S" id="link-id14a2e698">Pre-loaded and Pre-configured instances of DBpedia 3.4</a> - via publicly shared <a href="http://aws.amazon.com/ebs/" id="link-id1147fcf0">Amazon Elastic Block Storage</a> Snapshots</li> <li> <a href="http://docs.openlinksw.com/virtuoso/rdfperformancetuning.html#rdfperfgeneraldbpedia" id="link-id149ab528">Virtuoso & DBpedia Tunning Guide</a> </li> <li> <a href="http://dowhatimean.net/2009/11/whats-in-a-name-and-the-linked-data-police" id="link-id110cba10">What's In a Name & The Linked Data Police</a>. </li> </ul>
What is the DBpedia Project? (Updated)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-01-31#1592
2010-01-31T22:43:08Z
2010-09-15T18:10:51.000002-04:00
<p> The recent <a href="http://en.wikipedia.org/wiki/Talk:DBpedia" id="link-id1120a260">Wikipedia imbroglio</a> centered around <a href="http://dbpedia.org/resource/DBpedia" id="link-id14a5e588">DBpedia</a> is the fundamental driver for this particular <a href="http://dbpedia.org/resource/Blog" id="link-id113ddc10">blog</a> post. At time of writing this blog post, the <a href="http://en.wikipedia.org/wiki/DBpedia" id="link-id158edec0">DBpedia project definition in Wikipedia</a> remains unsatisfactory due to the following shortcomings:</p> <ol> <li> inaccurate and incomplete definition of the Project's What, Why, Who, Where, When, and How</li> <li> inaccurate reflection of project essence, by skewing focus towards <a href="http://dbpedia.org/resource/Data">data</a> extraction and data set dump production, which is at best a quarter of the project.</li> </ol> <p> Here are some insights on DBpedia, from the perspective of someone intimately involved with the other three-quarters of the project.</p> <h3> What is DBpedia?</h3> <p> A live <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> accessible RDF model database (Quad Store) derived from Wikipedia content snapshots, taken periodically. The RDF database underlies a <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11ba0ad0">Linked Data</a> <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id1183c978">Space</a> comprised of: HTML (and most recently HTML+<a href="http://dbpedia.org/resource/RDFa" id="link-id602eab8">RDFa</a>) based data browser pages and a <a href="http://dbpedia.org/resource/SPARQL" id="link-id11af5400">SPARQL</a> endpoint.</p> <p> Note: <a href="http://blog.dbpedia.org/2009/11/11/dbpedia-34-released/" id="link-id110b8248">DBpedia 3.4</a> now exists in snapshot (warehouse) and <a href="http://dbpedia-live.openlinksw.com/stats/" id="link-id6473258">Live Editions</a> (currently being hot-staged). This post is about the snapshot (warehouse) edition, I'll drop a different post about the DBpedia Live Edition where a new Delta-Engine covers both extraction and database record replacement, in realtime.</p> <h3> When was it Created?</h3> <p> As an idea under the moniker "DBpedia" it was conceptualized in late 2006 by researchers at University of Leipzig (lead by Soren Auer) and Freie University, Berlin (lead by <a href="http://www.wiwiss.fu-berlin.de/en/institute/pwo/bizer/" id="link-id14982c78">Chris Bizer</a>). The first public instance of DBpedia (as described above) was released in February 2007. The official DBpedia coming out party occurred at <a href="http://www2007.org/" id="link-id1497c788">WWW2007</a>, Banff, during the <a href="http://esw.w3.org/topic/SweoIG/TaskForces/CommunityProjects/LinkingOpenData/BanffGathering" id="link-id1448b9e8">inaugural Linked Data gathering</a>, where it showcased the virtues and immense potential of <a href="http://www.w3.org/People/Berners-Lee/card#i" id="link-id152257e0">TimBL</a>'s <a href="http://www.w3.org/DesignIssues/LinkedData.html" id="link-id111759a8">Linked Data meme</a>.</p> <h3> Who's Behind It?</h3> <p> <a href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id110e70f8">OpenLink Software</a> (developers of OpenLink <a href="http://virtuoso.openlinksw.com" id="link-id14462f60">Virtuoso</a> and providers of Web Hosting infrastructure), University of Leipzig, and Freie Univerity, Berlin. In addition, there is a burgeoning community of collaborators and contributors responsible DBpedia based applications, cross-linked data sets, ontologies (<a href="http://dbpedia.org/resource/Cyc" id="link-id11244aa0">OpenCyc</a>, <a href="http://www.ontologyportal.org/" id="link-id110e4a40">SUMO</a>, <a href="http://umbel.org/about/" id="link-id11109e48">UMBEL</a>, and <a href="http://www.mpi-inf.mpg.de/yago-naga/yago/" id="link-id10fb4218">YAGO</a>) and other utilities. Finally, DBpedia wouldn't be possible without the global content contribution and curation efforts of Wikipedians, a point typically overlooked (albeit inadvertently).</p> <h3> How is it Constructed?</h3> <p> The steps are as follows:</p> <ol> <li> RDF data set dump preparation via Wikipedia content extraction and transformation to RDF model data, using the N3 data representation format - Java and <a href="http://dbpedia.org/resource/PHP" id="link-id111c93b8">PHP</a> extraction code produced and maintained by the teams at Leipzig and Berlin</li> <li> Deployment of Linked Data that enables Data browsing and exploration using any HTTP aware user agent (e.g. basic Web Browsers) - handled by OpenLink Virtuoso (handled by Berlin via the Pubby Linked Data Server during the early months of the DBpedia project)</li> <li> SPARQL compliant Quad Store, enabling direct access to database records via SPARQL (Query language, REST or SOAP Web Service, plus a variety of query results serialization formats) - OpenLink Virtuoso since first public release of DBpedia</li> </ol> <p> In a nutshell, there are four distinct and vital components to DBpedia. Thus, DBpedia doesn't exist if all the project offered was a collection of RDF data dumps. Likewise, it doesn't exist without a fully populated SPARQL compliant Quad Store. Last but not least, it doesn't exist if you have a fully loaded SPARQL compliant Quad Store isn't up to the cocktail of challenges (query load and complexity) presented by live Web database accessibility.</p> <h3> Why is it Important?</h3> <p> It remains a live exemplar for any individual or organization seeking to publishing or exploit HTTP based Linked Data on the <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id118e6388">World Wide Web</a>. Its existence continues to stimulate growth in both density and quality of the burgeoning Web of Linked Data.</p> <h3> How Do I Use it?</h3> <p> In the most basic sense, simply browse the HTML based resource decriptor pages en route to discovering erstwhile undiscovered relationships that exist across <a href="http://dbpedia.org/resource/Named_entity_recognition" id="link-id112def88">named entities</a> and <a href="http://dbpedia.org/resource/Topic" id="link-id1591c5f8">subject matter concepts</a> / headings. Beyond that, simply look at DBpedia as a master lookup table in a Web hosted <a href="http://dbpedia.org/resource/federated_database_system" id="link-id11762618">distributed database</a> setup; enabling you to mesh your local domain specific details with DBpedia records via structured relations (triples or 3-tuples records), comprised of HTTP URIs from both realms e.g., via owl:sameAs relations.</p> <h3> What Can I Use it For?</h3> <p> Expanding on the Master-Details point above, you can use its rich <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id1170c000">URI</a> corpus to alleviate tedium associated with activities such as:</p> <ol> <li> List maintenance - e.g., Countries, States, Companies, Units of Measurement, Subject Headings etc.</li> <li> Tagging - as a compliment to existing practices</li> <li> Analytical Research - you're only a LINK (URI) away from erstwhile difficult to attain research data spread across a broad range of topics</li> <li> Closed Vocabulary Construction - rather than commence the futile quest of building your own closed vocabulary, simply leverage Wikipedia's human curated vocabulary as our common base.</li> </ol> <h3> Related</h3> <ul> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtAWSDBpedia34S" id="link-id14a2e698">Pre-loaded and Pre-configured instances of DBpedia 3.4</a> - via publicly shared <a href="http://aws.amazon.com/ebs/" id="link-id1147fcf0">Amazon Elastic Block Storage</a> Snapshots</li> <li> <a href="http://docs.openlinksw.com/virtuoso/rdfperformancetuning.html#rdfperfgeneraldbpedia" id="link-id149ab528">Virtuoso & DBpedia Tunning Guide</a> </li> <li> <a href="http://dowhatimean.net/2009/11/whats-in-a-name-and-the-linked-data-police" id="link-id110cba10">What's In a Name & The Linked Data Police</a>.</li> </ul>
5 Game Changing Things about the OpenLink Virtuoso + AWS Cloud Combo
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-01-31#1590
2010-01-31T22:29:34Z
2010-02-01T08:59:36-05:00
<p> Here are 5 powerful benefits you can immediately derive from the combination of <a href="http://virtuoso.openlinksw.com" id="link-id17eb8988">Virtuoso</a> and Amazon's AWS services (specifically the EC2 and EBS components): <br /> </p> <ol> <li> Acquire your own personal or service specific <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id1423e520">data space</a> in the Cloud. Think DBase, Paradox, FoxPRO, Access of yore, but with the power of <a href="http://dbpedia.org/resource/Oracle_Database" id="link-id136c6290">Oracle</a>, <a href="http://dbpedia.org/resource/IBM_Informix" id="link-id11b269b8">Informix</a>, <a href="http://dbpedia.org/resource/Microsoft_SQL_Server" id="link-id138084b8">Microsoft SQL Server</a> etc.. using a Conceptual, as opposed to solely Logical, model based DBMS (i.e., a Hybrid DBMS Engine for: <a href="http://dbpedia.org/resource/SQL" id="link-id132a7938">SQL</a>, RDF, XML, and Full Text) </li> <li> Ability to share and control access to your resources using innovations like <a href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id17ee9d28">FOAF</a>+SSL, OpenID, and OAuth, all from one place </li> <li> Construction of personal or organization based FOAF profiles in a matter of minutes; by simply creating a basic DBMS (or <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-id14784ae0">ODS</a> application layer) account; and then using this profile to create strong links (references) to all your Data silos (esp. those from the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> 2.0 realm) </li> <li> Load data sets from the <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id17e6ac98">LOD</a> cloud or Sponge existing Web resources (i.e., on the fly data transformation to RDF model based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id17e65d38">Linked Data</a>) and then use the combination to build powerful lookup services that enrich the value of URLs (think: Web addressable reports holding query results) that you publish </li> <li> Bind all of the above to a domain that you own (e.g. a .Name domain) so that you have an attribution-friendly "authority" component for resource URLs and <a href="http://dbpedia.org/resource/Entity" id="link-id118a08d8">Entity</a> URIs published from your Personal Linked Data Space on the Web (or private HTTP network). </li> </ol> <p> In a nutshell, the AWS Cloud infrastructure simplifies the process of generating Federated presence on the <a href="http://dbpedia.org/resource/Internet" id="link-id1380af38">Internet</a> and/or <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id11633b10">World Wide Web</a>. Remember, centralized networking models always end up creating data silos, in some <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id142006f0">context</a>, ultimately! :-) </p>
Virtuoso Chronicles from the Field: Nepomuk, KDE, and the quest for a sophisticated RDF DBMS.
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2010-01-28#1602
2010-01-28T16:14:04Z
2010-02-01T09:02:55-05:00
<p>For this particular user experience chronicle, I've simply inserted the content of <a href="http://trueg.wordpress.com" id="link-id1368b4d8">Sebastian Trueg</a>'s post titled: <a href="http://trueg.wordpress.com/2010/01/26/what-we-did-last-summer-and-the-rest-of-2009-a-look-back-onto-the-nepomuk-development-year-with-an-obscenely-long-title/#comments" id="link-id139dddb0">What We Did Last Summer (And the Rest of 2009) â A Look Back Onto the Nepomuk Development Year ...</a>, directly into this post, without any additional commentary or modification.</p> <div class="snap_preview"> <p>2009 is over. <em>Yeah, sure, trueg, we know that, it has been over for a while now!</em> Ok, ok, I am a bit late, but still I would like to get this one out - if only for my archive. So here goes.</p> <h2> <a href="http://virtuoso.openlinksw.com" id="link-id64672f0">Virtuoso</a> </h2> <p>Letâs start with the major topic of 2009 (and also the beginning of 2010): The new Nepomuk database backend: <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/" id="link-id13cc47e0">Virtuoso</a>. Everybody who used Nepomuk had the same problems: you either used the <a href="http://openrdf.org/" id="link-id13a4ac88">sesame2</a> backend which depends on Java and steals all of your memory or you were stuck with <a href="http://librdf.org/" id="link-id11b6a550">Redland</a> which had the worst performance and missed some <a href="http://dbpedia.org/resource/SPARQL" id="link-id139d82b8">SPARQL</a> features making important parts of Nepomuk like queries unusable. So more than a year ago I had the idea to use the one GPLâed database server out there that supported RDF in a professional manner: <a href="http://www.openlinksw.com/" id="link-id139fd948">OpenLin</a>kâs <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/" id="link-id12329590">Virtuoso</a>. It has all the features we need, has a very good performance, and scales up to dimensions we will probably never reach on the desktop (<em>yeah, right, and 64k main memory will be enough forever!</em>). So very early I started coding the necessary Soprano plugin which would talk to a locally running Virtuoso server through <a href="http://en.wikipedia.org/wiki/Open_Database_Connectivity" id="link-id14930d90">ODBC</a>. But since I ran into tons of small problems (as always) and got sidetracked by other tasks I did not finish it right away. OpenLink, however, was very interested in the idea of their server being part of every KDE installation (why wouldnât they ;)). So they not only introduced a <a href="http://docs.openlinksw.com/virtuoso/databaseadmsrv.html#ini_Parameters" id="link-id136763c0">lite-mode</a> which makes Virtuoso suitable for the desktop but also helped in debugging all the problems that I had left. Many test runs, patches, and a Virtuoso 5.0.12 release later <a href="http://trueg.wordpress.com/2009/10/22/virtuoso-once-more-with-feeling/" id="link-id13c5a5a0">I could finally announce the Virtuoso integration</a> as usable.</p> <p>Then end of last year I dropped the support for sesame2 and redland. Virtuoso is now the only supported database backend. The reason is simple: Virtuoso is way more powerful than the rest - not only in terms of performance - and it is fully implemented in <a href="http://dbpedia.org/resource/C%2B%2B" id="link-id13a17cd8">C</a>(++) without any traces of Java. Maybe even more important is the integration of the full text index which makes the previously used CLucene index unnecessary. Thus, we can finally combine full text and graph queries in one SPARQL query. This results in a cleaner API and way faster return of search results since there is no need to combine the results from several queries anymore. A direct result of that is the new <a href="http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk/html/namespaceNepomuk_1_1Query.html" id="link-id149a9fd8">Nepomuk Query API</a> which I will discuss later.</p> <p>So now the only thing I am waiting for is the first bugfix release of Virtuoso 6, i.e. 6.0.1 which will fix the bugs that make 6.0.0 fail with Nepomuk. Should be out any day now. :)</p> <h2>The Nepomuk Query API</h2> <p>Querying <a href="http://dbpedia.org/resource/Data">data</a> in Nepomuk pre-KDE-4.4 could be done in one of two ways: 1. Use the very limited capabilities of the <a href="http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk/html/classNepomuk_1_1ResourceManager.html" id="link-id139ad3d0">ResourceManager</a> to list resources with certain properties or of a certain type; or 2. Write your own <a href="http://techbase.kde.org/Development/Tutorials/Metadata/Nepomuk/AdvancedQueries" id="link-id13c74608">SPARQL query using ugly QString::arg replacements</a>.</p> <p>With the introduction of Virtuoso and its awesome power we can now do pretty much everything in one query. This allowed <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id13c4cf18">me</a> to finally create a query API for KDE: <a href="http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk/html/classNepomuk_1_1Query_1_1Query.html" id="link-id602e818">Nepomuk::Query::Query</a> and friends. I wonât go into much detail here since I did that <a href="http://trueg.wordpress.com/2009/12/07/convenient-querying-in-libnepomuk/" id="link-id11282ff8">before</a>.</p> <p>All in all you should remember one thing: whenever you think about writing your own SPARQL query in a KDE application - have a look at libnepomukquery. It is very likely that you can avoid the hassle of debugging a query by using the query API.</p> <p>The first nice effect of the new API (apart from me using it all over the place obviously) is the new query interface in Dolphin. Internally it simply combines a bunch of <a href="http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk/html/classNepomuk_1_1Query_1_1Term.html" id="link-id11952270">Nepomuk::Query::Term</a> objects into a <a href="http://api.kde.org/4.x-api/kdelibs-apidocs/nepomuk/html/classNepomuk_1_1Query_1_1AndTerm.html" id="link-id13aa85b8">Nepomuk::Query::AndTerm</a>. All very readable and no ugly query strings.</p> <div id="attachment_234" class="wp-caption aligncenter" style="width: 610px"> <a href="http://trueg.files.wordpress.com/2010/01/dolphin-kde-4-4-search-panel.png" id="link-id11454028"><img class="size-full wp-image-234" title="Dolphin Search Panel in KDE SC 4.4" src="http://trueg.files.wordpress.com/2010/01/dolphin-kde-4-4-search-panel.png?w=600&h=208" alt="" width="600" height="208" /> </a> <p class="wp-caption-text">Dolphin Search Panel in KDE SC 4.4</p> </div> <h2>Shared Desktop Ontologies</h2> <p>An important part of the <a href="http://nepomuk.semanticdesktop.org/" id="link-id13a35a90">Nepomuk research project</a> was the creation of a set of <a href="http://www.semanticdesktop.org/ontologies/" id="link-id123a6700">ontologies</a> for describing desktop resources and their metadata. After the <a href="http://xesam.org/main/XesamAbout" id="link-id13c70ab8">Xesam</a> project under the umbrella of <a href="http://www.freedesktop.org/" id="link-id139e2108">freedesktop.org</a> had been convinced to use RDF for describing file metadata they developed their own ontology. Thanks to Evgeny (phreedom) Egorochkin and Antonie Mylka both the Xesam ontology and the Nepomuk <a href="http://dbpedia.org/resource/Information" id="link-id119be318">Information</a> Elements Ontology were already very close in design. Thus, it was relatively easy to merge the two and be left with only one ontology to support. Since then not only KDE but also <a href="http://strigi.sourceforge.net/" id="link-id123b63f0">Strigi</a> and <a href="http://projects.gnome.org/tracker/" id="link-id13d02a30">Tracker</a> are using the Nepomuk ontologies.</p> <p>At the Gran Canaria Desktop Summit I met some of the guys from Tracker and we tried to come up with a plan to create a joint project to maintain the ontologies. This got off to a rough start as nobody really felt responsible. So I simply took the initiative and released the <a href="http://sourceforge.net/projects/oscaf/files/" id="link-id148d7078">shared-desktop-ontologies</a> version 0.1 in November 2009. The result was a s***-load of hate-mails and bug reports due to me breaking KDE build. But in the end it was worth it. Now the package is established and other projects can start to pick it up to create data compatible to the Nepomuk system and Tracker.</p> <p>Today the ontologies (and the shared-desktop-ontologies package) are maintained in the <a href="http://sourceforge.net/apps/trac/oscaf/" id="link-id10ce1038">Oscaf project at Sourceforge</a>. The situation is far from perfect but it is a good start. If you need specific properties in the ontologies or are thinking about creating one for your own application - come and join us in the <a href="http://sourceforge.net/apps/trac/oscaf/report/1" id="link-id11413910">bug tracker</a>â¦</p> <h2>Timeline KIO Slave</h2> <p>It was at the Akonadi meeting that Will Stephenson and myself got into talking about mimicking some <a href="http://live.gnome.org/Zeitgeist" id="link-id116888b0">Zeitgeist</a> functionality through Nepomuk. Basically it meant gathering some data when opening and when saving files. We quickly came up with a hacky patch for KIO and <a href="http://api.kde.org/4.x-api/kdelibs-apidocs/kio/html/classKFileDialog.html" id="link-id13637348">KFileDialog</a> which covered most cases and allowed us to track when a file was modified and by which application. This little experiment did not leave that state though (it will, however, this year) but another one did: Zeitgeist also provides a fuse filesystem which allows to browse the files by modification dates. Well, whatever fuse can do, KIO can do as well. <a href="http://trueg.wordpress.com/2009/10/26/just-another-way-of-browsing-your-files/" id="link-id13cf58c0">Introducing the timeline:/ KIO slave</a> which gives a calendar view onto your files.</p> <p> <a href="http://trueg.wordpress.com/2009/10/26/just-another-way-of-browsing-your-files/" id="link-id113d4988"><img class="aligncenter size-medium wp-image-208" title="timeline-october" src="http://trueg.files.wordpress.com/2009/10/timeline-october.png?w=300&h=235" alt="" width="300" height="235" /> </a> </p> <h2>Tips And Tricks</h2> <p>Well, I thought I would mention the <a href="http://techbase.kde.org/Development/Tutorials/Metadata/Nepomuk/TipsAndTricks" id="link-id116357d0">Tips And Tricks</a> section I wrote for the <a href="http://techbase.kde.org/Development/Tutorials/Metadata/Nepomuk" id="link-id14473520">techbase</a>. It might not be a big deal but I think it contains some valuable information in case you are using Nepomuk as a developer.</p> <h2>Google Summer Of Code 2009</h2> <p>This time around I had the privilege to <a href="http://trueg.wordpress.com/2009/04/22/nepomuk-in-the-summer-x2/" id="link-id116b0cf8">mentor two students</a> in the Google Summer of Code. Alessandro Sivieri and Adam Kidder did outstanding work on <a href="http://trueg.wordpress.com/2009/08/25/gsoc-wrap-up-part-1/" id="link-id13c9f2f8">Improved Virtual Folders</a> and the <a href="http://trueg.wordpress.com/2009/08/28/gsoc-wrap-up-part-2/" id="link-id123bac00">Smart File Dialog</a>.</p> <p>Adamâs work lead me to some heavy improvements in the Nepomuk KIO slaves myself which I only finished this week (more details on that coming up). Alessandro continued his work on faceted file browsing in KDE and created:</p> <h3>Sembrowser</h3> <p>Alessandro is following up on his work to make faceted file browsing a reality in 2010 (and KDE SC 4.5). Since it was too late to get faceted browsing into KDE SC 4.4 he is working on <a href="http://www.kde-apps.org/content/show.php/Sembrowser?content=117692" id="link-id117c67d0">Sembrowser</a>, a stand-alone faceted file browser which will be the grounds for experiments until the code is merged into Dolphin.</p> <div id="attachment_238" class="wp-caption aligncenter" style="width: 310px"> <a href="http://trueg.files.wordpress.com/2010/01/sembrowser.png" id="link-id13aa8e80"><img class="size-medium wp-image-238" title="sembrowser" src="http://trueg.files.wordpress.com/2010/01/sembrowser.png?w=300&h=189" alt="" width="300" height="189" /> </a> <p class="wp-caption-text">Faceted Browsing in KDE with Sembrowser</p> </div> <h2>Nepomuk Workshops</h2> <p>In 2009 I organized the first Nepomuk workshop in Freiburg, Germany. And also the second one. While <a href="http://trueg.wordpress.com/2009/06/23/the-first-nepomuk-workshop-its-a-wrap/" id="link-id13b553e0">I reported properly on the first one</a> I still owe a summary for the second one. I will get around to that - sooner or later. ;)</p> <h2>CMake Magic</h2> <p> <a href="http://soprano.sourceforge.net/" id="link-id148bfad8">Soprano</a> gives us a nice command line tool to create a C++ namespace from an ontology file: <a href="http://soprano.sourceforge.net/apidox/trunk/soprano_devel_tools.html" id="link-iddac3b58">onto2vocabularyclass</a>. It produces nice convenience namespaces like <a href="http://soprano.sourceforge.net/apidox/trunk/namespaceSoprano_1_1Vocabulary_1_1NAO.html" id="link-idfd4b970">Soprano::Vocabulary::NAO</a>. Nepomuk adds another tool named <a href="http://techbase.kde.org/Development/Tutorials/Metadata/Nepomuk/ResourceGenerator" id="link-id11b60200">nepomuk-rcgen</a>. Both were a bit clumsy to use before. Now we have nice cmake macros which make it very simple to use both.</p> <p>See the <a href="http://techbase.kde.org/Development/Tutorials/Metadata/Nepomuk/ResourceGenerator" id="link-id11963490">techbase article</a> on how to use the new macros.</p> <h2>Bangarang</h2> <p>Without my <a href="http://dbpedia.org/resource/Knowledge" id="link-iddcbd7c8">knowledge</a> (imagine that!) Andrew Lake created an amazing new media player named <a href="http://bangarangkde.wordpress.com/" id="link-id113d9500">Bangarang</a> - <em>a Jamaican word for noise, chaos or disorder.</em> This player is Nepomuk-enabled in the sense that it has a media library which lets you browse your media files based on the Nepomuk data. It remembers the number of times a song or a video has been played and when it was played last. It allows to add detail such as the TV series name, season, episode number, or actors that are in the video - all through Nepomuk (I hope we will soon get <a href="http://thetvdb.com/" id="link-id1154d7a0">tvdb</a> integration).</p> <div id="attachment_242" class="wp-caption aligncenter" style="width: 310px"> <a href="http://trueg.files.wordpress.com/2010/01/bangarang2.png" id="link-id148bcdb8"><img class="size-medium wp-image-242" title="bangarang2" src="http://trueg.files.wordpress.com/2010/01/bangarang2.png?w=300&h=208" alt="" width="300" height="208" /> </a> <p class="wp-caption-text">Edit metadata directly in Bangarang</p> </div> <div id="attachment_243" class="wp-caption aligncenter" style="width: 303px"> <a href="http://trueg.files.wordpress.com/2010/01/bangarang-dolphin-fileinfo.png" id="link-id11c70a48"><img class="size-full wp-image-243" title="bangarang-dolphin-fileinfo" src="http://trueg.files.wordpress.com/2010/01/bangarang-dolphin-fileinfo.png?w=293&h=242" alt="" width="293" height="242" /> </a> <p class="wp-caption-text">Dolphin showing TV episode metadata created by Bangarang</p> </div> <div id="attachment_245" class="wp-caption aligncenter" style="width: 310px"> <a href="http://trueg.files.wordpress.com/2010/01/bangarang-dolphin-search.png" id="link-id149200f8"><img class="size-medium wp-image-245" title="bangarang-dolphin-search" src="http://trueg.files.wordpress.com/2010/01/bangarang-dolphin-search.png?w=300&h=212" alt="" width="300" height="212" /> </a> <p class="wp-caption-text">And of course searching for it works, too...</p> </div> <div id="attachment_244" class="wp-caption aligncenter" style="width: 310px"> <a href="http://trueg.files.wordpress.com/2010/01/bangarang1.png" id="link-id114f7c80"><img class="size-medium wp-image-244" title="bangarang1" src="http://trueg.files.wordpress.com/2010/01/bangarang1.png?w=300&h=225" alt="" width="300" height="225" /> </a> <p class="wp-caption-text">And it is pretty, too...</p> </div> <p>I am especially excited about this since finally applications not written or mentored by me start contributing Nepomuk data.</p> <h2>Gran Canaria Desktop Summit</h2> <p>2009 was also the year of the first Gnome-KDE joint-conference. Let me make a bulletin for completeness and refer to <a href="http://trueg.wordpress.com/2009/07/13/gran-canaria-desktop-summit-2009-the-nepomuk-perspective/" id="link-id143ff668">my previous blog post reporting on my experiences on the island</a>.</p> <p>Well, that was by far not all I did in 2009 but I think I covered most of the important topics. And after all it is âjust a blog entryâ - there is no need for completeness. Thanks for reading.</p> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gocomments/trueg.wordpress.com/232/" id="link-id118a1950"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/comments/trueg.wordpress.com/232/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godelicious/trueg.wordpress.com/232/" id="link-id148ffb08"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/delicious/trueg.wordpress.com/232/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/gostumble/trueg.wordpress.com/232/" id="link-id13c65a88"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/stumble/trueg.wordpress.com/232/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/godigg/trueg.wordpress.com/232/" id="link-id119b85a0"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/digg/trueg.wordpress.com/232/" /></a> <a rel="nofollow" href="http://feeds.wordpress.com/1.0/goreddit/trueg.wordpress.com/232/" id="link-id13f5d6b8"><img alt="" border="0" src="http://feeds.wordpress.com/1.0/reddit/trueg.wordpress.com/232/" /></a> <img alt="" border="0" src="http://stats.wordpress.com/b.gif?host=trueg.wordpress.com&blog=6648236&post=232&subd=trueg&ref=&feed=1" /> </div>"
Personal and/or Service Specific Linked Data Spaces in the Cloud: DBpedia 3.4
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2009-11-16#1589
2009-11-16T18:17:46Z
2009-11-16T13:30:20-05:00
<p> We have just released an Amazon EC2 based public Snapshot of <a href="http://dbpedia.org/resource/DBpedia" id="link-id18e899b8">DBpedia</a> 3.4. Thus, you can now instantiate a personal and/or service specific variant of the DBpedia 3.4 <a href="http://dbpedia.org/resource/Linked_Data" id="link-id168dec90">Linked Data</a> <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id18911268">Space</a>. Basically, you can replicate what we host, within minutes (as opposed to days). In addition, you no longer need to squabble --on an unpredictable basis with others-- for the infrastructure resources behind DBpedia's public instance, when using the <a href="http://dbpedia.org/resource/SPARQL" id="link-id18d5bd78">SPARQL</a> Endpoint, Faceted Search & Find Services, or HTML Browser Pages etc.</p> <h3>How Does It work?</h3> <ol> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtInstallationEC2" id="link-id115932b8">Instantiate a Virtuoso EC2 AMI</a> (paid variety, which is aggressively priced at $49.99 for setup and $19.99 per month thereafter)</li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtAWSDBpedia34S" id="link-id182dc800"> Mount the shared DBpedia 3.4 public snapshot</a> </li> <li> Start Virtuoso Server</li> <li> Start exploiting the DBpedia Linked Data Space.</li> </ol> <h3>What Interfaces are exposed?</h3> <ol> <li> SPARQL Endpoint</li> <li> Linked Data Viewer Pages (as you see in the public DBpedia instance)</li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtFacetBrowserInstallConfig" id="link-id117f6e80">Faceted Search & Find UI and Web Services</a> (REST or SOAP)</li> <li> All the inference rules for <a href="http://umbel.org/about/" id="link-id144b84a8">UMBEL</a>, SUMO, YAGO, <a href="http://dbpedia.org/resource/Cyc" id="link-id16b69da8">OpenCYC</a>, and DBpedia-OWL <a href="http://dbpedia.org/resource/Data">data</a> dictionaries</li> <li>Type Correlations Between DBpedia and Freebase</li> </ol> <p>Enjoy!</p>
Personal and/or Service Specific Linked Data Spaces in the Cloud: DBpedia 3.4
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2009-11-16#1599
2009-11-16T18:17:46Z
2010-02-01T08:58:14-05:00
<p> We have just released an Amazon EC2 based public Snapshot of <a href="http://dbpedia.org/resource/DBpedia" id="link-id18e899b8">DBpedia</a> 3.4. Thus, you can now instantiate a personal and/or service specific variant of the DBpedia 3.4 <a href="http://dbpedia.org/resource/Linked_Data" id="link-id168dec90">Linked Data</a> <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id18911268">Space</a>. Basically, you can replicate what we host, within minutes (as opposed to days). In addition, you no longer need to squabble --on an unpredictable basis with others-- for the infrastructure resources behind DBpedia's public instance, when using the <a href="http://dbpedia.org/resource/SPARQL" id="link-id18d5bd78">SPARQL</a> Endpoint, Faceted Search & Find Services, or HTML Browser Pages etc.</p> <h3>How Does It work?</h3> <ol> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtInstallationEC2" id="link-id115932b8">Instantiate a Virtuoso EC2 AMI</a> (paid variety, which is aggressively priced at $49.99 for setup and $19.99 per month thereafter)</li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtAWSDBpedia34S" id="link-id182dc800"> Mount the shared DBpedia 3.4 public snapshot</a> </li> <li> Start Virtuoso Server</li> <li> Start exploiting the DBpedia Linked Data Space.</li> </ol> <h3>What Interfaces are exposed?</h3> <ol> <li> SPARQL Endpoint</li> <li> Linked Data Viewer Pages (as you see in the public DBpedia instance)</li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtFacetBrowserInstallConfig" id="link-id117f6e80">Faceted Search & Find UI and Web Services</a> (REST or SOAP)</li> <li> All the inference rules for <a href="http://umbel.org/about/" id="link-id144b84a8">UMBEL</a>, SUMO, YAGO, <a href="http://dbpedia.org/resource/Cyc" id="link-id16b69da8">OpenCYC</a>, and DBpedia-OWL <a href="http://dbpedia.org/resource/Data">data</a> dictionaries</li> <li>Type Correlations Between DBpedia and Freebase</li> </ol> <p>Enjoy!</p>
BBC Linked Data Meshup In 3 Steps
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2009-06-12#1560
2009-06-12T18:09:08Z
2009-06-12T16:38:34.000046-04:00
<h3>Situation Analysis:</h3> <p>Dr. Dre is one of the artists in the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1117a230">Linked Data</a> <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id10ff0fc0">Space</a> we host for the <a href="http://dbpedia.org/resource/BBC" id="link-id13cdba70">BBC</a>. He is also referenced in music oriented <a href="http://dbpedia.org/resource/Data">data</a> spaces such as <a href="http://dbpedia.org/resource/DBpedia" id="link-id119688a0">DBpedia</a>, <a href="http://musicbrainz.org/" id="link-id146f7d00">MusicBrainz</a> and <a href="http://last.FM" id="link-id15f50698">Last.FM</a> (to name a few). </p> <h3>Challenge:</h3> <p>How do I obtain a holistic view of the <a href="http://dbpedia.org/resource/Entity" id="link-id147a1490">entity</a> "Dr. Dre" across the BBC, MusicBrainz, and Last.FM data spaces? We know the BBC published Linked Data, but what about Last.FM and MusicBrainz? Both of these data spaces only expose XML or JSON data via REST APIs?</p> <h3>Solution:</h3> Simple 3 step Linked Data Meshup courtesy of <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSponger" id="link-id147faf78">Virtuoso's in-built RDFizer Middleware</a> "the Sponger" (think <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id115ecea0">ODBC</a> Driver Manager for the Linked Data <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id11806418">Web</a>) and its numerous Cartridges (think ODBC Drivers for the Linked Data Web). <h3>Steps:</h3> <ol> <li> Go to Last.FM and search using pattern: Dr. Dre (you will end up with this <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id11778f10">URL</a>: http://www.last.fm/music/Dr.+Dre)</li> <li> Go to the Virtuoso powered <a href="http://bbc.openlinksw.com" id="link-id14f40338">BBC Linked Data Space home page</a> and enter: http://bbc.openlinksw.com/about/html/http://www.last.fm/music/Dr.+Dre</li> <li> Go to the BBC Linked Data Space home page and type full text pattern (using default tab): Dr. Dre, then view <a href="http://bbc.openlinksw.com/fct/rdfdesc/usage.vsp?g=http%3A%2F%2Fwww.bbc.co.uk%2Fmusic%2Fartists%2F5f6ab597-f57a-40da-be9e-adad48708203%23artist&tp=4&sid=519&urilookup=&orig_refr=http://bbc.openlinksw.com/describe/?url=http://www.bbc.co.uk/music/artists/5f6ab597-f57a-40da-be9e-adad48708203" id="link-id119ac658">Dr. Dre's metadata via the Statistics Link</a>. </li> </ol> <h3>What Happened?</h3> <p>The following took place:</p> <ol> <li> Virtuoso <a href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id11a46fd8">Sponger</a> sent an HTTP GET to Last.FM</li> <li> Distilled the "Artist" entity "Dr. Dre" from the page, and made a <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id1297cc68">Linked Data graph</a> </li> <li> Inverse Functional Property and sameAs reasoning handled the Meshup (augmented graph from a conjunctive query processing pipeline)</li> <li>Links for "Dr. Dre" across <a href="http://bbc.openlinksw.com/describe/?url=http%3A%2F%2Fdbpedia.org%2Fresource%2FDr._Dre" id="link-id119e63e8">BBC (sameAs), Last.FM (seeAlso), via DBpedia URI</a>.</li> </ol> <p>The <a href="http://bbc.openlinksw.com/about/rdf/http/www.last.fm/music/Dr.+Dre#this" id="link-id111f6130">new enhanced URI for Dr. Dre</a> now provides a rich holistic view of the aforementioned "Artist" entity. This URI is usable anywhere on the Web for Linked Data Conduction :-)</p> <h3>Related (as in NearBy)</h3> <ul> <li> <a href="http://blogs.talis.com/n2/archives/617" id="link-idf3e0898">Augmenting Last.fm Data with BBC data on the Talis Platform</a> </li> </ul>
Understanding the BBC's Virtuoso Powered Linked Data Space
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2009-06-11#1559
2009-06-11T21:59:31Z
2009-06-26T23:15:13.000001-04:00
<p> The <a href="http://welcomebackstage.com/2009/06/bbc-backstage-sparql-endpoint/" id="link-id12969860">BBC's recently announced Linked Data space for Programmes and Music data</a>, joins a growing list of immediately useful "<a href="http://virtuoso.openlinksw.com" id="link-id110918f8">Virtuoso</a> Powered" linked data spaces, driving the burgeoning Web of Linked Data. Others include: <a href="http://dbpedia.org/resource/DBpedia" id="link-id12c0e720">DBpedia</a>, <a href="http://www.bio2rdf.org/" id="link-id14ee63a8">Bio2RDF</a>, NeuroCommons etc (the <a href="http://www4.wiwiss.fu-berlin.de/bizer/pub/lod-datasets_2009-03-27.html" id="link-id129a8588">click friendly version of the LOD-Cloud</a> diagram reveals a snapshot of other Virtuoso driven linked data spaces).</p> <h3>Why is it important?</h3> <p> As a leading media organization, the BBC's use of Linked Data provides a clear beacon to other media players re. the imminence of a serious Linked Data induced sector inflection. In a nutshell, every Web Site has to evolve into a Linked Data Space: a location on the Web that provides granular access to discrete data items in line with the core principles of the <a href="http://www.w3.org/DesignIssues/LinkedData.html" id="link-id11a14710">Linked Data meme</a>.</p> <p> Remember, the essence of the Linked Data meme is simply this: you reference data items and access their metadata, in variety of formats via a single HTTP based <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id1136b1c8">URI</a>. This approach to Web data publishing is compatible with any HTTP aware user agent (e.g., your Web Browser or tools & applications that provide abstracted access to HTTP).</p> <h3>How Do I use it?</h3> <p>There a number of very powerful things available to end-users and developers alike.</p> <h4>End-Users:</h4> <p> The most powerful feature of our variant of the BBC's Linked Data Space is the exposure of Faceted Find (think Search++ and beyond). Thus, you can go the the <a href="http://bbc.openlinksw.com" id="link-id12a32770">home page of the service</a> and commence data discovery and exploration via any of the following interfaces:</p> <ul> <li> <a href="http://dbpedia.org/resource/Full_text_search" id="link-id1179d618">Full Text Search</a> Tab -- type in a full text pattern and then experience <a href="http://bbc.openlinksw.com/facet_doc.html" id="link-id12c6dab0">Linked Data Entity Ranking as opposed to Page Ranking</a> </li> <li>URI Lookup (By Label) Tab -- type in part of a URI and let the system auto-complete by looking up Entity Labels</li> <li>URI Lookup (Raw String Pattern) Tab -- type in part of a URI and let the system auto-complete by looking up the raw URI</li> <li> <a href="http://bbc.openlinksw.com/ode/" id="link-id114b53c8">OpenLink Data Explorer Service</a> -- "deceptively simple" Linked Data explorer and Data Mesher (simply type in a URI or Text pattern, then view the data via a myriad of entity type specific viewer tabs).</li> </ul> <p>Once you are comfortable with at least one of the items above, you can exploit the system further by performing any of the following:</p> <ul> <li> <a href="http://bbc.openlinksw.com/page/void/Dataset" id="link-id117616c0">Explore the Linked Data Space via Data Dictionary</a> -- click on a Named Data Set URI and then <a href="http://bbc.openlinksw.com/describe/?url=http%3A%2F%2Fpurl.org%2Fontology%2Fpo%2FEpisode" id="link-id11664778">explore Class instances</a> (rdf:type property values) </li> <li> <a href="http://bbc.openlinksw.com/fct/rdfdesc/usage.vsp?g=http%3A%2F%2Fwww.bbc.co.uk%2Fmusic%2Fartists%2F5f6ab597-f57a-40da-be9e-adad48708203%23artist&tp=4&sid=519&urilookup=&orig_refr=http://bbc.openlinksw.com/describe/?url=http://www.bbc.co.uk/music/artists/5f6ab597-f57a-40da-be9e-adad48708203" id="link-id128a1aa8">Explore Entity Metadata</a> -- currently labeled "Statistics" but really is "Metadata" that describes data about an Entity (how you discern identifier co-reference, indirect identifiers, references from other data sets, and provenance/source graphs).</li> </ul> <h4> <a href="http://dbpedia.org/resource/Information" id="link-id1136cc60">Information</a> Architects & Developers</h4> <ul> <li>Bare bones <a href="http://dbpedia.org/resource/SPARQL" id="link-id13c15448">SPARQL</a> Endpoint -- usable by SPARQL aware user agents </li> <li> <a href="http://bbc.openlinksw.com/sparql_demo/" id="link-id114ed7f0">SPARQL Query Tool</a> -- type in SPARQL and interact with result pages that enable URI navigation (de-referencing)</li> <li> <a href="http://bbc.openlinksw.com/isparql" id="link-id12a25b38">iSPARQL Query By Example</a> -- paint your SPARQL Query and Learn <a href="http://wikis.openlinksw.com/dataspace/owiki/wiki/OATWikiWeb/InteractiveSparqlQueryBuilder" id="link-id13c0c578">SPARQL by Example</a> (just take defaults and then click "OK" to get in)</li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtFacetBrowserInstallConfig" id="link-id15001fe0">Virtuoso Facets API</a> - REST API for Faceted Browsing & Navigation across Linked Data Set Dimensions.</li> </ul> <h3>Disambiguated Search (aka. Search++ or Find)</h3> <p> In line with the time-tested "embrace and extend" pattern, we provide Full Text search capability, but unlike Google, Yahoo!, Bing and other search engines, we don't use use "Page Rank" algorithm to sort results; instead, we use an "Entity Rank" algorithm since we are dealing with an RDF based Graph model DBMS where links exist between entities across instance data and data dictionary (vocabularies, schemas, ontologies) boundaries. In addition, when you get results (by clicking "show values" or "show values with distinct counts") that list entities associated with a full text search pattern, we take a quantum leap beyond search engines by allowing you to use "Entity Type" and/or "Entity Properties" (all of these have HTTP URIs too) to set your own <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id13c15c30">context</a> for what you seek.</p> <p>Much more to come in the form of <a href="http://bbc.openlinksw.com/fct/facet.vsp?cmd=featured&sid=423&no_qry=1" id="link-id128a0fd0">BBC specific demo queries</a> and tutorials :-)</p> <h3>Related</h3> <ul> <li> Live <a href="http://lod.openlinksw.com" id="link-id14eb3010">LOD Cloud Cache</a> instance that combines BBC data with other data sets from the LOD Cloud (in a single Virtuoso RDF DBMS hosting 5 Billion+ triples & counting) </li> </ul>
Library of Congress & Reasonable Linked Data
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2009-05-05#1556
2009-05-05T17:53:24Z
2009-05-06T14:26:15.000034-04:00
<p> While exploring the <a href="http://id.loc.gov/authorities/" id="link-id1488cca8">Subject Headings Linked Data Space</a> (LCSH) recently unveiled by the <a href="http://id.loc.gov/" id="link-id1672ad10">Library of Congress</a>, I noticed that the <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id158fef78">URI</a> for the subject heading: <a href="http://id.loc.gov/authorities/sh95000541#concept" id="link-id14c8d3e8">World Wide Web</a>, exposes an "owl:sameAs" link to resource URI: "info:lc/authorities/sh95000541" -- in fact, a URI.URN that isn't HTTP protocol scheme based.</p> <p> The observations above triggered a <a href="http://search.twitter.com/search?q=&ands=&phrase=&ors=&nots=&tag=linkeddata&lang=all&from=kidehen&to=edsu&ref=&near=&within=15&units=mi&since=2009-05-01&until=2009-05-05&rpp=10" id="link-id14e21ba0">discussion thread on Twitter</a> that involved: <a href="http://twitter.com/edsu" id="link-ide411808">@edsu</a>, <a href="http://twitter.com/iand" id="link-id11915ed0">@iand</a>, and <a href="http://twitter.com/kidehen" id="link-id1519c028">moi</a>. Naturally, it morphed into a live demonstration of: human vs machine, interpretation of claims expressed in the RDF graph.</p> <h3>What makes this whole thing interesting?</h3> <p>It showcases (in Man vs Machine style) the issue of unambiguously discerning the meaning of the owl:sameAs claim expressed in the LCSH <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id17004728">Linked Data Space</a>.</p> <h4>Perspectives & Potential Confusion</h4> <p> From the Linked Data perspective, it may spook a few people to see owl:sameAs values such as: "info:lc/authorities/sh95000541", that cannot be de-referenced using HTTP. </p> <p> It may confuse a few people or user agents that see URI de-referencing as not necessarily HTTP specific, thereby attempting to de-reference the URI.URN on the assumption that it's associated with a "<a href="http://www.handle.net/overviews/overview.html" id="link-id155517a8">handle system</a>", for instance.</p> <p> It may even confuse RDFizer / RDFization middleware that use owl:sameAs as a <a href="http://dbpedia.org/resource/Data">data</a> provider attribution mechanism via hint/nudge URI values derived from original content / data URI.URLs that de-reference to nothing e.g., an original resource URI.<a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id119e0d80">URL</a> plus "#this" which produces URI.URN-URL -- think of this pattern as "owl:shameAs" in a sense :-)</p> <h3> Unambiguously Discerning Meaning</h3> <p> Simply bring OWL reasoning (inference rules and reasoners) into the mix, thereby negating human dialogue about interpretation which ultimately unveils a mesh of orthogonal view points. Remember, OWL is all about infrastructure that ultimately enables you to express yourself clearly i.e., say what you mean, and mean what you say. </p> <h3>Path to Clarity (using <a href="http://virtuoso.openlinksw.com" id="link-id1537aa68">Virtuoso</a>, its in-built Sponger Middleware, and Inference Engine):</h3> <ol> <li>GET the data into the Virtuoso Quad store -- what the sponger does via its <a href="http://linkeddata.uriburner.com/about/html/http://id.loc.gov/authorities/sh95000541#concept" id="link-id1669fa40">URIBurner Service</a> (while following designated predicates such as owl:sameAs in case they point to other mesh-able data sources)</li> <li>Query the data in Quad Store with "owl:sameAs" inference rules enabled</li> <li>Repeat the last step with the inference rules excluded.</li> </ol> <h4>Actual <a href="http://dbpedia.org/resource/SPARQL" id="link-id17374110">SPARQL</a> Queries:</h4> <ul> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/lcsh_www_subject_heading.isparql" id="link-id16c986d0">SPARQL Query against the HTTP based Subject Heading URI for WWW</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/lcsh_www_subject_heading_sameAs_inference_on.isparql" id="link-id16d4fea0">SPARQL Query (with reasoning via inference rule for owl:sameAs)</a> against the URN based Subject Heading URI for WWW</li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/lcsh_www_subject_heading_no_sameAs_inference_on.isparql" id="link-id11bad768">SPARQL Query (*without* reasoning via inference rule for owl:sameAs)</a> against the URN based Subject Heading URI for WWW</li> </ul> <h4>Observations:</h4> <p> The <a href="http://dbpedia.org/resource/SPARQL" id="link-ide6acf68">SPARQL</a> queries against the Graph generated and automatically populated by the Sponger reveal -- without human intervention-- that: "info:lc/authorities/sh95000541", is just an alternative name for < xmlns="http" id.loc.gov="id.loc.gov" authorities="authorities" sh95000541="sh95000541" concept="concept">, and that the graph produced by LCSH is self-describing enough for an OWL reasoner to figure this all out courtesy of the <a href="http://linkeddata.uriburner.com/about/html/http://www.w3.org/2002/07/owl%23sameAs" id="link-id13e364b0">owl:sameAs</a> property :-).</p> <p>Hopefully, this post also provides a simple example of how <a href="http://dbpedia.org/resource/Web_Ontology_Language" id="link-id158a3fe8">OWL</a> facilitates "Reasonable Linked Data". </p> <h3>Related</h3> <ul> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1455" id="link-id164e19f8">State of the Linked Data Web</a> </li> <li> <a href="http://www.mkbergman.com/?p=474" id="link-id11973d10">Making Linked Data Reasonable Using Description Logics Series</a> - post by <a href="http://community.linkeddata.org/dataspace/person/mkbergman#this" id="link-id1184bfb8">Mike Bergman</a> </li> </ul>
Take N: Yet Another OpenLink Data Spaces Introduction
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2009-04-22#1542
2009-04-22T18:46:18Z
2009-04-22T15:32:06.000020-04:00
<h3>Problem:</h3> <p>Your Life, Profession, <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a>, and <a href="http://dbpedia.org/resource/Internet" id="link-id0x1c6687f8">Internet</a> do not need to become mutually exclusive due to "<a href="http://dbpedia.org/resource/Information" id="link-id0x1c6696e8">information</a> overload".</p> <h3>Solution:</h3> <p> A platform or service that delivers a point of online presence that embodies the fundamental separation of: Identity, <a href="http://dbpedia.org/resource/Data">Data</a> Access, Data Representation, Data Presentation, by adhering to Web and Internet protocols.</p> <h3>How:</h3> <p> Typical post installation (Local or Cloud) task sequence:</p> <ol> <li> Identify myself (happens automatically by way of registration)</li> <li>If in an LDAP environment, import accounts or associate system with LDAP for account lookup and authentication</li> <li> Identify Online Accounts (by fleshing out profile) which also connects system to online accounts and their data</li> <li>Use Profile for granular description (Biography, Interests, WishList, OfferList, etc.)</li> <li>Optionally upstream or downstream data to and from my online accounts</li> <li>Create content Tagging Rules</li> <li>Create rules for associating Tags with formal URIs</li> <li>Create automatic Hyperlinking Rules for reuse when new content is created (e.g. <a href="http://dbpedia.org/resource/Blog" id="link-id11a7c660">Blog</a> posts)</li> <li>Exploit Data Portability virtues of RSS, Atom, OPML, <a href="http://dbpedia.org/resource/RDFa" id="link-id13f54d50">RDFa</a>, RDF/XML, and other formats for imports and exports</li> <li>Automatically <a href="http://dbpedia.org/resource/Tag" id="link-id121ddff0">tag</a> imported content</li> <li>Use function-specific helper application UIs for domain specific data generation e.g. AddressBook (optionally use vCard import), Calendar (optionally use iCalendar import), Email, File Storage (use WebDAV mount with copy and paste or HTTP GET), Feed Subscriptions (optionally import RSS/Atom/OPML feeds), Bookmarking (optionally import bookmark.html or XBEL) etc..</li> <li>Optionally enable "Conversation" feature (today: Social Media feature) across the relevant application domains (manage conversations under covers using NNTP, the standard for this functionality realm) </li> <li>Generate HTTP based <a href="http://dbpedia.org/resource/Entity" id="link-id13d5d378">Entity</a> IDs (URIs) for every piece of data in this burgeoning <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id11a69670">data space</a> </li> <li>Use REST based APIs to perform CRUD tasks against my data (local and remote) (<a href="http://dbpedia.org/resource/SPARQL" id="link-id11a76e10">SPARQL</a>, GData, Ubiquity Commands, Atom Publishing)</li> <li>Use OpenID, OAuth, <a href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id11c9b3e0">FOAF</a>+SSL, FOAF+SSL+OpenID for accessing data elsewhere</li> <li>Use OpenID, OAuth, FOAF+SSL, FOAF+SSL+OpenID for Controlling access to my data (Self Signed Certificate Generation, Browser Import of said Certificate & associated Private Key, plus persistence of Certificate to FOAF based profile data space in "one click")</li> <li>Have a simple UI for <a href="http://dbpedia.org/resource/Entity-attribute-value_model" id="link-id14015bd0">Entity</a>-Attribute-Value or Subject-Predicate-Object arbitrary data annotations and creation since you can't pre model an "<a href="http://dbpedia.org/resource/Open_world_assumption" id="link-id11cd8548">Open World</a>" where the only constant is data flow</li> <li>Have my Personal <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id142beee8">URI</a> (Web ID) as the single entry point for controlled access to my HTTP accessible data space</li> </ol> <p> I've just outlined a snippet of the capabilities of the <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-id13d64740">OpenLink Data Spaces</a> platform. A platform built using OpenLink <a href="http://virtuoso.openlinksw.com" id="link-id13d74170">Virtuoso</a>, architected to deliver: open, platform independent, multi-model, data access and data management across heterogeneous data sources. </p> <p> All you need to remember is your URI when seeking to interact with your data space.</p> <h3>Related</h3> <ol> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/GetAPersonalURIIn5MinutesOrLess" id="link-id13c97948">Get Yourself a URI (Web ID) in 5 Minutes or Less!</a> </li> <li> <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=%22data%20spaces%22&type=text&output=html" id="link-id1431e088">Various posts over the years about Data Spaces</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1415" id="link-id11f837f0">Future of Desktop Post</a> </li> <li> <a href="http://bnode.org/blog/2009/04/22/semantic-web-apps-to-simplify-my-life" id="link-id1393f8a8">Simplify My Life Post</a> by <a href="http://bnode.org/about" id="link-id11da0cc8">Bengee Nowack</a> </li> </ol>
Live Virtuoso instance hosting Linked Open Data (LOD) Cloud
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2009-03-30#1539
2009-03-30T16:27:26Z
2009-04-01T14:26:22.000002-04:00
<p>We have reached a beachead re. the <a href="http://lod.openlinksw.com" id="link-id11a035e0">Virtuoso instance hosting the Linked Open Data (LOD) Cloud</a>; meaning, we are not going to be performing any major updates and deletions short-term, bar incorporation of fresh data sets from the Freebase and <a href="http://www.bio2rdf.org/" id="link-id121d7278">Bio2RDF</a> projects (both communities a prepping new RDF data sets).</p> <p>At the current time we have loaded 100% of all the very large data sets from the <a href="http://www4.wiwiss.fu-berlin.de/bizer/pub/lod-datasets_2009-03-05.html" id="link-id1441f7e0">LOD Cloud</a>. As result, we can start the process of exposing <a href="http://dbpedia.org/resource/Linked_Data" id="link-id16c53de8">Linked Data</a> virtues in a manner that's palatable to users, developers, and database professionals across the <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id0x20165290">Web</a> 1.0, 2.0, and 3.0 spectrums.</p> <h3>What does this mean?</h3> <p>You can use the "Search & Find" or"<a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id119c6878">URI</a> Lookup" or <a href="http://dbpedia.org/resource/SPARQL" id="link-id157acde8">SPARQL</a> endpoint associated with the LOD cloud hosting instance to perform the following tasks:</p> <p> </p> <ol> <li>Find entities associated with <a href="http://dbpedia.org/resource/Full_text_search" id="link-id11a82f28">full text search</a> patterns -- Google Style, but with <a href="http://dbpedia.org/resource/Entity" id="link-id131b6380">Entity</a> & Text proximity Rank instead of Page Rank, since we are dealing with Entities rather than documents about entities</li> <li>Find and Lookup entities by Identifier (URI) -- which is helpful when locating URIs to use for identify entities in your own linked data spaces on the Web</li> <li>View entity descriptions via a variety of representation formats (HTML, <a href="http://dbpedia.org/resource/RDFa" id="link-id11e323b0">RDFa</a>, RDF/XML, N3, Turtle etc.)</li> <li>Determine uses of entity identifiers across the LOD cloud -- which helps you select preferred URIs based on usage statistics.</li> </ol> <h3>What does it offer Web 1.0 and 2.0 developers?</h3> <p> If you don't want to use the <a href="http://lod.openlinksw.com/sparql" id="link-id15c1ec30">SPARQL based Web Service</a>, or other Linked Data <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id15ebd3b0">Web</a> oriented APIs for interacting with the LOD cloud programmatically, you can simply use the powerful <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtuosoFacetsWebService" id="link-id12e556a8">REST style Web Service</a> that provides <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id12138090">URL</a> parameters for performing full text oriented "Search", entity oriented "Find" queries, and faceted navigation over the huge data corpus with results data returned in JSON and XML formats.</p> <h3>Next Steps:</h3> <p> Amazon have agreed to add all the LOD Cloud data sets to their existing <a href="http://aws.amazon.com/publicdatasets" id="link-id11989aa8">public data sets collective</a>. Thus, the data sets we are loading will be available in "raw data" (RDF) format on the public data sets page via Named Elastic Block Storage (EBS) Snapshots); meaning, you can make an EC2 AMI (e.g. a Linux, Windows, Solaris) and install an RDF quad or triple store of choice into your AMI, then simply load data from the LOD cloud based on your needs.</p> <p> In addition to the above, we are also going to offer a <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtInstallationEC2" id="link-id13982a88">Virtuoso 6.0 Cluster Edition based LOD Cloud AMI</a> (as we've already done with <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMIDBpediaInstall" id="link-id12cba108">DBpedia</a>, <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMIMusicBrainzInstall" id="link-id1390d338">MusicBrainz</a>, <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMINeuroCommonsInstall" id="link-id15801668">NeuroCommons</a>, and <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMIBio2rdfInstall" id="link-id133e0840">Bio2Rdf</a>) that will enable you to simply instantiate a personal and service specific edition of Virtuoso with all the LOD data in place and fully tuned for performance and scalability; basically, you will simply press "Instantiate AMI" and a LOD cloud <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id15ccbf80">data space</a>, in true Linked Data from, will be at your disposal within minutes (i.e. the time it takes the DB to start).</p> <p>Work on the migration of the LOD data to EC2 starts this week. Thus, if you are interested in contributing an RDF based data set to the LOD cloud now is the time to get your archive links in place on the (see: <a href="http://esw.w3.org/topic/DataSetRDFDumps" id="link-id154d6f88">ESW Wiki page for LOD Data Sets</a>).</p>
In Response to: This is Not the Future (Update #3)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2009-01-13#1518
2009-01-13T04:18:12Z
2009-01-21T19:02:47-05:00
<p>As I cannot post directly to Glenn's <a href="http://dbpedia.org/resource/Blog" id="link-id149ad010">blog</a> titled: <a href="http://www.furia.com/page.cgi?type=log&id=319" id="link-id113ed070">This is Not the Near Future (Either)</a>, I have to basically respond to him here, in blog post form :-(</p> <p>What is our <a href="http://b3s.openlinksw.com/fct/facet.vsp" id="link-id10fbeec0">"Search" and "Find" demonstration</a> about? It is about how you use the "Description" of "Things" to unambiguously locate things in a database at <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Scale.</p> <p>To our perpetual chagrin, we are trying to demonstrate an engine -- not UI prowess -- but the immediate response is to jump to the UI aesthetics.</p> <p>Google, Yahoo etc.. offer a simple input form for <a href="http://dbpedia.org/resource/Full_text_search" id="link-id14296fb8">full text search</a> patterns, they have a processing window for completing full text searches across Web Content indexed on their servers. Once the search patterns are processed, you get a page ranked result set (collection of Web pages basically that claim/state: we found N pages out of a document corpus of about M indexed pages). </p> <p> <strong>Note:</strong> the estimate aspect of traditional search results in like "advertising small print" the user lives with the illusion that all possible documents on the Web (or even <a href="http://dbpedia.org/resource/Internet" id="link-id13436b50">Internet</a>) have been searched whereas in reality: 25% of the possible total is a major stretch; since the Web and Internet are <a href="http://en.wikipedia.org/wiki/Fractal_dimension_on_networks" id="link-id1105ec48">fractal networks</a> and <a href="http://en.wikipedia.org/wiki/Scale-free_network" id="link-id111ad558">scale-free</a>, inherently growing at exponential rates "ad infinitum" across boundless dimensions of human comprehension.</p> <p> The power of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id111dc7c8">Linked Data</a> ultimately comes down to the fact that the user constructs the path to what they seek via the properties of the "Things" in question. The routes are not hardwired since <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id15cbc6f8">URI</a> de-referencing (follow your nose pattern) is available to Linked Data aware query engines and crawlers. </p> <p>We are simply trying to demonstrate how you can combine the best of full text search with the best of structured querying while reusing familiar interaction patterns from Google/Yahoo. Thus, you start with full text search, find get all the entities associated with the pattern, then use the <a href="http://dbpedia.org/resource/Entity" id="link-id1512c8a8">entity</a> types or entity properties to find what you seek.</p> <p>You state in your post:</p> <blockquote> <cite>"To state the obvious caveat, the claim OpenLink is making about this demo is not that it delivers better search-term relevance, therefore the ranking of searching results is not the main criteria on which it is intended to be assessed." </cite> </blockquote> <p> Correct. </p> <blockquote> <cite> "On the other hand, one of the things they are bragging about is that their server will automatically cut off long-running queries. So how do you like your first page of results?". </cite> </blockquote> <p> Not exactly correct. We are performing aggregates using a configurable interactive time factor. Example: tell <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id12fb67c0">me</a> how many entities of type: Person, with interest: <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id159bffc8">Semantic Web</a>, exist in this database within 2 seconds. Also understand that you could retry the same query and get different numbers within the same interactive time factor. It isn't your basic "query cut-off". </p> <blockquote> <cite> "And on the other other hand, the big claim OpenLink is making about this demo is that the aggregate experience of using it is better than the aggregate experience of using "traditional" search. So go ahead, use it. If you can."</cite> </blockquote> <p>Yes, "Microsoft" was a poor example for sure, the example could have been pattern: "glenn mcdonald", which should demonstrate the fundamental utility of what we are trying to demonstrate i.e., entity disambiguation courtesy of entity properties and/or entity type filtering.</p> <p> <a href="http://www.google.com/search?q=glenn+mcdonald" id="link-id15e4dbc8">Compare Googles results for: Glenn McDonald</a> with those from our demo (which dissambiguate "Glenn McDonald" via associated properties and/or types), assuming we both agree that your Web Site or Blog Home isn't the center of your entity graph or personal <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id15754528">data space</a> (i.e., data about you); so getting your home page at the top of the Google page rank offers limited value, in reality.</p> <p>What are we bragging about? A little more than what you attempt to explain. Yes, we are showing that we can find stuff within a processing window, but understand the following:</p> <ul> <li> Processing Time Window (or interactive time) is configurable </li> <li> Data Corpus is a Billion+ Triples (from <a href="http://challenge.semanticweb.org/" id="link-id149a25e0">Billion Triples Challenge Data Set</a>) </li> <li> <a href="http://dbpedia.org/resource/SPARQL" id="link-id15e13180">SPARQL</a> doesn't have Aggregation capabilities by default (we have implemented <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VOSArticleBISPARQL2" id="link-id1593a550">SPARQL-BI</a> to deliver aggregates for analytics against large data sets, we even handle the TPC-H industry standard benchmark with SPARQL-BI)</li> <li> Paging isn't possible without aggregates, and doing aggregates on a Billion+ triples as part of a query processing cycle isn't trivial stuff (otherwise it would be everywhere due to inherent and obvious necessity).</li> </ul> <p>I hope I've clarified what's going on with our demo? If not, pose your challenge via examples and I will respond with solutions or simply cry out loud: "no mas!".</p> <p>As for your "Mac OX X Leopard" comments, I can only say this: I emphasized that this is a demo, the data is pretty old, and the input data has issues (i.e. some of the input data is bad as your example shows). The purpose of this demo is not about the text per se., it's about the size of the data corpus and faceted querying. We are going to have the entire <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id15dfec08">LOD</a> Cloud loaded into the real thing, and in addition to that our Sponger Middleware will be enabled, and then you can take issue with data quality as per your reference to "Cyndi Lauper" (btw - it takes one property filter to find <a href="http://b3s.openlinksw.com/fct/facet.vsp?cmd=set_view&sid=552&type=text-properties&limit=20&offset=0" id="link-id1496d2a0">information about her quickly</a> using "<strong>dbpprop:name</strong>" after filtering for properties with text values).</p> <p>Of all things, this demo had nothing to do with UI and <a href="http://dbpedia.org/resource/Information" id="link-id11009090">Information</a> presentation aesthetics. It was all about combining full text search and structured queries (sparql behind the scenes) against a huge data corpus en route to solving challenges associated with faceted browsing over large data sets. We have built a service that resides inside <a href="http://virtuoso.openlinksw.com" id="link-id118b36a8">Virtuoso</a>. The Service is naturally of the "Web Service" variety and can be used from any consumer / client environment that speaks HTTP (directly or indirectly).</p> <p>To be continued ...</p>
A Linked Data Web Approach To Semantic "Search" & "Find" (Updated)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2009-01-09#1517
2009-01-09T23:34:50Z
2009-01-10T13:55:56.000001-05:00
<p>The first salvo of what we've been hinting about re. server side faceted browsing over Unlimited <a href="http://dbpedia.org/resource/Data">Data</a> within configurable Interactive Time-frames is now available for experimentation at: <a href="http://b3s.openlinksw.com/fct/facet.vsp" id="link-ide41d210">http://b3s.openlinksw.com/fct/facet.vsp</a>.</p> <h3>Simple example / demo:</h3> <p>Enter search pattern: Microsoft</p> <p>You will get the usual result from a full text pattern search i.e., hits and text excerpts with matching patterns in boldface. This first step is akin to throwing your net out to sea while fishing.</p> <p> Now you have your catch, what next? Basically, this is where traditional text search value ends since <a href="http://dbpedia.org/resource/regular_expression" id="link-id113b6840">regex</a> or <a href="http://dbpedia.org/resource/XPath" id="link-id1151c140">xpath</a>/<a href="http://dbpedia.org/resource/XQuery" id="link-id14565db8">xquery</a> offer little when the structure of literal text is the key to filtering or categorization based analysis of real-world entities. Naturally, this is where the value of structured querying of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11bc8208">linked data</a> starts, as you seek to use <a href="http://dbpedia.org/resource/Entity" id="link-id150e7298">entity</a> descriptions (combination of attribute and relationship properties) to "Find relevant things".</p> <p>Continuing with the demo.</p> <p>Click on "Properties" link within the Navigation section of the browser page which results in a distillation and aggregation of the properties of the entities associated with the search results. Then use the "Next" link to page through the properties until to find the properties that best match what you seek. Note, this particular step is akin to using the properties of the catch (using fishing analogy) for query filtering, with each subsequent property link click narrowing your selection further.</p> <p>Using property based filtering is just one perspective on the data corpus associated with the text search pattern; thus, you can alter perspectives by clicking on the "Class" link so that you can filter you search results by entity type. Of course, in a number of scenarios you would use a combination of entity types and entity properties filters to locate the entities of interest to you. </p> <h3>A Few Notes about this demo instance of <a href="http://virtuoso.openlinksw.com" id="link-id14453088">Virtuoso</a>:</h3> <ul> <li> Lookup Data Size (Local Linked Data Corpus): 2 Billion+ Triples (<a href="http://dbpedia.org/page/Entity-attribute-value_model" id="link-id13447558">entity-attribute-value</a> tuples)</li> <li> This is a *temporary* teaser / precursor to the <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id14e3bfc8">LOD</a> (Linking Open Data Cloud) variant of our Linked Data driven "Search" & "Find" service; we decided to implement this functionality prior to commissioning a larger and more up to date instance based on the entire LOD Cloud</li> <li> The browser is simply using a <a href="http://virtuoso.openlinksw.com" id="link-id138b5688">Virtuoso</a> PL function that also exists in <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Service form for loose binding by 3rd parties that have a UI orientation and focus (our UI is deliberately bare boned).</li> <li>The properties and entity types (classes) links expose formal definitions and dictionary provenance <a href="http://dbpedia.org/resource/Information" id="link-id10ecc8e0">information</a> materialized in an HTML page (of course your browser or any other HTTP user agent can negotiation alternative representations of this descriptive information)</li> <li> <a href="http://umbel.org/about/" id="link-id117b95e0">UMBEL</a> based inference rules are enabled, giving you a live and simple demonstration of the virtues of Linked Data Dictionaries for example: click on the description link of any property or class from the <a href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id1595dd88">foaf</a> (friend-of-a-friend vocabulary), <a href="http://dbpedia.org/resource/SIOC" id="link-id151315e8">sioc</a> (semantically-interlinked-online-communities ontology), <a href="http://musicontology.com/" id="link-id15b9d6e8">mo</a> (music ontology), <a href="http://bibliontology.com/" id="link-id114257e8">bibo</a> (bibliographic data ontology) namespaces to see how the data between these lower level vocabularies or ontologies are meshed with <a href="http://dbpedia.org/resource/Cyc" id="link-id15b9be80">OpenCyc</a>'s upper level ontology. </li> </ul> <h3>Related</h3> <ul> <li> <a href="http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1515" id="link-id14694eb8">Faceted Search: Unlimited Data in Interactive Time</a> </li> <li> <a href="http://blogs.usnet.private:8893/Virtuoso Anytime: No Query Is Too Complex (updated)" id="link-id1356c630">Virtuoso Anytime: No Query Is Too Complex</a> </li> </ul>
New ADO.NET 3.x Provider for Virtuoso Released (Update 2)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2009-01-08#1514
2009-01-08T04:36:47Z
2009-01-08T09:12:50.000006-05:00
<p>I am pleased to announce the immediate availability of the <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtAdoNet35Provider" id="link-id142e7390">Virtuoso ADO.NET 3.5 data provider</a> for Microsoft's .NET platform.</p> <h3>What is it?</h3> <p>A data access driver/provider that provides conceptual <a href="http://dbpedia.org/resource/Entity" id="link-id11c36c00">entity</a> oriented access to <a href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id12fb8618">RDBMS</a> data managed by Virtuoso. Naturally, it also uses Virtuoso's in-built virtual / <a href="http://dbpedia.org/resource/federated_database_system" id="link-id115bedc8">federated database</a> layer to provide access to <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id15153c08">ODBC</a> and <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id13418908">JDBC</a> accessible RDBMS engines such as: <a href="http://dbpedia.org/resource/Oracle_Database" id="link-id134d72f0">Oracle</a> (7.x to latest), <a href="http://dbpedia.org/resource/SQL" id="link-id15757b88">SQL</a> Server (4.2 to latest), <a href="http://dbpedia.org/resource/Sybase" id="link-id15ef8d48">Sybase</a>, IBM <a href="http://dbpedia.org/resource/IBM_Informix" id="link-id12f56aa0">Informix</a> (5.x to latest), IBM <a href="http://dbpedia.org/resource/IBM_DB2" id="link-id119feb38">DB2</a>, <a href="http://dbpedia.org/resource/Ingres" id="link-id14e3d6c8">Ingres</a> (6.x to latest), Progress (7.x to OpenEdge), <a href="http://dbpedia.org/resource/MySQL" id="link-id11295630">MySQL</a>, PostgreSQL, <a href="http://dbpedia.org/resource/Firebird_database_server" id="link-id12f40448">Firebird</a>, and others using our ODBC or JDBC bridge drivers.</p> <h3>Benefits?</h3> <h4>Technical:</h4> <p>It delivers an <a href="http://dbpedia.org/resource/Entity-attribute-value_model" id="link-id14012040">Entity-Attribute-Value + Classes & Relationships model</a> over disparate data sources that are materialized as .NET Entity Framework Objects, which are then consumable via ADO.NET Data Object Services, LINQ for Entities, and other ADO.NET data consumers.</p> <p>The provider is fully integrated into Visual Studio 2008 and delivers the same "ease of use" offered by Microsoft's own SQL Server provider, but across Virtuoso, Oracle, Sybase, DB2, Informix, Ingres, <a href="http://dbpedia.org/resource/Progress_4GL" id="link-id158d1fe8">Progress (OpenEdge</a>), MySQL, PostgreSQL, Firebird, and others. The same benefits also apply uniformly to Entity Frameworks compatibility.</p> <p> Bearing in mind that Virtuoso is a multi-model (hybrid) data manager, this also implies that you can use .NET Entity Frameworks against all data managed by Virtuoso. Remember, Virtuoso's SQL channel is a conduit to Virtuoso's core; thus, RDF (courtesy of <a href="http://esw.w3.org/topic/SPASQL" id="link-id133c9b70">SPASQL</a> as already implemented re. <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtJenaProvider" id="link-id11380b80">Jena</a>/<a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSesame2Provider" id="link-id10fc0c88">Sesame</a>/<a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtRDFDriverRedland" id="link-id1390f730">Redland</a> providers), XML, and other data forms stored in Virtuoso also become accessible via .NET's Entity Frameworks.</p> <br /> <h4>Strategic:</h4> <p>You can choose which entity oriented data access model works best for you: RDF <a href="http://dbpedia.org/resource/Linked_Data" id="link-id151354f0">Linked Data</a> & <a href="http://dbpedia.org/resource/SPARQL" id="link-id15dc5eb0">SPARQL</a> or .NET Entity Frameworks & <a href="http://en.wikipedia.org/wiki/ADO.NET_Entity_Framework#Entity_SQL" id="link-id14404e80">Entity SQL</a>. Either way, Virtuoso delivers a commercial grade, high-performance, secure, and scalable solution.</p> <br /> <h3>How do I use it?</h3> Simply follow one of guides below: <ul> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEntityFrameworkSchoolDbWinFormApp" id="link-id15e5c580">Using Visual Studio 2008 & Virtuoso to build an Entity Frameworks based Windows forms application</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtUsingMsAdoNetDataServicesWithVirtuoso" id="link-id157912b0">Using Visual Studio 2008 & Virtuoso to build an ADO.NET Data Services based application</a> </li> </ul> <p> <b>Note:</b> When working with external or 3rd party databases, simply use the Virtuoso Conductor to link the external data source into Virtuoso. Once linked, the remote tables will simply be treated as though they are native Virtuoso tables leaving the <a href="http://dbpedia.org/resource/Virtual_Database" id="link-id15b04b18">virtual database</a> engine to handle the rest. This is similar to the role the Microsoft JET engine played in the early days of ODBC, so if you've ever linked an ODBC data source into Microsoft Access, you are ready to do the same using Virtuoso.</p> <h3>Related</h3> <ul> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1420" id="link-id160afdd0">Entity Oriented Data Access</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1474" id="link-id113eeb50">Yoda & the Data FORCE.</a> </li> </ul>
Bio2Rdf EC2 AMI is now Ready! (Updated)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-12-23#1508
2008-12-23T15:37:45Z
2008-12-24T11:05:13-05:00
<p>Adding to the collection of Amazon EC2 AMI based knowledgebases already unveiled for <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMIDBpediaInstall" id="link-id117a3710">DBpedia</a> and <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMINeuroCommonsInstall" id="link-id11293c10">NeuroCommons</a>, we now have a <a href="http://www.bio2rdf.org/" id="link-id14ba6338">Bio2Rdf</a> knowledgebase AMI.</p> <h3>What is Bio2Rdf?</h3> <p>A community developed knowledgebase comprised of Bio Informatics <a href="http://dbpedia.org/resource/Data">data</a> from across <a href="http://www.freebase.com/view/user/bio2rdf/public/sparql" id="link-id1468fb90">30 or so public data sources</a>. The standard deployment of Bio2Rdf includes a a federation of <a href="http://dbpedia.org/resource/SPARQL" id="link-id111962a8">SPARQL</a> endpoints provided by project members and collaborators.</p> <h3>What is the Bio2Rdf EC2 AMI?</h3> <p> An Amazon EC2 hosted variant of the Bio2Rdf knowledgebase. In addition to providing a SPARQL endpoint, the data exposed by the Amazon AMI is published in compliance with <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1560ac50">Linked Data</a> publishing best practices espoused by the <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id153aff30">Linking Open Data community</a> (<a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id1390d968">LOD</a>).</p> <h3>Benefits?</h3> <p>The ability to instantiate a personal or service-specific variant of this powerful knowledgebase via the Amazon EC2 Cloud. Instead of a 22+ hour error prone odyssey - you simply get down to the task of data analysis and integration within 1.5 hrs (when setting up you AMI for the first time).</p> <h3>How do I get going?</h3> Just follow the instructions in the <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMIBio2rdfInstall" id="link-id114fc4a8">Bio2Rdf EC2 AMI installation guide</a>. <h3>Related</h3> <ul> <li> <a href="http://bio2rdf.wiki.sourceforge.net/" id="link-id19109ed8">Bio2Rdf Wiki</a> </li> <li> <a href="http://bio2rdf.wiki.sourceforge.net/Demo+queries" id="link-id1134c988">Sample Bio2Rdf Queries Collection</a> </li> <li> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VirtuosoEC2AMI" id="link-id11c28e08">Virtuoso's Amazon Machine Image (AMI) for EC2 Home Page</a> </li> <li> <a href="http://www.youtube.com/watch?v=XdBd14rjcs0" id="link-id14b4a390">Cloud Computing Explanation Video</a> </li> </ul>
Virtuoso+Neurocommons EC2 AMI released! (Update - 1)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-12-08#1491
2008-12-08T21:13:04Z
2008-12-10T22:48:49-05:00
<h3>What is Neurocommons?</h3> <p>Excerpted from the <a href="http://neurocommons.org/" id="link-id142131b8">project home page</a>:</p> <blockquote> <cite>The NeuroCommons project seeks to make all scientific research materials - research articles, annotations, <a href="http://dbpedia.org/resource/Data">data</a>, physical materials - as available and as useable as they can be. We do this by both fostering practices that render <a href="http://dbpedia.org/resource/Information" id="link-id112f8418">information</a> in a form that promotes uniform access by computational agents - sometimes called "interoperability". We want <a href="http://dbpedia.org/resource/Knowledge" id="link-id1195f9b0">knowledge</a> sources to combine meaningfully, enabling semantically precise queries that span multiple information sources.</cite> </blockquote> <p>In a nutshell, a great project that makes practical use of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id0x1e945010">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id115de818">Web</a> technology in the areas of computational biology and neuroscience.</p> <h3>What is <a href="http://virtuoso.openlinksw.com" id="link-id0xa1eda880">Virtuoso</a> and Neurocommons AMI for EC2?</h3> <p>A pre-installed and fully tuned edition of Virtuoso that includes a fully configured Neurocommons Knowledgebase (in RDF <a href="http://dbpedia.org/resource/Linked_Data" id="link-id114d8c88">Linked Data</a> form) on Amazon's EC2 Cloud platform.</p> <h3>Benefits?</h3> <p>Generally, it provides a no-hassles mechanism for instantiating personal-, organization-, or service-specific instances of a very powerful research knowledgebase within approximately 1.15 hours compared to a lengthy rebuild from RDF source data alternative that takes 14 hours or more, depending on machine hardware configuration and host operating system resources.</p> <h3>Features:</h3> <ol> <li> <a href="http://blogs.usnet.private:8893/sparql.neurocommons.org" id="link-id154c5710">Neurocommons public instance</a> functionality replica (re. RDF and (X)HTML resource description representations & <a href="http://dbpedia.org/resource/SPARQL" id="link-id1188e5f0">SPARQL</a> endpoint)</li> <li> Local <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id117092a8">URI</a> de-referencing (so no contention with public endpoint) as part of the RDF Linked Data Deployment</li> <li> Fully tuned Virtuoso instance for neurocommons knowledgebase. </li> </ol> <h3>Installation Guide</h3> Simply read the <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMINeuroCommonsInstall" id="link-id15267570">Virtuoso+NeuroCommons EC2 AMI installation guide</a>. <h3>Related</h3> <ul> <li> <a href="http://sciencecommons.org/about/science-commons-dylan-video/" id="link-id14cb22f0">Science Commons Video</a> </li> </ul>
Virtuoso+DBpedia AMI for EC2 now Live!
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-12-01#1490
2008-12-01T16:04:28Z
2008-12-12T11:22:27-05:00
<h3>What is <a href="http://virtuoso.openlinksw.com" id="link-id11015c60">Virtuoso</a>+<a href="http://dbpedia.org/resource/DBpedia" id="link-id1140b6f0">DBpedia</a> AMI for EC2?</h3> <p>A pre-installed and fully tuned edition of Virtuoso that includes a fully configured DBpedia instance on Amazon's EC2 Cloud platform.</p> <h3>Benefits?</h3> <p>Generally, it provides a no hassles mechanism for instantiating personal, organization, or service specific instances of DBpedia within approximately 1.5 hours as opposed to a lengthy rebuild from RDF source <a href="http://dbpedia.org/resource/Data">data</a> that takes between 8 - 22 hours depending on machine hardware configuration and host operating system resources.</p> <p>From a <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Entrepreneur perspective it offers all of the generic benefits of a <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/ODSInstallationEC2" id="link-id1148ac90">Virtuoso EC2 AMI</a> plus the following:</p> <ol> <li> Instant bootstrap of a dense Lookup Hub for <a href="http://dbpedia.org/resource/Linked_Data" id="link-id14c94590">Linked Data Web</a> oriented solutions</li> <li> No exposure to any of the complexities and nuances associated with deployment of dereferencable URIs (you have a DBpedia replica)</li> <li> Predictable performance and scalability due localization of query processing (you aren't sharing the public DBpedia server with the rest of the world). </li> </ol> <h3>Features:</h3> <ol> <li> DBpedia public instance functionality replica (re. RDF and (X)HTML resource description representations & <a href="http://dbpedia.org/resource/SPARQL" id="link-id1188e5f0">SPARQL</a> endpoint)</li> <li> Local <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id117092a8">URI</a> de-referencing (so no contention with public endpoint) as part of the Linked Data Deployment</li> <li> Fully tuned Virtuoso instance for DBpedia data set hosting. </li> </ol> <h3>How Do I Get Started?</h3> Simply read the <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMIDBpediaInstall" id="link-id15836e90">Virtuoso-DBpedia EC2 AMI installation guide</a>. <p>Here are a few live examples of DBpedia resource URIs deployed and de-referencable via one of my EC2 based <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-id14930ab0">personal data spaces</a>:</p> <ul> <li> <a href="http://kingsley.idehen.name/resource/Linked_Data" id="link-id1104a740">Linked Data</a> </li> <li> <a href="http://kingsley.idehen.name/resource/Entity-attribute-value_model" id="link-id11200f48">Entity-Attribute-Value</a> (aka. Triples) Model</li> <li> <a href="http://kingsley.idehen.name/resource/Hyperdata" id="link-id11235ef0">Hyperdata</a> Linking (aka. <a href="http://kingsley.idehen.name/resource/Object_hyperlinking" id="link-id15493b90">Object Hyperlinking</a>)</li> <li> <a href="http://kingsley.idehen.name/resource/Barack_Obama" id="link-id15497580">Barack Obama</a> </li> </ul>
Introducing Virtuoso Universal Server (Cloud Edition) for Amazon EC2
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-11-28#1489
2008-11-28T19:27:12Z
2008-11-28T16:06:02.000006-05:00
<h3>What is it?</h3> <p>A pre-installed edition of <a href="http://virtuoso.openlinksw.com" id="link-id14bea838">Virtuoso</a> for Amazon's EC2 Cloud platform.</p> <h3>What does it offer?</h3> From a <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Entrepreneur perspective it offers: <ol> <li> Low cost entry point to a game-changing Web 3.0+ (and beyond) platform that combines <a href="http://dbpedia.org/resource/SQL" id="link-id11309b38">SQL</a>, <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id135f7988">RDF</a>, XML, and Web Services functionality</li> <li> Flexible variable cost model (courtesy of <a href="http://aws.amazon.com/devpay/" id="link-id17941018">EC2 DevPay</a>) tightly bound to revenue generated by your services</li> <li> Delivers federated and/or centralized model flexibility for you SaaS based solutions</li> <li> Simple entry point for developing and deploying sophisticated database driven applications (SQL or RDF <a href="http://dbpedia.org/resource/Linked_Data" id="link-id14ea6b10">Linked Data Web</a> oriented)</li> <li> Complete framework for exploiting OpenID, OAuth (including Role enhancements) that simplifies exploitation of these vital Identity and <a href="http://dbpedia.org/resource/Data">Data</a> Access technologies</li> <li>Easily implement RDF Linked Data based Mail, Blogging, Wikis, Bookmarks, Calendaring, Discussion Forums, Tagging, Social-Networking as <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id11519928">Data Space</a> (data containers) features of your application or service offering</li> <li>Instant alleviation of challenges (e.g. service costs and agility) associated with <a href="http://dbpedia.org/resource/DataPortability" id="link-id111cb610">Data Portability</a> and Open Data Access across Web 2.0 data silos</li> <li> LDAP integration for <a href="http://dbpedia.org/resource/Intranet" id="link-id114a8270">Intranet</a> / <a href="http://dbpedia.org/resource/Extranet" id="link-id10fe4f08">Extranet</a> style applications.</li> </ol> <p>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:</p> <ol> <li> RDF Database (a Quad Store with <a href="http://dbpedia.org/resource/SPARQL" id="link-id11911bf8">SPARQL</a> & SPARUL Language & Protocol support)</li> <li> <a href="http://dbpedia.org/resource/SQL" id="link-id110544c8">SQL</a> Database (with <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id1524c7d0">ODBC</a>, <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id14cfb658">JDBC</a>, OLE-DB, <a href="http://dbpedia.org/resource/ADO.NET" id="link-id110ec6c8">ADO</a>.NET, and XMLA driver access)</li> <li>XML Database (XML Schema, <a href="http://dbpedia.org/resource/XQuery" id="link-id10ebf218">XQuery</a>/<a href="http://dbpedia.org/resource/XPath" id="link-id142a7898">Xpath</a>, XSLT, Full Text Indexing)</li> <li>Full Text Indexing.</li> </ol> <p>From a Middleware perspective it provides:</p> <ol> <li> RDF Views (Wrappers / Semantic Covers) over SQL, XML, and other data sources accessible via SOAP or REST style Web Services</li> <li> Sponger Service for converting non RDF <a href="http://dbpedia.org/resource/Information" id="link-id11931c60">information</a> resources into RDF <a href="http://dbpedia.org/resource/Linked_Data" id="link-id118f7168">Linked Data</a> "on the fly" via a large collection of pre-installed RDFizer Cartridges.</li> </ol> <p>From the Web Server Platform perspective it provides an alternative to LAMP stack components such as <a href="http://dbpedia.org/resource/MySQL" id="link-id10f7b780">MySQL</a> and Apace by offering</p> <ol> <li> HTTP Web Server</li> <li> WebDAV Server</li> <li> Web <a href="http://dbpedia.org/resource/Application_server" id="link-id1268daa8">Application Server</a> (includes <a href="http://dbpedia.org/resource/PHP" id="link-id1585d238">PHP</a> runtime hosting)</li> <li> SOAP or REST style Web Services Deployment</li> <li> RDF Linked Data Deployment</li> <li> SPARQL (SPARQL Query Language) and SPARUL (SPARQL Update Language) endpoints</li> <li>Virtuoso Hosted PHP packages for <a href="http://dbpedia.org/resource/MediaWiki" id="link-id15568818">MediaWiki</a>, <a href="http://dbpedia.org/resource/Drupal" id="link-id110bd7a8">Drupal</a>, <a href="http://dbpedia.org/resource/WordPress" id="link-id10f66918">Wordpress</a>, and <a href="http://dbpedia.org/resource/PhpBB" id="link-id13fda4d0">phpBB3</a> (just install the relevant Virtuoso Distro. Package). </li> </ol> <p>From the general System Administrator's perspective it provides:</p> <ol> <li> Online Backups (Backup Set dispatched to S3 buckets, FTP, or HTTP/WebDAV server locations)</li> <li>Synchronized Incremental Backups to Backup Set locations</li> <li>Backup Restore from Backup Set location (without exiting to EC2 shell).</li> </ol> <p>Higher level user oriented offerings include:</p> <ol> <li>OpenLink Data Explorer front-end for exploring the burgeoning Linked Data <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id11646dc8">Web</a> </li> <li> Ajax based SPARQL Query Builder (iSPARQL) that enables SPARQL Query construction by Example</li> <li>Ajax based SQL Query Builder (QBE) that enables SQL Query construction by Example.</li> </ol> <p>For Web 2.0 / 3.0 users, developers, and entrepreneurs it offers it includes Distributed Collaboration Tools & Social Media realm functionality courtesy of <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-id11009930">ODS</a> that includes:</p> <ol> <li> Point of presence on the Linked Data Web that meshes your Identity and your Data via URIs</li> <li> System generated Social Network Profile & Contact Data via <a href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id1185a1c0">FOAF</a>?</li> <li> System generated <a href="http://dbpedia.org/resource/SIOC" id="link-id14791890">SIOC</a> (Semantically Interconnected Online Community) <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id1577cad8">Data Space</a> (that includes a Social Graph) exposing all your Web data in RDF Linked Data form</li> <li> System generated OpenID and automatic integration with FOAF</li> <li> 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</li> <li> In-built support for SyncML which enables data synchronization with Mobile Phones.</li> </ol> <h3>How Do I Get Going with It?</h3> <ul> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/ODSInstallationEC2" id="link-id114e1600">Standard Installation Guide</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtEC2AMIDBpediaInstall" id="link-id110a98e8">Personal or Service Specific DBpedia Installation Guide</a> </li> </ul>
Your Personal Edition of DBpedia in the Clouds
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-11-25#1486
2008-11-25T23:23:26Z
2008-11-25T18:55:55-05:00
<p>We are just about done with an end-to-end workflow pattern that enables reconstitution of <a href="http://dbpedia.org/resource/DBpedia" id="link-id112a4aa0">DBpedia</a> 3.2 instances in the Clouds courtesy of <a href="http://virtuoso.openlinksw.com" id="link-id11969f70">Virtuoso</a> and EC2.</p> <p>Basically this is how it works.</p> <ol> <li>Instantiate a Virtuoso EC2 AMI (paid variety)</li> <li>Install the special EC2 extensions (ec2ext_dav.vad) VAD via the Conductor UI or iSQL</li> <li>Restore the Virtuoso+DBpedia backup from our S3 bucket</li> <li>After approx. 1 hr, you will have a complete DBpedia replica in your own <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id1169c358">data space</a> on the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10fd39a8">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id141d0c80">Web</a>.</li> </ol> <p>DBpedia replica implies:</p> <ol> <li> <a href="http://dbpedia.org/resource/SPARQL" id="link-id116dfd78">SPARQL</a> Endpoint</li> <li>Linked Data Viewer Pages (as you see in the public DBpedia instance)</li> <li>All requisite re-write rules for <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id114ab148">URI</a> de-referencing and attribution (i.e., low cost triples that links back to main DBpedia using terms from our little Attribution Ontology) </li> <li>All the inference rules for <a href="http://umbel.org/about/" id="link-id112d4860">UMBEL</a>, YAGO, <a href="http://dbpedia.org/resource/Cyc" id="link-id14612e80">OpenCYC</a>, and DBpedia-OWL data dictionaries </li> <li>All Full Text Indexes</li> <li>All Bitmap Indexes.</li> </ol> <p>Tomorrow is the official go live day (due to last minute price changes), but you can instantiate a paid <a href="https://aws-portal.amazon.com/gp/aws/user/subscription/index.html?ie=UTF8&offeringCode=6CB89F71" id="link-id115da1a8">Virtuoso AMI</a> starting now :-)</p> <p>To be continued...</p>
Master Data Management (MDM) & RDF based Linked Data
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-11-05#1482
2008-11-05T22:53:13Z
2008-11-05T18:19:02-05:00
<p>It is getting clearer by the second that <a href="http://dbpedia.org/resource/Master_Data_Management" id="link-id167265a8">Master Data Management</a> and RDF based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id17940750">Linked data</a> are two realms separated by a common desire to provide "<a href="http://dbpedia.org/resource/Entity" id="link-id1be08e68">Entity</a> Oriented Data Access" to heterogeneous data sources (within the enterprise and/or across the <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id19b8bdd8">World Wide Web</a>).</p> <p>Here is how I see Linked Data providing tangible value to MDM tools vendors and users:</p> <ol> <li> Open access to Entities across MDM instances served up by different MDM solutions acting as Linked Data publishers (i.e., expose MDM Entities as RDF resources endowed with de-referencable URIs thereby enabling <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11137b48">Hyperdata</a>-style linking) </li> <li> Use of RDF-ization middleware to hook disparate data sources (<a href="http://dbpedia.org/resource/SQL" id="link-id13154ae0">SQL</a>, XML, and other data sources) into existing MDM packages (i.e., the MDM solutions become consumers of RDF Linked Data).</li> </ol> <p> Of course <a href="http://virtuoso.openlinksw.com" id="link-id13b70e20">Virtuoso</a> was designed and developed to deliver the above from day one (circa. 1998 re. the core and 2005 re. the use of RDF for the final mile) as depicted below: </p> <div> <img src="http://virtuoso.openlinksw.com/images/vconc650.jpg" /> </div> <h3>Related</h3> <ul> <li> <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=mdm&type=text&output=html" id="link-id15f8abd8">Other MDM related posts</a> </li> </ul>
Entity Oriented Data Access
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-11-03#1475
2008-11-03T17:32:08Z
2008-11-03T22:51:48-05:00
<p>Recent <a href="http://en.wiktionary.org/wiki/perturbation" id="link-id1bdb9ec8">perturbations</a> in <a href="http://dbpedia.org/resource/Data">Data</a> Access and Data Management technology realms are clear signs of an imminent inflection. In a nutshell, the focus of data access is moving from the "Logical Level" (what you see if you've ever looked at a DBMS schema derived from an <a href="http://dbpedia.org/resource/Entity" id="link-id18735f38">Entity</a> Data Model) to the "Conceptual Level" (i.e., the Entity Model becoming concrete).</p> <p>In recent times I've stumbled across Master Data Management (MDM) which is all about entities that provide holistic views of enterprise data (or what I call: <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id18f07ec8">Context</a> Lenses). I've also stumbled across emerging tensions in the .NET realm between Linq to Entities and Linq to <a href="http://dbpedia.org/resource/SQL" id="link-id19429e88">SQL</a>, where in either case the fundamental issues comes down to the optimal paths "Conceptual Level Access" over the "Logical Logical Level" when dealing with data access in the .NET realm.</p> <p> Strangely, the emerging realm of RDF <a href="http://dbpedia.org/resource/Linked_Data" id="link-id115b3780">Linked Data</a>, MDM, and .NET's Entity Frameworks, remain strangely disconnected.</p> <p>Another oddity is the obvious, but barely acknowledged, blurring of the lines between the "traditional enterprise employee" and the "individual <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> <a href="http://dbpedia.org/resource/Netizen" id="link-id0x1ffd8640">netizen</a>". The fusion between these entities is one of the most defining characteristics of how the Web is reshaping the data landscape.</p> <p>At the current time, I tend to crystalize my data access world view under the moniker: <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1474" id="link-id1544ee60">YODA</a> ("You" Oriented Data Access), based on the following:</p> <ol> <li> Entities are the new focal point of data access, management, and integration </li> <li> "You" are the entry point (Data Source Name) into this new realm of inter connected Entities that the Web exposes</li> <li> "You" the "Person" Entity is associated with many other "Things" such as "Organizations", "Other People", "Books", "Music", "Subject Matter" etc. </li> <li> "You" the "Person" needs Identity in this new global database, which is why "You" need to Identify "Yourself" using an an HTTP based Entity <a href="http://dbpedia.org/resource/Identity_%28object-oriented_programming%29" id="link-id145d0438">ID</a> (aka. <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id1873ad08">URI</a>) </li> <li> When "You" have an ID for "Yourself" it becomes much easier for the essence of "You" to be discovered via the Web </li> <li> When "Others" have IDs for "Themselves" on the Web it becomes much easier for "You" to serendipitously discover or explicitly "Find" things on the Web. </li> </ol> <h3>Related</h3> <ul> <li> <a href="http://www.infoq.com/news/2008/11/DLINQ-Future" id="link-id17501eb0">Is LINQ to SQL truly dead?</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1420" id="link-id10fbf920">Virtuoso, Linked Data, and Linq2Rdf</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1224" id="link-id19c44b00">Enterprise 0.0, Linked Data, and the Semantic Data Web</a> (*an old post*)</li> </ul>
Virtuoso Installation Screencasts
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-11-02#1469
2008-11-02T01:44:27Z
2008-11-02T16:20:21-05:00
<p>As promised in an earlier post titled: <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1461" id="link-id1c412298">Virtuoso, PHP 3.5 Runtime Hosting, phpBB3, and Linked Data</a>, here are direct links to the "silent movies" mentioned in the past:</p> <ul> <li> <a href="http://my-movies.s3.amazonaws.com/Virtuoso_PHPBB3_Vista_Linked_Data_Demo.mov" id="link-id13ea5790">Installing Virtuoso on Vista with PHP Hosting</a> </li> <li> <a href="http://my-movies.s3.amazonaws.com/Virtuoso_PHPBB3_MacOSX_Linked_Data_Demo.mov" id="link-id135299d8">Installing Virtuoso on Mac OS X (Leopard) with PHP Hosting</a> </li> <li> <a href="http://my-movies.s3.amazonaws.com/Virtuoso_PHPBB3_MacOSX_Linked_Data_Demo.mov" id="link-id1275fd88">EC2 Installation Part 1</a> (*AMIs take about 5 minutes to get assembled*)</li> <li> <a href="http://my-movies.s3.amazonaws.com/Virtuoso_PHPBB3_MacOSX_Linked_Data_Demo.mov" id="link-id10f78ae8">EC2 Installation Part 2</a> (*post AMI creation part*)</li> </ul> <p>Virtuoso is an extremely compact product that is very easy to install. The ease of installation carries over to the PHP runtime when bound to Virtuoso.</p>
Dog-fooding: Linked Data and OpenLink Product Portfolio
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-10-24#1463
2008-10-24T22:05:42Z
2008-10-24T18:13:50-04:00
<p>Thanks to RDF and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1cf5c700">Linked Data</a>, it's becoming a lot easier for us to explain and reveal the depth of the OpenLink technology portfolio.</p> <p>Here is a look at our offerings by product family:</p> <ul> <li> <a href="http://data.openlinksw.com/about/html/http://data.openlinksw.com/oplweb/product_family/uda" id="link-id1161c6d0">Universal Data Access Drivers</a> </li> <li> <a href="http://data.openlinksw.com/about/html/http://data.openlinksw.com/oplweb/product_family/virtuoso" id="link-id17945fc8">Virtuoso</a> </li> <li> <a href="http://data.openlinksw.com/about/html/http://data.openlinksw.com/oplweb/product_family/dca" id="link-id10f899c0">Distributed Collaborative Applications</a> (DCA)</li> <li> <a href="http://data.openlinksw.com/oplweb/product_family/development" id="link-id1c55ac70">Developer Kits & Frameworks</a> </li> <li> <a href="http://data.openlinksw.com/oplweb/product_family/utilities" id="link-id1a735e50">Benchamark & Diagnostic Utilities</a> </li> </ul> <p>As you explore the <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id10fc4af8">Linked Data graph</a> exposed via our product portfolio, I expect you to experience, or at least spot, the virtuous potential of high SDQ (<a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1442" id="link-id13847698">Serendipitous Discovery Quotient</a>) courtesy of Linked Data, which is <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> 3.0's answer to <a href="http://dbpedia.org/resource/Search_engine_optimization" id="link-id115ad4f0">SEO</a>. For instance, how <a href="http://linkeddata.uriburner.com/about/html/http://data.openlinksw.com/oplweb/dbms_family/Oracle" id="link-id1cda63c8">Database</a>, <a href="http://data.openlinksw.com/oplweb/opsys_family/Windows" id="link-id1a803f18">Operating System</a>, and <a href="http://data.openlinksw.com/oplweb/processor/universal_1" id="link-id19cbaba0">Processor</a> family paths in the product portfolio graph (data network) unveil a lot more about <a href="http://linkeddata.uriburner.com/about/html/http://www.openlinksw.com/dataspace/organization/openlink%23this" id="link-ide9b7070">OpenLink Software</a> than meets the proverbial "eye" :-)</p>
Virtuoso, PHP Runtime Hosting: phpBB, Wordpress, Drupal, MediaWiki, and Linked Data
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-10-24#1461
2008-10-24T19:55:00Z
2010-03-25T21:19:59-04:00
<p> Runtime hosting is functionality realm of <a href="http://virtuoso.openlinksw.com" id="link-id1189fee8">Virtuoso</a> 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 <a href="http://dbpedia.org/resource/PhpBB" id="link-id118af3a8">phpBB3</a> as verification of the Virtuoso hosted <a href="http://dbpedia.org/resource/PHP" id="link-id12736b88">PHP</a> 3.5 runtime.</p> <h3> What are the benefits of PHP Runtime Hosting?</h3> <p> Like <a href="http://dbpedia.org/resource/Apache" id="link-id111ca408">Apache</a>, Virtuoso is a bona-fide <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> <a href="http://dbpedia.org/resource/Application_server" id="link-id110d2aa8">Application Server</a> for PHP based applications. Unlike Apache, Virtuoso is also the following:</p> <ul> <li> a Hybrid Native DBMS Engine (Relational, RDF-Graph, and Document models) that is accessible via industry standard interfaces (solely)</li> <li> a Virtual DBMS or Master <a href="http://dbpedia.org/resource/Data">Data</a> Manager (MDM) that virtualizes heterogeneous data sources (<a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id0x22b6f0c8">ODBC</a>, <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id0x23af98c8">JDBC</a>, Web Services, Hypermedia Resources, Non Hypermedia Resources)</li> <li> an <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=rdf%20middleware&type=text&output=html" id="link-id1116aad8">RDF Middleware</a> solution for RDF-zation of non RDF resources across the Web and enterprise Intranets and/or Extranets (in the form of Cartridges for data exposed via REST or SOA oriented SOAP interfaces)</li> <li> an RDF <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10fbe088">Linked Data</a> Server (meaning it can deploy RDF Linked Data based on its native and/or virtualized data)</li> </ul> <p> As result of the above, when you deploy a PHP application using Virtuoso, you inherit the following benefits:</p> <ol> <li> Use of PHP-<a href="http://www.iodbc.org" id="link-id1159e070">iODBC</a> for in-process communication with Virtuoso</li> <li> Easy generation of RDF Linked Data Views atop the <a href="http://dbpedia.org/resource/SQL" id="link-id0x24f44c98">SQL</a> schemas of PHP applications</li> <li> Easy deployment of RDF Linked Data from virtualized data sources</li> <li> Less <a href="http://dbpedia.org/resource/LAMP_stack" id="link-id1179dff0">LAMP</a> monoculture (*there is no such thing as virtuous monoculture*) when dealing with PHP based Web applications.</li> </ol> <p> 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: <a href="http://blogs.usnet.private:8893/weblog/kidehen@openlinksw.com/127/dbpedia.org/resource/PhpBB" id="link-id120cc6368">phpBB3</a>, <a href="http://dbpedia.org/resource/Drupal" id="link-id111ff1c0">Drupal</a>, <a href="http://dbpedia.org/resource/WordPress" id="link-id111e26f8">WordPress</a>, and <a href="http://dbpedia.org/resource/MediaWiki" id="link-id10ea0258">MediaWiki</a>.</p> <p> In addition, to the RDF Linked Data deployment, we've also taken the traditional LAMP installation tedium out of the typical PHP application deployment process. For instance, you don'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're set. If the application of choice isn'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's root directory.</p> <h3> Installation Guide</h3> <ol> <li> Download the Virtuoso installer for Windows (<a href="http://download.openlinksw.com/downwiz/login.vsp?pfam=2&pform=26&pcat=47&prod=virtuoso-uim-unisvr-ent&os=i686-generic-win-32&os2=i686-generic-win-32&xpfam=virtuoso&xpform=personal&xpcat=unisvr&xos=i686-generic-win-32&release-dbms=6.1-virt61" id="link-id11d084578">32 Bit msi file</a> or <a href="http://download.openlinksw.com/downwiz/login.vsp?pfam=2&pform=26&pcat=47&prod=virtuoso-uim-unisvr-ent&os=x86_64-generic-win-64&os2=x86_64-generic-win-64&xpfam=virtuoso&xpform=personal&xpcat=unisvr&xos=x86_64-generic-win-64&release-dbms=6.1-virt61" id="link-id11aea67a8">64 Bit msi file</a>), Mac OS X (<a href="http://download.openlinksw.com/downwiz/login.vsp?pfam=2&pform=26&pcat=47&prod=virtuoso-uim-unisvr-ent&os=universal-apple-macosx10.6-32&os2=universal-apple-macosx10.6-32&xpfam=virtuoso&xpform=personal&xpcat=unisvr&xos=universal-apple-macosx10.6-32&release-dbms=6.1-virt61" id="link-id11a93bef8">Universal Binary dmg file</a>), or instantiate the <a href="http://www.openlinksw.com/oat/wiki/main/Main/ODSInstallationEC2" id="link-id111fe248">Virtuoso EC2 AMI</a> (*search for pattern: "Virtuoso when using the Firefox extension for EC2 as the AMI ID is currently: ami-7c31d515 and name: virtuoso-test/virtuoso-cloud-beta-9-i386.manifest.xml, for latest cut*)</li> <li> Run the installer (or download the movies using the links in the related section below)</li> <li> Go to the Virtuoso Conductor (*which will show up at the end of the installation process* or go to http://localhost:8890/conductor)</li> <li> Go to the "Admin" tab within the (X)HTML based UI and select the "Packages" sub-menu item (a Tab)</li> <li> Pick phpBB3 (or any other pre-packaged PHP app) and then click on "Install/Upgrase"</li> <li> The watch one of my silent movies or read the initial startup guides for Virtuoso hosted phpBB3, Drupal, Wordpress, MediaWiki.</li> </ol> <h3> Related</h3> <p> At the current time, I've only provided links to ZIP files containing the Virtuoso installation "silent movies". This approach is a short-term solution to some of my current movie publishing challenges re. YouTube and Vimeo -- where the compressed output hasn't been of acceptable visual quality. Once resolved, I will publish much more "Multimedia Web" friendly movies :-)</p> <ul> <li> <a href="http://my-movies.s3.amazonaws.com/Virtuoso_PHPBB3_Vista_Linked_Data_Demo.mov.zip" id="link-id11642450">Windows Vista (x64) Installation Movie</a> </li> <li> <a href="http://my-movies.s3.amazonaws.com/Virtuoso_PHPBB3_MacOSX_Linked_Data_Demo.mov.zip" id="link-id11210498">Mac OS X (x64 & Universal binary) Installation Movie</a> </li> <li> <a href="http://my-movies.s3.amazonaws.com/Virtuoso_PHPBB3_EC2_AMI_Linked_Data_Demo.zip" id="link-id111ff268">Virtuoso EC2 Cloud Edition Installation Movie</a> </li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtuosoPHP" id="link-id12038b6c8">Guide for PHP based Application Deployment using Virtuoso</a> </li> </ul>
The Virtuous Web of Linked Data -- Business Perspective (Updated)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-10-24#1462
2008-10-24T15:56:55Z
2008-10-24T14:49:18-04:00
<a href="http://www.openlinksw.com/weblog/oerling" id="link-id115d8420">Orri Erling</a> (Program Manager: OpenLink <a href="http://virtuoso.openlinksw.com" id="link-id111293d8">Virtuoso</a>) has dropped a well explained reiteration of the essence of the "<a href="http://dbpedia.org/resource/Linked_Data" id="link-id115d85a0">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id1161b138">Web</a>" or "<a href="http://dbpedia.org/resource/Data">Data</a> Web" with an emphasis on the business value. His post is titled: <a href="http://www.openlinksw.com/weblog/oerling/?id=1459" id="link-id1109d340">State of the Semantic Web (Part 1) - Sociology, Business, and Messaging</a>. <p>Typically, Orri's post are targeted at the hard core RDF and <a href="http://dbpedia.org/resource/SQL" id="link-id115e2818">SQL</a> DBMS audiences, but in this particular post, he shoots straight at the business community revealing "Opportunity Cost" containment as the invisible driver behind the business aspects of any market inflection.</p> <p>Remember, the Web isn't ubiquitous because its users mastered the mechanics and virtues of HTML and/or HTTP. Web ubiquity is a function of the opportunity cost of not being on the Web, courtesy of the network effects of hyperlinked documents -- i.e., the instant gratification of traversing documents on the Web via a single click action. In similar fashion, the Linked Data Web's ubiquity will simply come down to the opportunity cost of not being "inside the Web", courtesy of the network effects of hyperlinked entities (documents, people, music, books, and other "Things"). </p> <p>Here are some excerpts from Orri's post:</p> <blockquote> <cite>Every time there is a major shift in technology, this shift needs to be motivated by addressing a new class of problem. This means doing something that could not be done before. The last time this happened was when the relational database became the dominant IT technology. At that time, the questions involved putting the enterprise in the database and building a cluster of line of business applications around the database. The argument for the <a href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id113779e8">RDBMS</a> was that you did not have to constrain the set of queries that might later be made, when designing the database. In other words, it was making things more ad hoc. This was opposed then on grounds of being less efficient than the hierarchical and network databases which the relational eventually replaced.</cite> <cite>Today, the point of the Data Web is that you do not have to constrain what your data can join or integrate with, when you design your database. The counter-argument is that this is slow and geeky and not scalable. See the similarity?</cite> <cite>A difference is that we are not specifically aiming at replacing the RDBMS. In fact, if you know exactly what you will query and have a well defined workload, a relational representation optimized for the workload will give you about 10x the performance of the equivalent RDF warehouse. OLTP remains a relational-only domain. </cite> <cite>However, when we are talking about doing queries and analytics against the Web, or even against more than a handful of relational systems, the things which make RDBMS good become problematic.</cite> </blockquote> <p>If we think about Web 1.0 as a period where the distinguishing noun was: "Author", and Web 2.0 the noun: "Journalist", we should be able to see that what comes next is the noun: "Analyst". This new generation analyst would be equipped with de-referencable Web Identity courtesy of their Person <a href="http://dbpedia.org/resource/Entity" id="link-id111ab7d0">Entity</a> <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id10f23220">URI</a>. The analyst's URI would also be the critical component of Web based low cost attribution ecosystem; one that ultimately turns the URI into the analyst's brand emblem / imprint.</p> <h3>Related</h3> <ul> <a href="http://blog.whatfettle.com/about/" id="link-id1120fb88">Paul Downey</a> - <a href="http://blog.whatfettle.com/2008/10/24/on-the-vanity-of-demanding-attribution/" id="link-id111590b8">Vanity of Demanding Attribution</a> </ul>
The Trouble with Labels (Contd.): Data Integration & SOA
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-10-12#1457
2008-10-12T18:53:44Z
2008-10-12T18:54:22-04:00
<p>I just stumbled across an post from <a href="http://www.itbusinessedge.com" id="link-id10f82f50">ITBusines Edge</a> titled: <a href="http://www.itbusinessedge.com/item/?ci=48119" id="link-id10f37b90">How Semantic Technology Can Help Companies with Integration</a>. While reading the post I encountered the term: <a href="http://dbpedia.org/resource/Master_Data_Management" id="link-id11055eb8">Master Data Manager (MDM)</a>, and wondered to myself, "what's that?" only to realize it's the very same thing I described as a <a href="http://dbpedia.org/resource/Federated_database_system" id="link-id13985af0">Data Virtualization</a> or <a href="http://dbpedia.org/resource/Virtual_Database" id="link-id1167c720">Virtual Database technology</a> (circa. 1998).</p> <p>Now, if re-labeling can confuse <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id14aaaaf0">me</a> when applied to a realm I've been intimately involved with for eons (<a href="http://dbpedia.org/resource/Internet" id="link-id112042f0">internet</a> time). I don't want to imagine what it does for others who aren't that intimately involved with the important data access and data integration realms. </p> <p>On the more refreshing side, the article does shed some light on the potency of RDF and OWL when applied to the construction of conceptual views of heterogeneous data sources.</p> <blockquote> <cite>"How do you know that data coming from one place calculates net revenue the same way that data coming from another place does? Youâve got people using the same term for different things and different terms for the same things. How do you reconcile all of that? Thatâs really what semantic integration is about." </cite> </blockquote> <p>BTW - I discovered this article via another titled: <a href="http://www.itbusinessedge.com/blogs/mia/?p=485" id="link-id11134098">Understanding Integration And How It Can Help with SOA</a>, that covers SOA and Integration matters. Again, in this piece I feel the gradual realization of the virtues that RDF, OWL, and RDF <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11048740">Linked Data</a> bring to bear in the vital realm of data integration across heterogeneous data silos.</p> <h3>Conclusion</h3> <p>A number of events, at the micro and macro economic levels, are forcing attention back to the issue of productive use of existing IT resources. The trouble with the aforementioned quest is that it ultimately unveils the global IT affliction known as: heterogeneous data silos, and the challenges of pain alleviation, that have been ignored forever or approached inadequately as clearly shown by the rapid build up of SOA horror stories in the data integration realm.</p> <p>Data Integration via conceptualization of heterogenous data sources, that result in concrete conceptual layer data access and management, remains the greatest and most potent application of technologies associated with the "<a href="http://dbpedia.org/resource/Semantic_Web" id="link-id10fa5050">Semantic Web</a>" and/or "Linked Data" monikers.</p> <h3>Related</h3> <ul> <li> <a href="http://www.infoworld.com/article/03/05/23/21FEinnovidehen_1.html" id="link-id118c9c00">InforWorld 2003 Innovator article</a> </li> <li> <a href="http://weblog.infoworld.com/udell/2006/04/28.html" id="link-id11057298">2006 Podcast Interview with Jon Udell</a> </li> <li> <a href="http://dbpedia.org/resource/Enterprise_Information_Integration" id="link-id13f89030">Enterprise Information Integration</a> </li> <li>One of <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=data%20integration&type=text&output=html" id="link-id11048b98">several posts</a> about our <a href="http://virtuoso.openlinksw.com" id="link-id10fef0e0">Virtuoso</a> <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id10e5a068">Universal Server</a> and <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1406" id="link-id111d5aa8">Conceptual Model based data integration</a> </li> <li> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSHistory" id="link-id11020108">History of Virtuoso</a> </li> <li> <a href="http://www.mkbergman.com/me/" id="link-id1101e7b0">Mike Bergman</a>'s post titled: <a href="http://www.mkbergman.com/?p=459" id="link-id10fdb640">WOA: A New Enterprise Partner for Linked Data</a> </li> </ul>
Dynamic Linked Data Constellation
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-10-09#1454
2008-10-09T21:23:25Z
2008-10-17T10:45:53.000004-04:00
<p>Now that the virtues of dynamic generation of RDF based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id14c429a0">Linked Data</a> are becoming clearer, I guess it's time to unveil the <a href="http://virtuoso.openlinksw.com" id="link-id13d7c7e0">Virtuoso</a> <a href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id115d0c20">Sponger</a> driven Dynamic Linked Data constellation diagram.</p> <p>Our diagram depicts the myriad of <a href="http://dbpedia.org/resource/Data">data</a> sources from which RDF Linked Data is generated "on the fly" via our data source specific RDF-zation cartridges/drivers. It also unveils how the sponger leverages the Linked Data constellations of <a href="http://umbel.org/" id="link-id14bd5700">UMBEL</a>, <a href="http://dbpedia.org/resource/DBpedia" id="link-id110f5a48">DBpedia</a>, <a href="http://www.bio2rdf.org/" id="link-id11494bc0">Bio2Rdf</a>, and others for lookups.</p> <map name="GraffleExport"> <area shape="circle" coords="723,292,36" href="http://linkeddata.uriburner.com/about/html/http://xbel.sourceforge.net/bookmarks/xbel.xbel" /> <area shape="circle" coords="423,309,36" href="http://linkeddata.uriburner.com/about/html/http://www.w3.org/2001/sw/grddl-wg/doc29/hotel-data.html" /> <area shape="circle" coords="592,285,36" href="http://linkeddata.uriburner.com/about/html/http://farm4.static.flickr.com/3067/2590298570_304a594899_t.jpg" /> <area shape="circle" coords="685,220,36" href="http://linkeddata.uriburner.com/about/html/http://microformats.org/feed/" /> <area shape="circle" coords="817,182,36" href="http://linkeddata.uriburner.com/about/html/http://en.wikipedia.org/wiki/London" /> <area shape="circle" coords="745,447,36" href="http://linkeddata.uriburner.com/about/http://www.sec.gov/Archives/edgar/data/51143/000110465908059468/ibm-20080429.xml" /> <area shape="circle" coords="597,387,36" href="http://linkeddata.uriburner.com/about/html/http://www.twine.com/twine/1p2dqhdx-1jg/nova-spivack-my-public-twine" /> <area shape="circle" coords="659,459,36" href="http://linkeddata.uriburner.com/about/html/http://www.theyworkforyou.com/mp/diane_abbott/hackney_north_and_stoke_newington" /> <area shape="circle" coords="585,494,36" href="http://linkeddata.uriburner.com/about/html/http://www.discogs.com/release/634302" /> <area shape="circle" coords="817,503,36" href="http://linkeddata.uriburner.com/about/html/http://getsatisfaction.com/mozilla/topics/ubiquity_mostly_fails_on_mac_ppc" /> <area shape="circle" coords="753,563,36" href="http://linkeddata.uriburner.com/about/html/http://www.sec.gov/Archives/edgar/data/789019/000119312507259490/msft-20070930.xml" /> <area shape="circle" coords="676,559,36" href="http://linkeddata.uriburner.com/about/html/http://twitter.com/statuses/user_timeline/633273.rss" /> <area shape="circle" coords="845,592,36" href="http://linkeddata.uriburner.com/about/html/http://ns.hr-xml.org/2_5/HR-XML-2_5/SEP/ResumeExample.xml" /> <area shape="circle" coords="845,431,36" href="http://linkeddata.uriburner.com/about/html/http://www.w3.org/2003/12/rdf-in-xhtml-xslts/complete-example.html" /> <area shape="circle" coords="701,375,36" href="http://linkeddata.uriburner.com/about/html/http://www.molly.com/people.php" /> <area shape="circle" coords="829,342,36" href="http://linkeddata.uriburner.com/about/html/http://upload.wikimedia.org/wikipedia/commons/b/b0/Hydroxide_lone_pairs-2D.svg" /> <area shape="circle" coords="341,259,36" href="http://linkeddata.uriburner.com/about/html/http://friendfeed.com/search?q=linked+data" /> <area shape="circle" coords="294,170,36" href="http://linkeddata.uriburner.com/about/html/http://local.yahooapis.com/MapsService/V1/trafficData?appid=Jz0wAU7V34Ff7gCzblxD.86qjGTEn._H3KA3PEajNE3xBMIbQtEZqIqHRh0G&street=701+First+Street&city=Sunnyvale&state=CA" /> <area shape="circle" coords="829,262,36" href="http://linkeddata.uriburner.com/about/html/http://blog.disqus.net/2008/08/25/reblog-comments-can-be-blog-posts/" /> <area shape="circle" coords="407,526,36" href="http://linkeddata.uriburner.com/about/html/http://finance.yahoo.com/q?s=AAPL" /> <area shape="circle" coords="503,292,36" href="http://linkeddata.uriburner.com/about/html/http://isbndb.com/d/person/berners_lee_tim.html" /> <area shape="circle" coords="310,501,36" href="http://linkeddata.uriburner.com/about/html/http://musicbrainz.org/release/37e955d4-a53c-45aa-a812-1b23b88dbc13.html" /> <area shape="circle" coords="413,221,36" href="http://linkeddata.uriburner.com/about/html/http://www.freebase.com/view/en/abraham_lincoln" /> <area shape="circle" coords="553,213,36" href="http://linkeddata.uriburner.com/about/html/http://slideshow.rubyforge.org/microformats.html" /> <area shape="circle" coords="445,93,36" href="http://linkeddata.uriburner.com/about/html/http://farm1.static.flickr.com/212/496684670_7122c831ed.jpg" /> <area shape="circle" coords="680,663,36" href="http://linkeddata.uriburner.com/about/html/http://cgi.ebay.com/Eclipse-by-Stephenie-Meyer-2007_W0QQitemZ250283828939QQcmdZViewItem?hash=item250283828939&_trkparms=240%3A1318&_trksid=p4295" /> <area shape="circle" coords="553,663,36" href="http://linkeddata.uriburner.com/about/html/http://digg.com/general_sciences/at_last-stem_cells_without_side_effects_" /> <area shape="circle" coords="248,651,36" href="http://linkeddata.uriburner.com/about/html/http://delicious.com/popular/blog" /> <area shape="circle" coords="158,554,36" href="http://linkeddata.uriburner.com/about/html/http://www.crunchbase.com/person/sergey-brin" /> <area shape="circle" coords="214,477,36" href="http://linkeddata.uriburner.com/about/html/http://virtuoso.openlinksw.com/presentations/Creating_Deploying_Exploiting_Linked_Data2/Creating_Deploying_Exploiting_Linked_Data2_TimBL_v3.html" /> <area shape="circle" coords="209,339,36" href="http://linkeddata.uriburner.com/about/html/https://bugzilla.mozilla.org/show_bug.cgi?id=251714" /> <area shape="circle" coords="264,405,36" href="http://linkeddata.uriburner.com/about/html/http://ma.gnolia.com/rss/full/tags/microformats" /> <area shape="circle" coords="417,663,36" href="http://linkeddata.uriburner.com/about/html/http://www.lawyer-directory.net/lawyer/Grand-Rapids-Bar-Association-Grand-Rapids-law434032.htm" /> <area shape="circle" coords="497,733,36" href="http://linkeddata.uriburner.com/about/html/http://www.concertbuzz.net/genres/classic-rock/jethro-tull.html" /> <area shape="circle" coords="373,437,36" href="http://linkeddata.uriburner.com/about/html/http://openmediaweb.org/index.php/2008/01/13/publishing-my-workout-music-in-haudio/" /> <area shape="circle" coords="373,121,36" href="http://linkeddata.uriburner.com/about/html/https://apml.engagd.com/apml/danielabarbosa.myopenid.com.apml" /> <area shape="circle" coords="245,559,36" href="http://linkeddata.uriburner.com/about/html/http://www.w3.org/2001/sw/grddl-wg/doc29/hotel-data.html" /> <area shape="circle" coords="170,650,36" href="http://linkeddata.uriburner.com/about/html/http://www.amazon.co.uk/Owl-Representing-Information-Ontology-Language/dp/1412034485/ref=sr_1_1/203-3289794-0348766?ie=UTF8&s=books&qid=1177155160&sr=1-1" /> <area shape="circle" coords="327,703,36" href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSponger" /> <area shape="circle" coords="481,170,36" href="http://linkeddata.uriburner.com/about/html/http://www.w3.org/2004/08/TalkFiles/iCal/TalksAll.ics" /> <area shape="circle" coords="487,615,36" href="http://linkeddata.uriburner.com/about/html/http://openlibrary.org/b/OL7983950M" /> <area shape="circle" coords="158,417,36" href="http://linkeddata.uriburner.com/about/html/http://xml.weather.yahoo.com/forecastrss?p=USCA1116&u=f" /> <area shape="circle" coords="608,729,36" href="http://linkeddata.uriburner.com/about/html/http://www.youtube.com" /> <area shape="circle" coords="726,148,36" href="http://linkeddata.uriburner.com/about/html/http://www.lespetitescases.net/semantique-et-xhtml" /> <area shape="circle" coords="773,663,36" href="http://linkeddata.uriburner.com/about/html/http://upcoming.org/event/130719/" /> <area shape="circle" coords="553,118,36" href="http://linkeddata.uriburner.com/about/html/http://tech.yahoo.com/pr/apple-ipod-video-30gb-black-mp3-player/1992981873" /> <area shape="circle" coords="608,609,36" href="http://linkeddata.uriburner.com/about/html/http://socialgraph.apis.google.com/otherme?pretty=1&q=www.openlinksw.com/blog/~kidehen/" /> <area shape="circle" coords="487,516,36" href="http://linkeddata.uriburner.com/about/html/oai:dcmi.ischool.washington.edu:article/8" /> <area shape="circle" coords="635,158,36" href="http://linkeddata.uriburner.com/about/html/http://news.bbc.co.uk/rss/feeds.opml" /> <area shape="circle" coords="256,261,36" href="http://linkeddata.uriburner.com/about/html/http://www.google.com/base/feeds/snippets?bq=%20%5bemployer:%20Hewlett-Packard%5d%20%20%5bjob%20type:full-time%5d" /> <area shape="circle" coords="120,248,36" href="http://linkeddata.uriburner.com/about/html/http://www.apple.com/" /> <area shape="circle" coords="120,339,36" href="http://linkeddata.uriburner.com/about/html/http://www.fileinfo.net/extension/atom" /> <area shape="circle" coords="337,343,36" href="http://linkeddata.uriburner.com/about/html/urn:lsid:ubio.org:namebank:12292" /> <area shape="circle" coords="340,598,36" href="http://linkeddata.uriburner.com/about/html/http://www.maine.gov/portal/government/calendar.shtml" /> <area shape="circle" coords="337,343,36" href="http://linkeddata.uriburner.com/about/html/urn:lsid:ubio.org:namebank:12292" /> <area shape="circle" coords="585,494,36" href="http://linkeddata.uriburner.com/about/html/http://www.discogs.com/release/634302" /> <area shape="circle" coords="491,409,36" href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VirtSponger" /> <area shape="poly" coords="992,603,1015,557,1061,557,1100,592,1076,638,1030,638,992,603" href="http://bio2rdf.org/wiki/attach/Main/bio2rdfmap_blanc.png" /> <area shape="poly" coords="995,454,1018,408,1064,408,1103,443,1079,489,1033,489,995,454" href="http://www4.wiwiss.fu-berlin.de/bizer/pub/lod-datasets_2008-09-18.html" /> <area shape="poly" coords="919,117,943,71,989,71,1027,106,1004,152,958,152,919,117" href="http://umbel.org/images/081005_lod_constellation.png" /> </map> <img border="0" src="http://virtuoso.openlinksw.com/images/sponger-cloud.png" usemap="#GraffleExport" />
What is Linked Data oriented RDF-ization?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-10-06#1453
2008-10-06T20:14:26Z
2008-10-07T17:35:24-04:00
<p>RDF-ization is a term used by the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id14b4ebd0">Semantic Web</a> community to describe the process of generating RDF from non RDF <a href="http://dbpedia.org/resource/Data">Data</a> Sources such as (X)HTML, Weblogs, Shared Bookmark Collections, Photo Galleries, Calendars, Contact Managers, Feed Subscriptions, Wikis, and other <a href="http://dbpedia.org/resource/Information" id="link-id13f2a2e0">information</a> resource collections. </p> <p>If the RDF generated, results in an <a href="http://dbpedia.org/resource/Entity" id="link-id11281278">entity</a>-to-entity level network (graph) in which each entity is endowed with a de-referencable HTTP based ID (a <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id148200f0">URI</a>), we end up with an enhancement to the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> that adds <a href="http://dbpedia.org/resource/Linked_Data" id="link-id112a5980">Hyperdata</a> linking across extracted entities, to the existing Hypertext based Web of linked documents (pages, images, and other information resource types). Thus, I can use the same <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id10ebc630">URL</a> linking mechanism to reference a broader range of "Things" i.e., documents, things that documents are about, or things loosely associated with documents.</p> <p>The <a href="http://virtuoso.openlinksw.com" id="link-id144304a8">Virtuoso</a> <a href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id14a96400">Sponger</a> is an example of an <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=rdf%20middleware&type=text&output=html" id="link-id14d36938">RDF Middleware</a> solution from <a href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id117e5c50">OpenLink Software</a>. It's an in-built component of the Virtuoso <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id14b4d0e0">Universal Server</a>, and deployable in many forms e.g., Software as Service (SaaS) or traditional software installation. It delivers RDF-ization services via a collection of Web information resource specific Cartridges/Providers/Drivers covering Wikipedia, Freebase, CrunchBase, WikiCompany, OpenLibrary, Digg, eBay, Amazon, RSS/Atom/OPML feed sources, XBRL, and many more.</p> <p>RDF-ization alone doesn't ensure valuable RDF based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id14a75b48">Linked Data</a> on the Web. The process of producing RDF Linked Data is ultimately about the art of effectively describing resources with an eye for <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id1442fea0">context</a>. </p> <h3>RDF-ization Processing Steps</h3> <ol> <li> Entity Extraction</li> <li> Vocabulary/Schema/Ontology (Data Dictionary) mapping</li> <li> HTTP based Proxy URI generation</li> <li>Linked Data Cloud Lookups (e.g., perform <a href="http://umbel.org/about/" id="link-id14432f00">UMBEL</a> lookup to add "isAbout" fidelity to graph and then lookup <a href="http://dbpedia.org/resource/DBpedia" id="link-id14485f40">DBpedia</a> and other <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id115ea410">LOD</a> instance data enclaves for Identical individuals and connect via "owl:sameAs")</li> <li> RDF <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id14ae31c0">Linked Data Graph</a> projection that uses the description of the container information resource to expose the URIs of the distilled entities.</li> </ol> <p>The animation that follows illustrates the process (5,000 feet view), from grabbing resources via HTTP GET, to injecting RDF Linked Data back into the Web cloud:</p> <div> <object> <embed src="http://virtuoso.openlinksw.com/screencasts/virtuoso-rdf-middleware.swf" type="application/x-shockwave-flash" width="800" height="600"></embed> </object> </div> <p>Note: the Shredder is a Generic Cartridge, so you would have one of these per data source type (information resource type).</p>
Where Are All the RDF-based Semantic Web Applications?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-10-01#1447
2008-10-01T23:09:00Z
2008-10-02T15:27:41-04:00
<p> In response to the "<a href="http://dbpedia.org/resource/Semantic_Web" id="link-id15971040">Semantic Web</a> Technology" application classification scheme espoused by <a href="http://www.readwriteweb.com" id="link-id16391540">ReadWriteWeb</a> (RWW), emphasized in the post titled: <a href="http://www.readwriteweb.com/archives/rdf_semantic_web_apps.php" id="link-id1157eaa0">Where are all the RDF-based Semantic Web Apps?</a>, here is my attempt to clarify and reintroduce what <a href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id15a43758">OpenLink Software</a> offers (today) in relation to Semantic Web technology. </p> <p> From the RWW Top-Down category, which I interpret as: technologies that produce RDF from non RDF <a href="http://dbpedia.org/resource/Data">data</a> sources. Our product portfolio is comprised of the following; <a href="http://virtuoso.openlinksw.com" id="link-id14f05818">Virtuoso Universal Server</a>, <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-id162c8630">OpenLink Data Spaces</a>, <a href="http://oat.openlinksw.com" id="link-id134e1a00">OpenLink Ajax Toolkit</a>, and <a href="http://ode.openlinksw.com" id="link-id160b3bf8">OpenLink Data Explorer</a> (which includes ubiquity commands).</p> <h3>Virtuoso Universal Server functionality summary:</h3> <ol> <li>Generation of RDF <a href="http://dbpedia.org/resource/Linked_Data" id="link-id161d5f50">Linked Data</a> Views of <a href="http://dbpedia.org/resource/SQL" id="link-id161d5978">SQL</a>, XML, and <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Services in general </li> <li>Deployment of RDF Linked Data </li> <li>"On the Fly" generation of RDF Linked Data from Document Web <a href="http://www.w3.org/TR/webarch/" id="link-id178bbc08">information resources</a> (i.e. distillation of entities from their containers e.g. Web pages) via Cartridges / Drivers</li> <li> <a href="http://dbpedia.org/resource/SPARQL" id="link-id162c2118">SPARQL</a> query language support </li> <li>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's multi-model dbms engine) </li> <li>Inference Engine (currently in use re. <a href="http://dbpedia.org/resource/DBpedia" id="link-id14f563c0">DBpedia</a> via Yago and <a href="http://umbel.org/about/" id="link-id113273b8">UMBEL</a>)</li> <li>Host and exposes data from <a href="http://dbpedia.org/resource/Drupal" id="link-id123d3bd8">Drupal</a>, <a href="http://dbpedia.org/resource/WordPress" id="link-id141adf40">Wordpress</a>, <a href="http://dbpedia.org/resource/MediaWiki" id="link-id1604b450">MediaWiki</a>, <a href="http://dbpedia.org/resource/PhpBB" id="link-id141013a8">phpBB3</a> as RDF Linked Data via in-built support for <a href="http://dbpedia.org/resource/PHP" id="link-id14661e58">PHP</a> runtime</li> <li> <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/ODSInstallationEC2" id="link-id146c84d0">Available as an EC2 AMI</a> </li> <li>etc..</li> </ol> <h3>OpenLink Data Spaces functionality summary:</h3> <ol> <li>Simple mechanism for Linked Data <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id15473770">Web</a> enabling yourself by giving you an <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/GetAPersonalURIIn5MinutesOrLess" id="link-id15f6d278">HTTP based User ID</a> (a de-referencable <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id15aaeb68">URI</a>) that is linked to a <a href="http://myopenlink.net/dataspace/person/kidehen" id="link-id15a7a840">FOAF based Profile page</a> and OpenID</li> <li>Binds all your data sources (blogs, wikis, bookmarks, photos, calendar items etc. ) to your URI so can "Find" things by only remembering your URI</li> <li>Makes your profile page and personal URI the focal point of Linked Data Web presence</li> <li>Delivers Data Portability (using data access by value or <a href="http://dbpedia.org/resource/Reference_(computer_science)" id="link-id16212838">data access by reference</a>) across data silos (e.g. Web 2.0 style social networks)</li> <li>Allows you make annotations about anything in your own <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id14668010">Data Space</a>(s) on the Web without exposure to RDF markup</li> <li>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</li> <li>Automatically generates <a href="http://dbpedia.org/resource/RDFa" id="link-id14691440">RDFa</a> in its (X)HTML pages</li> <li> <a href="http://dbpedia.org/resource/Blog" id="link-id14fae7b8">Blog</a>, 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</li> <li>Available as an EC2 AMI</li> <li>etc..</li> </ol> <h3>OpenLink Ajax Toolkit functionality summary:</h3> <ol> <li>Provides binding to SQL, RDF, XML, and Web Services via Ajax Database Connectivity Layer (you only need an <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id11550548">ODBC</a>, <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id13ae5f68">JDBC</a>, OLE-DB, <a href="http://dbpedia.org/resource/ADO.NET" id="link-id162803e8">ADO</a>.NET, XMLA Driver, or Web Service on the backend for dynamic data access from Javascript)</li> <li>All controls are Ajax Database Connectivity bound (widgets get their data from Ajax Database Connectivity data sources)</li> <li>Bundled with Virtuoso and <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-id161dfe90">ODS</a> installations.</li> <li>etc.</li> </ol> <h3>OpenLink Data Explorer functionality summary</h3> <ol> <li>Distills entities associated with information resource style containers (e.g. Web Pages or files) as RDF Linked Data</li> <li>Exposes the RDF based <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id12a42ed8">Linked Data graph</a> associated with information resources (see the Linked Data behind Web pages)</li> <li>Ubiquity commands for invoking the above</li> <li>Available as a <a href="http://linkeddata.uriburner.com/ode" id="link-id15a0d2b0">Hosted Service</a> or <a href="http://ode.openlinksw.com" id="link-id138b9fa8">Firefox Extension</a> </li> <li>Bundled with Virtuoso and ODS installations</li> <li>etc.</li> </ol> <h3>Note:</h3> <p>Of course you could have simply looked up <a href="http://www.openlinksw.com/dataspace/organization/openlink" id="link-id14ef2c10">OpenLink Software's FOAF based Profile page</a> (*note the Linked Data Explorer tab*), or simply passed the <a href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id14cbf5c8">FOAF</a> profile page <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id16453e28">URL</a> to a Linked Data aware client application such as: <a href="http://linkeddata.uriburner.com/ode" id="link-id15a80500">OpenLink Data Explorer</a>, <a href="http://zitgist.com/about/" id="link-id1586a360">Zitgist</a> <a href="http://dataviewer.zitgist.com" id="link-id16249f60">Data Viewer</a>, <a href="http://beckr.org/marbles" id="link-id15993fb0">Marbles</a>, and <a href="http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html" id="link-id14d63048">Tabulator</a>, and obtained information. Remember, <a href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id138ba838">OpenLink Software</a> is an <a href="http://dbpedia.org/resource/Entity" id="link-id1173e120">Entity</a> of Type: <a href="http://xmlns.com/foaf/0.1/Organization" id="link-id138b87b8">foaf:Organization</a>, on the burgeoning Linked Data Web :-)</p> <h3>Related</h3> <ul> <li> <a href="http://virtuoso.openlinksw.com/presentations/Creating_Deploying_Exploiting_Linked_Data2/Creating_Deploying_Exploiting_Linked_Data2_TimBL_v3.html" id="link-id163a0c88">Linked Data Planet Keynote</a> (RDFa based remix edition)</li> <li> <a href="http://semanticbusiness.blogspot.com/2008/09/report-on-cusp-global-review-of.html" id="link-id11471a40">On The Cusp: A Global Review of the Semantic Web Industry.</a> </li> </ul>
Business Value of Linked Data (Enterprise Angle)?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-09-11#1437
2008-09-11T18:59:24Z
2008-09-11T15:52:48.000050-04:00
<p>All enterprises run IS/MIS/EIS systems that are supposed to enable optimized exploitation of <a href="http://dbpedia.org/resource/Data">data</a>, <a href="http://dbpedia.org/resource/Information" id="link-id1408bee8">information</a>, and <a href="http://dbpedia.org/resource/Knowledge" id="link-id14c429a8">knowledge</a>. Unfortunately, applications, services (SOAP or REST), database engines, middleware, operating systems, programming languages, development frameworks, network protocols, network topologies, or some other piece of infrastructure, eventually lay claim (possessively) to the data.</p> <p>Courtesy of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10f98db8">Linked Data</a>, we are now able to extend the "document to document" linking mechanism of the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> (Hypertext Linking) to more granular "<a href="http://dbpedia.org/resource/Entity" id="link-id14410810">entity</a> to <a href="http://dbpedia.org/resource/Entity" id="link-id10dbb420">entity</a>" level linking. And in doing so, we have a layer of abstraction that in one swoop alleviates all of the infrastructure oriented data access impediments of yore. I know this sounds simplistic, but be rest assured, imbibing <a href="http://dbpedia.org/resource/Linked_Data" id="link-id14b6af20">Linked Data</a>'s value proposition is really just that simple, once you engage solutions (e.g. <a href="http://virtuoso.openlinksw.com" id="link-id14ce6a20">Virtuoso</a>) that enable you to deploy <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1151c718">Linked Data</a> across your enterprise.</p> <h3>Example: </h3> <p>Microsoft ACCESS, <a href="http://dbpedia.org/resource/SQL" id="link-id14ef3b08">SQL</a> Server, and <a href="http://virtuoso.openlinksw.com" id="link-id10d865b8">Virtuoso</a> all use the Northwind <a href="http://dbpedia.org/resource/SQL" id="link-id10b04250">SQL</a> DB Schema as the basis of the demonstration database shipped with each DBMS product. This schema is comprised of common IS/MIS entities that include: Customers, Contacts, Orders, Products, Employees etc.</p> <p>What we all really want to do as data, <a href="http://dbpedia.org/resource/Information" id="link-id110dd7a0">information</a>, and <a href="http://dbpedia.org/resource/Knowledge" id="link-id11484408">knowledge</a> consumers and/or dispatchers, is be no more than a single "mouse click" away from relevant data/<a href="http://dbpedia.org/resource/Information" id="link-id10c755c8">information</a>/<a href="http://dbpedia.org/resource/Knowledge" id="link-id1464ac88">knowledge</a> data access and/or exploration. Even better (but not always so obvious), we also want anyone in our network (company, division, department, cube-cluster) to inherit these data access efficiencies.</p> <p>In this example, the <a href="http://demo.openlinksw.com/Northwind/Customer/ALFKI" id="link-id14ab8ed0">Web Page about the Customer "ALKI"</a> provides <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id14bdb360">me</a> with a myriad of exploration and data access paths e.g., when I click on the <a href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id10c388e0">foaf</a>:primarytopic property value link.</p> <p>This simple example, via a single Web Page, should put to rest any doubts about the utility of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id0xb042fd8">Linked Data</a>. Of course this is <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=alfki&type=text&output=html" id="link-id10ccccf0">an old demo</a>, but this time around the UI is minimalist as my prior attempts skipped a few steps i.e., starting from within a <a href="http://ode.openlinksw.com" id="link-id10f8a530">Linked Data explorer/browser</a>.</p> <p>Important note: I haven't exported <a href="http://dbpedia.org/resource/SQL" id="link-id0x16dfc2a0">SQL</a> into an RDF data warehouse, I am converting the SQL into RDF <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> on the fly which has two fundamental benefits:</p> <ol> <li>No vulnerability to changes in the source DBMS</li> <li>Superior performance over the RDF warehouse since the source schema is SQL based and I can leverage the optimization of the underlying SQL engine when translating between <a href="http://dbpedia.org/resource/SPARQL" id="link-id0xd9a4030">SPARQL</a> and SQL.</li> </ol> <p>Enjoy!</p> <h3>Related</h3> <ol> <li> <a href="http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1434" id="link-id11338a48">Requirements for Relational to RDF Mapping</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1433" id="link-id10d84278">Handling Graph Transitivity in a SQL/RDF Hybrid Engine</a> </li> <li> <a href="http://www.openlinksw.com/dataspace/oerling/weblog/Orri%20Erling%27s%20Blog/1431" id="link-id10c762e8">How Virtuoso handles the Web Aspects of Linked Data Queries</a>.</li> </ol>
Linked Data, Ubiquity Commands, and Resource Descriptions (Update 3)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-09-05#1430
2008-09-05T05:43:00Z
2008-09-08T09:00:51-04:00
<div><p><a href="http://labs.mozilla.com/2008/08/introducing-ubiquity/" id="link-id11258ea0">Ubiquity</a> from <a href="http://labs.mozilla.com/" id="link-id112ebe28">Mozilla Labs</a>, provides an alternative entry point for experiencing the "Controller" aspect of the <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id0xa0d2ccd0">Web</a>'s natural compatibility with the <a href="http://dbpedia.org/resource/Model-view-controller" id="link-id10ec1a08">MVC</a> development pattern. As I've noted (in <a href="http://myopenlink.net/weblog/public/search.vspx?blogid=kidehen-blog-0&q=mvc&type=text&output=html" id="link-id15390f28">various posts</a>) <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Services, as practiced by the REST oriented Web 2.0 community or SOAP oriented SOA community within the enterprise, is fundamentally about the ("Controller" aspect of <a href="http://dbpedia.org/resource/Model-view-controller" id="link-id13c0d758">MVC</a>. </p><p>Ubiquity provides a commandline interface for direct invocation of Web Services. For instance, in our case, we can expose the <a href="http://virtuoso.openlinksw.com" id="link-id10b04708">Virtuoso</a>'s in-built <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=rdf%20middleware&type=text&output=html" id="link-id1113ae38">RDF Middleware</a> ("Sponger") and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1457b3b8">Linked Data</a> deployment services via a single command of the form: describe-resource <url> </p><p>To experience this neat addition to Firefox you need to do the following:</p><ol><li><a href="https://people.mozilla.com/%7Eavarma/ubiquity-0.1.1.xpi" id="link-id13b15e88">Download</a> and install the Ubiquity Extension for Firefox</li><li><a href="http://demo.openlinksw.com/ubiq" id="link-id10e85880">Subscribe</a> to the OpenLink Command for Resource Description</li><li>Click on CTRL+Space (Windows / Linux) or Option+Space (Mac OS X)</li><li>Type in: describe-resource <a-web-resource-url> </li></ol><h3>How to unsubscribe</h3> At the current time, you need to do this if you've installed commands using ubiquity 0.1.0 and seek to use newer versions of the same commands after upgrading to ubiquity 0.1.1. <ol><li>To unsubscribe use type "about:ubiquity" into browser</li><li>Click on unsubscribe links associated with you command subscription list</li></ol> <p>Enjoy!</p></div>
What's Up with Chrome?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-09-03#1429
2008-09-03T20:33:32Z
2008-09-04T08:39:02.000014-04:00
<p>Here are a few descriptions of pages covering Google's Chrome browser:</p> <ul> <li> <a href="http://demo.openlinksw.com/proxy/html/http://vanirsystems.com/danielsblog/2008/09/03/google-chrome-my-verdict/" id="link-id14b2ad20">Daniel Lewis</a> - Comparative Analysis</li> <li> <a href="http://demo.openlinksw.com/proxy/html/http://demo.openlinksw.com/proxy/rdf/http://www.crunchbase.com/product/chrome%23this" id="link-id120f35d0">CrunchBase</a> - Product Page</li> <li> <a href="http://demo.openlinksw.com/proxy/html/http://feeds.feedburner.com/~r/OmMalik/~3/381659273/" id="link-id13e28090">GigaOM</a> - Industry Analysis</li> <li> <a href="http://demo.openlinksw.com/proxy/html/http://en.wikipedia.org/wiki/Google_Chrome" id="link-id10db3e48">Wikipedia</a> </li> <li> <a href="http://demo.openlinksw.com/proxy/html/http://news.cnet.com/8301-13860_3-10031661-56.html?part=rss&subj=news&tag=2547-1_3-0-20" id="link-id14a17f78">CNET</a> - Privacy Issues Analysis</li> <li> <a href="http://demo.openlinksw.com/proxy/html/http://feedproxy.google.com/~r/readwriteweb/~3/vF9P80B90XI/security_flaw_in_google_chrome.php" id="link-id14bdf6a8">ReadWriteWeb</a> - Security Issues Analysis</li> <li> <a href="http://demo.openlinksw.com/proxy/html/http://oakleafblog.blogspot.com/2008/09/chromes-evil-terms-of-service.html" id="link-id140af0a8">OakLeaf</a> - SaaS Terms Analysis</li> </ul> <p>As per usual, this is part post and part <a href="http://dbpedia.org/resource/Linked_Data" id="link-id140af0a8">Linked Data</a> demo. This time around, I am showcasing Proxy/Wrapper based dereferencable URIs and a new "Page Description" feature that showcases the capabilities of <a href="http://virtuoso.openlinksw.com" id="link-id11291898">Virtuoso</a>'s in-built RDFization Middleware. Also note, the resource descriptions (RDF) are presented using an HTML page.</p>
Connecting Freebase, Wikipedia, DBpedia, and other Linked Data Spaces (Update 1)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-08-29#1427
2008-08-29T17:53:47Z
2008-08-29T14:57:02.000001-04:00
<p>Here are some demonstrations of (X)HTML based representations of resource descriptions from <a href="http://www.freebase.com" id="link-id12275470">Freebase</a>, <a href="http://dbpedia.org/resource/DBpedia" id="link-id168abcc0">DBpedia</a>, <a href="http://www.bbc.co.uk/music/artists" id="link-id107c75c8">BBC Music Beta</a>, <a href="http://crunchbase.com" id="link-id1322e9a0">CrunchBase</a>, <a href="http://sw.opencyc.org" id="link-id16e09ea8">OpenCyc</a>, and <a href="http://umbel.org/about/" id="link-id188687c0">UMBEL</a> etc. What is really being demonstrated here is the use of Proxy / Wrapper URIs to expose powerful links across entities distilled from their container documents (or <a href="http://dbpedia.org/resource/Information" id="link-id13e117b0">information</a> resources). Of course, you see exactly the same technique in action whenever you visit <a href="http://dbpedia.org/resource/DBpedia" id="link-id10afe178">DBpedia</a> pages. Again, we are moving the concept of Linking from the document to document level, down to the document-<a href="http://dbpedia.org/resource/Entity" id="link-id16032730">entity</a> to document-<a href="http://dbpedia.org/resource/Entity" id="link-id13eef3d8">entity</a> level. The evolution of network link focal points is illustrated in slides <a href="http://virtuoso.openlinksw.com/presentations/Creating_Deploying_Exploiting_Linked_Data2/Creating_Deploying_Exploiting_Linked_Data2_TimBL_v3.html#(15)" id="link-id183523a8">15</a> to <a href="http://virtuoso.openlinksw.com/presentations/Creating_Deploying_Exploiting_Linked_Data2/Creating_Deploying_Exploiting_Linked_Data2_TimBL_v3.html#(22)" id="link-id18270200">22</a> of my <a href="http://virtuoso.openlinksw.com/presentations/Creating_Deploying_Exploiting_Linked_Data2/Creating_Deploying_Exploiting_Linked_Data2_TimBL_v3.html" id="link-id16f0a7c8">Linked Data Planet presentation</a> remix.</p> <h3>Live Examples</h3> <ol> <li> <a href="http://demo.openlinksw.com/proxy/html/http://www.freebase.com/view/en/abraham_lincoln" id="link-id11cf00b8">Abraham Lincoln</a> - Freebase (note: link from Freebase to <a href="http://dbpedia.org/resource/DBpedia" id="link-id17db1620">DBpedia</a> via Wikipedia)</li> <li> <a href="http://demo.openlinksw.com/proxy/html/http://www.crunchbase.com/company/amazon" id="link-id171d9930">Amazon</a> - CrunchBase (note: links from CruncBase to <a href="http://dbpedia.org/resource/DBpedia" id="link-id0x1ed41510">DBpedia</a>)</li> <li> <a href="http://demo.openlinksw.com/proxy/html/http://www.bbc.co.uk/music/artists/cc197bad-dc9c-440d-a5b5-d52ba2e14234" id="link-id10a01dc0">Cold Play</a> - <a href="http://dbpedia.org/resource/BBC" id="link-id12fa5648">BBC</a> Music Beta (note: links to <a href="http://musicbrainz.org/" id="link-id126f71c8">Musicbrainz</a>)</li> <li> <a href="http://demo.openlinksw.com/proxy/html/http://virtuoso.openlinksw.com/presentations/Creating_Deploying_Exploiting_Linked_Data2/Creating_Deploying_Exploiting_Linked_Data2_TimBL_v3.html" id="link-id1732e820">Linked Data Planet Presentation</a> - Also a Slidy, Bibo Ontology, and <a href="http://dbpedia.org/resource/RDFa" id="link-id104869a8">RDFa</a> usage example</li> <li> <a href="http://demo.openlinksw.com/proxy/html/http://sw.opencyc.org/2008/06/10/concept/en/Music" id="link-id1699d628">Music</a> - <a href="http://dbpedia.org/resource/Cyc" id="link-id126c74f0">OpenCyc</a> Concept which exposes a <a href="http://dbpedia.org/resource/Linked_Data" id="link-id15687380">Hyperdata</a> link to its equivalent <a href="http://demo.openlinksw.com/proxy/html/http://umbel.org/ns/sc/Music" id="link-id13ebbac0">UMBEL Subject Concept</a> and back</li> </ol> <h4> <a href="http://virtuoso.openlinksw.com" id="link-id10537a28">Virtuoso</a>'s RDFization Middleware & <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10869440">Linked Data</a> Deployment Architecture Diagram</h4> <div> <table border="1"> <tr> <td><br /> <br /> <img src="http://virtuoso.openlinksw.com/ldp_presentation/images/linked_data_gen_opts3.png" /> <br /> <br /> </td> </tr> </table> </div> <p>Note: You can substitute my examples using any <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> resource <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id105a3e20">URL</a>. The underlying RDFization and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id18155cd0">Linked Data</a> deployment functionality of the <a href="http://virtuoso.openlinksw.com" id="link-id13f56ed0">Virtuoso</a> demo instance takes care of everything else. Also note that the HTML based resource description page capability is now deployed as part of the <a href="http://virtuoso.openlinksw.com" id="link-id17db1128">Virtuoso</a> <a href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id100a7630">Sponger</a> component of every <a href="http://virtuoso.openlinksw.com" id="link-id109eed20">Virtuoso</a> installation starting with from version <a href="http://sourceforge.net/project/shownotes.php?group_id=161622&release_id=622380" id="link-id1441f530">5.0.8.</a> </p>
Crunchbase & Semantic Web Interview (Remix - Update 1)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-08-27#1424
2008-08-27T18:16:37Z
2008-08-27T20:35:15-04:00
<p>After reading <a href="http://blog.crunchbase.com/2008/08/26/building-a-semantic-web-interview-with-benjamin-nowack/" id="link-id16b8e0e0">Bengee's interview with CrunchBase</a>, I decided to knock up a quick interview remix as part of my usual attempt to add to the developing discourse.</p> <blockquote> <cite><a href="http://www.crunchbase.com/" id="link-id17c8e7b8">CrunchBase</a>: When we released the <a href="http://www.crunchbase.com/help/api" id="link-id16681f68">CrunchBase API</a>, you were one of the first developers to step up and quickly released a <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com's%20BLOG%20%5B127%5D/1395" id="link-id1016d5f0">CrunchBase Sponger Cartridge</a>. Can you explain what a CrunchBase Sponger Cartridge is?</cite> </blockquote> <blockquote> <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id13243300">Me</a>: A Sponger Cartridge is a <a href="http://dbpedia.org/resource/Data">data</a> access driver for <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Resources that plugs into our <a href="http://virtuoso.openlinksw.com" id="link-id17042f08">Virtuoso</a> <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id1399b588">Universal Server</a> (DBMS and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id137fd188">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id100b23d8">Web</a> Server combo amongst other things). It uses the internal structure of a resource and/or a web service associated with a resource, to materialize an RDF based <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id10418750">Linked Data graph</a> that essentially describes the resource via its properties (Attributes & Relationships). </blockquote> <br /> <img src="http://virtuoso.openlinksw.com/presentations/Creating_Deploying_Exploiting_Linked_Data2/images/ldp4.png" /> <br /> <br /> <br /> <blockquote> <cite>CrunchBase: And what inspired you to create it?</cite> </blockquote> <blockquote> <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id12fa60c0">Me</a>: Bengee built a new space with your data, and we've built a space on the fly from your data which still resides in your domain. Either solution extols the virtues of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id101a8d28">Linked Data</a> i.e. the ability to explore relationships across data items with high degrees of serendipity (also colloquially known as: following-your-nose pattern in <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id14a3ff30">Semantic Web</a> circles).</blockquote> <blockquote> <a href="http://cb.semsol.org/" id="link-id182a0170">Bengee</a> posted a notice to the <a href="http://esw.w3.org/topic/SweoIG/TaskForces/CommunityProjects/LinkingOpenData" id="link-id131e8d10">Linking Open Data Community</a>'s public <a href="http://lists.w3.org/Archives/Public/public-lod/2008Jul/0110.html" id="link-id11dd0720">mailing list announcing his effort</a>. Bearing in mind the fact that we've been using <a href="http://www.openlinksw.com/blog/~kidehen/?id=1144" id="link-id117cf6e8">middleware to mesh the realms of Web 2.0 and the Linked Data Web</a> for a while, it was a no-brainer to knock something up based on the conceptual similarities between <a href="http://wikicompany.org/wiki/Main_Page" id="link-id13b87a68">Wikicompany</a> and CrunchBase. In a sense, a quadrant of orthogonality is what immediately came to mind re. Wikicompany, CrunchBase, Bengee's RDFization efforts, and ours.</blockquote> <blockquote>Bengee created an RDF based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id133c8fc8">Linked Data</a> warehouse based on the data exposed by your API, which is exposed via the <a href="http://cb.semsol.org/" id="link-id1826f928">Semantic CrunchBase</a> <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id102d8890">data space</a>. In our case we've taken the "RDFization on the fly" approach which produces a transient <a href="http://dbpedia.org/resource/Linked_Data" id="link-id16a0b8d0">Linked Data</a> View of the CrunchBase data exposed by your APIs. Our approach is in line with our world view: all resources on the Web are data sources, and the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1668e6c8">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id188e7da0">Web</a> is about incorporating HTTP into the naming scheme of these data sources so that the conventional <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id13490710">URL</a> based hyperlinking mechanism can be used to access a structured description of a resource, which is then transmitted using a range negotiable representation formats. In addition, based on the fact that we house and publish a lot of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id169aa568">Linked Data</a> on the Web (e.g. <a href="http://dbpedia.org/resource/DBpedia" id="link-id10af10e8">DBpedia</a>, <a href="http://www.pingthesemanticweb.com/about/" id="link-id10a2b710">PingTheSemanticWeb</a>, and others), we've also automatically meshed Crunchbase data with related data in <a href="http://dbpedia.org/resource/DBpedia" id="link-id1403cd40">DBpedia</a> and Wikicompany data.</blockquote> <br /> <blockquote> <cite>CrunchBase: Do you know of any apps that are using CrunchBase Cartridge to enhance their functionality?</cite> </blockquote> <blockquote> <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id177d24c8">Me</a>: Yes, the <a href="http://ode.openlinksw.com" id="link-id10725ca0">OpenLink Data Explorer</a> which provides CrunchBase site visitors with the option to explore the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id17dedea8">Linked Data</a> in the CrunchBase <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id13f02a00">data space</a>. It also allows them to "Mesh" (rather than "Mash") CrunchBase data with other <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11fb3ba0">Linked Data</a> sources on the Web without writing a single line of code. </blockquote> <br /> <blockquote> <cite>CrunchBase: You have been immersed in the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id12e18a00">Semantic Web</a> movement for a while now. How did you first get interested in the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id15132110">Semantic Web</a>?</cite> </blockquote> <blockquote> <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id0xddaa9c8">Me</a>: We saw the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id188b3330">Semantic Web</a> as a vehicle for standardizing conceptual views of heterogeneous data sources via <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id10350978">context</a> lenses (URIs). In 1998 as part of our strategy to expand our business beyond the development and deployment of <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id171d6798">ODBC</a>, <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id138120a0">JDBC</a>, and OLE-DB data providers, we decided to build a <a href="http://dbpedia.org/resource/Virtual_Database" id="link-id13ea6618">Virtual Database</a> Engine (see: <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VOSHistory" id="link-id11a4fa30">Virtuoso History</a>), and in doing so we sought a standards based mechanism for the conceptual output of the <a href="http://dbpedia.org/resource/Federated_database_system" id="link-id101a1248">data virtualization</a> effort. As of the time of the <a href="http://www.w3.org/DesignIssues/Semantic.html" id="link-id18882cf8">seminal unveiling of the Semantic Web in 1998</a> we were clear about two things, in relation to the effects of the Web and <a href="http://dbpedia.org/resource/Internet" id="link-id12fa2c58">Internet</a> data management infrastructure inflections: 1) Existing DBMS technology had reached it limits 2) Web Servers would ultimately hit their functional limits. These fundamental realities compelled us to develop <a href="http://virtuoso.openlinksw.com" id="link-id102b09a0">Virtuoso</a> with an eye to leveraging the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id11984d98">Semantic Web</a> as a vehicle from completing its technical roadmap.</blockquote> <br /> <blockquote> <cite>CrunchBase: Can you put into laymanâs terms exactly what RDF and <a href="http://dbpedia.org/resource/SPARQL" id="link-id1066dcf0">SPARQL</a> are and why they are important? Do they only matter for developers or will they extend past developers at some point and be used by website visitors as well?</cite> </blockquote> <blockquote>Me: RDF (Resource Description Framework) is a Graph based Data Model that facilitates resource description using the <a href="http://www.eslincanada.com/englishlesson2.html" id="link-id178b94a8">Subject, Predicate, and Object principle</a>. Associated with the core data model, as part of the overall framework, are a number of markup languages for expressing your descriptions (just as you express presentation markup semantics in HTML or document structure semantics in XML) that include: <a href="http://dbpedia.org/resource/RDFa" id="link-id188db0a8">RDFa</a> (simple extension of HTML markup for embedding descriptions of things in a page), N3 (a human friendly markup for describing resources), RDF/XML (a machine friendly markup for describing resources).</blockquote> <blockquote> <a href="http://dbpedia.org/resource/SPARQL" id="link-id188c2030">SPARQL</a> is the query language associated with the RDF Data Model, just as <a href="http://dbpedia.org/resource/SQL" id="link-id13f0ffe0">SQL</a> is a query language associated with the Relational Database Model. Thus, when you have RDF based structured and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id166874d0">linked data</a> on the Web, you can query against Web using <a href="http://dbpedia.org/resource/SPARQL" id="link-id1016cc98">SPARQL</a> just as you would against an <a href="http://dbpedia.org/resource/Oracle_Database" id="link-id101c9708">Oracle</a>/<a href="http://dbpedia.org/resource/SQL" id="link-id11cb0b18">SQL</a> Server/<a href="http://dbpedia.org/resource/IBM_DB2" id="link-id10760ec0">DB2</a>/<a href="http://dbpedia.org/resource/IBM_Informix" id="link-id1066c8c0">Informix</a>/<a href="http://dbpedia.org/resource/Ingres" id="link-id18894f40">Ingres</a>/<a href="http://dbpedia.org/resource/MySQL" id="link-iddc9ebb0">MySQL</a>/etc.. DBMS using <a href="http://dbpedia.org/resource/SQL" id="link-id1030d120">SQL</a>. That's it in a nutshell.</blockquote> <br /> <blockquote> <cite>CrunchBase: On your website you wrote that âRDF and <a href="http://dbpedia.org/resource/SPARQL" id="link-id168e9ad0">SPARQL</a> as productivity boosters in everyday web developmentâ. Can you elaborate on why you believe that to be true?</cite> </blockquote> <blockquote>Me: I think the ability to discern a formal description of anything via its discrete properties is of immense value re. productivity, especially when the capability in question results in a graph of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id0x179f6328">Linked Data</a> that isn't confined to a specific host operating system, database engine, application or service, programming language, or development framework. RDF <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> is about infrastructure for the true materialization of the "<a href="http://dbpedia.org/resource/Information" id="link-id13e475b8">Information</a> at Your Fingertips" vision of yore. Even though it's taken the emergence of RDF Linked Data to make the aforementioned vision tractable, the comprehension of the vision's intrinsic value have been clear for a very long time. Most organizations and/or individuals are quite familiar with the adage: <a href="http://dbpedia.org/resource/Knowledge" id="link-id13e38a30">Knowledge</a> is Power, well there isn't any <a href="http://dbpedia.org/resource/Knowledge" id="link-id188b7348">knowledge</a> without accessible <a href="http://dbpedia.org/resource/Information" id="link-id140415d0">Information</a>, and there isn't any accessible <a href="http://dbpedia.org/resource/Information" id="link-id11a976e8">Information</a> without accessible Data. The Web has always be grounded in accessibility to data (albeit via compound container documents called Web Pages).</blockquote> <blockquote>Bottom line, RDF based Linked Data is about Open <a href="http://dbpedia.org/resource/Reference_(computer_science)" id="link-id1206bfb8">Data access by reference</a> using URIs (HTTP based <a href="http://dbpedia.org/resource/Entity" id="link-idfaa6ce0">Entity</a> IDs / Data Object IDs / Data Source Names), and as I said earlier, the intrinsic value is pretty obvious bearing in mind the costs associated with integrating disparate and heterogeneous data sources -- across intranets, extranets, and the <a href="http://dbpedia.org/resource/Internet" id="link-id188ecc68">Internet</a>.</blockquote> <br /> <blockquote> <cite>CrunchBase: In his definition of Web 3.0, Nova Spivack proposes that the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id12e2d968">Semantic Web</a>, or Semanti<a href="http://dbpedia.org/resource/C_(programming_language)" id="link-id105744c0">c</a> Web technologies, will be force behind much of the innovation that will occur during Web 3.0. Do you agree with Nova Spivack? What role, if any, do you feel the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id13fa4218">Semantic Web</a> will play in Web 3.0?</cite> </blockquote> <blockquote>Me: I agree with Nova. But I see Web 3.0 as a phase within the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id188c9000">Semantic Web</a> innovation continuum. Web 3.0 exists because Web 2.0 exists. Both of these Web versions express usage and technology focus patterns. Web 2.0 is about the use of Open Source technologies to fashion Web Services that are ultimately used to drive proprietary Software as Service (SaaS) style solutions. Web 3.0 is about the use of "Smart Data Access" to fashion a new generation of Linked Data aware Web Services and solutions that exploit the federated nature of the Web to maximum effect; proprietary branding will simply be conveyed via quality of data (cleanliness, <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id188d2ef8">context</a> fidelity, and comprehension of privacy) exposed by URIs.</blockquote> <p>Here are some examples of the CrunchBase Linked Data <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id122756f8">Space</a>, as projected via our CruncBase Sponger Cartridge:</p> <ol> <li> <a href="http://demo.openlinksw.com/rdfbrowser2/?uri=http%3A%2F%2Fwww.crunchbase.com%2Fcompany%2Famazon" id="link-id13e0fd18">Amazon.com</a> </li> <li> <a href="http://demo.openlinksw.com/rdfbrowser2/?uri=http%3A%2F%2Fwww.crunchbase.com%2Fcompany%2Fmicrosoft" id="link-id13eef9e0">Microsoft</a> </li> <li> <a href="http://demo.openlinksw.com/rdfbrowser2/?uri=http%3A%2F%2Fwww.crunchbase.com%2Fcompany%2Fgoogle" id="link-id13fe47a0">Google</a> </li> <li> <a href="http://demo.openlinksw.com/rdfbrowser2/?uri=http%3A%2F%2Fwww.crunchbase.com%2Fcompany%2Fapple" id="link-id170c73b8">Apple</a> </li> </ol>
Virtuoso, Linked Data, and Linq2Rdf (Update 1)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-08-26#1420
2008-08-26T12:36:05Z
2008-08-27T07:51:23.000002-04:00
<p>There are many challenges that have dogged attempts to mesh the DBMS & Object Technology realms for years, critical issues include:</p> <ol> <li><a href="http://dbpedia.org/resource/Data">data</a> access & manipulation impedance arising from Model mismatches between Relational Databases and Object Oriented & Object based Languages</li> <li> Record / Data Object Referencing by ID. </li> </ol> <p>The big deal about <a href="http://dbpedia.org/resourcei/Language_Integrated_Query" id="link-id101df2c0">LINQ</a> has been the singular focus on addressing point 1, in particular.</p> <p>I've already written about the Linq2Rdf effort that meshes the best of .NET with the virtues of the "<a href="http://dbpedia.org/resource/Linked_Data" id="link-id10193ae8">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id17143870">Web</a>". </p> <p>Here is an architecture diagram that seeks to illustrate the powerful data access and manipulation options that the combination of Linq2RDF and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10595ce0">Linked Data</a> deliver:</p> <br /> <img src="http://virtuoso.openlinksw.com/Whitepapers/html/linqtordf/linqtordf2.png" /> <p>What may not have been obvious to most in the past, is the fact that Mapping from Object Models to Relational Models wasn't really the solution to the problem at hand. Instead, the mapping should have been the other way around i.e., Relational to Object Model mapping. The emergence of RDF and <a href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id11e5a240">RDBMS</a> to RDF mapping technology is what makes this age-old headache addressable in very novel ways.</p> <h3>Related</h3> <ol> <li> <a href="http://virtuoso.openlinksw.com/presentations/RDF_Mapping_Presentation_W3C_workshop3/RDF_Mapping_Presentation_W3C_workshop3.html" id="link-id10a9aa08">RDBMS to RDF Mapping</a> - W3C Workshop Presentation </li> <li> <a href="http://virtuoso.openlinksw.com/presentations/Virtuoso_Relational_to_RDF_Mapping/Virtuoso_Relational_to_RDF_Mapping.html" id="link-id16d47330">Virtuoso RDBMS to RDF Mapping</a> - W3C Rdb2Rdf Incubator Group Presentation </li> <li> <a href="http://virtuoso.openlinksw.com/presentations/Virtuoso_RDF_Views/Virtuoso_RDF_Views_1.html" id="link-id1403c4c8">Creating RDF Views over SQL Data Sources</a> - Technology Tutorial</li> </ol>
DBpedia Architecture
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-08-22#1416
2008-08-22T02:50:07Z
2008-08-21T22:50:09.000001-04:00
<p>Here is a pictorial of <a href="http://dbpedia.org/resource/DBpedia">DBpedia</a>'s <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> Deployment & Data Management architecture:</p> <p> <br /> <img style="max-width: 800px;" src="http://wiki.dbpedia.org/files/virtuoso_linked_data_deployment.png" /> </p> <p>Key points:</p> <p> <a href="http://docs.openlinksw.com:80/virtuoso/rdfapiandsql.html" id="link-id13dcfb98">SPASQL</a> (<a href="http://dbpedia.org/resource/SPARQL">SPARQL</a> extension for <a href="http://dbpedia.org/resource/SQL">SQL</a>) enables the intelligent resource representation request handling and <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier">URI</a> dereferencing, that underlies "Linked Data" (i.e., <a href="http://dbpedia.org/resource/Linked_Data">Hyperdata</a> Linking) to occur in-process.<br /> </p>
Response to: Whole Data Post (Update 3)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-08-15#1413
2008-08-15T13:06:12Z
2008-08-15T18:31:48-04:00
<p>This post is in response to <a href="http://www.furia.com" id="link-id107907b8">Glenn McDonald</a>'s post titled: <a href="http://www.furia.com/page.cgi?type=log&id=308" id="link-id13dcf2d0">Whole Data</a>, where he highlights a number of issues relating to "<a href="http://dbpedia.org/resource/Semantic_Web" id="link-id1016c1f0">Semantic Web</a>" marketing communications and overall messaging, from his perspective.</p> <p> By coincidence, Glenn and I presented at this month's Cambridge <a href="http://dbpedia.org/resource/Semantic_Web" id="link-idd526f48">Semantic Web</a> Gathering.</p> <p>I've provided a dump of Glenn's issues and my responses below:</p> <h3>Issue - RDF</h3> <ul> <li>Ingenious <a href="http://dbpedia.org/resource/Data">data</a> decomposition idea, but: </li> <li>too low-level; the assembly language of data, where we need Java or <a href="http://dbpedia.org/resource/Ruby_programming_language" id="link-id103f3dd0">Ruby</a> </li> <li>"resource" is not the issue; there's no such thing as "metadata", it's all data; "meta" is a perspective </li> <li>lists need to be effortless, not painful and obscure </li> <li>nodes need to be represented, not just implied; they need types and literals in a more pervasive, integrated way. </li> </ul> <h4>Response:</h4> <p>RDF is a Graph based Data Model it stands for Resource Description Framework. The Metadata data angle comes from it's <a href="http://dbpedia.org/resource/Meta_Content_Framework" id="link-id1690df60">Meta Content Framework (MCF)</a> origins. You can express and serialize data based on the RDF Data Model using: Turtle, N3, TriX, N-Triples, and RDF/XML.</p> <h3>Issue - <a href="http://dbpedia.org/resource/SPARQL" id="link-id10234b38">SPARQL</a> (and Freebase's MQL)</h3> <p>These are just appeasement: <br />- old query paradigm: fishing in dark water with superstitiously tied lures; only works well in carefully stocked lakes <br />- we don't ask questions by defining answer shapes and then hoping they're dredged up whole.</p> <h4>Response:</h4> <p> <a href="http://dbpedia.org/resource/SPARQL" id="link-id16e45e50">SPARQL</a>, <a href="http://www.freebase.com/view/freebase/api" id="link-id13e7d468">MQL</a>, and <a href="http://msdn.microsoft.com/en-us/library/bb387145.aspx" id="link-id1516fbd8">Entity-SQL</a> are Graph Model oriented Query Languages. Query Languages always accompany Database Engines. <a href="http://dbpedia.org/resource/SQL" id="link-id13f8c100">SQL</a> is the Relational Model equivalent. </p> <h3>Issue - <a href="http://dbpedia.org/resource/Linked_Data" id="link-id171dee68">Linked Data</a> </h3> <p>Noble attempt to ground the abstract, but: <br />- <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id1576d5f8">URI</a> dereferencing/namespace/<a href="http://dbpedia.org/resource/Open_world_assumption" id="link-id15f50180">open-world</a> issues focus too much technical attention on cross-source cases where the human issues dwarf the technical ones anyway <br />- <a href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id105df458">FOAF</a> query over the people in this room? forget it. <br />- link asymmetry doesn't scale <br />- identity doesn't scale <br />- generating RDF from non-graph sources: more appeasement, right where the win from actually converting could be biggest! </p> <h4>Response:</h4> <p>Innovative use of HTTP to deliver "<a href="http://dbpedia.org/resource/Reference_%28computer_science%29" id="link-id13eeab20">Data Access by Reference</a>" to the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id13492610">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id105dfc10">Web</a>.</p> <p>When you have a Data Model, Database Engine, and Query Language, the next thing you need is a Data Access mechanism that provides "<a href="http://dbpedia.org/resource/Reference_(computer_science)" id="link-id100ef2c0">Data Access by Reference</a>". <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id16692e88">ODBC</a> and <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id1699b970">JDBC</a> (amongst others) provide "<a href="http://dbpedia.org/resource/Reference_(computer_science)" id="link-id16034b48">Data Access by Reference</a>" via Data Source Names. <a href="http://dbpedia.org/resource/Linked_Data" id="link-id16690118">Linked Data</a> is about the same thing (URIs are Data Source Names) with the following differences:</p> <ul> <li>Naming is scoped to the <a href="http://dbpedia.org/resource/Entity" id="link-id1195dc48">entity</a> level rather than container level</li> <li>HTTP's use within the data source naming scheme expands the referencability of the Named <a href="http://dbpedia.org/resource/Entity" id="link-id10485760">Entity</a> Descriptions beyond traditional confines such as applications, operating systems, and database engines. </li> </ul> <h3> Issue - <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id104684d0">Giant Global Graph</a> </h3> <p>Hugely motivating and powerful idea, worthy of a superhero (Graphius!), but: <br />- giant and global parts are too hard, and starting global makes every problem harder <br />- local projects become unmanageable in global <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id12497088">context</a> (Cyc, Freebase data-modeling lists...). And my thus my plea, again. Forget "semantic" and "<a href="http://dbpedia.org/resource/World_Wide_Web">web</a>", let's fix the database tech first: <br />- node/arc data-model, path-based exploratory query-model <br />- data-graph applications built easily on top of this common model; building them has to be easy, because if it's hard, they'll be bad <br />- given good database tech, good web data-publishing tech will be trivial! <br />- given good tools for graphs, the problems of uniting them will be only as hard as they have to be.</p> <h4>Response:</h4> <p> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id144466d8">Giant Global Graph</a> is just another moniker for a "Web of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id15c2c738">Linked Data</a>" or "<a href="http://dbpedia.org/resource/Linked_Data" id="link-id14e73520">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id10aef200">Web</a>".</p> <p>Multi-Model Database technology that meshes the best of the Graph & Relational Models exist. In a nutshell, this is what <a href="http://virtuoso.openlinksw.com" id="link-id13492e10">Virtuoso</a> is all about and it's existed for a very long time :-)</p> <p> <a href="http://virtuoso.openlinksw.com" id="link-id105a4f58">Virtuoso</a> is also a Virtual DBMS engine (so you can see Heterogeneous Relational Data via Graph Model <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id15845110">Context</a> Lenses). Naturally, it is also a <a href="http://dbpedia.org/resource/Linked_Data" id="link-id109e2c78">Linked Data</a> Deployment platform (or <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1086d650">Linked Data</a> Sever). </p> <p>The issue isn't the "<a href="http://dbpedia.org/resource/Semantic_Web" id="link-id107f1ba8">Semantic Web</a>" moniker per se., it's about how <a href="http://dbpedia.org/resource/Linked_Data" id="link-id0xba72818">Linked Data</a> (foundation layer of <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id101dbf50">Semantic Web</a>) gets introduced to users. As I said during the MIT Gathering: "The Web is experienced via Web Browsers primarily, so any enhancement to the Web must be exposed via traditional Web Browsers", which is why we've opted to simply add "View <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> Sources" to the existing set of common Browser options that includes:</p> <ol> <li>View page in rendered form (default)</li> <li>View page source (i.e., how you see the markup behind the page)</li> </ol> <p>By exposing the Linked Data <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id15a04b70">Web</a> option as described above, you enable the Web user to knowingly transition from the traditional Rendered (X)HTML page view to the Linked Data View (i.e., structured data behind the page). This simple "User Interaction" tweak makes the notion of exploiting a Structured Web becomes somewhat clearer.</p> <p>The Linked Data <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id10a187d0">Web</a> isn't a panacea. It's just an addition to the existing Web that enrichens the things you can do with the Web. It's predominance, like any application feature, will be subject to the degrees to which it delivers tangible value or matrializes internal and external opportunity costs.</p> <p>Note: The Web isn't ubiquitous today becuase all it's users groked HTML Markup. It's ubquitity is a function of opportunity costs: there simply came a point in the Web boostrap when nobody could afford the opportunity costs associated with being off the Web. The same thing will play out with Linked Data and the broader <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id10a97330">Semantic Web</a> vision.</p> <b>Links:</b> <ol> <li> <a href="http://virtuoso.openlinksw.com/presentations/Creating_Deploying_Exploiting_Linked_Data2/Creating_Deploying_Exploiting_Linked_Data2_TimBL_v3.html(15)" id="link-id137fc560">Linked Data Journey part of my Linked Data Planet Presentation Remix</a>(from slides 15 to 22 - which include bits from <a href="http://www.w3.org/People/Berners-Lee/card#i" id="link-id1048a968">TimBL</a>'s presentation)</li> <li> <a href="http://ode.openlinksw.com" id="link-id1667df98">OpenLink Data Explorer</a> </li> <li> <a href="http://ode.openlinksw.com/example.html" id="link-id137ee860">OpenLink Data Explorer Screenshots and examples</a>.</li> </ol>
.NET, LINQ, and RDF based Linked Data (Update 2)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-08-03#1408
2008-08-03T16:07:09Z
2008-08-08T08:54:01.000002-04:00
<p>At OpenLink, we've been investigating <a href="http://code.google.com/p/linqtordf/" id="link-id1296eb18">LinqToRdf</a>, an exciting project from <a href="http://aabs.wordpress.com/" id="link-id13e860a8">Andrew Matthews</a> that seeks to expose the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id105d84f8">Semantic Web</a> technology space to the large community of .NET developers. </p> <p>The LinqToRdf project is about binding LINQ to RDF. It sits atop <a href="http://razor.occams.info/" id="link-id102e3b10">Joshua Tauberer</a>'s <a href="http://dbpedia.org/resource/C_(programming_language)" id="link-id1471b0d0">C</a># based <a href="http://razor.occams.info/code/semweb/" id="link-id14cb9030">Semantic Web/RDF library</a> which has been out there for a while and works across Microsoft .NET and it's open source variant "Mono".</p> <p>Historically, the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id13ee9f40">Semantic Web</a> realm has been dominated by RDF frameworks such as <a href="http://www.openrdf.org/" id="link-id109f8a68">Sesame</a>, <a href="http://jena.sourceforge.net/" id="link-id144c3210">Jena</a> and <a href="http://librdf.org/" id="link-id10600228">Redland</a>; which by their Open Source orientation, predominantly favor non-Windows platforms (Java and Linux). Conversely, Microsoft's .NET frameworks have sought to offer Conceptualization technology for heterogeneous Logical <a href="http://dbpedia.org/resource/Data">Data</a> Sources via .NET's <a href="http://en.wikipedia.org/wiki/ADO.NET_Entity_Framework" id="link-id10726628">Entity Frameworks</a> and <a href="http://dbpedia.org/resource/ADO.NET" id="link-id13e7edd8">ADO.NET</a>, but without any actual bindings to RDF. </p> <p>Interestingly, believe it or not, .NET already has a data query language that shares a number of similarities with <a href="http://dbpedia.org/resource/SPARQL" id="link-id1042f480">SPARQL</a>, called <a href="http://dbpedia.org/resource/Entity" id="link-id105a46b0">Entity</a>-<a href="http://dbpedia.org/resource/SQL" id="link-id1041d2e8">SQL</a>, and a very innovative programming language called LINQ; that offers a blend of constructs for natural data access and manipulation across relational (<a href="http://dbpedia.org/resource/SQL" id="link-id139f5848">SQL</a>), hierarchical (XML), and graph (Object) models without the traditional object language->database impedance tensions of the past.</p> <p>With regards to all of the above, we've just released a mini white paper that covers the exploitation of <a href="http://virtuoso.openlinksw.com/Whitepapers/html/linqtordf/linqtordf1.htm" id="link-id14b2f138">RDF-based Linked Data using .NET via LINQ</a>. The paper offers a an overview of LinqToRdf, plus enhancements we've contributed to the project (available in <a href="http://aabs.wordpress.com/2008/08/01/announcing-linqtordf-v08/" id="link-id101defa8">LinqToRdf v0.8</a>.). The paper includes real-world examples that tap into a MusicBrainz powered <a href="http://dbpedia.org/resource/Linked_Data" id="link-id101ffd18">Linked Data</a> <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id105cb858">Space</a>, the Music Ontology, the <a href="http://virtuoso.openlinksw.com" id="link-id13f55860">Virtuoso</a> RDF Quad Store, <a href="http://virtuoso.openlinksw.com" id="link-id12826718">Virtuoso</a> <a href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id1030cb60">Sponger</a> Middleware, and our RDfization Cartridges for Musicbrainz. </p> Enjoy!
Virtuoso's Universal Server Architecture (Conceptual & Technical)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-08-03#1406
2008-08-03T13:07:12Z
2008-08-05T18:07:45-04:00
As they say, a picture speaks a thousand words, so I am exposing two views of <a href="http://virtuoso.openlinksw.com" id="link-id13fe7df8">Virtuoso</a> that have been on the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> for while. <br /> <br />Remember, <a href="http://virtuoso.openlinksw.com" id="link-id13f53ed0">Virtuoso</a> offers <a href="http://dbpedia.org/resource/Data">data</a> management, data access, web <a href="http://dbpedia.org/resource/Application_server" id="link-id109f04b0">application server</a>, enterprise service bus, and virtualization of disparate and heterogeneous data sources, as part of a single, multi threaded, cross-platform server solution; hence it's description as a "<a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id104d2e48">Universal Server</a>".<br /> <br />Conceptual View:<br /> <br /> <img style="max-width: 800px;" src="http://virtuoso.openlinksw.com/images/vconc650.jpg" /> <br /> <br />Technical View (kinda missing <a href="http://dbpedia.org/resource/PHP" id="link-id10660110">PHP</a>, <a href="http://dbpedia.org/resource/Perl" id="link-id1053d9b8">Perl</a>, <a href="http://dbpedia.org/resource/Python_programming_language" id="link-id107bc9c0">Python</a> runtime hosting in the Virtual Application Sever realm):<br /> <br /> <img style="max-width: 800px;" src="http://virtuoso.openlinksw.com/images/virtuoso3arch.gif" /> <br /> <br /> <br /> <a href="http://virtuoso.openlinksw.com" id="link-id0x13cf3798">Virtuoso</a>'s architecture is not a reaction to current trends. The diagrams above are pretty old (with minor touch ups in recent times). At <a href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id13e194c0">OpenLink Software</a>, we've have a consistent world-view re. standards and the vital role they play when it comes to developing software that enables the construction and exploitation of "<a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id133c84a8">Context</a> Lenses" that tap into a substrate of Virtualized Logical Data Sources (<a href="http://dbpedia.org/resource/SQL" id="link-id104d1c30">SQL</a>, XML, RDF, Web Services, Full Text etc.).<br /> <br /> <br /> <br /> <br />
CrunchBase gets hooked up with the Linked Data Web!
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-07-25#1395
2008-07-25T14:01:01Z
2008-07-29T21:43:27-04:00
<p>It's getting really hot in <a href="http://dbpedia.org/resource/Linked_Data" id="link-id15eea8f8">Linked Data</a> land! Two days ago <a href="http://bnode.org/about" id="link-id107e2f70">Benjamin Nowack</a> pinged the <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id11b93670">LOD</a> community about his <a href="http://lists.w3.org/Archives/Public/public-lod/2008Jul/0110.html" id="link-id1022a270">RDFization of Crunchbase</a> (sample (X)HTML view: http://cb.semsol.org/company/opera-software) courtesy of Crounchbase releasing an API. As you know, I've always equated <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Service API to Database CLIs (<a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id16327528">ODBC</a>, <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id1027f410">JDBC</a>, <a href="http://dbpedia.org/resource/ADO.NET" id="link-id10683850">ADO</a>.<a href="http://dbpedia.org/resource/ADO.NET" id="link-id13beb9b8">NET</a> etc.) as both offer code level hooks into <a href="http://dbpedia.org/resource/Data">Data</a> Spaces.</p> <p></p> <p></p> <p>Naturally, we've decided to join the Crunchbase RDFization party, and have just completed a <a href="http://virtuoso.openlinksw.com" id="link-id10282208">Virtuoso</a> <a href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id10acf0f8">Sponger</a> Cartridge (an RDFizer) for Crouncbase. What we add in our particular cartridge is additional meshing with <a href="http://dbpedia.org/resource/DBpedia" id="link-id115e2a98">DBpedia</a> and Wikicompany <a href="http://dbpedia.org/resource/Linked_Data" id="link-id132f0568">Linked Data</a> Spaces, plus RDFizaton of the Crunchbase (X)HTML pages :-)</p> <p></p> <p></p> <p>As I've postulated for a while, <a href="http://dbpedia.org/resource/Linked_Data" id="link-id13304010">Linked Data</a> is about data "Meshing" and "Meshups". This isn't a buzzword play. I am pointing out an important distinction between "Mashups" and "Meshpus". Which goes as follows: "Mashups" are about code level joining devoid of structured modelling, hence the revelation of code as opposed to data when you look behind a "Mashup". "Meshups" on the other hand, are about joining disparate structured data sources across the Web. And when you look behind a "Meshup" you see structured data (preferably <a href="http://dbpedia.org/resource/Linked_Data" id="link-id143bdb68">Linked Data</a>) that enables further "Meshing".</p> <p></p> <p></p> <p>I truly believe that we are now inches away from critical mass re. <a href="http://dbpedia.org/resource/Linked_Data" id="link-id14829640">Linked Data</a>, and because we are dealing with data, the network-effect will be sky-high! I shudder to think about the state of the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id0x1c41d150">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id133364e8">Web</a> in 12 months time. Yes, I am giving the explosion 12 months (or less). These are very exciting times.</p> <p></p> <p></p> <p>Demo Links:</p> <p></p> <p></p> <ul> <li> <a href="http://demo.openlinksw.com/ode/?uri%5B%5D=http%3A%2F%2Fcb.semsol.org%2Fcompany%2Fopera-software&" id="link-id12fe1dc8">Opera Software via Benjee's Linked Data Space for Cunchbase</a> </li> <li> <a href="http://demo.openlinksw.com/ode/?uri=http%3A%2F%2Fwww.crunchbase.com%2Fcompany%2Fopera-software" id="link-id10739a18">Opera Software via our Linked Data Space for Crunchbas</a> </li> </ul> <p></p> <p></p> <p>For best experience I encourage you to look at the <a href="https://addons.mozilla.org/en-US/firefox/addon/8062" id="link-id1499a0f8">OpenLink Data Explorer extension</a> for Firefox (2.x - 3.x). This enables you to go to Crunchbase (X)HTML pages (and other sites on the Web of course), and then simply use the "View | <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> Sources" main or <a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id10051b50">context</a> menu sequence to unveil the Linked Data Sources associated with any Web Page.</p> <p></p> <p>Of course there is much more to come!</p>
Reasoning Matters Contd
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-06-06#1373
2008-06-06T18:29:02Z
2008-06-06T14:38:54-04:00
<p>I just stumbled across a post titled: <a href="http://clarkparsia.com/weblog/2008/06/06/why-reasoning-matters-consistency-checking/" id="link-id11003f00">Why Reasoning Matters: Consistency Checking</a> from <a href="http://clarkparsia.com/about" id="link-id137e8bc0">Clark and Parsia</a> </p> <p>As you can see from my recent post about how we've started the process of <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1372" id="link-id100b7d20">inoculating DBpedia against the potential dangers of "contextual incoherence"</a>, we are entering a newer era in the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id106c35e0">Semantic Web</a>'s evolution. My post and the one from Clark & Parsia both touch different aspects of the "<a href="http://dbpedia.org/resource/Data">Data</a> Dictionary" for the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id0x9d80080">Semantic Web</a> issue.</p> <p>Note: in my universe of discourse, a Data Dictionary manifests when the constraints and class hierarchies defined in an ontology (e.g. a <a href="http://dbpedia.org/resource/World_Wide_Web">web</a> accessible shared ontology) are functionally bound to a data manager. Interestingly the binding can take the following forms:</p> <ul> <li>Engine Hosted - which is what you get with <a href="http://docs.openlinksw.com:80/virtuoso/rdfsparqlrule.html#rdfsparqlruleintro" id="link-id105c4408">Virtuoso's in-built Inference Engine</a> </li> <li>External - which is what you get when the Inference Engine is a distinct component from the data manager (example: <a href="http://pellet.owldl.org/owlgres" id="link-id13fa37f8">Owlgres</a> which can sit in front of 3rd party <a href="http://dbpedia.org/resource/SPARQL" id="link-id107127e8">SPARQL</a> endpoints via ARQ)</li> </ul> <p>The classification terminology I use above is very much off-the-cuff, its sole purpose is architectural distinction.</p> <p>Anyway, it's really nice to see that we are entering an era re. the <a href="http://dbpedia.org/resource/Semantic_Web">Semantic Web</a> vision, where the virtues of reasoning are getting simpler to demonstrate and articulate.</p> <p>In a nutshell, the point-point data integration era is coming to an end! The era of intelligent ontology based enterprise data integration is nigh!</p> <p>Of course, there is much more to come on the practical utility front, so stay tuned as we work our way through the <a href="http://dbpedia.org/resource/DBpedia" id="link-id10424078">DBpedia</a> inoculation program.</p>
DBpedia receives shot #1 of CLASSiness vaccine
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-06-05#1372
2008-06-05T17:11:34Z
2010-07-13T10:45:40-04:00
<p> The current live instance of <a href="http://dbpedia.org/resource/DBpedia" id="link-id107c7b60">DBpedia</a> has just received dose #1 of a series of planned "<a href="http://dbpedia.org/resource/Context_%28language_use%29" id="link-id10d3ec78">Context</a>" oriented booster shots. These shots seek to to protect <a href="http://dbpedia.org/resource/DBpedia" id="link-id143648f0">DBpedia</a> from contextual incoherence as it grows in <a href="http://dbpedia.org/resource/Data">data</a> set expanse and popularity. Dose #1 (vaccine label: <a href="http://www.mpi-inf.mpg.de/~suchanek/downloads/yago/" id="link-id16d497d0">Yago</a>) equips <a href="http://dbpedia.org/resource/DBpedia" id="link-id13f90120">DBpedia</a> with a functional (albeit non exclusive) Data Dictionary component courtesy of the <a href="http://www.mpi-inf.mpg.de/~suchanek/downloads/yago/" id="link-id10509a08">Yago</a> Class Hierarchy .</p> <p> When the <a href="http://dbpedia.org/resource/DBpedia" id="link-id10a1b378">DBpedia</a> & <a href="http://www.mpi-inf.mpg.de/~suchanek/downloads/yago/" id="link-id10934068">Yago</a> integration took place last year (around WWW2007, Banff) there was a little, but costly omission that occurred: nobody sought to load the <a href="http://www.mpi-inf.mpg.de/~suchanek/downloads/yago/" id="link-id106e47f0">Yago</a> Class Hierarchy into the <a href="http://virtuoso.openlinksw.com" id="link-id13f90890">Virtuoso</a>'s Inference Engine :-(</p> <p> Anyway, the Class Hierarchy has now been loaded into the <a href="http://virtuoso.openlinksw.com" id="link-id100004f8">Virtuoso</a>'s inference engine (as <a href="http://virtuoso.openlinksw.com" id="link-id139900e8">Virtuoso</a> Inference Rules) and the following queries are now feasible using the live <a href="http://virtuoso.openlinksw.com" id="link-id109b02c8">Virtuoso</a> based <a href="http://dbpedia.org/resource/DBpedia" id="link-id143624d8">DBpedia</a> instance hosted by <a href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id12f918c0">OpenLink Software</a>:</p> <p> -- Find all Fiction Books associated with a property "dbpedia:name" that has literal value: Â "The Lord of the Rings" .</p> <p> <span _fck_bookmark="1" style="display: none; ">Â </span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">DEFINE input:inference "http://dbpedia.org/resource/inference/rules/yago#"<br /> </span></span> </p> <p> <span style="font-size:16px;"> <span style="font-family:courier new,courier,monospace;"><span class="Apple-style-span">PREFIX rdf: &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt;</span> </span></span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">PREFIX dbpedia: &lt;http://dbpedia.org/property&gt;</span></span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">PREFIX yago: &lt;http://dbpedia.org/class/yago&gt;&nbsp;</span></span> </p> <div> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;"><br /> </span></span> </div> <div> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">SELECT DISTINCT Â ?s</span></span> </div> <div> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">FROM < xmlns="http" dbpedia.org="dbpedia.org">//dbpedia.org></span></span> </div> <div> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">WHERE {</span></span> </div> <div> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">?s a yago:Fiction106367107 .</span></span> </div> <div> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">?s dbpedia:name "The Lord of the Rings"@en .</span></span> </div> <div> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">}</span></span> </div> <p> -- Variant of query with <a href="http://virtuoso.openlinksw.com" id="link-id10870920">Virtuoso</a>'s Full Text Index extension via the bif:contains function/magic predicate</p> <p> <span style="font-size:14px;"><span style="font-family:courier new,courier,monospace;">DEFINE input:inference "http://dbpedia.org/resource/inference/rules/yago#"</span></span> </p> <p> <span style="font-size:14px;"><span style="font-family:courier new,courier,monospace;">PREFIX rdf: &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt;</span></span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">PREFIX dbpedia: &lt;http://dbpedia.org/property&gt;</span></span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">PREFIX yago: &lt;http://dbpedia.org/class/yago&gt;&nbsp;</span></span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">SELECT DISTINCT ?s ?n</span></span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">FROM < xmlns="http" dbpedia.org="dbpedia.org">//dbpedia.org></span></span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">WHERE {</span></span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">?s a yago:Fiction106367107 .</span></span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">?s dbpedia:name ?n .</span></span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">?n bif:contains 'Lord and Rings'</span></span> </p> <p> <span style="font-size:16px;"><span style="font-family:courier new,courier,monospace;">}</span></span> </p> <p> -- Retrieve all individuals instances of Fiction Class which should include all Books.</p> <p> <span style="font-family:courier new,courier,monospace;"><span style="font-size:16px;">DEFINE input:inference "http://dbpedia.org/resource/inference/rules/yago#"<br /> </span></span> </p> <p> <span style="font-family:courier new,courier,monospace;"> <span style="font-size:16px;"><span class="Apple-style-span">PREFIX rdf: &lt;http://www.w3.org/1999/02/22-rdf-syntax-ns#&gt;</span> </span></span> </p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"> <span style="font-family:courier new,courier,monospace;"><span style="font-size:16px;">PREFIX dbpedia: &lt;http://dbpedia.org/property&gt;<br /> </span></span> </p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"> <span style="font-family:courier new,courier,monospace;"><br /> </span> </p> <p style="margin: 0.0px 0.0px 0.0px 0.0px; font: 12.0px Helvetica"> <span style="font-family:courier new,courier,monospace;"><span style="font-size:16px;">PREFIX yago: &lt;http://dbpedia.org/class/yago&gt;&nbsp;</span></span> </p> <div> <span style="font-family:courier new,courier,monospace;"><br /> </span> </div> <div> <span style="font-family:courier new,courier,monospace;">SELECT DISTINCT ?s</span> </div> <div> <span style="font-family:courier new,courier,monospace;">FROM < xmlns="http" dbpedia.org="dbpedia.org">//dbpedia.org></span> </div> <div> <span style="font-family:courier new,courier,monospace;">WHERE {</span> </div> <div> <span style="font-family:courier new,courier,monospace;">?s a yago:Fiction106367107 .</span> </div> <div> <span style="font-family:courier new,courier,monospace;">} LIMIT 50</span> </div> <p> Note: you can also move the inference pragmas to the <a href="http://virtuoso.openlinksw.com" id="link-id13dd0d20">Virtuoso</a> Sever side i.e place the inference rules in a server instance config file, thereby negating the need to place "define input:inference 'http://dbpedia.org/resource/inference/rules/yago#'" pragmas directly in your <a href="http://dbpedia.org/resource/SPARQL" id="link-id10dddd08">SPARQL</a> queries.</p> <h3> Related</h3> <ul> <li> Mike's <a href="http://www.mkbergman.com/?p=431" id="link-id13f2f318">UMBEL: Making Linked Data Classy</a>post</li> <li> Fred's announcement about the <a href="http://fgiasson.com/blog/index.php/2007/12/20/second-version-of-yago-more-facts-and-entities/" id="link-id10a1b178">Yago revamp en route to UMBEL</a> </li> <li> <uo> <a href="http://fgiasson.com/blog/index.php/2008/04/20/exploding-the-domain-umbel-web-services-by-zitgist/" id="link-id14363358">Expanding Data Object Domains via UMBEL</a> </uo> </li> <li> My <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=umbel&type=text&output=html" id="link-id1101ca98">Prior posts about UMBEL</a> </li> </ul>
Linked Data Trip Report - Part 1 (Update 2)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-04-28#1343
2008-04-28T18:48:33Z
2008-04-29T11:07:43.000002-04:00
<p>Typo cleansed edition :-)</p> <h2>Objectives</h2> <ul> <li>Meet <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id12c52e40">LOD</a> Community Members</li> <li>Participate in Workshop </li> </ul> <h3>Meeting <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id10456058">LOD</a> Community Members</h3> <p>Although the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> continues to shrink the planet by removing the restrictions of geopgrahic location, meeting people face-to-face remains invaluable (*priceless in Mastercard AD speak*). Naturally, meeting and chatting with as many <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id1382d4f8">LOD</a> community members as possible was high up on my agenda.</p> <h3>Participate in Workshop </h3> <p>As one of the co-chairs of the Linking Open <a href="http://dbpedia.org/resource/Data" id="link-id143a8c30">Data</a> Workshop (<a href="http://events.linkeddata.org/ldow2008/" id="link-id10621d70">LODW</a>), I had a 5 minute workshop opening slot during which I spoke about the following:</p> <h4>Where we are today: </h4> <p>We have <a href="http://dbpedia.org/resource/DBpedia" id="link-id109b40a0">DBpedia</a> as a major hub on the burgeoning <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1074f248">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id101ed948">Web</a>. When OpenLink offered to host <a href="http://dbpedia.org/resource/DBpedia" id="link-id10cd1b20">DBpedia</a> (a combination of <a href="http://virtuoso.openlinksw.com" id="link-id13d19880">Virtuoso</a> DBMS Software and sizable backend Hardware infrastructure), it did so knowing that such an effort would emphatically address the "chicken and egg" conundrum that, prior to this undertaking, stifled the ability to demonstrate practical utility of <a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol" id="link-id13835980">HTTP</a> based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id14a89c28">Linked Data</a>.<br /> <br /> Today, the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10aa9fe0">Linked Data</a> bootstrap mission has been accomplished.</p> <h4>Where we go next:</h4> <p>Although <a href="http://dbpedia.org/resource/DBpedia" id="link-id12fe5d98">DBpedia</a> is a hub (ground zero of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id14aca9b8">Linked Data</a>), we have to put it into perspective in relation to a new set of needs and expectations moving forward. Today, <a href="http://dbpedia.org/resource/DBpedia" id="link-id1027f098">DBpedia</a> is a Sun at the heart of a Solar System within the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id14a6adf8">Linked Data</a> Galaxy. But unlike Space as we know it, in <a href="http://dbpedia.org/resource/Cyberspace" id="link-id14a80398">Cyberspace</a> we can have connectivity and collaboration across Solar Systems -- life exists elsewhere and we are part of a collaborative collective unimpeded by constraints of space travel etc. Thus, expect to see the emergence of other Solar Systems accessible to <a href="http://dbpedia.org/resource/DBpedia" id="link-id14904998">DBpedia</a> and its collections of planets (see. <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id1097d200">LOD</a> <a href="http://richard.cyganiak.de/2007/10/lod/" id="link-id14acecf0">diagram</a>). Examples underway include <a href="http://umbel.org/about/" id="link-idfe92c08">UMBEL</a> which will serve the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id107fac40">Linked Data</a> planets from <a href="http://dbpedia.org/resource/Cyc" id="link-id12fb9e88">OpenCyc</a> (Subject Matter Concepts), <a href="http://www.mpi-inf.mpg.de/~suchanek/downloads/yago/" id="link-id147ea790">Yago</a> (<a href="http://dbpedia.org/resource/Named_entity_recognition" id="link-id14ae83a8">Named Entities</a>), and <a href="http://www.bio2rdf.org/" id="link-id10890640">Bio2RDF</a> (which provides powerful Bio Informatics based <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1439a858">Linked Data</a> planet).</p> <p>I urged the community to veer more aggressively towards developing and demonstrating practical <a href="http://dbpedia.org/resource/Linked_Data" id="link-id11f8e188">Linked Data</a> driven solutions that are aligned to well known problems. Of course, I encouraged all presenters to make this an integral part of their presentations :-) </p> <h4>Workshop Summary: </h4> <p>The workshop was well attended and I found all the presentations engaging and full of enthusiasm. </p> <p>As the sessions progressed, it became clear during a number of accompanying Q&A sessions that a new <a href="http://dbpedia.org/resource/Linked_Data" id="link-idff249b0">Linked Data</a> exploitation frontier is emerging. The frontier in question takes the form of a <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10f73b50">Linked Data</a> substrate capable of addressing the taxonomic needs of solutions aimed at automated <a href="http://dbpedia.org/resource/Named_entity_recognition" id="link-id10d16e00">Named Entity Extraction</a>, Disambiguation, Subject matter Concept alignment, transparently integrated with existing Web Content. Thus, we are moving beyond the minting and deployment of of dereferencable URIs and <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id10419210">RDF</a> <a href="http://dbpedia.org/resource/Data" id="link-id151520d0">data</a> sets to automagically associating existing Web Content with <a href="http://dbpedia.org/resource/Named_entity_recognition" id="link-id105573b0">Named Entities</a> (People, Organizations, Places, Events etc..) and Subject matter Concepts (Politics, Music, Sports, and others) while remaining true to the <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id14579108">Linking Open Data Community</a> creed i.e. ensuring the Named <a href="http://dbpedia.org/resource/Entity" id="link-id147d31e8">Entity</a> and Subject matter Concept URIs are available to user agents or users seeking to produce alternative <a href="http://dbpedia.org/resource/Data" id="link-id14ae41f0">data</a> views (i.e. Mesh-ups).</p> <p>I will get to part 2 of this report once the actual workshop sessions slides go live (*these are different from the <a href="http://events.linkeddata.org/ldow2008/" id="link-id1034eee8">pre-event PDFs links</a>*).</p>
Linked Data Illustrated and a Virtuoso Functionality Reminder
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-04-28#1342
2008-04-28T17:32:47Z
2008-04-28T14:47:06.000001-04:00
<a href="http://myopenlink.net/dataspace/person/danieljohnlewis#this" id="link-id156ceb30">Daniel Lewis</a> has put together a nice <a href="http://vanirsystems.com/danielsblog/2008/04/27/linked-data-the-role-of-the-data-server/" id="link-id10456040">collection of Linked Data related posts</a> that illustrate the fundamentals of the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1033f6f0">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id106fa168">Web</a> and the vital role that <a href="http://virtuoso.openlinksw.com" id="link-id10141c20">Virtuoso</a> plays as a deployment platform. Remember, <a href="http://virtuoso.openlinksw.com" id="link-id10301e38">Virtuoso</a> was architected in 1998 (see <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSHistory" id="link-id10c44088">Virtuoso History</a>) in anticipation of the eventual <a href="http://dbpedia.org/resource/Internet" id="link-id1383a1e8">Internet</a>, <a href="http://dbpedia.org/resource/Intranet" id="link-id1028e770">Intranet</a>, and <a href="http://dbpedia.org/resource/Extranet" id="link-id14b07b40">Extranet</a> level requirements for a different kind of Server. At the time of <a href="http://virtuoso.openlinksw.com" id="link-id14ad24a8">Virtuoso</a>'s inception, many thought our desire to build a multi-protocol, multi-model, and multi-purpose, virtual and native <a href="http://dbpedia.org/resource/Data" id="link-id108dac48">data</a> server was sheer craziness, but we pressed on (courtesy of our vision and technical capabilities). Today, we have a very sophisticated <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id14a65d48">Universal Server</a> Platform (in Open Source and Commercial forms) that is naturally equipped to do the following via very simple interfaces: <ul> - Produce <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id11fb1170">RDF</a> <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10871da8">Linked Data</a> from non <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id156ec3d0">RDF</a> <a href="http://dbpedia.org/resource/Data" id="link-id10f0ca38">Data</a> Sources (Heterogeneous <a href="http://dbpedia.org/resource/SQL" id="link-id15133078">SQL</a>, XML, <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> Services)</ul> <ul> - Provide highly scalable <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id10585940">RDF</a> <a href="http://dbpedia.org/resource/Data" id="link-id15151e10">Data</a> Management via a Quad Store (<a href="http://dbpedia.org/resource/DBpedia" id="link-id1530d640">DBpedia</a> is an example of a live demonstration)</ul> <ul> - Sophisticated Deployment of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10141c80">Linked Data</a> that exploits the power of <a href="http://dbpedia.org/resource/SPARQL" id="link-id1064fa18">SPARQL</a> </ul> <ul> - Powerful WebDAV innovations that simplify read-write mode interaction with <a href="http://dbpedia.org/resource/Linked_Data" id="link-id1396ff68">Linked Data</a> </ul> <ul> - Use Web <a href="http://dbpedia.org/resource/Federated_database_system" id="link-id108256e8">Data Virtualization</a> to address the pain and frustration associated with Web <a href="http://dbpedia.org/resource/Data" id="link-id147e65f8">Data</a> Silos (e.g. <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-idffaf078">OpenLink Data Spaces</a> layer stop <a href="http://virtuoso.openlinksw.com" id="link-id14ae8fe8">Virtuoso</a> that delivers <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-id0xa0fb5e40">Personal Data Spaces</a> / Unified Storage in the Clouds) </ul> <ul> - Deliver a <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10869700">Linked Data</a> development and deployment platform to .<a href="http://dbpedia.org/resource/.NET_Framework" id="link-id1514cac0">NET</a> (<a href="http://dbpedia.org/resource/Visual_Basic" id="link-id10c107a8">VB</a>, <a href="http://dbpedia.org/resource/C_(programming_language)" id="link-id101f3c68">C</a>#) , Java, <a href="http://dbpedia.org/resource/PHP" id="link-id106e4710">PHP</a>, <a href="http://dbpedia.org/resource/Ruby_programming_language" id="link-id10277448">Ruby</a>, <a href="http://dbpedia.org/resource/Perl" id="link-id10a75748">Perl</a>, <a href="http://dbpedia.org/resource/Python_programming_language" id="link-id12fdb118">Python</a>, '<a href="http://dbpedia.org/resource/C_(programming_language)" id="link-id10c9d9e0">C</a>', <a href="http://dbpedia.org/resource/C%2B%2B" id="link-id10392400">C++</a>, and other developers </ul> <ul>- More...</ul>
Linked Data enabling PHP Applications
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-04-10#1334
2008-04-10T18:09:49Z
2008-04-10T14:12:47-04:00
<p> <a href="http://myopenlink.net/dataspace/person/danieljohnlewis#this" id="link-id10820610">Daniel lewis</a> has penned a variation of post about <a href="http://vanirsystems.com/danielsblog/2008/04/10/simplified-adding-wordpress-blogs-into-the-linked-data-web-using-virtuoso/" id="link-id10827948">Linked Data enabling PHP applications</a> such as: <a href="http://dbpedia.org/resource/WordPress" id="link-id10426278">Wordpress</a>, <a href="http://dbpedia.org/resource/PhpBB" id="link-id13f431c0">phpBB3</a>, <a href="http://dbpedia.org/resource/MediaWiki" id="link-id10dd8760">MediaWiki</a> etc.</p> <p>Daniel simplifies my post by using diagrams to depict the different paths for <a href="http://dbpedia.org/resource/PHP" id="link-id10adcc08">PHP</a> based applications exposing <a href="http://dbpedia.org/resource/Linked_Data" id="link-id107b4e60">Linked Data</a> - especially those that already provide a significant amount of the content that drives <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id13b0ab48">Web</a> 2.0.</p> <p>If all the content in <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id0x1d499470">Web</a> 2.0 <a href="http://dbpedia.org/resource/Information" id="link-id12bd3b10">information</a> resources are distillable into discrete <a href="http://dbpedia.org/resource/Data" id="link-id10962060">data</a> objects endowed with <a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol" id="link-id176a30e8">HTTP</a> based IDs (URIs), with zero "<a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=rdf%20tax&type=text&output=html" id="link-id1098bcd8">RDF handcrafting Tax</a>", what do we end up with? A <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id1372ce88">Giant Global Graph</a> of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id0xa29f0658">Linked Data</a>; the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> as a Database.</p> <p>So, what used to apply exclusively, within enterprise settings re. <a href="http://dbpedia.org/resource/Oracle_Database" id="link-id12d91448">Oracle</a>, <a href="http://dbpedia.org/resource/IBM_DB2" id="link-id13dd27d8">DB2</a>, <a href="http://dbpedia.org/resource/IBM_Informix" id="link-id108e6b98">Informix</a>, <a href="http://dbpedia.org/resource/Ingres" id="link-id13383708">Ingres</a>, <a href="http://dbpedia.org/resource/Sybase" id="link-idfed8aa8">Sybase</a>, <a href="http://dbpedia.org/resource/Microsoft_SQL_Server" id="link-id10b8b190">Microsoft SQL Server</a>, <a href="http://dbpedia.org/resource/MySQL" id="link-id13066ea8">MySQL</a>, PostrgeSQL, Progress Open Edge, <a href="http://dbpedia.org/resource/Firebird_database_server" id="link-id104f0a78">Firebird</a>, and others, now applies to the Web. The Web becomes the "<a href="http://dbpedia.org/resource/federated_database_system" id="link-id105a5340">Distributed Database</a> Bus" that connects database records across disparate databases (or <a href="http://dbpedia.org/resource/Data" id="link-id0xc706c68">Data</a> Spaces). These databases manage and expose records that are remotely accessible "by reference" via <a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol" id="link-id0x1c8f7fe0">HTTP</a>.</p> <p>As I've stated at every opportunity in the past, Web 2.0 is the greatest thing that every happened to the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id13d65278">Semantic Web</a> vision :-) Without the "<a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=Web%202.0%20%20conundrum&type=text&output=html" id="link-id100d16d0">Web 2.0 Data Silo Conundrum</a>" we wouldn't have the cry for "<a href="http://dbpedia.org/resource/Data">Data</a> Portability" that brings a lot of clarity to some fundamental Web 2.0 limitations that end-users ultimately find unacceptable.</p> <p> In the late '80s, the <a href="http://dbpedia.org/resource/SQL" id="link-idff4f0d0">SQL</a> <a href="http://dbpedia.org/resource/SQL_Access_Group" id="link-id138fbd40">Access Group</a> (now part of <a href="http://dbpedia.org/resource/X/Open" id="link-id104ee010">X</a>/<a href="http://dbpedia.org/resource/X/Open" id="link-id0xac9eab8">Open</a>) addressed a similar problem with <a href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id106d2008">RDBMS</a> silos within the enterprise that lead to the SAG <a href="http://dbpedia.org/resource/Call_Level_Interface" id="link-id105d45d0">CLI</a> which is exists today as Open Database Connectivity.</p> <p>In a sense we now have WODBC (Web Open Database Connectivity), comprised of Web Services based CLIs and/or traditional back-end DBMS CLIs (<a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id13f58708">ODBC</a>, <a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id10aa81e0">JDBC</a>, <a href="http://dbpedia.org/resource/ADO.NET" id="link-id5fddb68">ADO</a>.<a href="http://dbpedia.org/resource/ADO.NET" id="link-id0x9f085a10">NET</a>, OLE-DB, or Native), Query Language (<a href="http://dbpedia.org/resource/SPARQL" id="link-id10adb5c8">SPARQL</a> Query Language), and a Wire Protocol (<a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol">HTTP</a> based <a href="http://www.w3.org/TR/rdf-sparql-protocol/" id="link-id126fa068">SPARQL Protocol</a>) delivering Web infrastructure equivalents of <a href="http://dbpedia.org/resource/SQL" id="link-id0x1d0a5fc8">SQL</a> and RDA, but much better, and with much broader scope for delivering profound value due to the Web's inherent openness. Today's <a href="http://dbpedia.org/resource/PHP" id="link-id0xc88ed68">PHP</a>, <a href="http://dbpedia.org/resource/Python_programming_language" id="link-id10a70530">Python</a>, <a href="http://dbpedia.org/resource/Ruby_programming_language" id="link-id13d9da18">Ruby</a>, <a href="http://dbpedia.org/resource/Tcl" id="link-id10a3c2a8">Tcl</a>, <a href="http://dbpedia.org/resource/Perl" id="link-id13e1b6f0">Perl</a>, <a href="http://dbpedia.org/resource/ASP.NET" id="link-id10810388">ASP</a>.<a href="http://dbpedia.org/resource/ASP.NET" id="link-id0xa22ce378">NET</a> developer is the enterprise <a href="http://dbpedia.org/resource/4GL" id="link-id1396a500">4GL</a> developer of yore, without enterprise confinement. We could even be talking about <a href="http://dbpedia.org/resource/5GL" id="link-id1077f250">5GL</a> development once the <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> interaction is meshed with dynamic languages (delivering higher levels of abstraction at the language and data interaction levels). Even the underlying schemas and basic design will evolve from <a href="http://dbpedia.org/resource/Closed_world_assumption" id="link-id10b280c8">Closed World</a> (solely) to a mesh of Closed & <a href="http://dbpedia.org/resource/Open_world_assumption" id="link-id104b9978">Open World</a> view schemas.</p>
Adding Wordpress Blogs into the Linked Data Web using Virtuoso
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-04-09#1333
2008-04-09T21:27:34Z
2008-04-10T12:33:05.000003-04:00
<p> <a href="http://dbpedia.org/resource/WordPress" id="link-id101103b0">Wordpress</a> is a Weblog platform comprised of the following: </p> <ol> <li>User Interface - <a href="http://dbpedia.org/resource/PHP" id="link-id107ba368">PHP</a> </li> <li>Application Logic - <a href="http://dbpedia.org/resource/PHP" id="link-id107066b8">PHP</a> </li> <li> <a href="http://dbpedia.org/resource/Data" id="link-id13968340">Data</a> Storage (<a href="http://dbpedia.org/resource/SQL" id="link-id104c5350">SQL</a> <a href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id1076d790">RDBMS</a>) - <a href="http://dbpedia.org/resource/MySQL" id="link-id109c4ea0">MySQL</a> via <a href="http://dbpedia.org/resource/PHP" id="link-id133af570">PHP</a>-<a href="http://dbpedia.org/resource/MySQL" id="link-idf0b03b0">MySQL</a> </li> <li> <a href="http://dbpedia.org/resource/Application_server" id="link-id13217630">Application Server</a> - <a href="http://dbpedia.org/resource/Apache" id="link-id108219d8">Apache</a> </li> </ol> <p>In the form above (the norm), <a href="http://dbpedia.org/resource/WordPress" id="link-id105c6d88">Wordpress</a> <a href="http://dbpedia.org/resource/Data" id="link-id104938f8">data</a> can be injected into the <a href="http://dbpedia.org/resource/Linked_Data" id="link-id107a5f18">Linked Data</a> <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id177329c0">Web</a> via RDFization middleware such as the<a href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id10531b50">Virtuoso Sponger</a> (built into all <a href="http://virtuoso.openlinksw.com" id="link-id10d7e710">Virtuoso</a> instances) and <a href="http://triplr.org/" id="link-id107dcab8">Triplr</a>. The downside of this approach is that the <a href="http://dbpedia.org/resource/Blog" id="link-id1055ab68">blog</a> owner doesn't necessary possess full control over their contributions to the emerging <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-idfed0358">Giant Global Graph</a> or <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10d70668">Linked Data</a>.</p> <p>Another route to <a href="http://dbpedia.org/resource/Linked_Data" id="link-id104c7f68">Linked Data</a> exposure is via <a href="http://virtuoso.openlinksw.com" id="link-id0xa255fb50">Virtuoso</a>'s Metaschema Language for producing <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id10968388">RDF</a> Views over <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id13f594c8">ODBC</a>/<a href="http://dbpedia.org/resource/Java_Database_Connectivity" id="link-id138f69a8">JDBC</a> accessible <a href="http://dbpedia.org/resource/Data" id="link-id1393c068">Data</a> Sources, that enables the following setup:</p> <ol> <li>User Interface - <a href="http://dbpedia.org/resource/PHP" id="link-id0x9fb9c478">PHP</a> </li> <li>Application Logic - PHP </li> <li> <a href="http://dbpedia.org/resource/Data" id="link-id0xc605960">Data</a> Storage (<a href="http://dbpedia.org/resource/SQL" id="link-id0xc2be608">SQL</a> <a href="http://dbpedia.org/resource/Relational_database_management_system" id="link-id0xc7a28a8">RDBMS</a>) - <a href="http://dbpedia.org/resource/MySQL" id="link-id0xc7228f0">MySQL</a> via the PHP-MySQL <a href="http://dbpedia.org/resource/Data">data</a> access interface </li> <li> <a href="http://dbpedia.org/resource/Virtual_Database" id="link-id134b1ee8">Virtual Database</a> linkage of MySQL Tables into Virtuoso </li> <li> <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-idfe31548">RDF</a> View generated over the Virtual SQL Tables </li> <li> <a href="http://dbpedia.org/resource/Application_server" id="link-id0xb8dfa68">Application Server</a> - Virtuoso which provides <a href="http://dbpedia.org/resource/Linked_Data" id="link-id0xc149518">Linked Data</a> Deployment such that <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id10ad9ca0">RDF</a> <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> is exposed when requested by <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-idfd352e0">Web</a> User Agents.</li> </ol> <p>Alternatively, you can also exploit Virtuoso as the SQL DBMS, <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id0x9ec4f440">RDF</a> DBMS, Application Server, and Linked Data Deployment platform:</p> <ol> <li>User Interface - PHP </li> <li> Application Logic - PHP </li> <li>Data Storage (SQL RDBMS) - Virtuoso via PHP-<a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id14197218">ODBC</a> data access interface (* <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id103d1a80">ODBC</a> is Virtuoso's native SQL CLI/API *) </li> <li><a href="http://dbpedia.org/resource/Resource_Description_Framework">RDF</a> View generated over the Native SQL Tables </li> <li>Application Server - Virtuoso which provides Linked Data Deployment such that RDF Linked Data is exposed when requested by <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id13918d68">Web</a> User Agents (e.g. <a href="http://demo.openlinksw.com/rdfbrowser" id="link-idff835f0">OpenLink RDF Browser</a>, <a href="http://zitgist.com/about/" id="link-id1372e510">Zitgist</a> <a href="http://dataviewer.zitgist.com" id="link-id109c3048">Data Viewer</a>, <a href="http://www4.wiwiss.fu-berlin.de/rdf_browser" id="link-id105d97f0">DISCO Hyperdata Browser</a>, and <a href="http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html" id="link-id10cc20d8">Tabulator</a>). </li> </ol> <h2 align="left">Benefits?</h2> <ul> <li>Each user account gets a proper Linked Data <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id108c92b0">URI</a> (ID) that can me meshed/smushed with other IDs (so you add data from this new <a href="http://dbpedia.org/resource/Blog" id="link-idfd39648">blog</a> space to other linked data sources associated with you other URIs/IDs) </li> <li>Each post gets a proper <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id10add540">URI</a> All data is now query-able via <a href="http://dbpedia.org/resource/SPARQL" id="link-id101b98f0">SPARQL</a> Discoverability increases exponentially (without drop in relevance in either direction i.e. discovering or being discovered)</li> </ul> <p>How Do I map the <a href="http://dbpedia.org/resource/WordPress" id="link-id12e448c0">WordPress</a> SQL Schema to RDF using Virtuoso? </p> <ul> <li>Determine the RDF Schema or Ontologies that define the Classes for which you will be producing instance data (e.g. SIOC and FOAF) </li> <li>Declare <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-idfaf5c80">URI</a>/IRI generator functions (*special Virtuoso functions*) </li> <li>Use <a href="http://dbpedia.org/resource/SPARQL" id="link-id100436b8">SPARQL</a> Graph patterns to apply <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id0x9de74950">URI</a>/IRI generator functions to Tables, Views, Table Values mode Stored Procedures, Query Resultsets as part of RDBMS to RDF mapping </li> </ul> <p> Read the <a href="http://virtuoso.openlinksw.com/dataspace/dav/wiki/Main/VOSSQL2RDF" id="link-idfaf5d58">Meta Schema Language guide</a> or simply apply our "<a href="http://dbpedia.org/resource/WordPress" id="link-id0x9ef73c78">WordPress</a> SQL Schema to RDF" script to your Virtuoso hosted instance. Of course, there are other mappings that cover other PHP applications deployed via Virtuoso:</p> <ul> <li> <a href="http://dbpedia.org/resource/PhpBB" id="link-id179f4870">phpBB3</a> SQL Schema to RDF </li> <li> <a href="http://dbpedia.org/resource/Drupal" id="link-id10b263d8">Drupal</a> SQL Schema to RDF </li> <li> <a href="http://dbpedia.org/resource/MediaWiki" id="link-id10263a40">MediaWiki</a> SQL Schema to RDF </li> </ul> <h2>Live Demos?</h2> <ul> <li> <a href="http://demo.openlinksw.com/phpBB3" id="link-id17761e88">Virtuoso Hosting phpBB3</a> (<a href="http://demo.openlinksw.com/phpBB3/user/demo#this" id="link-id10087e68">example User URI</a>)</li> <li> <a href="http://demo.openlinksw.com/drupal" id="link-id1091f1d8">Virtuoso Hosting Drupal</a> (<a href="http://demo.openlinksw.com/drupal/user/demo#this" id="link-id13e3d468">example User URI</a>)</li> <li> <a href="http://demo.openlinksw.com/mediawiki" id="link-id10531be0">Virtuoso Hosting MediaWiki</a> (<a href="http://demo.openlinksw.com/mediawiki/user/KingsleyIdehen#this" id="link-id109c5d40">example User URI</a>)</li> </ul>
Semantic Web Patterns: A Guide to Semantic Technologies (Update 2)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-03-27#1329
2008-03-27T00:08:13Z
2008-07-16T21:43:36-04:00
<p>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 <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-id0x194f56f0">OpenLink Data Spaces</a>. </p> <p> <a href="http://www.readwriteweb.com" id="link-id0x1bddde00">ReadWriteWeb</a> via <a href="http://alexiskold.wordpress.com/" id="link-id154ae848">Alex Iskold's post</a> have delivered another iteration of their "Guide to Semantic Technologies". </p> <p>If you look at the title of this post (and <a href="http://feeds.feedburner.com/%7Er/readwriteweb/%7E3/257943334/semantic_web_patterns.php" id="link-id10a9a900">their article</a>) 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 "<a href="http://dbpedia.org/resource/Semantic_Web" id="link-id0x15ccef28">Semantic Web</a>" as prescribed by <a href="http://www.w3.org/People/Berners-Lee/card#i" id="link-id0xb94a2d40">TimBL</a> then they are completely missing the essence of the whole subject, and demonstrably so I may add, since the entities: "<a href="http://www.readwriteweb.com">ReadWriteWeb</a>" and "<a href="http://www.linkedin.com/in/iskold" id="link-id0x19960308">Alex Iskold</a>" are only describable today via the attributes of the documents they publish i.e their respective blogs and hosted <a href="http://dbpedia.org/resource/Blog" id="link-id0x1a719968">blog</a> posts.</p> <blockquote> <p>Preoccupation with Literal objects as describe above, implies we can only take what "ReadWriteWeb" and "<a href="http://www.linkedin.com/in/iskold">Alex Iskold</a>" say "Literally" (<a href="http://dbpedia/resource/Grep" id="link-id0xbc8568f8">grep</a>, <a href="http://dbpedia.org/resource/regular_expression" id="link-id0x1d915e70">regex</a>, and <a href="http://dbpedia.org/resource/XPath" id="link-id0xbc617820">XPath</a>/<a href="http://dbpedia.org/resource/XQuery" id="link-id0x150e1c50">Xquery</a> 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 "About Page" blurb), no <a href="http://dbpedia.org/resource/Data">data</a> 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.</p> </blockquote> <p><a href="http://www.w3.org/People/Berners-Lee/card#i">TimBL</a>'s vision as espoused via the "<a href="http://dbpedia.org/resource/Semantic_Web">Semantic Web</a>" vision is about the production, consumption, and sharing of Data Objects via HTTP based Identifiers called URIs/IRIs (<a href="http://dbpedia.org/resource/Linked_Data" id="link-id0xb867ced0">Hyperdata</a> Links / <a href="http://dbpedia.org/resource/Linked_Data" id="link-id0x3c8f438">Linked Data</a>). It's how we use the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> as a <a href="http://dbpedia.org/resource/federated_database_system" id="link-id0xbcb04f20">Distributed Database</a> where (as <a href="http://www.cs.umd.edu/~hendler/2003/foaf.rdf#jhendler" id="link-id0xb8595f18">Jim Hendler</a> once stated with immense clarity): I can point to records (<a href="http://dbpedia.org/resource/Entity" id="link-id0xbc9c8ab8">entity</a> instances) in your database (aka <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id0x3b911c0">Data Space</a>) from mine. Which is to say that if we can all point to data entities/objects (not just data entities of type "Document") 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 "Federated and Open" nature of the Web.</p> <p>As I stated in a prior post, if you or your platform of choice aren't producing de-referencable URIs for your data objects, you may be Semantic (this data model predates the Web), but there is no "<a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id0xbcb968b0">World Wide Web</a>" in what you are doing.</p> <h2>What are the Benefits of the Semantic Web?</h2> <ul> <strong>Consumer</strong> - "Discovery of relevant things" and be being "Discovered by relevant things" (people, places, events, and other things)</ul> <ul> <strong>Enterprise</strong> - 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..)</ul> <h2>Simple demo:</h2> <blockquote> <p>I am a <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id0x150661b0">Kingsley Idehen</a>, a Person who authors <a href="http://www.openlinksw.com/blog/~kidehen" id="link-id0x3b956d0">this weblog</a>. I also share bookmarks gathered over the years across an array of subjects via <a href="http://myopenlink.net/dataspace/kidehen/bookmark/KingsleyBookmarks" id="link-id0x164fecb0">my bookmark data space</a>. I also subscribe to a number of RSS/Atom/RDF feeds, which I share via my feeds subscription data <a href="http://en.wikipedia.org/wiki/Data_Spaces">space</a>. Of course, all of these data sources have Tags which are collectively exposed via my <a href="http://myopenlink.net/dataspace/kidehen/weblog/MyBlogDataSpace/tagcloud" id="link-id0x15188c50">weblog tag-cloud</a>, feeds subscriptions <a href="http://dbpedia.org/resource/Tag" id="link-id0x5f38b98">tag</a>-cloud, and <a href="http://myopenlink.net/dataspace/kidehen/bookmark/KingsleyBookmarks/tagcloud" id="link-id0xb93c2a50">bookmarks tag-cloud</a> data spaces.</p> <p>As I don't like repeating myself, and I hate wasting my time or the time of others, I simply share <a href="http://myopenlink.net/dataspace/kidehen" id="link-id0x3aeba98">my Data Space</a> (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 <a href="http://dbpedia.org/resource/Information" id="link-id0x14e35d78">information</a> (perspectives) that is hopefully exposed others via the Web.</p> </blockquote> <p>Bottom-line, the Semantic Web is about adding the missing "Open Data Access & Connectivity" feature to the current Document Web (we have to beyond <a href="http://dbpedia.org/resource/regular_expression">regex</a>, <a href="http://dbpedia/resource/Grep">grep</a>, <a href="http://dbpedia.org/resource/XPath">xpath</a>, <a href="http://dbpedia.org/resource/XQuery">xquery</a>, <a href="http://dbpedia.org/resource/Full_text_search" id="link-id0x1c1bf9c8">full text search</a>, and other literal scrapping approaches). The <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id0x14c9e0e8">Web</a> of de-referencable data object URIs is the critical foundation layer that makes this feasible.</p> <p> Remember, It's not about "Applications" it's about Data and actually freeing Data from the "tyranny of Applications". Unfortunately, application inadvertently always create silos (esp. on the Web) since <a href="http://dbpedia.org/resource/Entity">entity</a> data modeling, open data access, and other database technology realm matters, remain of secondary interest to many application developers.</p> <p>Final comment, RDF facilitates Linked Data on the Web, but all RDF isn'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'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've discovered without exposing de-referencable URIs for each item.</p> <p>BTW - my final comments above aren'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, <a href="http://virtuoso.openlinksw.com" id="link-id0xb919b098">Virtuoso</a>, OpenLink Data Spaces, and OAT products), we are also actively seeding Semantic Web (tribe: Linked Data of course) startups. For instance, <a href="http://zitgist.com/about/" id="link-id0x1481b218">Zitgist</a>, which now has <a href="http://community.linkeddata.org/dataspace/person/mkbergman#this" id="link-id0xb869bb18">Mike Bergman</a> as it's CEO alongside <a href="http://fgiasson.com/me/" id="link-id0x1d18fe50">Frederick Giasson</a> as CTO. Of course, I cannot do <a href="http://zitgist.com/about/">Zitgist</a> justice via a footnote in a <a href="http://dbpedia.org/resource/Blog">blog</a> post, so I will expand further in a separate post.</p> <h2>Additional <a href="http://dbpedia.org/resource/Information">information</a> about this blog post: </h2> <ol> <li> I didn't spent hours looking for URIs used in my hyperlinks</li> <li> The post is best viewed via an RDF Linked Data aware user agents (<a href="http://demo.openlinksw.com/rdfbrowser" id="link-id0x19af3468">OpenLink RDF Browser</a>, Zitgist <a href="http://dataviewer.zitgist.com" id="link-id0x13b17138">Data Viewer</a>, <a href="http://www4.wiwiss.fu-berlin.de/rdf_browser" id="link-id0xbc8579e0">DISCO Hyperdata Browser</a>, <a href="http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html" id="link-id0x18ad0ec8">Tabulator</a>).</li> </ol>
Semantic Web Patterns: A Guide to Semantic Technologies (Update 1)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-03-26#1328
2008-03-26T22:44:00Z
2008-07-16T21:43:04-04:00
<p> <a href="http://www.readwriteweb.com" id="link-id11846528">ReadWriteWeb</a> via <a href="http://alexiskold.wordpress.com/" id="link-id154ae848">Alex Iskold</a> have delivered another iteration of their "Guide to Semantic Technologies". </p> <p>If you look at the title of this post (and <a href="http://feeds.feedburner.com/%7Er/readwriteweb/%7E3/257943334/semantic_web_patterns.php" id="link-id10a9a900">their article</a>) 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 "<a href="http://dbpedia.org/resource/Semantic_Web" id="link-id0xbcb19320">Semantic Web</a>" as prescribed by <a href="http://www.w3.org/People/Berners-Lee/card#i" id="link-id0xb8725878">TimBL</a> then they are completely missing the essence of the whole subject, and demonstrably so I may add, since the entities: "<a href="http://www.readwriteweb.com" id="link-id0x16804040">ReadWriteWeb</a>" and "<a href="http://www.linkedin.com/in/iskold" id="link-id0x13f08538">Alex Iskold</a>" are only describable today via the attributes of the documents they publish i.e their respective blogs and hosted <a href="http://dbpedia.org/resource/Blog" id="link-id0x1850ca98">blog</a> posts. </p> <blockquote> <p>Preoccupation with Literal objects as describe above, implies we can only take what "<a href="http://www.readwriteweb.com">ReadWriteWeb</a>" and "<a href="http://www.linkedin.com/in/iskold">Alex Iskold</a>" say "Literally" (<a href="http://dbpedia/resource/Grep" id="link-id0xb95a6a40">grep</a>, <a href="http://dbpedia.org/resource/regular_expression" id="link-id0x1a719968">regex</a>, and <a href="http://dbpedia.org/resource/XPath" id="link-id0xb89d78b8">XPath</a>/<a href="http://dbpedia.org/resource/XQuery" id="link-id0x1bddde00">Xquery</a> 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 "About Page" blurb), no <a href="http://dbpedia.org/resource/Data">data</a> 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.</p> </blockquote> <p><a href="http://www.w3.org/People/Berners-Lee/card#i">TimBL</a>'s vision as espoused via the "<a href="http://dbpedia.org/resource/Semantic_Web">Semantic Web</a>" vision is about the production, consumption, and sharing of Data Objects via HTTP based Identifiers called URIs/IRIs (<a href="http://dbpedia.org/resource/Linked_Data" id="link-id0x150e7be0">Hyperdata</a> Links / <a href="http://dbpedia.org/resource/Linked_Data" id="link-id0x18e50818">Linked Data</a>). It's how we use the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> as a <a href="http://dbpedia.org/resource/federated_database_system" id="link-id0x194f56f0">Distributed Database</a> where (as <a href="http://www.cs.umd.edu/~hendler/2003/foaf.rdf#jhendler" id="link-id0x17043b38">Jim Hendler</a> once stated with immense clarity): I can point to records (<a href="http://dbpedia.org/resource/Entity" id="link-id0x1476f788">entity</a> instances) in your database (aka <a href="http://en.wikipedia.org/wiki/Data_Spaces" id="link-id0x2621140">Data Space</a>) from mine. Which is to say that if we can all point to data entities/objects (not just data entities of type "Document") 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 "Federated and Open" nature of the Web.</p> <p>As I stated in a prior post, if you or your platform of choice aren't producing de-referencable URIs for your data objects, you may be Semantic (this data model predates the Web), but there is no "<a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id0xb860eec8">World Wide Web</a>" in what you are doing.</p> <h2>What are the Benefits of the Semantic Web?</h2> <ul> <strong>Consumer</strong> - "Discovery of relevant things" and be being "Discovered by relevant things" (people, places, events, and other things)</ul> <ul> <strong>Enterprise</strong> - 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..)</ul> <h2>Simple demo:</h2> <blockquote> <p>I am a <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id0x15394798">Kingsley Idehen</a>, a Person who authors <a href="http://www.openlinksw.com/blog/~kidehen" id="link-id0x2556670">this weblog</a>. I also share bookmarks gathered over the years across an array of subjects via <a href="http://myopenlink.net/dataspace/kidehen/bookmark/KingsleyBookmarks" id="link-id0x142eaa10">my bookmark data space</a>. I also subscribe to a number of RSS/Atom/RDF feeds, which I share via my feeds subscription data <a href="http://en.wikipedia.org/wiki/Data_Spaces">space</a>. Of course, all of these data sources have Tags which are collectively exposed via my <a href="http://myopenlink.net/dataspace/kidehen/weblog/MyBlogDataSpace/tagcloud" id="link-id0x140b8050">weblog tag-cloud</a>, feeds subscriptions <a href="http://dbpedia.org/resource/Tag" id="link-id0x15158d60">tag</a>-cloud, and <a href="http://myopenlink.net/dataspace/kidehen/bookmark/KingsleyBookmarks/tagcloud" id="link-id0xb8652490">bookmarks tag-cloud</a> data spaces.</p> <p>As I don't like repeating myself, and I hate wasting my time or the time of others, I simply share <a href="http://myopenlink.net/dataspace/kidehen" id="link-id0x13b63208">my Data Space</a> (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 <a href="http://dbpedia.org/resource/Information" id="link-id0x14365150">information</a> (perspectives) that is hopefully exposed others via the Web.</p> </blockquote> <p>Bottom-line, the Semantic Web is about adding the missing "Open Data Access & Connectivity" feature to the current Document Web (we have to beyond <a href="http://dbpedia.org/resource/regular_expression">regex</a>, <a href="http://dbpedia/resource/Grep">grep</a>, <a href="http://dbpedia.org/resource/XPath">xpath</a>, <a href="http://dbpedia.org/resource/XQuery">xquery</a>, <a href="http://dbpedia.org/resource/Full_text_search" id="link-id0x15ccef28">full text search</a>, and other literal scrapping approaches). The <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> <a href="http://dbpedia.org/resource/Giant_Global_Graph" id="link-id0x1a2810b8">Web</a> of de-referencable data object URIs is the critical foundation layer that makes this feasible.</p> <p> Remember, It's not about "Applications" it's about Data and actually freeing Data from the "tyranny of Applications". Unfortunately, application inadvertently always create silos (esp. on the Web) since <a href="http://dbpedia.org/resource/Entity">entity</a> data modeling, open data access, and other database technology realm matters, remain of secondary interest to many application developers.</p> <p>Final comment, RDF facilitates Linked Data on the Web, but all RDF isn'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'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've discovered without exposing de-referencable URIs for each item.</p> <p>BTW - my final comments above aren'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, <a href="http://virtuoso.openlinksw.com" id="link-id0x19e44e80">Virtuoso</a>, <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-id0xb8637720">OpenLink Data Spaces</a>, and OAT products), we are also actively seeding Semantic Web (tribe: Linked Data of course) startups. For instance, <a href="http://zitgist.com/about/" id="link-id0x397b940">Zitgist</a>, which now has <a href="http://community.linkeddata.org/dataspace/person/mkbergman#this" id="link-id0x5fabcf0">Mike Bergman</a> as it's CEO alongside <a href="http://fgiasson.com/me/" id="link-id0xb84720f8">Frederick Giasson</a> as CTO. Of course, I cannot do <a href="http://zitgist.com/about/">Zitgist</a> justice via a footnote in a <a href="http://dbpedia.org/resource/Blog">blog</a> post, so I will expand further in a separate post.</p> <h2>Additional <a href="http://dbpedia.org/resource/Information">information</a> about this blog post:</h2> <ol> <li> I didn't spent hours looking for URIs used in my hyperlinks </li> <li> The post is best viewed via an RDF Linked Data aware user agents (<a href="http://demo.openlinksw.com/rdfbrowser" id="link-id0x3ac1b68">OpenLink RDF Browser</a>, Zitgist <a href="http://dataviewer.zitgist.com" id="link-id0x1d8e7ec0">Data Viewer</a>, <a href="http://www4.wiwiss.fu-berlin.de/rdf_browser" id="link-id0x19af3468">DISCO Hyperdata Browser</a>, <a href="http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html" id="link-id0x1532e630">Tabulator</a>).</li> </ol>
Linked Data is vital to Enterprise Integration driven Agility
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-03-21#1325
2008-03-22T01:56:00Z
2008-03-22T14:13:41.000002-04:00
<p> <a href="http://www.linkedin.com/pub/0/207/489" id="link-id10914030">John Schmidt</a>, from Informatica, penned an interesting post titled: <a href="http://blogs.informatica.com/enterprise_data_management/2008/03/it_doesnt_matter_integration_d.html" id="link-idd6d76d8">IT Doesn't Matter - Integration Does</a>. </p> <p>Yes, integration is hard, but I do profoundly believe that what's been happening on the Web over the last 10 or so years also applies to the Enterprise, and by this I absolutely do not mean "Enterprise 2.0" since "2.0" and productive agility do not compute in my realm of discourse. </p> <blockquote>large collections of RSS feeds, Wikiwords, Shared Bookmarks, Discussion Forums etc.. when disconnected at the data level (i.e. hosted in pages with no access to the "data behind") simply offer information deluge and inertia (there are only so many hours for processing opaque information sources in a given day).</blockquote> <p>Enterprises fundamentally need to process information efficiently as part of a perpetual assessment of their relative competitive Strengths, Weaknesses, Opportunities, and Threats (<a href="http://dbpedia.org/resource/SWOT_analysis" id="link-id10776fe8">SWOT</a>), in existing and/or future markets. Historically, IT acquisitions have run counter intuitively to the aforementioned quest for "Ability" due to the predominance of "rip and replace" approach technology acquisition that repeatedly creates and perpetuates information silos across Application, Database, Operating System, Development Environment boundaries. The sequence of events typically occurs as follows:</p> <ol> <li> applications are acquired on a problem by problem basis</li> <li>back-end application databases are discovered once ad-hoc information views are sought by <a href="http://dbpedia.org/resource/Information_worker" id="link-id10a111c8">information workers</a> </li> <li>back-end database disparity across applications is discovered once holistic views are sought by <a href="http://dbpedia.org/resource/Knowledge_worker" id="link-id107997d8">knowledge workers</a> (typically <a href="http://dbpedia.org/resource/Domain_expert" id="link-id102ddf08">domain experts</a>).</li> </ol> <p>In the early to mid 90's (pre ubiquitous Web), operating system, programming language, operating system, and development framework independence inside the enterprise was technically achievable via ODBC (due to it's platform independence). That said, DBMS specific <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id10889d20">ODBC</a> channels alone couldn't address the holistic requirements associated with Conceptual Views of disparate data sources, hence the need for Data Access Virtualization via <a href="http://dbpedia.org/resource/Federated_database_system" id="link-id10884490">Virtual Database</a> Engine technology.</p> <p>Just as is the case on the Web today, with the emergence of the "Linked Data" meme, enterprises now have a powerful mechanism for exploiting the Data Integration benefits associated with generating Data Objects from disparate data sources, endowed with HTTP based IDs (URIs).</p> <p>Conceptualizing access to data exposed Databases APIs, SOA based Web Services (SOAP style Web Services), Web 2.0 APIs (REST style Web Services), XML Views of <a href="http://dbpedia.org/resource/SQL" id="link-id117f8a00">SQL</a> Data (<a href="http://dbpedia.org/resource/SQL/XML" id="link-id104bb730">SQLX</a>), pure XML etc.. is problem area addressed by RDF aware middleware (<a href="http://esw.w3.org/topic/ConverterToRdf" id="link-id10a9deb8">RDFizers</a> e.g <a href="http://virtuoso.openlinksw.com/presentations/Virtuoso_Sponger_1/Virtuoso_Sponger_1.html" id="link-id10256fb0">Virtuoso Sponger</a>).</p> <img src="http://myopenlink.net:8890/%7Ekidehen/Public/images/URI_Data_Source_Pyra_Enterp.png" /> <p>Here are examples of what <a href="http://virtuoso.openlinksw.com/presentations/RDF_Mapping_Presentation_W3C_workshop3/RDF_Mapping_Presentation_W3C_workshop3.html" id="link-id129a6a30">SQL Rows exposed as RDF Data Objects </a>(identified using HTTP based URIs) would look like outside or behind a corporate firewall:</p> <ul> Customer - <a href="http://demo.openlinksw.com/Northwind/Customer/ALFKI#this" id="link-id1183acd8">Alfreds Futterkiste</a> </ul> <ul>Customer Contact - <a href="http://demo.openlinksw.com/Northwind/CustomerContact/ALFKI#this" id="link-id11746bb0">Maria Anders</a> </ul> <ul>Salesrep - <a href="http://demo.openlinksw.com/Northwind/Employee/NancyDavolio1#this" id="link-idff76ed8">Nancy Davolio</a> </ul> <ul>Customer Orders Numbers - <a href="http://demo.openlinksw.com/Northwind/Order/11084#this" id="link-id10ca2648">11084</a>, <a href="http://demo.openlinksw.com/Northwind/Order/11011#this" id="link-id11736160">11011</a>, <a href="http://demo.openlinksw.com/Northwind/Order/11078#this" id="link-id108156e0">11078</a>, <a href="http://demo.openlinksw.com/Northwind/Order/11088#this" id="link-id10747f30">11085</a> </ul> <p>What's Good for the Web Goose (<a href="http://kidehen.idehen.net/dataspace/person/kidehen%23this%3E" id="link-id10a33c50">Personal Data Space URIs</a>) is good for the Enterprise Gander (<a href="http://www.openlinksw.com/dataspace/organization/openlink#this" id="link-id109fbbe0">Enterprise Data Space URIs</a>).</p> <h2>Related</h2> <ul> <a href="http://blogs.informatica.com/enterprise_data_management/2008/02/data_access_a_cultural_or_tech.html" id="link-idffe8168">Data Access - A Cultural or Technical Challenge?</a> </ul>
So, What Does "HREF" Stand For, Anyway
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-03-12#1323
2008-03-12T16:08:46Z
2008-04-10T16:13:50-04:00
<p>As per usual I am writing this post with the aim of killing a number of <a href="http://dbpedia.org/resource/Meme" id="link-id0x1caa10d8">meme</a>-birds with a single post in relation to the emerging <a href="http://dbpedia.org/resource/Linked_Data" id="link-id156867c8">Linked Data Web</a>.</p> <p>*On* the ubiquitous <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id0x1e5a1a08">Web</a> of "Linked Documents", HREF means (by definition and usage): <a href="http://dbpedia.org/resource/Hypertext" id="link-id16078f10">Hypertext</a> Reference to an <a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol" id="link-id0x9e840368">HTTP</a> accessible <a href="http://dbpedia.org/resource/Data" id="link-id0x9e570ce8">Data</a> Object of Type: "Document" (an <a href="http://dbpedia.org/resource/Information" id="link-id0xccc6ee8">information</a> resource). Of course we don't make the formal connection of Object Type when dealing with the <a href="http://dbpedia.org/resource/World_Wide_Web">Web</a> on a daily basis, but whenever you encounter the "resource not found" condition notice the message: <a href="http://dbpedia.org/resource/HTTP_404" id="link-id153b4d98">HTTP/1.0 404</a> Object Not Found, from the <a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol">HTTP</a> Server tasked with retrieving and returning the resource. </p> <p>*In* the Web of "<a href="http://dbpedia.org/resource/Linked_Data" id="link-id0x9ed9fb78">Linked Data</a>", a complimentary addition to the current Web of "Linked Documents", HREF is used to reference <a href="http://dbpedia.org/resource/Data">Data</a> Objects that are of a variety of "Types", not just "Documents". And the way this is achieved, is by using <a href="http://dbpedia.org/resource/Surrogate_key" id="link-id153d4438">Data Object Identifiers</a> (URIs / IRIs that are generated by the <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> deployment platform) in the strict sense i.e. Data Identity (<a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id0xc9ef280">URI</a>) is separated from Data Address (<a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id0x1cb62390">URL</a>). Thus, you can reference a Person Data Object (aka an instance of a Person Class) in your HREF and the <a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol" id="link-id1554e458">HTTP</a> Server returns a Description of the Data Object via a Document (again, an <a href="http://dbpedia.org/resource/Information">information</a> resource). A document containing the Description of a Data Object typically contains HREFs to other Data Objects that expose the Attributes and Relationships of the initial Person Data Object, and it this collection of Data Objects that is technically called a "Graph" -- which is what <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id0xc67a780">RDF</a> models.</p> <blockquote>What I describe above is basic stuff for anyone that's familiar with Object Database or Distributed Objects technology and concepts.</blockquote> <h2><a href="http://dbpedia.org/resource/Uniform_Resource_Identifier">URI</a> and <a href="http://dbpedia.org/resource/Uniform_Resource_Locator">URL</a> confusion</h2> <p>The Linked Document Web is a collection of physical resources that traverse the Web Information Bus in palatable format i.e documents. Thus, Document Object Identity and Document Object Data Address can be the same thing i.e. a <a href="http://dbpedia.org/resource/Uniform_Resource_Locator" id="link-id1525d028">URL</a> can serve as the <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id16e50b50">ID/URI</a> of a Document Data Object.</p> <p>The Linked Data Web on the other hand, is a Distributed Object Database, and each Data Object must be uniquely defined, otherwise we introduce ambiguity that ultimately taints the Database itself (making incomprehensible to reasoning challenged machines). Thus we must have unique Object IDs (URIs / IRIs) for People, Places, Events, and other things that aren't Documents. Once we follow the time tested rules of Identity, People can then be associated with the things they create (<a href="http://dbpedia.org/resource/Blog" id="link-id0xc7c3ce0">blog</a> posts, web pages, bookmarks, wikiwords etc). <a href="http://dbpedia.org/resource/Resource_Description_Framework">RDF</a> is about expressing these graph model relationships while RDF serialization formats enables the information resources to transport these data object link ladden information resources to requesting User Agents.</p> <p>Put in more succinct terms, all documents on the Web are compound documents in reality (e.g. mast contain a least an image these days). The Linked Data Web is about a Web where Data Object IDs (URIs) enable us to distill source data from the information contained in a compound document.</p> <h2>Examples:</h2> <ol> <li><http://community.linkeddata.org/dataspace/person/kidehen2#this> - the ID (URI minted from URL via addition of #this) of a Data Object of Type Person that Identifies me. The Person definition I use comes from the FOAF vocabulary/schema/ontology/data dictionary</li> <li><http://community.linkeddata.org/dataspace/person/kidehen2> - the URI (also a URL) of a FOAF file that contains a description of the Data <a href="http://dbpedia.org/resource/Identity_%28object-oriented_programming%29" id="link-id0xca491e0">Object ID</a>: <http://community.linkeddata.org/dataspace/person/kidehen2#this> (me)</li> <li>As an information resource <http://community.linkeddata.org/dataspace/person/kidehen2> can be dispatched from an HTTP server to a User Agent in (X)HTML, RDF/XML, N3/Turtle representations via HTTP Content Negotiation (<strong>note:</strong> Look at the "Linked Data" tab to see one example of what Data Links facilitate re. Data Discovery and Exploration)</li> <li>If I choose an <a href="http://dbpedia.org/resource/Identity_%28object-oriented_programming%29">Object ID</a> of <http://community.linkeddata.org/dataspace/person/kidehen2/this> instead of <http://community.linkeddata.org/dataspace/person/kidehen2#this> then the HTTP Server should not return an information resource (i.e provide 200 OK response) when a User Agent requests a resource via HTTP using the URI: <http://community.linkeddata.org/dataspace/person/kidehen2/this>, because a Data Object ID (URI) and the Data Object Address (URL) cannot be the same when my Data Object isn't of Type Document; the sever has to use response code 303 to redirect the user agent to the URL of an information resource that matches the Content-type designated in the HTTP Request or determine representation based on it's own quality of service rules for the information resource associated with the Object ID (URI).</li> </ol> <p>The degree of unobtrusiveness of new technology, concepts, or new applications of existing technology, is what ultimately determines eventual uptake and <a href="http://dbpedia.org/resource/Meme">meme</a> virulence (network effects). For a while, the <a href="http://dbpedia.org/resource/Semantic_Web" id="link-id0xc86cda0">Semantic Web</a> meme was mired in confusion and general misunderstanding due to a shortage of practical use case scenario demos. </p> <p>The emergence of the <a href="http://dbpedia.org/resource/SPARQL" id="link-id0xc614158">SPARQL</a> Query Language has provided critical infrastructure for a number of products, projects, and demos, that now make the utility of the <a href="http://dbpedia.org/resource/Semantic_Web">Semantic Web</a> vision mush clearly via the simplicity of Linked Data, as exemplified by the following:</p> <ol> <li> <a href="http://community.linkeddata.org/dataspace/organization/lod#this" id="link-id0xc7c19f0">Linking Open Data Community</a> - collection of People and Linked Data Spaces (across a variety of domains)</li> <li> <a href="http://dbpedia.org/resource/DBpedia" id="link-id0xcb1c398">DBpedia</a> - Ground zero for experiencing and comprehending Linked Data</li> <li> <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces" id="link-id0xc16e458">OpenLink Data Spaces</a> - a simple solution for creating Linked Data Web presence via from existing Web Data Sources (Blogs, Wikis, Shared Bookmarks, <a href="http://dbpedia.org/resource/Tag" id="link-id0xc340200">Tag</a> Spaces, Web Sites, Social Networking Services, Web Services, Discussion Forums etc..)</li> <li>OpenLink <a href="http://virtuoso.openlinksw.com" id="link-id0xca83470">Virtuoso</a> - a Universal Server for generating, managing, and deploying RDF Linked Data from <a href="http://dbpedia.org/resource/SQL" id="link-id0xcce3870">SQL</a>, XML, Web Services based data sources</li> </ol> Why Is This Post a Linked Data Demo, Again? Place the permalink of this post in a Linked Data aware user agent (<a href="http://demo.openlinksw.com/rdfbrowser" id="link-id17b79488">OpenLink RDF Browser1</a>, <a href="http://demo.openlinksw.com/rdfbrowser2" id="link-id15957150">OpenLink RDF Browser2</a>, <a href="http://dataviewer.zitgist.com/" id="link-id15550cf8">Zitgist</a>, <a href="http://www4.wiwiss.fu-berlin.de/rdf_browser" id="link-id1565a680">DISCO</a>, <a href="http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html" id="link-id15700350">Tabulator</a>), and the you can see the universal of interlinked data exposed by this post. The Title of this post should not be the sole mechanism for determining that it is Linked to other posts about the same topic. <h2>Related</h2> <ul> <a href="http://tomayko.com" id="link-id15c56720">Ryan Tomayko</a>'s post titled: <a href="http://tomayko.com/writings/wtf-is-an-href-anyway" id="link-id1514a328">So, What Does "HREF" Stand For, Anyway</a> </ul> <ul> <a href="http://torrez.us/who#elias" id="link-id14eec928">Elias Torre</a>'s post titled: <a href="http://torrez.us/archives/2008/03/10/563/" id="link-id15722c08">The Web FTW</a> </ul> <ul> <a href="http://www.w3.org/TR/cooluris/" id="link-id1576c118">Cool URIs for the Semantic Web.</a> </ul>
New W3C Incubator Group: Relational Database to RDF Mapping
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-03-05#1320
2008-03-05T17:13:35Z
2008-03-11T13:58:24-04:00
<p>The new <a href="http://www.w3.org/2005/Incubator/rdb2rdf/" id="link-id17fb5440">RDB2RDF Incubator Group</a> is now official. The group is sponsored by <a href="http://dbpedia.org/resource/Oracle_Corporation" id="link-id1c93f338">Oracle</a>, <a href="http://dbpedia.org/resource/Hewlett-Packard" id="link-id18f4bce8">HP</a>, PartnersHealth, and <a href="http://www.openlinksw.com/dataspace/organization/openlink#this>" id="link-id175ed3a8">OpenLink Software</a>.</p> <h2>Goals</h2> <p>The goal of this effort is standardization of approaches (syntax and methodology) for mapping Relational Data Model instance data to RDF (Graph Data Model).</p> <h2>Benefits</h2> <p>Every record in a relational table/view/stored procedure (Table Valued Functions/Procedures) is declaratively morphed into an Entity (instance of a Class associated with a Schema/Ontology). The derived entities become part of a graph that exposes relationships and relationship traversal paths that have lower JOIN Costs than attempting the same thing directly via SQL. In a nutshell, you end up with a conceptual interface atop a logical data layer that enables a much more productive mechanism for exploring homogeneous and/or heterogeneous data without confinement at the DB instance, SQL DBMS type, host operating system, local area network, or wide area network levels.</p> <p>Just as we have to mesh the Linked Data and Document Webs, unobtrusively. It's also important that the same principles to apply to exposure of RDBMS hosted data as RDF based Linked Data.</p> <p>We all know that a large amount of data driving the IT engines of most enterprises resides in <a href="http://dbpedia.org/resource/Relational_database" id="link-id190ee500">Relational Databases</a>. And contrary to recent <a href="http://www.readwriteweb.com/archives/semantic_web_11_things_to_know.php" id="link-id175e6c58">RDBMS vs RDF database misunderstandings</a> espoused (hopefully inadvertently) by some commentators, Relational Database engines aren't going away anytime soon. Meshing Relational (logical) and Graph (conceptual) data models a natural progression along an evolutionary path towards: <a href="http://virtuoso.openlinksw.com/presentations/RDF_Mapping_Presentation_W3C_workshop3/RDF_Mapping_Presentation_W3C_workshop3.html" id="link-id175e56c0">Analysis for All</a>. By the way, there is a parallel evolution occurring in others realms such as <a href="http://dbpedia.org/resource/ADO.NET_Entity_Framework" id="link-id13037248">Microsoft's ADO.NET's Entity Framework</a>.</p> <h2>How would I use RDB2RDF Mapping?</h2> <p>To Unobtrusively expose existing data sources as RDF Linked Data. The links that follow provide examples:</p> <ul>-- Enterprise Databases e.g. Northwind SQL Database as Linked Data (<a href="http://dataviewer.zitgist.com/?uri=http%3A//demo.openlinksw.com/Northwind/Customer/ALFKI" id="link-id176c79c0">Zitgist View</a>, <a href="http://demo.openlinksw.com/Northwind/Customer/ALFKI" id="link-id175ed1b8">OpenLink RDF Browser View</a>, <a href="http://www4.wiwiss.fu-berlin.de/rdf_browser/?browse_uri=http%3A%2F%2Fdemo.openlinksw.com%2FNorthwind%2FCustomer%2FALFKI%23this" id="link-id16ee5730">DISCO Browser View</a>, <a href="http://dig.csail.mit.edu/2005/ajar/release/tabulator/0.8/tab.html?uri=http://demo.openlinksw.com/Northwind/Customer/ALFKI#this" id="link-id18e35570">Tabulator View</a>)</ul> <ul>-- Content Management e.g. <a href="http://dbpedia.org/resource/Drupal" id="link-id17687bf0">Drupal</a> hosted <a href="http://demo.openlinksw.com/drupal/user/demo" id="link-id179ed818">Blog Posts as Linked Data</a> </ul> <ul>-- Weblog Platform e.g. <a href="http://dbpedia.org/resource/WordPress" id="link-id17441650">Wordpress</a> hosted <a href="http://demo.openlinksw.com/wordpress/user/demo" id="link-id18fab188">Blog Posts as Linked Data</a> </ul> <ul>-- Wiki Platform e.g. <a href="http://dbpedia.org/resource/MediaWiki" id="link-id1c93e1c8">MediaWiki</a> hosted <a href="http://demo.openlinksw.com/mediawiki/user/KingsleyIdehen" id="link-id17d05448">Wikiwords as Linked Data</a> </ul> <h2>Related</h2> <ol> <li>Virtuoso's Meta Schema Language for Declaratively generating RDF Views of SQL Data (<a href="http://virtuoso.openlinksw.com/presentations/Virtuoso_RDF_Views/Virtuoso_RDF_Views_1.html#(1)" id="link-id19156058">Presentation</a>, <a href="http://virtuoso.openlinksw.com/Whitepapers/pdf/Virtuoso_SQL_to_RDF_Mapping.pdf" id="link-id18bab048">White Paper</a>, <a href="http://virtuoso.openlinksw.com/Whitepapers/html/rdf_views/virtuoso_rdf_views_example.html" id="link-id18e36480">Tutorial</a>, and <a href="http://docs.openlinksw.com/virtuoso/rdfviews.html" id="link-id18e34380">Online Docs</a>)</li> <li>ESW Wiki's Collection of<a href="http://esw.w3.org/topic/RdfAndSql" id="link-id18d3b5d8"> SQL-RDF Mapping Tools</a> </li> <li> <a href="http://www.bitaplanet.com/article.php/3696281" id="link-id12dc20e8">What the Semantic Web means for your Business </a> </li> </ol>
Linked Data Solution for Exposing OpenLink Product Portfolio
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-02-16#1317
2008-02-16T21:08:17Z
2008-02-25T15:08:04-05:00
<p>At <a href="http://www.openlinksw.com" id="link-id14a37688">OpenLink Software</a>, we've had an immense problem explaining the depth and breadth of our product porfolio via traditional Document Web pages. Thanks to <a href="http://dbpedia.org/resource/SPARQL" id="link-id101bc330">SPARQL</a> and <a href="http://dbpedia.org/resource/Linked_Data" id="link-id105d2d28">Linked Data</a>, we are now able to use <a href="http://dbpedia.org/resource/Identity_%2528object-oriented_programming%2529" id="link-id1341fbd0">Web Data Object IDs</a> (<a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol" id="link-idf101908">HTTP</a> based <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id135cd8a0">URI</a>s) to produce super SKUs for every item in our product portfolio. Even better, we are able to handle the additional challenge of exposing features and benefits which by their very nature are mercurial across an array of fronts (products releases, product formats, and supported platforms etc). </p> <p> Now I can simply state the following using Linked Data (hyperdata) links:</p> <a href="http://dbpedia.org/resource/OpenLink_Software" id="link-idfafc070">OpenLink Software</a>'s product porfolio is comprised of the following product families: <ol> <li> <a href="http://data.openlinksw.com/oplweb/product_family/uda#this" id="link-idf856aa8">Universal Data Access Drivers Suite (UDA)</a> for <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-idfc5f498">ODBC</a>, JDBC, <a href="http://dbpedia.org/resource/ADO.NET" id="link-idfc20120">ADO.NET</a>, <a href="http://dbpedia.org/resource/OLE_DB" id="link-id11579a08">OLE-DB</a>, and <a href="http://dbpedia.org/resource/XML_for_Analysis" id="link-id1067d098">XMLA</a> </li> <li> <a href="http://data.openlinksw.com/oplweb/product_family/dca#this" id="link-id1318b3f8">OpenLink Data Spaces</a> </li> <li> <a href="http://data.openlinksw.com/oplweb/product_family/virtuoso#this" id="link-idf8d7ea0">Virtuoso</a> </li> </ol> <p> We no longer have to explain (repeatedly) why our drivers exist in <a href="http://data.openlinksw.com/oplweb/product_format/express#this" id="link-idf76e1f0">Express</a>, <a href="http://data.openlinksw.com/oplweb/product_format/st#this" id="link-idf861be8">Lite</a>, and <a href="http://data.openlinksw.com/oplweb/product_format/mt#this" id="link-id128da1e0">Multi-Tier</a> Edition formats, or why you ultimately need Multi-Tier Drivers over Single Tier Drivers (Express or Lite Editions) since you ultimately heed <a href="http://data.openlinksw.com/oplweb/product_format_feature/RulesEngineBasedSecurity#this" id="link-idf8d70b0">high-performance, data encryption, and policy based security</a> across each of the data access driver formats.</p>
10 Reasons to use OpenLink Data Spaces (ODS)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-02-08#1314
2008-02-08T17:33:45Z
2008-02-08T17:08:43-05:00
<p>Via post by <a href="http://vanirsystems.com/danielsblog" id="link-id1480d7c0">Daniel Lewis</a>, titled:<a href="http://vanirsystems.com/danielsblog/2008/02/08/10-reasons-to-use-openlink-data-spaces/#comments" id="link-id1320a618">10 Reasons to use OpenLink Data Spaces</a> </p> <blockquote> <p>There are quite a few reasons to use <a href="http://en.wikipedia.org/wiki/OpenLink_Data_Space" id="link-id103eb060">OpenLink Data Spaces (ODS)</a>. Here are 10 of the reasons why I use ODS:</p> <ol> <li>Its native support of DataPortability Recommendations such as <a href="http://dbpedia.org/resource/RSS" id="link-id18957e88">RSS</a>, <a href="http://dbpedia.org/resource/Atom_%28standard%29" id="link-id1410a9c0">Atom</a>, <a href="http://www.apml.org/" id="link-idfde4b90">APML</a>, <a href="http://dbpedia.org/resource/Yadis" id="link-id1328c260">Yadis</a>, <a href="http://dbpedia.org/resource/OPML" id="link-id10133f70">OPML</a>, <a href="http://dbpedia.org/resource/Microformat" id="link-id16e19be0">Microformats</a>, <a href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id12deef98">FOAF</a>, <a href="http://dbpedia.org/resource/SIOC" id="link-id15fb99b0">SIOC</a>, <a href="http://dbpedia.org/resource/OpenID" id="link-id1390ae10">OpenID</a> and <a href="http://en.wikipedia.org/wiki/OAuth" id="link-id14dcce70">OAuth</a>.</li> <li>Its native support of Semantic Web Technologies such as: <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id15fc75a0">RDF</a> and <a href="http://dbpedia.org/resource/SPARQL" id="link-id14255238">SPARQL</a>/<a href="http://jena.hpl.hp.com/~afs/SPARQL-Update.html" id="link-id15fe2e40">SPARUL</a> for querying.</li> <li>Everything in ODS is an <a href="http://dbpedia.org/resource/Object_%28computer_science%29" id="link-id11c204a0">Object</a> with its own <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id14812560">URI</a>, this is due to the underlying <a href="http://dbpedia.org/resource/Object-relational_database" id="link-idf663e08">Object-Relational</a> Architecture provided by <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id1484e4c8">Virtuoso</a>.</li> <li>It has all the social media components that you could need, including: <a href="http://dbpedia.org/resource/Blog" id="link-id10120b58">blogs</a>, <a href="http://dbpedia.org/resource/Wiki" id="link-id14d9a608">wikis</a>, <a href="http://dbpedia.org/resource/Social_network_service" id="link-idf0b3a30">social networks</a>, <a href="http://dbpedia.org/resource/Aggregator" id="link-id188d7c78">feed readers</a>, <a href="http://dbpedia.org/resource/Customer_relationship_management" id="link-id134a2c48">CRM</a> and a <a href="http://dbpedia.org/resource/Calendar" id="link-idf66af80">calendar</a>.</li> <li>It is expandable by installing pre-configured components (called VADs), or by re-configuring a <a href="http://dbpedia.org/resource/LAMP_%28software_bundle%29" id="link-id102e8008">LAMP</a> application to use <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id13fe2b68">Virtuoso</a>. Some examples of current VADs include: <a href="http://dbpedia.org/resource/MediaWiki" id="link-id1011d9f0">MediaWiki</a>, <a href="http://dbpedia.org/resource/WordPress" id="link-id13624060">Wordpress</a> and <a href="http://dbpedia.org/resource/Drupal" id="link-id100c4510">Drupal</a>.</li> <li>It works with external webservices such as: <a href="http://dbpedia.org/resource/Facebook" id="link-id131fe6d0">Facebook</a>, <a href="http://dbpedia.org/resource/Del.icio.us" id="link-idfdd1580">del.icio.us</a> and <a href="http://dbpedia.org/resource/Flickr" id="link-id1496aff0">Flickr.</a> </li> <li>Everything within OpenLink Data Spaces is <a href="http://dbpedia.org/resource/Linked_Data" id="link-id17114c00">Linked Data</a>, which provides more meaningful information than just plain structural information. This meaningful information could be used for complex inferencing systems, as ODS can be seen as a <a href="http://dbpedia.org/resource/Expert_system" id="link-id15ea4108">Knowledge Base</a>.</li> <li>ODS builds bridges between the existing static-document based web (aka â<a href="http://dbpedia.org/resource/Web_1.0" id="link-idf08b338">Web 1.0</a>â), the more dynamic, services-oriented, social and/or user-orientated webs (aka â<a href="http://dbpedia.org/resource/Web_2.0" id="link-idfde26e0">Web 2.0</a>â) and the web which we are just going into, which is more data-orientated (aka â<a href="http://dbpedia.org/resource/Web_3.0" id="link-idf9b7328">Web 3.0</a>â or âLinked Data Webâ).</li> <li>It is fully supportive of <a href="http://dbpedia.org/resource/Cloud_computing" id="link-id189480d0">Cloud Computing</a>, and can be installed on <a href="http://dbpedia.org/resource/Amazon_Elastic_Compute_Cloud" id="link-id10026778">Amazon EC2</a>.</li> <li>Its released free under the GNU <a href="http://dbpedia.org/resource/GNU_General_Public_License" id="link-id16002fb0">General Public License (GPL)</a>. [note]However, it is technically dual licensed as it lays on top of the <a href="http://en.wikipedia.org/wiki/Virtuoso_Universal_Server" id="link-id132d4238">Virtuoso Universal Server</a> which has both Commercial and GPL licensing[/note]</li> </ol> </blockquote> <p>The features above collectively provide users with a Linked Data Junction Box that may reside with corporate intranets or "out in the clouds" (Internet). You can consume, share, and publish data in a myriad of formats using a plethora of protocols, without any programming. ODS is simply about exposing the data from your Web 1.0, 2.0, 3.0 application interactions in structured from, with Linking, Sharing, and ultimately Meshing (not Mashing) in mind.</p> <p> <strong>Note:</strong> Although ODS is equipped with a broad array of Web 2.0 style Applications, you do not need to use native ODS apps in order to exploit it's power. It binds to anything that supports the relevant protocols and data formats.</p>
Virtuoso Universal Server 5.0.4 Release Details
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-02-04#1310
2008-02-04T14:25:22Z
2008-02-04T20:30:43.000001-05:00
<p>We've just released version 5.0.4 of the Virtuoso Universal Server platform for SQL, XML, and RDF. The new release includes the following enhancements:</p> <h2>Web Server:</h2> <ul>- HTTP 1.1 compliant Transparent content-negotiation in URL-rewrite rules for Linked Data Deployment.</ul> <h2>RDF Data Management:</h2> <ul>- New providers for the Jena, Sesame and Redland frameworks</ul> <ul>- support for SPARQL INSERT and UPDATE via HTTP POST</ul> <ul>- New SPARQL-BI extenstions that make Business Intelligence feasible via SPARQL</ul> <ul>- new "rdf_sink" folder for handling HTTP PUTs into WebDAV that automatically sync with Quad Store.</ul> <ul>- There are new Sponger (RDFizer) cartridges that map Amazon book-search results to the Biliographic Ontology, supports production of Linked Data from OAI, XBRL, and Yahoo finance data sources.</ul> <ul>- HTTPS protocol support added to Sponger</ul> <ul>- performance optimizations for SPARQL `DESCRIBE' and `CONSTRUCT', alongside general performance enhancements for RDF data set loading.</ul> <h2>Core DBMS Engine:</h2> <ul>- PHP hosting a module re-implemented as a Virtuoso plugin inline with otherlanguage hosting modules</ul> <ul>- improved deadlock condtion management</ul> <ul>- enhanced POP and FTP server side protocol implementations that allow larger data transfers.</ul> <h2>Additional Information</h2> <ul>- <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id1099c740">DBpedia URI</a> </ul> <ul>- <a href="http://virtuoso.openlinksw.com" id="link-id10ae8590">Product Home Page</a> </ul> <ul>- <a href="http://en.wikipedia.org/wiki/Virtuoso_Universal_Server" id="link-id107ece60">Wikipedia Page</a> </ul> <ul>- <a href="http://sev.prnewswire.com/computer-electronics/20080131/NETH04931012008-1.html" id="link-id135fec60">Virtuoso 5.0.4 Press Release</a> </ul>
SPARQL based RDF Store Benchmarks via DBpedia
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-01-17#1298
2008-01-18T01:10:00Z
2008-05-05T08:06:45-04:00
<p> <a href="http://christianhbecker.com/contact/" id="link-id1436ad98">Christian Becker</a> has delivered the final cut of an initial iteration of his <a href="http://dbpedia.org" id="link-id143223c8">DBpedia</a> based <a href="http://www4.wiwiss.fu-berlin.de/benchmarks-200801/" id="link-id1729ebc8">RDF Data Stores benchmark</a>. This particular exercise brought some very interesting things to our attention re. <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id17178108">Virtuoso</a>'s default mode of operation:</p> <ol> <li> <a href="http://virtuoso.openlinksw.com" id="link-id0x1c519718">Virtuoso</a> is a Quad Store in a Triple Store world -- it supports <a href="http://dbpedia.org/resource/Resource_Description_Framework" id="link-id0x1cce9730">RDF</a> <a href="http://dbpedia.org/resource/Data" id="link-id0x1934f0b8">data</a> set storage partitioning via <a href="http://www.w3.org/TR/rdf-sparql-query/#namedGraphs" id="link-id13f6c948">Named Graphs</a> and it requires the use of the <a href="http://dbpedia.org/resource/SPARQL" id="link-id0x1eeb1b28">SPARQL</a> FROM clause to scope query patterns to appropriate <a href="http://dbpedia.org/resource/Data">data</a> sets. Otherwise, it looks across all hosted data sets for matching patterns</li> <li>We should be able to use our server side configuration settings to make the Quad Store behave like a Triple Store (meaning we set the list of applicable named graphs as part of the session configuration)</li> <li>Provide hints to users about missing POGS, PSOG, and SOPG bitmap indexes when <a href="http://dbpedia.org/resource/SPARQL">SPARQL</a> query patterns received by the server are deemed suboptimal (we do know the execution costs of each query)</li> </ol> <p>How Do I create the missing Bitmap Indexes?</p> <p>Go to the <a href="http://dbpedia.org/resource/HTML" id="link-id1733e248">HTML</a> based Virtuoso Conductor, iSQL command line interface, or an <a href="http://dbpedia.org/resource/ODBC" id="link-id1427f338">ODBC</a> / <a href="http://dbpedia.org/resource/JDBC" id="link-id16edfa08">JDBC</a> / <a href="http://dbpedia.org/resource/ADO.NET" id="link-id1716af90">ADO.NET</a> / <a href="http://dbpedia.org/resource/OLE_DB" id="link-id1725e5e0">OLE DB</a> client and execute:</p> <b><pre>CREATE BITMAP index <a href="http://dbpedia.org/resource/Resource_Description_Framework">RDF</a>_QUAD_POGS on DB.DBA.RDF_QUAD (P,O,G,S); <br />CREATE BITMAP index RDF_QUAD_PSOG on DB.DBA.RDF_QUAD (P,S,O,G); <br />CREATE BITMAP index RDF_QUAD_SOPG on DB.DBA.RDF_QUAD (S,O,P,G); </pre></b> <h3>Related</h3> <ul> <a href="http://esw.w3.org/topic/RdfStoreBenchmarking" id="link-id14de2630">RDF Store Benchamrking Wiki</a> </ul>
W3C's SPARQLing Data Access Ingenuity
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-01-15#1295
2008-01-15T22:58:53Z
2008-01-17T15:41:04.000006-05:00
<p>The W3C officially unveiled the SPARQL Query Language today via a press release titled: <a href="http://www.w3.org/2007/12/sparql-pressrelease" id="link-id10074ca8">W3C Opens Data on the Web with SPARQL</a>.</p> <h2>What is <a href="http://dbpedia.org/resource/SPARQL" id="link-id10183f60">SPARQL</a>?</h2> <p>A query language for the burgeoning Structured & <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10426b18">Linked Data</a> Web (aka <a href="http://dbpedia.org/resource/Semantic_Web" id="link-idffde090">Semantic Web</a> / <a href="http://en.wikipedia.org/wiki/Giant_Global_Graph" id="link-id103e3688">Giant Global Graph</a>). Like <a href="http://dbpedia.org/resource/SQL" id="link-id103365f8">SQL</a>, for the Relational Data Model, it provides a query language for the Graph based <a href="http://dbpedia.org/resource/RDF" id="link-id103e33e8">RDF</a> Data Model.</p> <p>It's also a <a href="http://dbpedia.org/resource/Representational_State_Transfer" id="link-id1036a3d0">REST</a> or <a href="http://dbpedia.org/resource/SOAP" id="link-id103b36d8">SOAP</a> based Web Service that exposes SPARQL access to RDF Data via an endpoint. </p> <p>In addition, it's also a Query Results Serialization format that includes <a href="http://dbpedia.org/resource/XML" id="link-id1023bc60">XML</a> and <a href="http://dbpedia.org/resource/JSON" id="link-id102c3f88">JSON</a> support.</p> <h2>Why is it Important?</h2> <p>It brings important clarity to the notion of the "Web as a Database" by transforming existing Web Sites, Portals, and Web Services into bona fide corpus of Mesh-able (rather than Mash-able) Data Sources. For instance, you can perform queries that join one or more of the aforementioned data sources in exactly the same manner (albeit different syntax) as you would one or more SQL Tables. </p> <h3>Example:</h3> <p>-- SPARQL equivalent of SQL SELECT * against my personal data space hosted FOAF file</p> <b><pre> SELECT DISTINCT ?s ?p ?o FROM <http://myopenlink.net/dataspace/person/kidehen> WHERE {?s ?p ?o}</pre></b> <p>-- SPARQL against my social network -- Note: My SPARQL will be beamed across all of contacts in the social networks of my contacts as long as they are all HTTP URI based within each data space</p> <b><pre>PREFIX foaf: <http://xmlns.com/foaf/0.1/> SELECT DISTINCT ?Person FROM <http://myopenlink.net/dataspace/person/kidehen> WHERE {?s a foaf:Person; foaf:knows ?Person}</pre></b> <p>Note: you can use the basic <a href="http://demo.openlinksw.com/sparql" id="link-id1007d9b8">SPARQL Endpoint</a>, <a href="http://demo.openlinksw.com/isparql" id="link-id102c3e08">SPARQL Query By Example</a>, or <a href="http://demo.openlinksw.com/sparql_demo" id="link-id10201f98">SPARQL Query Builder Demo tool</a> to experiment with the demonstration queries above.</p> <h2>How Do I use It?</h2> <p>SPARQL is implemented by RDF Data Management Systems (Triple or Quad Stores) just as SQL is implemented by Relational Database Management Systems. The aforementioned data management systems will typically expose SPARQL access via a SPARQL endpoint.</p> <h2>Where are it's implementations?</h2> <p>A SPARQL implementors Testimonial page accompanies the SPARQL press release. In addition the is a growing collection of implementations on the<a href="http://esw.w3.org/topic/SparqlImplementations" id="link-id10066ca8"> ESW Wiki Page for SPARQL compliant RDF Triple & Quad Stores</a>.</p> <h2>Is this really a big deal?</h2> <p>Yes! SPARQL facilitates an<a href="http://virtuoso.openlinksw.com/presentations/Virtuoso_Sponger_1/Virtuoso_Sponger_1.html" id="link-id101ee5b0"> unobtrusive manifestation of a Linked Data Web</a> by way of natural extension of the existing Document Web i.e these Web enclaves co-exist in symbiotic fashion. </p> <p>As <a href="http://dbpedia.org" id="link-id1037edc0">DBpedia</a> very clearly demonstrates, Linked Data makes the Semantic Web demonstrable and much easier to comprehend. Without SPARQL there would be no mechanism for <a href="http://virtuoso.openlinksw.com/presentations/Virtuoso_Deploying_Linked_Data/Virtuoso_Deploying_Linked_Data.html" id="link-id10455da8">Linked Data deployment</a>, and without Linked Data there is no mechanism for Beaming Queries (directly or indirectly) across the Giant Global Graph of data hosted by Social Networks, Shard Bookmarks Services, Weblogs, Wikis, RSS/Atom/OPML feeds, Photo Galleries and other Web accessible Data Sources (Data Spaces).</p> <h2>Related items</h2> <ul> <a href="http://www.w3.org/TR/cooluris/" id="link-id102021d8">Cool URIs</a> </ul> <ul> <a href="http://sites.wiwiss.fu-berlin.de/suhl/bizer/pub/LinkedDataTutorial/" id="link-id1020d5c0">Publishing Linked Data Tutorial</a> </ul> <ul a="a" href="http://virtuoso.openlinksw.com/wiki/main/Main/ODSSIOCRef"> Detailed SPARQL Query Examples using SIOC Data Spaces</ul> <ul> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/ODSFOAFRef" id="link-id102c4608">Detailed SPARQL Query Examples using FOAF Data Spaces</a> </ul>
Semantic Web Killer Application?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-01-10#1293
2008-01-10T19:49:00Z
2008-02-04T20:32:42.000003-05:00
<p>In response to the <a href="http://www.readwriteweb.com" id="link-id0x1f562c28">ReadWriteWeb</a> piece titled: <a href="http://www.readwriteweb.com/archives/semantic_web_what_is_the_killer_app.php" id="link-id0x16961368">Semantic Web: What is the Killer App.</a> by <a href="http://www.readwriteweb.com/about_alex.php" id="link-id0x16909678">Alex Iskold</a>:</p> <p>Information overload and Data Portability are two of the most pressing and imminent challenges affecting every individual connected to the global village exposed by the Internet and World Wide Web. I wrote an earlier post titled: <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1267" id="link-idfeb7718">Why We Need Linked Data</a> that shed light on frequently overlooked realities about the Document Web.</p> <p>The real Killer application of the Semantic Web (imho) is <a href="http://dbpedia.org/resource/Linked_Data" id="link-id10571ef0">Linked Data</a> (or Hyperdata), just as the killer application of the <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id102be888">Document Web</a> was Linked Documents (Hyperlinks). Linked Data enables human users (indirectly) and software agents (directly in response to human instruction) to traverse Web Data Spaces (Linked Data enclaves within the <a href="http://en.wikipedia.org/wiki/Giant_Global_Graph" id="link-id10b6ba08">Giant Global Graph</a>).</p> <p>Semantic Web applications (conduits between humans and agents) that take advantage of Linked Data include:</p> <p> <a href="http://dbpedia.org/resource/DBpedia" id="link-id10fcc8f8">DBpedia</a> - General Knowledge sourced from <a href="http://dbpedia.org/resource/Wikipedia" id="link-id10570808">Wikipedia</a> and a host of other Linked Data Spaces.</p> <p>Various Linked Data Browsers: <a href="http://dataviewer.zitgist.com" id="link-id139a2300">Zitgist Data Viewer</a>, <a href="http://demo.openlinksw.com/rdfbrowser" id="link-id12fb46f0">OpenLink RDF Browser</a>, <a href="http://www4.wiwiss.fu-berlin.de/rdf_browser" id="link-idff652c0">DISCO Browser</a>, and TimBL's <a href="http://dig.csail.mit.edu/2005/ajar/ajaw/tab.html" id="link-idff63998">Tabulator</a>.</p> <p> <a href="http://zlinks.zitgist.com/" id="link-idff62b90">zLknks </a>- Linked Data Lookup technology for Web Content Publishing systems (note: more to come on this in a future post).</p> <p> <a href="http://en.wikipedia.org/wiki/OpenLink_Data_Spaces" id="link-id1054a708">OpenLink Data Spaces</a> - a solution for Data Portability via a Linked Data Junction Box for Web 1.0 ((X)HTML Document Webs), 2.0 (XML Web Services based Content Publishing, Content Syndication, and Aggregation), and 3.0 (Linked Data) Data Spaces. Thus, via my URI (when viewed through a Linked Data Browser/Viewer) you can traverse my Data Space (i.e my Linked Data Graph) generated by the following activities:</p> <ul>Blog Posts publishing</ul> <ul>My RSS & Atom Content Subscriptions (what used to be called a "Blogroll")</ul> <ul>My Bookmarks (from my Desktop and Del.icio.us)</ul> <ul>and other things I choose to share with the public via the Web</ul> <p> <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-idff89b08">Virtuoso</a> - a Universal Server Platform that includes <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSRDF" id="link-id12ff8810">RDF Data Management</a>, <a href="http://virtuoso.openlinksw.com/presentations/Virtuoso_Sponger_1/Virtuoso_Sponger_1.html" id="link-idf7739b8">RDFization Middleware</a>, <a href="http://virtuoso.openlinksw.com/presentations/RDF_Mapping_Presentation_W3C_workshop3/RDF_Mapping_Presentation_W3C_workshop3.html" id="link-id1025ca28">SQL-RDF Mapping</a>, <a href="http://virtuoso.openlinksw.com/presentations/Virtuoso_Deploying_Linked_Data/Virtuoso_Deploying_Linked_Data.html" id="link-id1324db10">RDF Linked Data Deployment</a>, alongside a hybrid/multi-model, virtual/federated data service in a single product offering.</p> <p></p>BTW - There is a <a href="http://events.linkeddata.org/ldow2008/" id="link-id117a0190">Linked Data Workshop</a> at this years <a href="http://www2008.org/" id="link-id102abe28">World Wide Web conference</a>. Also note the <a href="http://esw.w3.org/topic/HCLS/WWW2008" id="link-id100c3a88">Healthcare & Life Science Workshop</a> which is a related Linked Data technology and Semantic Web best practices realm.
2008, Facebook Data Portability, and the Giant Global Graph of Linked Data
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-01-05#1289
2008-01-05T17:11:55Z
2008-01-07T11:44:42.000007-05:00
<p>As 2007 came to a close I repeatedly mulled over the idea of putting together a usual "year in review" and a set of predictions for the coming year etc. Anyway, the more I pondered, the smaller the list became. While pondering (as 2008 rolled around), the <a href="http://www.techmeme.com/080103/p154#a080103p154" id="link-id113db9a0">Blogosphere was set ablaze with the <a href="http://dbpedia.org/resource/Robert_Scoble" id="link-idfe12a58">Robert Scoble</a>'s announcement of his account suspension by Facebook</a>. Of course, many chimed in expressing views either side of the ensuing debate: <a href="http://www.scripting.com/stories/2008/01/03/scobleAndHisFacebookData.html" id="link-id161e7c48">Who is right -- Scoble or Facebook</a>. The more I assimilated the views expressed about this event, the more ironic I found the general discourse, for the following reasons:</p> <ol> <li> <a href="http://dbpedia.org/resource/Web_2.0" id="link-id16f6f3e0">Web 2.0</a> is fundamentally about <a href="http://dbpedia.org/resource/Web_service" id="link-id1770f3c0">Web Services</a> as the prime vehicle for interactions across "points of Web presence"</li> <li> <a href="http://dbpedia.org/resource/Facebook" id="link-id162f3f60">Facebook</a> is a Web 2.0 hosted service for <a href="http://dbpedia.org/resource/Social_Networking" id="link-id16e1dfc8">social networking</a> that provides Web Services APIs for accessing data in the Facebook data space. You have to do so "on the fly" within clearly defined constraints i.e you can interact with data across your social network via Facebook APIs, but you cannot cache the data (perform an export style dump of the data)</li> <li> Facebook is a main driver of the term: "social graph", but their underlying data model is relational and the Web Services response (data you get back) doesn't return a data graph, instead it returns an tree (i.e XML)</li> <li> <a href="http://blogsearch.google.com/blogsearch?hl=en&q=scoble+semantic+web&btnG=Search+Blogs" id="link-id16680d08">Scoble's had a number of close encounters with Linked Data Web | Semantic Data Web | Web 3.0 aficionados</a> in various forms throughout 2007, but still doesn't quite make the connection between Web Services APIs as part of a processing pipeline that includes structured data extraction from XML data en route to producing Data Graphs comprised of Data Objects (Entities) endowed with: <a href="http://dbpedia.org/resource/Identity_%28object-oriented_programming%29" id="link-id16af1f98">Unique Identifiers</a>, Classification or Categorization schemes, Attributes, and Relationships prescribed by one or more shared Data Dictionaries/Schemas/Ontologies</li> <li> A global information bus that exposes a <a href="http://dbpedia.org/resource/Linked_Data" id="link-id16ce7c68">Linked Data</a> mesh comprised of Data Objects, Object Attributes, and Object Relationships across "points of Web presence" is what <a href="http://www.w3.org/People/Berners-Lee/card#i" id="link-id1aa304e0">TimBL</a> described in 1998 (<a href="http://www.w3.org/DesignIssues/Semantic.html" id="link-id1a822db0">Semantic Web Roadmap</a>) and more recently in 2007 (<a href="http://dig.csail.mit.edu/breadcrumbs/node/215" id="link-id181e5998">Giant Global Graph</a>)</li> <li> The Linked Data mesh (i.e Linked Data Web or GGG) is anchored by the use of HTTP to mint Location, Structure, and Value independent Object Identifiers called <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id16eae370">URI</a>s or <a href="http://dbpedia.org/resource/IRI" id="link-idffe16b8">IRI</a>s. In addition, the Linked Data Web is also equipped with a query language, protocol, and results serialization format for XML and JSON called: SPARQL. </li> </ol> <p>So, unlike Scoble, I am able to make my Facebook Data portable without violating Facebook rules (no data caching outside Facebook realm) by doing the following:</p> <ol> <li> Use an RDFizer for Facebook to convert XML response data from Facebook Web Services into RDF "on the fly" Ensure that my RDF is comprised of Object Identifiers that are HTTP based and thereby dereferencable (i.e. I can use SPARQL to unravel the Linked Data Graph in my Facebook data space)</li> <li> The act of data dereferencing enables me to expose my Facebook Data as Linked Data associated with my <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id16b3e9d0">Personal URI</a> </li> <li> This interaction only occurs via my data space and in all cases the interactions with data work via my <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1172" id="link-id16c628b8">RDFizer middleware</a> (e.g the <a href="http://virtuoso.openlinksw.com/presentations/Virtuoso_Sponger_1/Virtuoso_Sponger_1.html" id="link-id1572fb28">Virtuoso Sponger</a>) that talks directly to Facebook Web Services. </li> </ol> <p>In a nutshell, my Linked Data Space enables you to reference data in my data space via Object Identifiers (URIs), and some cases the Object IDs and Graphs are constructed on the fly via RDFization middleware.</p> <p>Here are my URIs that provide different paths to my Facebook Data Space:</p> <ul> <a href="http://myopenlink.net/dataspace/person/kidehen#this" id="link-id16f817a8"> Personal URI</a> </ul> <ul> <a href="http://myopenlink.net/proxy?url=http%3A//www.facebook.com/people/Kingsley_Idehen/605980750&force=rdf&login=kidehen" id="link-id1a8e5950">My Facebook Data Space</a> (best viewed via a <a href="http://demo.openlinksw.com/rdfbrowser/?uri=http%3A%2F%2Fmyopenlink.net%2Fproxy%3Furl%3Dhttp%253A%2F%2Fwww.facebook.com%2Fpeople%2FKingsley_Idehen%2F605980750%26force%3Drdf%26login%3Dkidehen" id="link-id15476588">Linked Data Browser/Viewer</a> session) </ul> <ul> <a href="http://myopenlink.net/proxy?url=http%3A//www.facebook.com/album.php%3Faid%3D14768%26id%3D605980750&force=rdf&login=kidehen" id="link-id16e3bcf0">My Facebook Photo Gallery -- WWW2007 Photo Collection</a> (also best viewed via a <a href="http://demo.openlinksw.com/rdfbrowser/?uri=http%3A%2F%2Fmyopenlink.net%2Fproxy%3Furl%3Dhttp%253A%2F%2Fwww.facebook.com%2Falbum.php%253Faid%253D14768%2526id%253D605980750%26force%3Drdf%26login%3Dkidehen" id="link-id16e10270">Linked Data Browser/Viewer</a> session) </ul> <p>To conclude, 2008 is clearly the inflection year during which we will final unshackle Data and Identity from the confines of "Web Data Silos" by leveraging the HTTP, SPARQL, and RDF induced virtues of Linked Data. </p> <p>Related Posts:</p> <ol> <li> <a href="http://blogs.sun.com/bblfish/entry/2008_the_rise_of_linked" id="link-id156baac0">2008 and the Rise of Linked Data</a> </li> <li> <a href="http://blogs.sun.com/bblfish/entry/data_portability_scoble_explains" id="link-id16291310">Scoble Right, Wrong, and Beyond</a> </li> <li> <a href="http://scobleizer.com/2007/11/30/talking-with-tim-berners-lee-inventor-of-the-web/" id="link-id163c9c38">Scoble interviewing TimBL</a> (note to Scoble: re-watch your interview since he made some specific points about Linked Data and URIs that you need to grasp)</li> <li>Prior Blog posts my this Blog Data Space that include the literal patterns: <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=scoble%20semantic%20web&type=text&output=html" id="link-id163e6cd0">Scoble Semantic Web</a> </li> </ol>
OpenOffice.org, SPARQL, and the Linked Data Web
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2008-01-04#1288
2008-01-05T02:50:00Z
2008-02-04T20:42:50.000004-05:00
<p>Question posed by Dan Brickley via a blog post: SQL, OpenOffice: <a href="http://danbri.org/words/2008/01/04/245" id="link-id1689abd8">would a JDBC driver for SPARQL protocol make sense?</a> </p> <p>Writing a <a href="http://dbpedia.org/resource/JDBC_driver" id="link-id16a96580">JDBC Driver</a> for <a href="http://dbpedia.org/resource/SPARQL" id="link-id1a908a70">SPARQL</a> is a little overkill. <a href="http://dbpedia.org/resource/OpenOffice.org" id="link-id16ae69a8">OpenOffice.org</a> simply needs to make <a href="http://dbpedia.org/resource/XML" id="link-id168d3880">XML</a> or Web Data (<a href="http://dbpedia.org/resource/HTML" id="link-id1a7f1f50">HTML</a>, <a href="http://dbpedia.org/resource/XHTML" id="link-id16c1ae60">XHTML</a>, and XML) bonafide data sources within its "<a href="http://dbpedia.org/resource/Pivot_table" id="link-id16665398">Pivot Table</a>" functionality realm. Then all that would then be required is a <a href="http://www.w3.org/TR/rdf-sparql-query/#select" id="link-id168bcbe8">SPARQL SELECT Query</a> transported via the <a href="http://www.w3.org/TR/rdf-sparql-protocol/" id="link-id16c1bbc0">SPARQL Protocol</a> with results sent back using the <a href="http://www.w3.org/TR/rdf-sparql-XMLres/" id="link-id1aa61118">SPARQL XML results serialization</a> format (all part of a single SPARQL Protocol URL).</p> <p>Excel successfully consumes the following information resource URI: http://tinyurl.com/yvoccj (a tiny url for a SPARQL SELECT against my<a href="http://myopenlink.net/dataspace/person/kidehen" id="link-id16702ba8"> FOAF file</a>).</p> <p>Alternatively, and currently achievable, you could simply use <a href="http://esw.w3.org/topic/SPASQL" id="link-id1a1b6b78">SPASQL</a> (SPARQL within SQL) using a <a href="http://dbpedia.org/resource/DBMS" id="link-id1661f240">DBMS</a> engine that supports SQL, SPARQL, and SPARQL e.g. <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id168bba60">Virtuoso</a>. </p> <p> <a href="http://docs.openlinksw.com/virtuoso/rdfapiandsql.html" id="link-id167d9508">Virtuoso SPASQL support</a> is exposed via it's <a href="http://dbpedia.org/resource/Open_Database_Connectivity" id="link-id16c62160">ODBC</a> and/or JDBC Drivers. Thus you can do things such as: </p> <ol> <li>Use a SPARQL Query in the FROM CLAUSE of a <a href="http://dbpedia.org/resource/SQL" id="link-id1657a3a8">SQL</a> statement</li> <li>Execute SPARQL via SQL processor by prepending SPARQL query text with the literals "sparql" </li> </ol> <p>BTW - My News Years Resolution: get my act together and shrink the ever increasing list of "simple & practical Virtuoso use case demos" on my todo which now spans all the way back to 2006 :-(</p>
Discussion: OpenLink Data Spaces
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-12-01#1280
2007-12-01T15:41:56Z
2007-12-01T15:26:12-05:00
<p>I've been a little busier than usual, of late. So busy, that even minimal blog based discourse participation has been a challenge. Anyway, during this quiet period, a number of interesting data streams have come my way that relate to <a href="http://virtuoso.openlinksw.com/wiki/main/Main/OdsIndex" id="link-id142b7e40">OpenLink Data Spaces</a> (ODS). Thus, in typical fashion, I'll use this post (via <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id1474d810">URI</a>s) to contribute a few nodes to the <a href="http://dig.csail.mit.edu/breadcrumbs/node/215" id="link-id149d8210">Giant Global Graph </a>that is the Web of Structured <a href="http://dbpedia.org/resource/Linked_Data" id="link-id139f9190">Linked Data</a>, also known as the <a href="http:dbpedia.org/resource/Semantic_Web" id="link-id1470e588">Data Web, Semantic Data Web, or Web of Data</a> (also see <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q='data%20web'&type=text&output=html" id="link-id13a4f828">prior Data Web posts</a>).</p> <p>Here goes:</p> <ol> <li> <a href="http://bizcast.typepad.com/" id="link-id14769268">Alan Wilensky</a> recalls his <a href="http://bizcast.typepad.com/clients/2007/11/social-networks.html" id="link-id14478c48">early encounters with OpenLink Data Spaces</a> (circa. 2004)</li> <li> <a href="http://www.vanirsystems.co.uk/foaf.rdf" id="link-id14516938">Daniel Lewis</a> shares his "<a href="http://vanirsystems.com/danielsblog/2007/11/29/where-is-the-semantic-web-well-it-is-here-already/" id="link-id149e2518">state of the Semantic Data Web"</a> findings</li> <li> <a href="http://vanirsystems.com/danielsblog/2007/11/30/openlink-data-spaces/" id="link-id14cddaf0">Daniel Lewis experiences OpenLink Data Space first hand</a> en route to creating Data Spaces in the Clouds (the <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1261" id="link-id146c35c8">Fourth Platform</a>).</li> </ol> <p>In addition, in one week, courtesy of the Web, UK Semnantic Web Gatherings in <a href="http://blogs.talis.com/nodalities/2007/11/cindy_che_and_other_interestin.php" id="link-id14304738">Bristol</a> and <a href="http://oxford.geeknights.net/2007/nov-28th/" id="link-id145589d8">Oxford</a>, I <a href="http://vanirsystems.com/danielsblog/2007/11/21/wanted-job/" id="link-id1399de08">discover</a>, interview, and employ Daniel :-) Imagine how long this would have taken to pull off via the Document Web, assuming I would even discover Daniel.</p> <p>As with all things these days, the <a href="http://dbpedia.org/resource/World_Wide_Web" id="link-id1477a7e0">Web</a> and <a href="http://dbpedia.org/resource/Internet" id="link-id14c3f428">Internet</a> change everything, which includes talent discovery and recruitment.</p> <p>A Global Social graph that is a mesh of Linked Data enables the process of recruitment, marketing, and other elements of busines management to be condensed down to a sending powerful beams across the aforementioned Graph :-) The only variable pieces are the traversal paths exposed to your beam via the beam's entry point URI. In my case, <a href="http://kidehen.idehen.net/dataspace/person/kidehen#this" id="link-id1395e5f0">I have a single URI</a> that exposes a Graph of critical paths for the Blogosphere (i.e data spaces of RSS Atom Feeds). Thus, I can discover if your profile matches the requirements associated with an opening at OpenLink Software (most of the time) before you do :-)</p> <p>BTW - I just noticed that John Breslin described ODS as social-graph++ in his recent post, titled: <a href="http://www.johnbreslin.com/blog/2007/11/30/tales-from-the-sioc-o-sphere-part-6/" id="link-id14c82bc8">Tales from the SIOC-o-sphere, part 6</a>. In a funny way, this reminds of a post from the early blogosphere days about <a href="http://www.cadenhead.org/workbench/news/1427/commercial-server-supports-four-weblog-apis" id="link-id14a24c58">platforms and Weblog APIs </a>(circa. 2003) about ODS (then exposed via the Blog Platform realm of <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id14745100">Virtuoso</a>).</p>
Reminder: Why We Need Linked Data!
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-11-02#1267
2007-11-02T22:50:00Z
2007-11-02T18:52:34-04:00
<blockquote> <p>"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 "OpenWidget" - though the press wouldn't have been as good. We've been waiting for data and identity portability - is this all we get?" <br /> [Source: <a href="http://blogs.usnet.private:8893/[Excerpted from: http://feeds.feedburner.com/~r/readwriteweb/~3/178622741/opensocial_three_big_concerns.php]" id="link-id1143a428">Read/Write Web's Commentary & Analysis of Google's OpenSocial API</a>]</p> </blockquote> <blockquote> <p>..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....</p>[Source: <a href="http://burningbird.net/technology/terms/" id="link-id116f8c98">Poignant commentary excerpt from <a href="http://burningbird.net" id="link-id11216e98">Shelly Power's Blog</a></a> (as always)]</blockquote> <p>The "<a href="http://dbpedia.org/resource/Semantic_Web" id="link-id1102bc20">Semantic Data Web</a>" vision has always been about "Data & Identity" portability across the Web. Its been that and more from day one.</p> <p>In a nutshell, we continue to exhibit varying degrees of <a href="http://dbpedia.org/resource/Cognitive_dissonance" id="link-id121bb728">Cognitive Dissonance</a> re the following realities:</p> <ol> <li>The <a href="http://dbpedia.org/resource/Network" id="link-id114567b0">Network</a> is the Computer (Internet/Intranet/Extranet depending on your TCP/IP usage scenarios)</li> <li>The Web is the OS (ditto) and it provides a communications subsystem (<a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s+BLOG+%5B127%5D/1231" id="link-id1212b390">Information BUS</a>) comprised of</li> <ul>- <a href="http://dbpedia.org/resource/Hypertext_Transfer_Protocol" id="link-id11b1b760">HTTP</a> Protocol</ul> <ul>- <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier" id="link-id11043020">URI</a>s (pointer system for identifying, accessing, and manipulating data)</ul> <li>HTTP based Interprocess (i.e Web Apps are processes when you discard the HTML UI and interact with the application logic containers called "Web Services" behind the pages) ultimately hit data</li> <li>Web Data is best Modeled as a Graph (RDF, Containers/Items/Item Types, Property & Value Pairs associated with something, and other labels)</li> <li>Network are Graphs and vice versa</li> <li>Social Networks are graphs where nodes are connected via social connectors ( [x]--knows-->[y] ) </li> <li>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)</li> <li>Data access and manipulation depends inherently on canonical Data Access mechanisms such as Data Source Identifiers / Names (time-tested practice in various DBMS realms)</li> <li>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)</li> <li>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.</li> </ol> <p> The Data Web is about Presence over Eyeballs due to the following realities:</p> <ol> <li>Eyeballs are input devices for a <a href="http://dbpedia.org/resource/DNA" id="link-id118b29a0">DNA</a> based processing system (Humans). The aforementioned processing system can reason very well, but simply cannot effectively process masses of data or information</li> <li>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</li> <li>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</li> <li>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 "Data Web Presence" that openly expose "<a href="http://dbpedia.org/resource/Data_structure" id="link-id10e56458">Structured Linked Data</a>". </li> </ol> <p>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 "Semantic Data Web" or "Web of Data" or "Web or Structured Data" is all about. </p> <p>As stated earlier (point 10 above), "Data is forever" and there is only more of it to come! Sociality and associated Social Networking oriented solutions are at best a spec in the Web's ocean of data once you comprehend this reality.</p> <p>Note: I am writing this post as an early implementor of <a href="http://dbpedia.org/resource/GData" id="link-id11349808">GData</a> and an implementor of <a href="http://dbpedia.org/resource/Linked_Data" id="link-id120f3a68">RDF Linked Data</a> technology and a "Web Purist". </p> <blockquote> <p>OpenSocial implementation and support across our relevant product families: <a href="http://dbpedia.org/resource/Virtuoso_Universal_Server" id="link-id1217bf20">Virtuoso</a> (i.e the <a href="http://virtuoso.openlinksw.com/Whitepapers/html/VirtSpongerWhitePaper.html" id="link-id12154258">Sponger Middleware</a> for RDF component), <a href="http://virtuoso.openlinksw.com/wiki/main/Main/Ods" id="link-id11369930">OpenLink Data Spaces</a> (Data Space Controller / Services), and the <a href="http://oat.openlinksw.com/" id="link-id113e4da0">OpenLink Ajaxt Toolkit</a> (i.e OAT Widgets and Libraries), is a triviality now that the OpenSocial APIs are public. </p> </blockquote> <p>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 "lock-in" that ultimately compromises the "Open Purity" of the Web. <a href="http://dbpedia.org/resource/Facebook" id="link-id11073980">Facebook</a> and Google's <a href="http://code.google.com/apis/opensocial/docs/" id="link-id1215e020">OpenSocial</a> 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 "World Wide Web". The nice and predictable thing about icebergs is that they ultimately melt into the larger ocean :-)</p> On a related note, I had the pleasure of attending the <a href="http://www.w3.org/2007/03/RdfRDB/" id="link-id1106f678">W3C's RDF and DBMS Integration Workshop</a>, 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: <ul>- <a href="http://virtuoso.openlinksw.com/presentations/RDF_Mapping_Presentation_W3C_workshop3.ppt" id="link-id11053440">RDF Views of SQL Data</a> - <a href="http://www.openlinksw.com/weblog/oerling" id="link-id1218bf70">Orri Erling </a>on behalf of OpenLink Software</ul> <ul>- <a href="http://www.michaelbrodie.com/documents/Brodie%20VLDB%202007%20V3.zip" id="link-id11eda380">Computer Science 2.0</a> (covering User Generated Content Explosion) - Michael Brodie</ul> <ul>- <a href="http://www.w3.org/2007/03/RdfRDB/talks/Finding_our_way.ppt" id="link-id113b9620">Experiences re. solving SPARQL Access to Distributed Data Sources</a> - Phil Ashworth </ul> <ul>- <a href="http://www.w3.org/2007/03/RdfRDB/program" id="link-id11265180">Other presentations</a> </ul>.
Virtuoso 5.0.2 Released!
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-10-06#1265
2007-10-06T16:03:49Z
2007-10-08T10:27:27-04:00
<p>A new release of Virtuoso is now available in both <a href="http://virtuoso.openlinksw.com/wiki/main/" id="link-id1282d260">Open Source</a> and <a href="http://virtuoso.openlinksw.com" id="link-id1317deb0">Commercial</a> variants. The main features and Enhancements associated with this release include:</p> <ul> * 64-bit Integer Support</ul> <ul> * 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)</ul> <ul>* 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 & Remixers out there!)</ul> <ul>* New Sponger Cartridges for Facebook, Freebase, Wikipedia, GRDDL, RDFa, eRDF and more</ul> <ul>* Support for PHP 5.2 runtime hosting (Virtuoso is a bona fide deployment platform for: Wordpress, MediaWiki, phpBB, Drupal etc.)</ul> <ul>* Enhanced UI for managing <a href="http://dbpedia.org/resource/Linked_Data" id="link-id12837b20">RDF Linked Data</a> deployment (covering Multi Homed domains, Virtual Directories associated with URL-rewrite rules</ul> <ul>* Demonstration Database includes <a href="http://www.openlinksw.com/virtuoso/Whitepapers/html/rdf_views/virtuoso_rdf_views_example.html" id="link-id130c2830">SQL-RDF Views </a>& SQL Table samples for the THALIA Web Data Integration benchmark and test-suite</ul> <ul>* 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)</ul> <ul>* SQL-RDF Views implementation of the TPC-D benchmark (Yes, we can run this grueling SQL benchmark via RDF views of SQL Data!)</ul> <ul>* A new Amazon EC2 Image for Virtuoso that enables you to instantiate a fully configured instance comprising the Virtuoso core,<a href="http://virtuoso.openlinksw.com/wiki/main/Main/OdsIndex" id="link-id126c5eb8"> OpenLink Data Spaces</a> platform and the <a href="http://sourceforge.net/projects/oat" id="link-id1341cb68">OpenLink Ajax Toolkit</a> (OAT) (we now have bona fide Data Spaces in the Clouds as an addition to the emerging Semantic Data Web mesh).</ul> <p>Download Lnks: </p> <ul>* <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSDownload" id="link-id12745128">Open Source Edition</a> </ul> <ul>* <a href="http://download.openlinksw.com/download/product_matrix.vsp?p=f_os&fm=26&fam=2&df=16" id="link-id12f15ed0">Commercial Edition</a> </ul>
Fourth Platform: Data Spaces in The Cloud (Update)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-09-22#1261
2007-09-22T23:43:00Z
2008-10-26T17:59:33-04:00
<p>I've written extensively on the subject of <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=data%20spaces&type=text&output=html" id="link-id134c2280">Data Spaces</a> in relation to the <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=data%20web%0D%0A&type=text&output=html" id="link-id105aef90">Data Web</a> for while. I've also written sparingly about <a href="http://virtuoso.openlinksw.com/wiki/main/Main/OdsIndex" id="link-id105bd100">OpenLink Data Spaces</a> (a Data Web Platform that build using Virtuoso). On the other hand, I haven't shed much light on installation and deployment of OpenLink Data Spaces.</p> <p> <a href="http://blog.jonudell.net" id="link-id14347f20">Jon Udell</a> recently penned a post titled: <a href="http://blog.jonudell.net/2007/09/21/the-fourth-platform/" id="link-id1439ed48">The Fourth Platform</a>. The post arrives at a spookily coincidental time (this happens quite often between Jon and I as demonstrated last year during our <a href="http://weblog.infoworld.com/udell/gems/ju_idehen.mp3" id="link-id107d17a8">podcast</a>; the "Fourth" in his Innovators Podcast series).</p> <p>The platform that Jon describes is "Cloud Based" 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: "Cloud based Data Spaces". </p> <p>As I write, we are releasing a Virtuoso AMI (Amazon Image) labeled: virtuoso-dataspace-server. This edition of<a href="http://virtuoso.openlinksw.com" id="link-id13543210"> Virtuoso</a> includes the OpenLink Data Spaces Layer and all of the OAT applications we've been developing for a while.</p> <h2>What Benefits Does this offer?</h2> <ol> <li>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</li> <li>All the data in your Data <a href="http://en.wikipedia.org/wiki/Data_Spaces">Space</a> is <a href="http://dbpedia.org/resource/SPARQL" id="link-id1149a4f8">SPARQL</a> or <a href="http://dbpedia.org/resource/GData" id="link-id107a9f28">GData</a> accessible.</li> <li>All of the data in your Personal Data Space is <a href="http://dbpedia.org/resource/Linked_Data">Linked Data</a> from the get go. Each Item of data is <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier">URI</a> addressable</li> <li> <a href="http://dbpedia.org/resource/SIOC" id="link-id104f4160">SIOC</a> support - your Blogs, Wikis, Bookmarks etc.. are based on the SIOC ontology for Semantically Interlinking Online Communities (think: Open social-graph++) </li> <li> <a href="http://dbpedia.org/resource/Friend_of_a_friend" id="link-id105beb78">FOAF</a> support - your FOAF Profile page provides a URI that is an in-road to all Data in your Data Space.</li> <li> <a href="http://dbpedia.org/resource/OpenID" id="link-id1144e138">OpenID</a> support - your Personal Data Space ID is usable wherever OpenID is supported. OpenID and FOAF are integrated as per latest FOAF specs</li> <li>Two Integration with Facebook - You can access your Data Space from Facebook or access Facebook from your Data Space</li> <li>Unified Storage - The WebDAV based filesystem provides Cloud Storage that'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's WebDAV support</li> <li> <a href="http://dbpedia.org/resource/SyncML" id="link-id11128f48">SyncML</a> - you can sync calendar and contact details with your Data Space in the cloud from your Mobile phone.</li> <li>A practical Semantic Data Web solution - based on Web Infrastructure and doesn't require you to do anything beyond exposing URIs for data in your Data Spaces.</li> </ol> <h2> <a href="http://dbpedia.org/resource/Amazon_Elastic_Compute_Cloud" id="link-id115d1920">EC2</a>-AMI Details:</h2> <ul>AMI ID: ami-e2ca2f8b</ul> <ul>Manifest file: virtuoso-images/virtuoso-dataspace-server.manifest.xml</ul> <h2>Installation Guide:</h2> <ol> <li>Get an Amazon Web Services (AWS) account</li> <li>Signup for S3 and EC2 services</li> <li>Install the EC2 plugin for Firefox</li> <li>Start the EC2 plugin</li> <li>Locate the row containing <b>ami-7c31d515  Manifest virtuoso-test/virtuoso-cloud-beta-9-i386.manifest.xml </b>(sort using the AMI ID or Manifest Columns or search on pattern: virtuoso, due to name flux)</li> <li>Start the Virtuoso Data Space Server AMI</li> <li>Wait 4-5 minutes (*take a few minutes to create the pre-configured Linux Image*)</li> <li>Connect to http://<public_dns_name_of_your_instance>http://your-ec2-instance-cname:8890/ Log in with user/password dba/dba</public_dns_name_of_your_instance> </li> <li>Go to the Admin UI (Virtuoso Conductor) and change the PWDs for the 'dba' and 'dav' accounts (*Important!*)</li> <li>Give the "SPARQL" user "SPARQL_UPDATE" privileges (required if you want to exploit the in-built Sponger Middleware)</li> <li>Click on the <a href="http://dbpedia.org/resource/OpenLink_Data_Spaces">ODS</a> (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)</li> <li>Log-in using the username and password credentials for the 'dav' 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</li> <li>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 "Feeds Manager" application or import some Bookmarks using the "Bookmarks" application</li> <li>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)<br /> </li> </ol> <h2> (OAT) from your Data Space instance</h2>Install the OAT VAD package via the Admin UI and then apply the URI patterns below within your browser:<br /> <ol> <li>http://<public_dns_name_of_your_instance>:8890/oatdemo - Entire OAT Demo Collection</public_dns_name_of_your_instance> </li> <li>http://<public_dns_name_of_your_instance>:8890/rdfbrowser - RDF Browser</public_dns_name_of_your_instance> </li> <li>http://<public_dns_name_of_your_instance>:8890/isparql - SPARQL Query Builder (iSPARQL)</public_dns_name_of_your_instance> </li> <li>http://<public_dns_name_of_your_instance>:8890/qbe - SQL Query Builder (iSQL)</public_dns_name_of_your_instance> </li> <li>http://<public_dns_name_of_your_instance>:8890/formdesigner - Forms Builder (for building Meshups based on RDF, SQL, or Web Servives Data Souces)</public_dns_name_of_your_instance> </li> <li>http://<public_dns_name_of_your_instance>:8890/dbdesigner - SQL DB Schema Designer (note a Visual SQL-RDF Mapper is also on it's way</public_dns_name_of_your_instance> </li> <li>http://<public_dns_name_of_your_instance>:8890/DAV/JS/ - To view the OAT Tree (there are some experimental demos that are missing from the main demo app etc..) </public_dns_name_of_your_instance> </li> </ol> <p>There's more to come!</p>
Semantic Web Value Proposition
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-09-20#1254
2007-09-21T02:23:00Z
2007-09-21T08:05:07.000009-04:00
<p>The motivation behind this post is a response to the <a href="http://www.readwriteweb.com">Read/WriteWeb</a> post titled: <a href="http://www.readwriteweb.com/archives/semantic_web_difficulties_with_classic_approach.php">Semantic Web: Difficulties with the Classic Approach</a>.</p> <p>First off, I am going to focus on the Semantic Data Web aspect of the overall Semantic Web vision (a continuum) as this is what we have now. I am also writing this post as a deliberate contribution to the discourse swirling around the real topic: Semantic Web Value Proposition.</p> <h2>Situation Analysis</h2> <p>We are in the early stages of the long anticipated<a href="http://dbpedia.org/resource/Knowledge_economy"> Knowledge Economy</a>. That being the case, it would be safe to assume that information access, processing, and dissemination are of utmost importance to individuals and organizations alike. You don't produce knowledge in a vacum! Likewise, you can produce Information in a vacum, you need Data.</p> <h2>The Semantic Data Web's value to Individuals</h2> <b>Problem:</b> <p>Increasingly, <a href="http://dbpedia.org/resource/Blog">Blogs</a>, <a href="http://dbpedia.org/resource/Wiki">Wikis</a>, <a href="http://dbpedia.org/resource/Social_bookmarking">Shared Bookmarks</a>, Photo Galleries, Discussion Forums, Shared Calendars and the like, have become invaluable tools for individual and organizational participation in Web enabled global discourse (where a lot of knowledge is discovered). These tools, are typically associated with <a href="http://dbpedia.org/resource/Web_2">Web 2.0</a>, implying Read-Write access via <a href="http://dbpedia.org/resource/Web_service">Web Services</a>, centralized application hosting, and data lock-in (silos).</p> <p>The reality expressed above is a recipe for "<a href="http://dbpedia.org/resource/Information_overload">Information Overload</a>" and complete annihilation of ones effective pursuit and exploitation of knowledge due "Time Scarcity" (note: disconnecting is not an option). Information abundance is inversely related to available processing time (for humans in particular). In my case for instance, I was actively subscribed to over 500+ RSS feeds in 2003. As of today, I've simply stopped counting, and that's just my Weblog Data Space. Then add to that, all of the Discussions I track across Blogs, wikis, message boards, mailing lists, traditional usnet discussion forumns, and the like, and I think you get the picture. </p> <p>Beyond information overload, Web 2.0 data is "Semi-Structured" by way of it's dominant data containers ((X)HTML, RSS, Atom documents and data streams etc.) lacking semantics that formally expose individual data items as distinct entities, endowed with unambiguous naming / identification, descriptive attributes (a type of property/predicate), and relationships (a type of property/predicate).</p> <b>Solution:</b> <p>Devise a standard for Structured Data Semantics that is compatible with the <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1231">Web Information BUS</a>.</p> <p>Produce <a href="http://www.mkbergman.com/?p=153">structured data</a> (entities, entity types, entity relationships) from Web 1.0 and Web 2.0 resources that already exists on the Web such that individual entities, their attributes, and relationships are accessible and discernible to software agents (machines).</p> <p>Once the entities are individually exposed, the next requirement is a mechanism for selective access to these entities i.e. a query language. </p> <p> Semantic Data Web Technologies that facilitate the solution described above include:</p> <b>Structured Data Standards:</b> <ul> <a href="http://dbpedia.org/resource/RDF">RDF</a> - Data Model for structured data</ul> <ul>RDF/XML - A serialization format for RDF based structured data</ul> <ul> <a href="http://dbpedia.org/resource/Notation_3">N3</a> / <a href="http://dbpedia.org/resource/Turtle_%28syntax%29">Turtle</a> - more human friendly serialization formats for RDF based structured data</ul> <b>Entity Exposure & Generation:</b> <ul> <a href="http://dbpedia.org/resource/GRDDL">GRDDL</a> - enables association between XHTML pages and XSLT stylesheets that facilitates loosely coupled "on the fly" extraction of RDF from non RDF documents</ul> <ul> <a href="http://dbpedia.org/resource/RDFa">RDFa</a> - enables document publishers or viewers (i.e those repurposing or annotating) to embed structured data into existing XHTML documents</ul> <ul> <a href="http://research.talis.com/2005/erdf/wiki/Main/RdfInHtml">eRDF</a> - another option for embedding structured RDF data within (X)HTML documents</ul> <ul> <a href="http://www.openlinksw.com/blog/%7Ekidehen/?id=1172">RDF Middleware</a> - typically incorporating GRDDL, RDFa, eRDF, and custom extraction and mapping as part of a structured data production pipeline</ul>. <b>Entity Naming & Identification:</b> <p>Use of URIs or IRIs for uniquely identifying physical (HTML Documents, Image Files, Multimedia Files etc..) and abstract (People, Places, Music, and other abstract things). </p> <b>Entity Access & Querying:</b> <ul> <p> <a href="http://dbpedia.org/resource/SPARQL">SPARQL</a> Query Language - the <a href="http://dbpedia.org/resource/SQL">SQL</a> analog of the Semantic Data Web that enables query constructs that target named entities, entity attributes, and entity relationships</p> </ul> <ul> <a href="http://www.w3.org/TR/rdf-sparql-protocol/">SPARQL Protocol</a> - a <a href="http://dbpedia.org/resource/Representational_State_Transfer">REST</a> or <a href="http://dbpedia.org/resource/SOAP">SOAP</a> style Web Service for transporting SPARQL Queries to Structured Data Sources.</ul> <ul> <a href="http://www.w3.org/TR/rdf-sparql-XMLres/">SPARQL Results Serialization Formats</a> - query results serialization formats that includes XML(sparql+xml) and JSON.</ul> <h2>The Semantic Data Web's value to Organizations</h2> <b>Problem:</b> <p>Organizations are rife with a plethora of business systems that are built atop a myriad of database engines, sourced from a variety of DBMS vendors. A typical organization would have a different database engine, from a specific DBMS vendor, underlying critical business applications such as: Human Resource Management (HR), Customer Relationship Management (CRM), Accounting, Supply Chain Management etc. In a nutshell, you have DBMS Engines, and DBMS Schema heterogeneity permeating the IT infrastructure of organizations on a global scale, making Data & Information Integration the biggest headache across all IT driven organizations.</p> <b>Solution:</b> <p>Alleviation of the pain (costs) associated with Data & Information Integration. </p> <b>Semantic Data Web offerings:</b> <p>A dexterous data model (RDF) that enables the construction of conceptual views of disparate data sources across an organization based on existing web architecture components such as HTTP and URIs.</p> <p>Existing middleware solutions that facilitate the exposure of SQL DBMS data as RDF based Structured Data include:</p> <ul> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSSQLRDF">Virtuoso's Meta Schema Language for RDF Views of SQL Data</a> (also see the <a href="http://virtuoso.openlinksw.com/Whitepapers/pdf/Virtuoso_SQL_to_RDF_Mapping.pdf">Virtuoso SQL-RDF Technical White Paper</a>)</ul> <ul> <a href="http://sites.wiwiss.fu-berlin.de/suhl/bizer/D2RQ/">D2RQ</a> </ul> <ul> <a href="http://ccnt.zju.edu.cn/projects/dartgrid">DataGrid</a> </ul> <ul> <a href="http://esw.w3.org/topic/RdfAndSql">Others</a> </ul> <p> BTW - There is an upcoming <a href="http://www.w3.org/2007/03/RdfRDB/">W3C Workshop covering the integration of SQL and RDF data</a>.</p> <h2>Conclusion</h2> <p>The Semantic Data Web is here, it's value delivery vehicle is the URI. The URI is a conduit to Interlinked Structured Data (RDF based Linked Data) derived from existing data sources on the World Wide Web alongside data continuously injected into the Web by organizations world wide. Ironically, the Semantic Data Web only platform that crystallizes the: Information at Your Fingertips vision, without development environment, operating system, application, or database lock-in. You simply click on a <a href="http://dbpedia.org/resource/Linked_Data">Linked Data URI</a> and the serendipitous exploration and discovery of data commences.</p> <p>The unobtrusive emergence of the Semantic Data Web is a reflection of the soundness of the underlying Semantic Web vision.</p> <p>If you are excited about <a href="http://dbpedia.org/resource/Mashup_%28web_application_hybrid%29">Mash-ups</a> then your are a Semantic Web enthusiast and benefactor in the making, because you only "Mash" (brute force data extraction and interlinking) because you can't "Mesh" (natural data extraction and interlinking). Likewise, if you are a social-networking, open social-graph, or portable social-network enthusiast, then you are also a Semantic Data Web benefactor and enthusiasts, because your "values" (yes, the values associated with the properties that define you e.g your interests etc) are the fundamental basis for portable, open, social-networking, which is what the Semantic Data Web hands to you on a platter without compromise (i.e. data lock-in or loss of data ownership).</p> <b>Some practical examples of Semantic Data Web prowess:</b> <ul> <a href="http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html?uri=http%3A%2F%2Fwww.readwriteweb.com%2Farchives%2Fsemantic_web_difficulties_with_classic_approach.php">Read/WriteWeb via the OpenLink Data Web Browser</a> (click on the different viewing tabs to see what structured data exploitation in action)</ul> <ul> <a href="http://browser.zitgist.com/?uri=http%3A//www.readwriteweb.com/archives/semantic_web_difficulties_with_classic_approach.php">Read/WriteWeb via the Zitgist Data Web Browser</a> </ul> <ul> <a href="http:/dbpedia.org">DBpedia</a> (*note: I deliberately use DBpedia URIs in my posts where I would otherwise have used a Wikipedia article URI*)</ul> <ul> <a href="http://wordpress.org/extend/plugins/zitgist-browser-linker/">Zitgist zLinks</a> - <a href="http://www.mkbergman.com/?p=400">Mike Bergman's Blog Post also demonstrating zLinks</a> </ul>
Yet Another RDFa Demo
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-09-03#1249
2007-09-03T17:59:02Z
2008-02-04T20:44:37.000009-05:00
<p> <a href="http://www.ivan-herman.net/Ivan_Herman">Ivan Herman</a> just posted another nice example of practical <a href="http://dbpedia.org/resource/RDFa">RDFa</a> usage in a blog post titled: <a href="http://ivanherman.wordpress.com/2007/09/03/yet-another-rdfa-processor…/">Yet Another RDFa Proccessor</a>. In his post, Ivan exposes a <a href="http://dbpedia.org/resource/Uniform_Resource_Identifier">URI</a> for his<a href="http://www.ivan-herman.net/foaf.html"> FOAF-in-RDFa file</a>.</p> <p>Since I am <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s%20BLOG%20%5B127%5D/1243">aggressively tracking RDFa developments</a>, I decided to quickly view <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/ivan_herman_foaf_via_rdfa.wqx">Ivan's FOAF-in-RDFa file via the OpenLink RDF Browser</a>. The full implications are best understood when you click on each of the Browser's Tabs -- each providing a different perspective on this interesting addition to the Semantic Data Web (note: the <a href="http://www.w3.org/2005/04/fresnel-info/">Fresnel</a> Tab which demonstrates declarative UI templating using N3).</p> <h3>What's Going on Here?</h3> <p>The <a href="http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html">OpenLink RDF Browser</a> is a <a href="http://en.wikipedia.org/wiki/Rich_internet_application">Rich Internet Application</a> built using OAT (<a href="http://oat.openlinksw.com">OpenLink Ajax Toolkit</a>). In my case, I am deploying the RDF Browser from a <a href="http://virtuoso.openlinksw.com">Virtuoso</a> instance, which implies that the Browser is able to use the <a href="http://www.openlinksw.com/blog/~kidehen/?id=1172">Virtuoso Sponger</a> Middleware (exposed as a REST Service at the Virtuoso instance endpoint: /proxy); which includes an RDFa Cartridge comprised of a metadata extractor and an <a href="http://dbpedia.org/resource/RDF_Schema">RDF Schema</a> / <a href="http://dbpedia.org/resource/Web_Ontology_Language">OWL Ontology</a> mapper. That's it!</p>
The Power of Structured Data Exposure via RDFa
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-08-23#1243
2007-08-23T22:41:36Z
2008-02-04T20:45:02.000004-05:00
I regularly check announcement from <a href="http://ben.adida.net/">Ben Adida</a> re. <a href="http://dbpedia.org/page/RDFa">RDFa</a> as part of a perpetual certification process for my ODS based Weblog. The most recent post from Ben contains a link to an "<a href="http://rdfa.info/rdfa-in-the-wild/">RDFa in the Wild</a>" portal (in the making).<br /> <br />One I installed Opertaor 0.8 and then scanned a few of the pages from the RDFa portal. <a href="http://www.kaply.com/operator/operator.xpi">Operator 0.8</a> didn't do much for me i.e. if the RDFa didn't express RDF aligned in some form to a microformat that it understood, it simply routed it's findings to a generic "resource" 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:<br /> <br />1. <a href="http://seal.ifi.unizh.ch/%7Emhermann/pax/web/index.php/publication/rdfalist%20">Semantically annotated publication database using Ajax</a> (a page containing structured data expressed in RDF and exposed via RDFa)<br /> <br />2. <a href="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">Same Page via OpenLink RDF Browser<br /> </a> <br />The RDF Browser uses the <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=sponger&type=text&output=html">Virtuoso Sponger</a> to extract the embedded <a href="http://dbpedia.org/page/RDF">RDF</a> from RDFa embedded in the page.
Injecting Facebook Data into the Semantic Data Web
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-07-27#1237
2007-07-27T08:22:00Z
2009-02-11T07:40:11-05:00
<p>I now have the first cut of a Facebook application called: Dynamic Linked Data Pages. </p> <h3>What is a Dynamic Linked Data Page (DLD)?</h3> <p>A dynamically generated Web Page comprised of Semantic Data Web style data links (formally typed links) and traditional Document Web links (generic links lacking type specificity).</p> <p>Linked Data Pages will ultimately enable Facebook users to inject their public data into the Semantic Data Web as RDF based Linked Data. For instance, my Facebook Profile & Photo albums data is now available as RDF, without paying a cent of RDF handcrafting tax, thanks to the Virtuoso Sponger (middleware for producing RDF from non RDF data sources) which is now equipped with a new RDFizer Cartridger for the Facebook Query Language (FQL) and RESTful Web Service.</p> <p>Demo Notes:</p> <p>When you click on a link in DLD pages, you will be presented with a lookup that exposes the different interaction options associated with a given URI. Examples include:</p> <ol> <li> Explore - find attributes and relationships that apply to the clicked URI</li> <li>Dereference (get the attributes of the clicked URI)</li> <li>Bookmark - store the URI for subsequent use e.g meshing with other URIs from across the Web</li> <li>(X)HTML Page Open - traditional Document Web link (i.e. just opens another Web document as per usual)</li> </ol> <p>Remember, the facebook URLs (links to web pages) are being converted, on the fly, into RDF based Structured Data ( graph model database) i.e Entity Sets that possess formally defined characteristics (attributes) and associations (relationships).</p> <h3>Dynamic Linked Data Pages</h3> <ol> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/Explore_Facebook_Profile.isparql">My facebook Profile</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/Explore_Facebook_Photo_Album.isparql">My facebook Photo Album</a> </li> </ol> <h3>Saved RDF Browser Sessions</h3> <ol> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/Exploring_Facebook_Profile.wqx">My facebook Profile</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/Exploring_Facebook_Photo_Gallery.wqx">My facebook Photo Album</a> </li> </ol> <h3>Saved SPARQL Query Definitions</h3> <ol> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/Explore_Facebook_Profile.rq">My facebook Profile Query</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/Exploring_Facebook_Photo_Album.rq">My facebook Photo Album Query</a> </li> </ol>
Virtuoso Sponger & RDFa
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-07-25#1236
2007-07-25T11:15:14Z
2007-07-25T07:03:46-04:00
<p>Triggered by <a href="http://ivanherman.wordpress.com/2007/07/22/yet-another-rdfa-converter/">Ivan's Herman's post about Triplr </a>and <a href="http://www.w3.org/TR/xhtml-rdfa-primer/">RDFa</a>, I quickly took the <a href="http://rdfa.info/">RDFa Info page URI</a> from his post and pasted it into the <a href="http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html">OpenLink RDF Browser</a>. As expected, I received <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/DataWeb/RDFa_Tracker.wqx">RDF Triples from the RDFa Data Source</a>. </p> <p>Note:This all happens because the <a href="http://sourceforge.net/projects/oat">OAT</a> based RDF Browser simply makes a call to the <a href="http://www.openlinksw.com/dataspace/kidehen@openlinksw.com/weblog/kidehen@openlinksw.com%27s+BLOG+%5B127%5D/1172">Virtuoso Sponger</a>'s REST service which is exposed at the endpoint "/proxy" (note: this is standard with all Virtuoso Installations).</p>
Enterprise 0.0, Linked Data, and Semantic Data Web
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-06-14#1224
2007-06-14T15:28:26Z
2008-02-04T23:19:26.000001-05:00
<p>Last week we <a href="http://www.openlinksw.com/press/virt_501.htm">officially released Virtuoso 5.0.1</a> (in Commercial and Open Source Editions). The press release provided us with an official mechanism and timestamp for the current Virtuoso feature set.</p> <p>A vital component of the new Virtuoso release is the finalization of our SQL to RDF mapping functionality -- enabling the declarative mapping of SQL Data to RDF. Additional technical insight covering other new features (delivered and pending) is provided by <a href="http://www.openlinksw.com/weblogs/oerling/">Orri Erling</a>, as part of a series of post-Banff posts.</p> <h2>Why is SQL to RDF Mapping a Big Deal?</h2> <p>A majority of the world's data (especially in the enterprise realm) resides in SQL Databases. In addition, Open Access to the data residing in said databases remains the biggest challenge to enterprises for the following reasons:</p> <ol> <li> SQL Data Sources are inherently heterogeneous because they are acquired with business applications that are in many cases inextricably bound to a particular DBMS engine </li> <li> Data is predictably dirty </li> <li> DBMS vendors ultimately hold the data captive and have traditionally resisted data access standards such as ODBC (*trust me they have, just look at the unprecedented bad press associated with ODBC the only truly platform independent data access API. Then look at how this bad press arose..*) </li> </ol> <p> Enterprises have known from the beginning of modern corporate times that data access, discovery, and manipulation capabilities are inextricably linked to the "Real-time Enterprise" nirvana (hence my use of 0.0 before this becomes 3.0).</p> <p>In my experience, as someone whose operated in the data access and data integration realms since the late '80s, I've painfully observed enterprises pursue, but unsuccessfully attain, full control over enterprise data (the prized asset of any organization) such that data-, information-, knowledge-workers are just a click away from commencing coherent platform and database independent data drill-downs and/or discovery that transcend intranet, internet, and extranet boundaries -- serendipitous interaction with relevant data, without compromise!</p> <p>Okay, situation analysis done, we move on.. </p> <p>At our most recent (<a href="http://esw.w3.org/topic/CambridgeSemanticWebGatherings/Meeting/2007-06-12_Gathering">12th June</a>) monthly <a href="http://esw.w3.org/topic/CambridgeSemanticWebGatherings">Semantic Web Gathering</a>, I unveiled to <a href="http://www.w3.org/People/Berners-Lee/card#i">TimBL</a> and a host of other attendees a simple, but powerful, demonstration of how <a href="http://en.wikipedia.org/wiki/Linked_Data">Linked Data</a>, as an aspect of the <a href="http://www.businessweek.com/technology/content/apr2007/tc20070409_961951.htm">Semantic Data Web</a>, can be applied to enterprise data integration challenges.</p> <h2>Actual SQL to RDF Mapping Demo / Experiment</h2> <h4>Hypothesis</h4> A SQL Schema can be effectively mapped declaratively to RDF such that SQL Rows morph into RDF Instance Data (Entity Sets) based on the Concepts & Properties defined in a Concrete Conceptual Data Model oriented Data Dictionary (<a href="http://www.w3schools.com/rdf/rdf_schema.asp">RDF Schema</a> and/or <a href="http://www.w3schools.com/rdf/rdf_owl.asp">OWL Ontology</a>). In addition, the solution must demonstrate how "Linked Data in the Web" is completely different from "Data on the Web" or "Linked Data on the Web" (btw - <a href="http://kasei.us/people/Tom_Heath/">Tom Heath</a> eloquently unleashed this point in his recent <a href="http://blogs.talis.com/nodalities/2007/06/tom_heath_talks_with_talis_abo.php">podcast interview with Talis</a>). <h4>Apparatus</h4> An Ontology - in this case we simply derived the <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/SQLRDFIntegraton/Explore_Northwind_Ontology.isparql">Northwind Ontology</a> from the XML Schema based CSDL (<a href="http://blogs.msdn.com/adonet/archive/2007/01/30/entity-data-model-part-1.aspx">Conceptual Schema Definition Language</a>) used by Microsoft's public <a href="http://astoria.mslivelabs.com/Default.aspx">Astoria demo</a> (specifically the <a href="http://astoria.mslivelabs.com/termsOfUseNorthwind.aspx?returnURL=Northwind">Northwind Data Services demo</a>). SQL Database Schema - <a href="http://www.microsoft.com/library/media/1033/technet/images/prodtechnol/sql/2000/maintain/sscpop07_big.gif">Northwind</a> (comes bundled with ACCESS, SQL Server, and Virtuoso) comprised of tables such as: <a href="http://www.openlinksw.com/schemas/northwind#Customer">Customer</a>, <a href="http://www.openlinksw.com/schemas/northwind#Employee">Employee</a>, <a href="http://www.openlinksw.com/schemas/northwind#Product">Product</a>, <a href="http://www.openlinksw.com/schemas/northwind#Category">Category</a>, <a href="http://www.openlinksw.com/schemas/northwind#Supplier">Supplier</a>, <a href="http://www.openlinksw.com/schemas/northwind#Shipper">Shipper</a> etc. <a href="http://www.openlinksw.com/virtuoso/">OpenLink Virtuoso</a> - SQL DBMS Engine (although this could have been any <a href="http://en.wikipedia.org/wiki/Open_Database_Connectivity">ODBC</a> or <a href="http://en.wikipedia.org/wiki/Java_Database_Connectivity">JDBC</a> accessible Database), <a href="http://www.openlinksw.com/virtuoso/Whitepapers/pdf/Virtuoso_SQL_to_RDF_Mapping.pdf">SQL-RDF Metaschema Language</a>, HTTP URL-rewriter, WebDAV Engine, and DBMS hosted XSLT processor Client Tools -<a href="http://demo.openlinksw.com/isparql/"> iSPARQL Query Builder</a>, <a href="http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html">RDF Browser</a> (which could also have been <a href="http://www.w3.org/2005/ajar/tab">Tabulator</a> or<a href="http://sites.wiwiss.fu-berlin.de/suhl/bizer/ng4j/disco/"> DISCO</a> or a standard Web Browser) <h4>Experiment / Demo</h4> <ol> <li> Declaratively map the Northwind SQL Schema to RDF using the Virtuoso Meta Schema Language (see: <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/SQLRDFIntegraton/northwind_sql_rdf.sql">Virtuoso PL based Northwind_SQL_RDF script</a>) </li> <li> Start browsing the data by clicking on the URIs that represent the RDF Data Model Entities resulting from the SQL to RDF Mapping </li> </ol> <h4>Observations</h4> <ol> <li> Via a single Data Link click I was able to obtain specific information about the Customer represented by the URI <a href="http://demo.openlinksw.com/Northwind/Customer/ALFKI">"ALFKI"</a> (act of URI Dereferencing as you would an Object ID in an Object or Object-Relational Database) </li> <li> Via a <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/SQLRDFIntegraton/Explore_Northwind.isparql">Dynamic Data Page </a> I was able to explore all the entity relationships or specific entity data (i.e Exploratory or Entity specific dereferencing) in the Northwind Data Space </li> <li> I was able to perform similar exploration (as per item 2) using our <a href="http://demo.openlinksw.com/DAV/home/demo/Public/Queries/SQLRDFIntegraton/Explore_Northwind_Customer_ALFKI.wqx">OpenLink Browser. </a> </li> </ol> <h4>Conclusions</h4> <p>The vision of data, information, or knowledge at your fingertips is nigh! Thanks to the infrastructure provided by the Semantic Data Web (URIs, <a href="http://en.wikipedia.org/wiki/Resource_Description_Framework">RDF Data Model</a>, variety of RDF Serialization Formats[<a href="http://www.dajobe.org/2004/01/turtle/">1</a>][<a href="http://www.w3.org/DesignIssues/Notation3">2</a>][<a href="http://www.w3.org/TR/2002/WD-rdf-syntax-grammar-20020325/">3</a>], and Shared Data Dictionaries / Schemas / Ontologies [<a href="http://xmlns.com/foaf/spec/">1</a>][<a href="http://rdfs.org/sioc/spec/">2</a>][<a href="http://www.w3.org/TR/swbp-skos-core-guide/">3</a>][<a href="http://musicontology.com/">4</a>][<a href="http://bblfish.net/work/atom-owl/2006-06-06/AtomOwl.html">5</a>]) it's now possible to Virtualize enterprise data from the Physical Storage Level, through the Logical Data Management Levels (Relational), up to a Concrete Conceptual Model (Graph) without operating system, development environment or framework, or database engine lock-in.</p> <h2>Next Steps</h2> <p>We produce a shared ontology for the CRM and Business Reporting Domains. I hope this experiment clarifies how this is quite achievable by converting XML Schemas to RDF Data Dictionaries (RDF Schemas or Ontologies). Stay tuned :-) </p> <p>Also watch <a href="http://news.com.com/1606-2-6189377.html">TimBL amplify and articulate Linked Data value</a> in a recent interview.</p> <h2>Other Related Matters</h2> <p>To deliver a mechanism that facilitates the crystallization of this reality is a contribution of boundless magnitude (as we shall all see in due course). Thus, it is easy to understand why even "her majesty", the queen of England, simply had to get in on the act and <a href="http://www.royal.gov.uk/output/Page1880.asp">appoint TimBL to the "British Order of Merit</a>" :-)</p> <p>Note: All of the demos above now work with IE & Safari (a "remember what Virtuoso is epiphany") by simply putting Virtuoso's DBMS hosted XSLT engine to use :-) This also applies to my earlier collection of demos from the <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=hello%20data%20web&type=text&output=html">Hello Data Web</a> and other <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=.isparql&type=text&output=html">Data Web & Linked Data related demo style posts</a>.</p>
What's OpenLink Software been Up To?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-04-19#1187
2007-04-19T23:47:40Z
2008-02-04T20:47:40.000001-05:00
<p> <a href="http://www.mkbergman.com">Mike Bergman</a> has written a very detailed <a href="http://www.mkbergman.com/?p=355">article about OpenLink Software and it's product portfolio</a> that basically answers the question: What has OpenLink been Up To?</p> <p>As the company's founder, it was quite compelling to read a third party article that accurately navigates and articulates the depth of work that we've undertaken since <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSHistory">that seminal moment in 1997</a> when we decided to extend our product portfolio beyond the <a href="http://uda.openlinksw.com">Universal Data Access Drivers</a> family.</p> <p>Of course I also take this opportunity to slip in another Semantic Data Web demo :-) Thus, take a look at this mother of all blog posts from Mike via the following:</p> <ol> <li> <a href="http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html?uri=http%3A%2F%2Fwww.mkbergman.com%2F%3Fp%3D355">OpenLink RDF Browser Session</a> </li> <li> <a href="http://dbpedia.openlinksw.com:8890/DAV/home/demo/dbpedia/Dynamic_Pages/Mike_Bergman_Reviews_OpenLink_Software.isparql">Dynamic Data Web Page</a> </li> </ol> <p>Note: In both cases above, you use the "Explore" or "Dereference" options of the Data Link (typed hyperlink) to traverse the RDF data that has been materialized "on the fly" courtesy of <a href="http://www.openlinksw.com/blog/~kidehen/?id=1172">Virtuoso's in-built RDF Middleware</a> (called the Sponger).</p> <p>BTW - I am assembling a collection of interesting <a href="http://dbpedia.org">DBpedia</a> based Dynamic pages that showcase the depth of knowledge available from <a href="http://wikipedia.org">Wikipedia</a>. If you're a current or future technology entrepreneur (or VC trying to grok the Semantic Web) then you certainly need to look at:</p> <ol> <li> <a href="http://dbpedia.openlinksw.com:8890/DAV/home/demo/dbpedia/Dynamic_Pages/All_About_Venture_Capital.isparql">Venture Capital</a> </li> <li> <a href="http://dbpedia.openlinksw.com:8890/DAV/home/demo/dbpedia/Dynamic_Pages/All_About_Venture_Capital_Firms.isparql">Venture Capital Firms</a> </li> <li> <a href="http://dbpedia.openlinksw.com:8890/DAV/home/demo/dbpedia/Dynamic_Pages/All_About_Venture_Capitalists.isparql">Venture Capitalists</a> </li> <li> <a href="http://dbpedia.openlinksw.com:8890/DAV/home/demo/dbpedia/Dynamic_Pages/Entrepreneurs_By_Nationality.isparql">Entrepreneurs By Nationality</a> </li> </ol>
Semantic Web Data Spaces
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-04-13#1185
2007-04-13T21:15:54Z
2007-04-13T18:19:29.000001-04:00
<b>Web Data Spaces</b> <p>Now that broader understanding of the Semantic Data Web is emerging, I would like to revisit the issue of "<a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q='data%20spaces'&type=text&output=html">Data Spaces</a>".</p> <p>A Data Space is a place where Data Resides. It isn't inherently bound to a specific Data Model (<a href="http://en.wikipedia.org/wiki/Network_model">Concept Oriented</a>, <a href="http://en.wikipedia.org/wiki/Relational_model">Relational</a>, <a href="http://en.wikipedia.org/wiki/Hierarchical_database">Hierarchical</a> 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.</p> <p>A Web Data Space is a Web accessible Data Space.</p> <p>Real world example:</p> <p>Today we increasing perform one of more of the following tasks as part of our professional and personal interactions on the Web:</p> <ol> <li>Blog via many service providers or personally managed weblog platforms</li> <li>Create Event Calendars via <a href="http://upcoming.com">Upcoming.com</a> and <a href="http://eventful.com">Eventful</a> </li> <li>Maintain and participate in Social Networks (e.g. <a href="http://facebook.com">Facebook</a>, <a href="http://orkut.com">Orkut</a>, <a href="http://myspace.com">MySpace</a>)</li> <li>Create and Participate in Discussions (note: when you comment on blogs or wikis for instance, you are participating in, or creating, a conversation)</li> <li>Track news by subscribing to <a href="http://web.resource.org/rss/1.0/">RSS 1.0</a>, <a href="http://cyber.law.harvard.edu/rss/rss.html">RSS 2.0</a>, or <a href="http://en.wikipedia.org/wiki/Atom_(standard)">Atom</a> Feeds</li> <li>Share Bookmarks & Tags via <a href="http://del.icio.us">Del.icio.us</a> and other Services</li> <li>Share Photos via <a href="http://flickr.com">Flickr</a> </li> <li>Buy, Review, or Search for books via <a href="http://amazon.com">Amazon</a> </li> <li>Participates in auctions via <a href="http://ebay.com">eBay</a> </li> <li>Search for data via <a href="http://google.com">Google</a> (of course!)</li> </ol> <p> <a href="http://www.johnbreslin.com/">John Breslin</a> has nice a <a href="http://www.johnbreslin.com/blog/wp-content/20051015a.gif">animation depicting the creation of Web Data Spaces</a> that drives home the point.</p> <b>Web Data Space Silos</b> <p> Unfortunately, what isn'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't particularly willing, or capable of, giving you unfettered access to your own data. Of course, this isn'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 "Data Spaces" all over the Web without a coherent mechanism for accessing and meshing these "Data Spaces".</p> <b>What are Semantic Web Data Spaces?</b> <p>Data Spaces on the Web that provide granular access to RDF Data.</p> <b>What's OpenLink Data Spaces (ODS) About?</b> <blockquote> <p>Short History</p> <p>In anticipation of this the "Web Data Silo" 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't really materialized (silos only emerged in concreted form after the emergence of the Blogosphere and Web 2.0). In addition, there wasn't a clear standard Query Language for the RDF based Web Data Model (i.e. the SPARQL Query Language didn't exist).</p> </blockquote> <p> 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'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:</p> <ol> <li> Content Publishing - Atom, <a href="http://www.sixapart.com/developers/product_documentation/movable_type/">Moveable Type</a>, <a href="http://www.xmlrpc.com/metaWeblogApi">MetaWeblog</a>, Blogger protocols </li> <li> Content Syndication Formats - RSS 1.0, RSS 2.0, Atom, OPML etc. </li> <li> Data Management - <a href="http://en.wikipedia.org/wiki/SQL">SQL</a>, <a href="http://www.w3.org/RDF/">RDF</a>, XML, Free Text </li> <li> Data Access - SQL, <a href="http://www.w3.org/TR/rdf-sparql-query/">SPARQL</a>, GData, Web Services (SOAP or REST styles), WebDAV/HTTP </li> <li> Semantic Data Web Middleware - <a href="http://www.w3.org/2004/01/rdxh/spec">GRDDL</a>, <a href="http://www.w3.org/TR/xslt">XSLT</a>, SPARQL, XPath/XQuery, HTTP (Content Negotiation) for producing RDF from non RDF Data ((X)HTML, Microformats, XML, Web Services Response Data etc). </li> </ol> <p>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 "Semantic Data Web" without incurring any of the typically assumed "RDF Tax".</p> <p>Naturally, ODS is built atop <a href="http://virtuoso.openlinksw.com">Virtuoso</a> and of course it exploits Virtuoso's feature-set to the max. It's also beginning to exploit functionality offered by the OpenLink Ajax Toolkit (<a href="http://demo.openlinksw.com/DAV/JS/demo/index.html">OAT</a>).</p>
RDF based Integration Challenges (update)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-03-30#1174
2007-03-30T21:18:26Z
2007-03-30T19:35:35-04:00
<p> <a href="http://dannyayers.com/">Danny Ayers</a> responds, via his post titled: <a href="http://dannyayers.com/2007/03/30/sampling">Sampling</a>, to "Stefano Mazzochi's post about <a href="http://www.betaversion.org/~stefano/linotype/news/101/">Data Integration using Semantic Web Technologies</a>.</p> <blockquote> <p>"There is a potential problem with republication of transformed data, in that right away there may be inconsistency with the original source data. Here provenance tracking (probably via named graphs) becomes a must-have. The web data space itself can support very granular separation. Whatever, data integration is a hard problem. But if you have a uniform language for describing resources, at least it can be possible."<br /> </p> <p>Alex James also chimes in with valuable insights in his post: <a href="http://www.base4.net">Sampling the global data model</a>, where he concludes:</p> <blockquote>"Exactly we need to use projected views, or conceptual models. ' <p> See a projected view can be thought of as a conceptual model that has some mapping to a *sampling* of the global data model.</p> <p>The benefits of introducing this extra layer are many and varied: Simplicity, URI predictability, Domain Specificity and the ability to separate semantics from lower level details like data mapping.</p> <p>Unfortunately if you look at todayâs ORMs you will quickly notice that they simply map directly from Object Model to Data Model in one step.</p> <p>This naïve approach provides no place to manage the mapping to a conceptual model that sampling the worldâs data requires.</p> <p>What we need to solve the problems Stefano sees is to bring together the world of mapping and semantics. And the place they will meet is simply the Conceptual Model."</p> </blockquote> <p>Data Integration challenges arise because the following facts hold true all of the time (whether we like it or not):</p> <ol> <li>Data Heterogeneity is a fact of life at the intranet and internet levels </li> <li>Data is rarely clean</li> <li>Data Integration prowess are ultimately measured by pain alleviation</li> <li>A some point human participation is required, but the trick is to move human activity up the value chain</li> <li>Glue code size and Data Integration success are inversely related</li> <li>Data Integration is best addressed via "M" rather than "C" (if we use the MVC pattern as a guide. "V" is dead on arrival for the scrappers out there)</li> </ol> <p>In 1997 we commenced the <a href="http://www.openlinksw.com/virtuoso/">Virtuoso</a> Virtual DBMS Project that morphed into the <a href="http://en.wikipedia.org/wiki/Virtuoso_Universal_Server">Virtuoso Universal Server</a>; A fusion of DBMS functionality and Middleware functionality in a single product. The goal of this undertaking remains alleviation of the costs associated with Data Integration Challenges by Virtualizing Data at the Logical and Conceptual Layers.</p> <p>The Logical Data Layer has been concrete for a while (e.g Relational DBMS Engines), what hasn't reached the mainstream is the <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127&q=conceptual%20data%20model&type=text&output=html">Concrete Conceptual Model</a>, but this is changing fast courtesy of the activity taking place in the realm of RDF.</p> <p>RDF provides an Open and Standards compliant vehicle for developing and exploiting Concrete Conceptual Data Models that ultimately move the Human aspect of the "Data Integration alleviation quest" higher up the value chain. </p> </blockquote>
RDF Browsers & RDF Data Middleware
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-03-28#1172
2007-03-28T23:17:00Z
2007-04-29T14:59:05-04:00
<p> <a href="http://fgiasson.com/blog">Frederick Giasson</a> penned an interesting post earlier today that highlighted the RDF Middleware services offered by <a href="http://fgiasson.com/blog/index.php/2007/03/28/making-the-bridge-between-the-web-and-the-semantic-web/#comments">Triplr and the Virtuoso Sponger</a> </p> <p>Some Definitions (as per usual):</p> <p>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).</p> <p>In this post I would like to provide a similar perspective on this ability to treat non RDF as RDF from RDF Browser perspective.</p> <p>First off, what's an RDF Browser?</p> <p>An RDF Browser is a piece of technology that enables you to Browse <a href="http://esw.w3.org/topic/SweoIG/TaskForces/CommunityProjects/LinkingOpenData">RDF Data Sources</a> 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 "Web Content".).</p> <p>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):</p> <ol> <li> <a href="http://www.w3.org/2005/ajar/tab">Tabulator</a> </li> <li> <a href="http://sites.wiwiss.fu-berlin.de/suhl/bizer/ng4j/disco/">DISCO - Hyperdata Browser</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html">OpenLink Ajax Toolkit's RDF Browser</a> (a component of the <a href="http://demo.openlinksw.com/DAV/JS/demo/index.html">OAT Javascript Toolkit</a>)</li> </ol> <p>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 <a href="http://www.w3.org/TR/2004/REC-webarch-20041215/#dereference-uri">URI dereferencing</a> (HTTP GETing the data exposed by the Data Pointer). Thus you can cut&paste the following into each of the aforementioned RDF Browsers:</p> <ol> <li> <a href="http://triplr.org/rdf/http://www.w3.org/People/Connolly/">Triplr's RDF Data (Triples) extractions from Dan Connolly's Home Page</a> </li> <li> <a href="http://demo.openlinksw.com/proxy?url=http://www.w3.org/People/Connolly/&force=rdf">The Virtuoso Sponger's RDF Data (Triples) extractions from Dan Connolly's Home Page</a> </li> </ol> <p>Since we are all time challenged (naturally!) you can also just click on these permalinks for the OAT RDF Browser demos:</p> <ol> <li> <a href="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&"">Permalink for Triplr's RDF Data (Triples) extractions from Dan Connolly's Home Page</a> </li> <li> <a href="http://demo.openlinksw.com/DAV/JS/rdfbrowser/index.html?uri=http%3A%2F%2Fwww.w3.org%2FPeople%2FConnolly%2F%23me">Permalink for the Virtuoso Sponger's RDF Data (Triples) extractions from Dan Connolly's Home Page</a> </li> </ol>
Data Web, Googlebase, and Yahoo!
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-03-22#1165
2007-03-22T23:04:21Z
2007-03-22T19:14:55-04:00
<p>A defining characteristic of the Data Web (Context Oriented Web 3.0) is that it facilitates Meshups rather than Mashups.</p> <p>Quick Definitions:</p> <ul> Mashups - Brute force joining of disparate Web Data</ul> <ul> Meshups - Natural joining of disparate Web Data </ul> <p> Reasons for the distinction:</p> <ul>Mashups are Data Model oblivious.</ul> <ul>Meshups are Data Model driven.</ul> <p>Examples:</p> <ul> 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.</ul> <ul> Meshups are RDF based and the data is self describing since the links are typed (posses inherent meaning thereby providing context).</ul> <p>So what? You may be thinking.</p> <p>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!</p> <p>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 <a href="http://en.wikipedia.org/wiki/Virtuoso_Universal_Server">Virtuoso</a> at my disposal that delivers a cross platform solution for exploiting all of these standards coherently.</p> <p>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.</p> <p>Demo Links:</p> <ol> <li> <a href="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">Googlebase Query URL as an RDF Data Source</a> </li> <li>Perform a simple Data Mesh by adding (via link copy and paste) this <a href="http://upcoming.org/search/?q=ajax&scope=allmetros&type=Events">Upcoming.org Query Services URL for Ajax Events</a> to the RDF Browsers list of Data Sources (paste into the Data Source URI input field).</li> </ol> <p>What does this all mean?</p> <p>"Context" is the catalyst of the burgeoning Data Web (Semantic Web Layer - 1). It's the <a href="http://sramanamitra.com/blog/729">emerging appreciation of "Context"</a> that is driving the growing desire to increment Web versions from 2.0 to 3.0. It also the the very same "Context" that has been a preoccupation of <a href="http://www.w3.org/2001/sw/Activity">Semantic Web vision</a> since its inception.</p> <p>The journey towards a more Semantic Web is all inclusive (all "ANDs" and no "ORs" re. participation).</p> <p>The Semantic Web is <a href="http://www.openlinksw.com/blog/~kidehen/?id=887">self-annotating</a>. 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..</p> <p>A Web without granular access to Data is simply not a Web worth having (think about the menace of click-fraud and spam).</p>
SPARQL and Full Text Indexing implementations are growing
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-03-09#1157
2007-03-09T23:50:29Z
2007-03-13T06:09:43-04:00
<p> <a href="http://en.wikipedia.org/wiki/Virtuoso_Universal_Server">Virtuoso</a> joins <a href="http://wingerz.com/blog/2007/02/06/text-indexing-and-query-in-boca/">Boca</a> and <a href="http://seaborne.blogspot.com/2006/11/larq-lucene-arq.html">ARC 2.0</a> as RDF Quad or Triple Stores with Full Text Index extensions to SPARQL. Here is our example applied to <a href="http://dbpedia.org">DBpedia</a>:</p> <pre><font size="2">PREFIX dbpedia: <http://dbpedia.org/> PREFIX foaf: <http://xmlns.com/foaf/0.1/> PREFIX xsd: <http://www.w3.org/2001/XMLSchema#> SELECT ?name ?birth ?death FROM <http://dbpedia.org> WHERE { ?person dbpedia:birthplace <http://dbpedia.org/resource/Berlin> . ?person dbpedia:birth ?birth . ?person foaf:name ?name . ?person dbpedia:death ?death FILTER (?birth < "1900-01-01"^^xsd:date and bif:contains (?name, 'otto')) . } ORDER BY ?name </font></pre> <p> You can test further using our <a href="http://demo3.openlinksw.com:8890/sparql/">SPARQL Endpoint for DBpedia</a> or via the <a href="http://demo3.openlinksw.com:8890/isparql/">DBPedia bound Interactive SPARQL Query Builder</a> or just click *<a href="http://demo3.openlinksw.com:8890/sparql/?default-graph-uri=&query=PREFIX+dbpedia%3A+%3Chttp%3A%2F%2Fdbpedia.org%2F%3E%0D%0APREFIX+foaf%3A+%3Chttp%3A%2F%2Fxmlns.com%2Ffoaf%2F0.1%2F%3E%0D%0APREFIX+xsd%3A+%3Chttp%3A%2F%2Fwww.w3.org%2F2001%2FXMLSchema%23%3E%0D%0ASELECT+%3Fname+%3Fbirth+%3Fdeath%0D%0AFROM+%3Chttp%3A%2F%2Fdbpedia.org%3E%0D%0AWHERE+%7B%0D%0A++++%3Fperson+dbpedia%3Abirthplace+%3Chttp%3A%2F%2Fdbpedia.org%2Fresource%2FBerlin%3E+.%0D%0A++++%3Fperson+dbpedia%3Abirth+%3Fbirth+.%0D%0A++++%3Fperson+foaf%3Aname+%3Fname+.%0D%0A++++%3Fperson+dbpedia%3Adeath+%3Fdeath%0D%0A++++FILTER+%28%3Fbirth+%3C+%221900-01-01%22%5E%5Exsd%3Adate+and+bif%3Acontains+%28%3Fname%2C+%27otto%27%29%29+.%0D%0A%7D%0D%0AORDER+BY+%3Fname&format=text%2Fhtml">Here</a>* for results courtesy of the <a href="http://www.w3.org/TR/rdf-sparql-protocol/">SPARQL Protocol</a> (REST based Web Service). </p> <p>Note: This is in-built functionality as Virtuoso has possessed <a href="http://en.wikipedia.org/wiki/Full_text_index">Full Text Indexing</a> since 1998-99. This capability applies to physical and virtual graphs managed by Virtuoso.</p> <p>A per usual, there is more to come as we now have a nice intersection point for SPARQL and XQuery/XPath since Triple Objects (the Literal variety) can take the form of XML Schema based Complex Types :-) A point I alluded too in my <a href="http://weblog.infoworld.com/udell/2006/04/28.html">podcast interview with Jon Udell </a>last year (*note: mechanical turk based transcript is bad*). The point I made went something like this: "...you use SPARQL to traverse the typed links and then use XPath/XQuery for further granular access to the data if well-formed..."</p> <p>Anyway, the podcast interview lead to this InfoWorld article titled: <a href="http://www.infoworld.com/article/06/05/03/77873_19OPstrategic_1.html">Unified Data Theory</a>.<br /> </p>
Data Web and Major League Baseball
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-03-02#1149
2007-03-02T00:20:25Z
2007-03-01T19:13:27-05:00
<blockquote> <p> <a href="http://wingerz.com/blog/2007/03/01/using-solvent-to-extract-data-from-structured-pages/#comments">Using Solvent to extract data from structured pages</a>: "</p> <div class="caption left"> <a href="http://wingerz.com/blog/projects/data/solvent-tutorial/"><img id="image346" src="http://wingerz.com/blog/wp-content/uploads/2007/03/solvent_logo.thumbnail.png" alt="solvent_logo.png" /> </a> </div> <p>I’ve put together a <a href="http://wingerz.com/blog/projects/data/solvent-tutorial/">short tutorial</a> on <a href="http://simile.mit.edu">Solvent</a>, a very nice web page parsing utility. It is still a little rough around the edges, but I wanted to throw it out there and continue working on it since there isn’t a whole lot of existing documentation. </p>" <p>(Via <a href="http://wingerz.com/blog">Wing Yung</a>.)</p> </blockquote> <p>After reading the interesting post above I quickly (and quite easily) knocked together a <a href="http://demo3.openlinksw.com:8890/DAV/home/demo/Major_League_Baseball_DataSpace.isparql.xml">"Dynamic Data Web Page for Major League Baseball</a>" using data from the <a href="http://en.wikipedia.org/wiki/Virtuoso_Universal_Server">Virtuoso</a> hosted edition of <a href="http://dbpedia.org">dbpedia</a>. Just click on the "Explore" option whenever you click on a URI of interest. Enjoy!</p>
Microsoft & Wikipedia Imbroglio
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2007-01-25#1124
2007-01-26T00:10:00Z
2007-01-25T18:47:47.000001-05:00
<p>I tried to post a comment to <a href="http://www.25hoursaday.com/weblog">Dare Obasanjo</a>'s blog post: <a href="http://www.25hoursaday.com/weblog/PermaLink.aspx?guid=0c22a95a-2d81-4f40-bbce-c763d8447468">How Do We Get Rid of Lies on Wikipedia</a>, without success (due to my attempts to add links to the post etc..). Hence a Blog style response instead.</p> <p>Dare:</p> <p>I have been through the Wikipedia fires a few times. If you recall that I actually triggered the early<a href="http://en.wikipedia.org/wiki/Web_2.0"> Web 2.0 Wikipedia article</a>. along the following lines: </p> <ol> <li> Asked one of my staff to start a post with the sole intention of defining Web 2.0 properly </li> <li> I then attempted to edit the initial post </li> <li> I left a typo re. REST </li> <li> Got set on Fire etc... (see very beginning of <a href="http://en.wikipedia.org/w/index.php?title=Talk:Web_2.0&action=history">Wikipedia Web 2.0 history page</a>) </li> </ol> <p>As annoying as the experience above was, I didn't find this inconsistent with the spirit of Wikipedia (i.e. open contribution and discourse). I felt, at the time, that a lot of historical data was being left in place for future reference etc.. In addition, the ultimate aim of creating an evolving Web 2.0 document did commence albeit some distance from "modern man" re. accuracy and meaningfulness as of my last read (today).</p> <p>Even closer to home, I repeated the process above re. <a href="http://en.wikipedia.org/wiki/Virtuoso_Universal_Server">Virtuoso Universal Server</a>. This basically ended up being a live case study on how you handle the Wikipedia NPOV conundurum. Just look at the <a href="http://en.wikipedia.org/wiki/Talk:Virtuoso_Universal_Server">Virtuoso Universal Server Talk Pages</a> to see how the process evolved (the key was Virtuoso's lineage and it's proximity to the very DBMS platform upon which Wikipedia runs i.e <a href="http://en.wikipedia.org/wiki/MySQL">MySQL</a>).</p> <p>Bearing in mind the size and magnitude of Microsoft, there should be no reason why Microsoft's "Microsoft Digital Caucus" ( legions of Staff, MSDN members, Integrators, and other partners) can't simply go into Wikipedia and participate in the edit and discourse process.</p> <p> Truth cannot be surpressed! At best, it can only be temporarily delayed :-) Even more so on the Web!</p>
Web Me2.0 -- Exploding the Myth of Web 2.0
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-11-15#1081
2006-11-15T23:17:36Z
2006-11-16T16:11:46-05:00
<p> <a href="http://novaspivack.typepad.com/nova_spivacks_weblog/">Nova Spivack</a> provides poignant insights into the recent Web 2.0 vs Web 3.0 brouhaha which I've excerpted below: </p> <blockquote> <a href="http://novaspivack.typepad.com/nova_spivacks_weblog/2006/11/web_me20_explod.html">Web Me2.0 -- Exploding the Myth of Web 2.0</a>: <p>"Many people have told me this week that they think 'Web 2.0' has not been very impressive so far and that they really hope for a next-generation of the Web with some more significant innovation under the hood -- regardless of what it's called. A lot of people found the Web 2.0 conference in San Francisco to be underwhelming -- there was a lot of self-congratulation by the top few brands and the companies they have recently bought, but not much else happening. Where was all the innovation? Where was the focus on what's next? It seemed to be a conference mainly about what happened in the last year, not about what will happen in the coming year. But what happened last year is already so 'last year.' And frankly Web 2.0 still leaves a lot to be desired. The reason Tim Berners-Lee proposed the Semantic Web in the first place is that it will finally deliver on the real potential and vision of the Web. Not that today's Web 2.0 sucks completely -- it only sort of sucks. It's definitely useful and there are some nice bells and whistles we didn't have before. But it could still suck so much less!"</p> </blockquote> <p>Web 2.0 is a (not was) a piece of the overall Web puzzle. The Data Web (so called Web 3.0) is another critical piece of this puzzle, especially as it provides the foundation layer (Layer 1) of the Semantic Web.</p> <p>Web 2.0 was never about "Open Data Access", "Flexible Data Models", or "Open World" meshing of disparate data sources built atop disparate data schemas (see: <a href="http://www.openlinksw.com/blog/~kidehen/?id=1032">Web 2.0's Open Data Access Conundrum</a>). It was simply about "Execution and APIs". I already written about "Web Interaction Dimensions", but you call also look at the relationship of the currently perceived dimensions through the M-V-C programming pattern: </p> <ol> <li>Viewer (V) - Web 1.0 (Interaction, Dimension 1 - Interactive-Web)</li> <li>Controller (C) - Web 2.0 (Services, Dimension 2 - Services-Web which is about Execution & Application Logic; SOA outside/in-front-of the Firewall for Enterprise 2.0 crowd)</li> <li>Model (M) - Web 3.0 (Data, Dimension 3 - Data-Web which is about data model dexterity and open data access)</li> </ol> <p>Another point to note, Social Networking is hot, but nearly every social network that I know (and I know and use most of them) suffers from an impedance mismatch between the service(s) they provide (social networks) and their underlying data models (in many cases Relational as opposed to Graph). Networks are about Relationships (N-ary) and your cannot effectively exploit the deep potential of: "Network Effects" (Wisdom of Crowds, Viral Marketing etc..) without a complimentary data model, you simply can't.</p> <p>Finally, the Data Web is already here, I promised a long time ago (Internet Time) that the manifestation of the Semantic Web would occur unobtrusively, meaning, we will wake up one day and realize we are using critical portions of the Semantic Web (i.e. Data-Web) without even knowing it. Guess what? It's already happening. Simple case in point, you may have started to notice the emergence of <a href="http://rdfs.org/sioc/spec/">SIOC</a> gems in the same way you may have observed those RSS 2.0 gems at the dawn of Web 2.0. What I am implying here is that the real question we should be asking is: Where is the Semantic Web Data? And how easy or difficult will it be to generate? And where are the tools? My answers are presented below:</p> <p> </p> <ol> <li> <a href="http://pingthesemanticweb.com/">Pingthesemanticweb.com</a> - Semantic Web Data Source Lookup & Tracking Service</li> <li> <a href="http://swoogle.umbc.edu/">Swoogle </a>- Semantic Web Ontology Location Service</li> <li> <a href="http://esw.w3.org/topic/RdfAndSql">Semantic Web Solutions for Generating RDF Data from SQL Data</a> </li> <li> <a href="http://esw.w3.org/topic/SemanticWebTools">Semantic Web Solutions Directory</a> </li> <li> <a href="http://sioc-project.org/">SIOC Project</a> - Semantically-Interlinked Online Communities Ontology, a grassroots effort that provides a critical bridge between Web 2.0 and the Data-Web. For instance, existing Web 2.0 application profiles such as; Blogs, Wikis, Feed Aggregators, Content Managers, Discussion Forums etc.. are much closer to the Data-Web than you may think :-) </li> <li> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/">Virtuoso</a> - our <a href="http://en.wikipedia.org/wiki/Virtuoso_Universal_Server">Universal Server</a> for the Data-Web</li> <li> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/OdsIndex">OpenLink Data Spaces</a> (ODS) - our SIOC based platform for transparent incorporation of the Data-Web into Web 1.0 and Web 2.0</li> </ol> <p>Next stop, less writing, more demos, these are long overdue! At least from my side of the fence :-) I need to produce a little step-by-guide oriented screencasts that demonstrates how Web 2.0 meshes nicely with the Data-Web.</p> <p>Here are some (not so end-user friendly) examples of how you can use <a href="http://www.w3.org/TR/rdf-sparql-query/">SPARQL</a> (Data-Web's Query Language) to query Web 2.0 Instance Data projected through the SIOC Ontology:</p> <p> </p> <ol> <li> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/ODSSIOCRef#Weblog%20Data%20Space">Weblog Data Query</a> </li> <li> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/ODSSIOCRef#Wiki%20Data%20Space">Wiki Data Query</a> </li> <li> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/ODSSIOCRef#Feeds%20/%20Subscriptions%20Data%20Space%20(Feed%20Aggregation)">Aggregated Feeds Data Query</a> - (RSS 1.0, RSS 2.0, Atom etc)</li> <li a="a" href="http://virtuoso.openlinksw.com/wiki/main/Main/ODSSIOCRef#Bookmarks%20Data%20Space">Shared Bookmarks Data Space</li> <li> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/ODSSIOCRef#Briefcase%20Applications%20Data%20Space">Web Filesystem Data Query</a> - (Briefcase - Virtual Spotlight of sorts)</li> <li> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/ODSSIOCRef#Photo%20Gallery%20Data%20Space">Photo Gallery Data Query</a> (this could be data from Flickr etc..)</li> <li> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/ODSSIOCRef#Discussion%20/%20Conversation%20Data%20Space">Discussion Data Query</a> (e.g. Blog posts comments)</li> <li> <a href="http://virtuoso.openlinksw.com/wiki/main/Main/ODSSIOCRef#Generic%20Data%20Space%20Queries">Data Queries across different Data Spaces</a> - combining data from Wikis, Blogs, Feeds, Photos, Bookmarks, Discussions etc..</li> </ol> <p>Note: You can use the online SPARQL Query Interface at: http://demo.openlinksw.com/isparql.</p> <p> </p> <p> Other Data-Web Technology usage demos include:</p> <p> </p> <ol> <li> <a href="http://www.w3.org/2005/ajar/tab">TimBL's Tabulator</a> - A Data-Web Browser</li> <li> <a href="http://sites.wiwiss.fu-berlin.de/suhl/bizer/ng4j/semwebclient/#examples">Semantic Web Client Library</a> - <a href="http://www.w3.org/TR/rdf-concepts/">RDF</a> Data Drill Down Demos using SPARQL</li> <li> <a href="http://sioc-project.org/firefox">Semantic Radar</a> - A Firefox plug-in for auto-discovering SIOC Instance Data</li> <li> <a href="http://www.talkdigger.com/">Talk Digger</a> - SIOC based Web Conversation Tracker</li> </ol>
More RDF scalability tests
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-11-06#1076
2006-11-06T22:09:50Z
2006-11-06T17:09:54.000001-05:00
<p>(Posted verbatim from <a href="http://www.openlinksw.com/weblog/oerling/">Orri Erling's Blog</a>.)</p> <p> <a href="http://www.openlinksw.com/weblog/oerling/?id=1074">More RDF scalability tests</a>: "</p> <p>We have lately been busy with RDF scalability. We work with the 8000 university LUBM data set, a little over a billion triples. We can load it in 23h 46m on a box with 8G RAM. With 16G we probably could get it in 16h.</p> <p>The resulting database is 75G, 74 bytes per triple which is not bad. It will shrink a little more if explicitly compacted by merging adjacent partly filled pages. See Advances in Virtuoso Triple Storage for an in-depth treatment of the subject.</p> <p>The real question of RDF scalability is finding a way of having more than one CPU on the same index tree without them hitting the prohibitive penalty of waiting for a mutex. The sure solution is partitioning, would probably have to be by range of the whole key. but before we go to so much trouble, well look at dropping a couple of critical sections from index random access. Also some kernel parameters may be adjustable, like a spin count before calling the scheduler when trying to get an occupied mutex. Still we should not waste too much time on platform specifics. Well see.</p> <p>We just updated the Virtuoso Open Source cut. The latest RDF refinements are not in, so maybe the cut will have to be refreshed shortly.</p> <p>We are also now applying the relational to RDF mapping discussed in <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSSQLRDF">Declarative SQL Schema to RDF Ontology Mapping</a> to the ODS applications.</p> <p>There is a form of the mapping in the VOS cut on the net but it is not quite ready yet. We must first finish testing it through mapping all the relational schemas of the ODS apps before we can really recommend it. This is another reason for a VOS update in the near future.</p> <p>We will be looking at the query side of LUBM after the ISWC 2006 conference. So far, we find queries compile OK for many SIOC use cases with the cost model that there is now. A more systematic review of the cost model for SPARQL will come when we get to the queries.</p> <p>We put some ideas about inferencing in the Advances in Triple Storage paper. The question is whether we should forward chain such things as class subsumption and subproperties. If we build these into the SQL engine used for running SPARQL, we probably can do these as unions at run time with good performance and better working set due to not storing trivial entailed triples. Some more thought and experimentation needs to go into this.</p> <p> </p>
Birds of a Feather Flock Together - Mac OS X & Rails
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-10-20#1065
2006-10-20T23:55:40Z
2006-10-22T19:21:17.000001-04:00
<p>A very cool v<a href="http://www.apple.com/education/whymac/compsci/video.html">ideo promo for Ruby on Rails and Mac OS X</a>, or should I say: 37 Signals & Apple :-) Either way, very cool!</p> <p>BTW - We have just released a collection of <a href="http://rubyforge.org/projects/odbc-rails/">High-Performance Data Providers for ActiveRecord</a>. Our providers deliver </p> <blockquote>Consistent Functionality</blockquote> to RoR developers across <a href="http://virtuoso.openlinksw.com/wiki/main/">Virtuoso</a>, Oracle, SQL Server, Sybase, DB2, Ingres, Informix, and others without compromising performance or cross platform portability.
Virtuoso's SQL Schema to RDF Ontology Mapping Language (1.0)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-10-18#1064
2006-10-18T22:18:00Z
2006-11-17T18:24:25-05:00
<p>A new technical white paper about our declarative language for SQL Schema to RDF Ontology Mapping has just been published.</p> <h2>What is this?</h2> <p>A declarative language adapted from SPARQL's graph pattern language (N3/Turtle) for mapping SQL Data to RDF Ontologies. We currently refer to this as a Graph Pattern based RDF VIEW Definition Language.</p> <h2>Why is it important?</h2> <p>It provides an effective mechanism for exposing existing SQL Data as virtual RDF Data Sets (Graphs) negating the data duplication associated with generating physical RDF Graphs from SQL Data en route to persistence in a dedicated Triple Store. </p> <p>Enterprise applications (traditional and web based) and most Web Applications (Web 1.0 and Web 2.0) sit atop relational databases, implying that SQL/RDF model and data integration is an essential element of the burgeoning "Data Web" (Semantic Web - Layer 1) comprehension and adoption process.</p> <p>In a nutshell, this is a quick route for non disruptive exposure of existing SQL Data to SPARQL supporting RDF Tools and Development Environments.</p> <h2>How does it work?</h2> <h3>RDF Side</h3> <ol> <li>locate one or more Ontologies (e.g FOAF, SIOC, AtomOWL, SKOS etc.) that effectively defines the Concepts (Classes) and Terms (Predicates) to be exposed via your RDF Graph</li> <li>Using the Virtuoso's RDF View Definition Language declare a International Resource Identifier (or URI) for your Graph. Example:<pre>CREATE GRAPH IRI("http://myopenlink.net/dataspace")</pre> </li> <li>Then create Classes (Concepts), Class Properties/Predicates (Memb), and Class Instances (Inst) for the new Graph. Example: <pre>CREATE IRI CLASS odsWeblog:feed_iri "http://myopenlink.net/dataspace/kidehen/weblog/MyFeeds" ( in memb varchar not null, in inst varchar not null)</pre> </li> </ol> <h3>SQL Side</h3> <ol> <li>If Virtuoso isn't your SQL Data Store, Identify the ODBC or JDBC SQL data source(s) containing the SQL data to be mapped to RDF and then link the relevant tables into Virtuoso's Virtual DBMS Layer</li> <li>Then use the RDF View Definition Language's graph pattern feature to generate SQL to RDF Mapping Template for your Graph. As shown in this <a href="http://www.usnet.private:8889/wiki/main/Main/VOSSQLRDF#MappingOdsBlogToAtomOwlExample">ODS Weblog -> AtomOWL Mapping example</a>.</li> </ol>
Recent Virtuoso Developments
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-09-26#1050
2006-09-26T19:46:55Z
2006-09-26T15:46:55.000001-04:00
<p>(Cut & Pasted verbatim from <a href="http://www.openlinksw.com/weblog/oerling/">Orri Erling's Weblog</a>.)</p> <p> <a href="http://www.openlinksw.com/weblog/oerling/?id=1043">Recent Virtuoso Developments</a>: "</p> <p>We have been extensively working on virtual database refinements. There aremany SQL cost model adjustments to better model distributed queries and wenow support direct access to Oracle and Informix statistics system tables.Thus, when you attach a table from one or the other, you automatically getup to date statistics. This helps <a href="http://virtuoso.openlinksw.com/wiki/main/">Virtuoso</a> optimize distributed queries.Also the documentation is updated as concerns these, with a new section ondistributed query optimization.</p> <p>On the applications side, we have been keeping up with the SIOC RDF ontologydevelopments. All ODS applications now make their data available as SIOCgraphs for download and SPARQL query access.</p> <p>What is most exciting however is our advance in mapping relational data intoRDF. We now have a mapping language that makes arbitrary legacy data in <a href="http://virtuoso.openlinksw.com/wiki/main/">Virtuoso</a> or elsewhere in the relational world RDF queriable. We will putout a white paper on this in a few days.</p> <p>Also we have some innovations in mind for optimizing the physical storage ofRDF triples. We keep experimenting, now with our sights set to the highend of triple storage, towards billion triple data sets. We areexperimenting with a new more space efficient index structure for betterworking set behavior. Next week will yield the first results.</p>
Virtuoso TPCC and Multiprocessor Linux and Mac
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-09-26#1051
2006-09-26T19:16:13Z
2006-09-26T15:53:35.000014-04:00
<p>(Cut & Pasted verbatim from <a href="http://www.openlinksw.com/weblog/oerling/">Orri Erling's Weblog</a>.)</p> <p> <a href="http://www.openlinksw.com/weblog/oerling/?id=1046">Virtuoso TPCC and Multiprocessor Linux and Mac</a>: "</p> <p>We have updated our <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSScale" rel="sql">article on Virtuoso scalability</a> with two new platforms: A 2 x dual core Intel Xeon and a Mac Mini with an Intel Core Duo.</p> <p>We have more than quadrupled the best result so far.</p> <p>The best score so far is 83K transactions per minute with a 40 warehouse (about 4G) database. This is attributable to the process running in mostly memory, with 3 out of 4 cores busy on the database server. But even when doubling the database size and number of 3 clients, we stay at 49K transactions per minute, now with a little under 2 cores busy and am average of 20 disk reads pending at all times, split over 4 SATA disks. The measurement is the count of completed transactions during a 1h run. With the 80 warehouse database, it took about 18 minutes for the system to reach steady state, with a warm working set, hence the actual steady rate is somewhat higher than 49K, as the warm up period was included in the measurement.</p> <p>The metric on the Mac Mini was 2.7K with 2G RAM and one disk. The CPU usage was about one third of one core. Since we have had rates of over 10K with 2G RAM, we attribute the low result to running on a single disk which is not very fast at that.</p> <p>We have run tests in 64 and 32 bit modes but have found little difference as long as actual memory does not exceed 4g. If anything, 32 bit binaries should have an advantage in cache hit rate since most data structures take less space there. After the process size exceeds the 32 bit limit, there is a notable difference in favor of 64 bit. Having more than 4G of database buffers produces a marked advantage over letting the OS use the space for file system cache. So, 64 bit is worthwhile but only if there is enough memory. As for X86 having more registers in 64 bit mode, we have not specifically measured what effect that might have.</p> <p>We also note that Linux has improved a great deal with respect to multiprocessor configurations. We use a very simple test with a number of threads acquiring and then immediately freeing the same mutex. On single CPU systems, the real time has pretty much increased linearly with the number of threads. On multiprocessor systems, we used to get very non-linear behavior, with 2 threads competing for the same mutex taking tens of times the real time as opposed to one thread. At last measurement, with a 64 bit FC 5, we saw 2 threads take 7x the real time when competing for the same mutex. This is in the same ballpark as Solaris 10 on a similar system. Mac OS X 10.4 Tiger on a 2x dual core Xeon Mac Pro did the worst so far, with two threads taking over 70x the time of one. With a Mac Mini with a single Core Duo, the factor between one thread and two was 73.</p> <p>Also the proportion of system CPU on Tiger was consistently higher than on Solaris or Linux when running the same benchmarks. Of course for most applications this test is not significant but it is relevant for database servers, as there are many very short critical sections involved in multithreaded processing of indices and the like.</p>
Data Spaces, Internet Reinvention, and Semantic Web
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-09-04#1033
2006-09-04T21:06:00Z
2007-01-25T16:50:40.000001-05:00
<p> In the last week I've dispatch some thoughts about a number of issues (<a href="http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&id=1030">Data Spaces</a> and <a href="http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&id=1032">Web 2.0's Open Data Access Paradox</a>) that basically equate to the identification of the Web 2.0 to Semantic Web (Data Web, Web of Databases, Web.next etc..) inflection. </p> <p> One of the great things about the moderate “open data access” that we have today (courtesy of the blogosphere) is the fact that you can observe the crystallization of new thinking, and/or new appreciation of emerging ideas, in near real-time. Of course, when we really hit the tracks with the Semantic Web this will be in “conditional real-time” (i.e. you choose and control your scope and sensitivity to data changes etc..). </p> <p> For instance, by way of feed subscriptions, I stumbled upon a series of posts by <a href="http://www.jasonkolb.com/weblog/">Jason Kolb</a> that basically articulate what I (and others who believe in the Semantic Web vision) have been attempting to convey in a myriad of ways via posts and commentary etc.. </p> <p> Here are the links to the 4 part series by Jason: </p> <ol> <li> <a href="http://www.jasonkolb.com/weblog/2006/08/reinventing_the.html">Reinventing the Internet part 1</a> (appreciating “Presence” over traditional “Web Sites”)</li> <li> <a href="http://www.jasonkolb.com/weblog/2006/08/reinventing_the_1.html">Reinventing the Internet part 2</a> </li> <li> <a href="http://www.jasonkolb.com/weblog/2006/08/reinventing_the_2.html">Reinventing the Internet part 3</a> (appreciating and comprehending URIs)</li> <li> <a href="http://www.jasonkolb.com/weblog/2006/08/reinventing_the_3.html">Reinventing the Internet part 4</a> (nice visualization of what “<a href="http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&id=1030">Data Spaces</a>”)</li> <li> <a href="http://www.jasonkolb.com/weblog/2006/09/reinventing_the.html">Reinventing the Internet part 5</a> (everyone will have a Data Space in due course becuase the Internet is really a Federation of Data Spaces)<br /> </li> </ol>
Virtuoso RDF Triple Store White Paper
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-07-22#1016
2006-07-22T00:08:13Z
2006-07-21T21:26:26.000003-04:00
<p>We have just released a new technical white paper covering the usage of Virtuoso's SQL-<a href="http://en.wikipedia.org/wiki/Object-relational_database">ORDBMS</a> Engine to implement a <a href="http://www.w3.org/TR/rdf-sparql-query/">SPARQL</a> compliant <a href="http://www.w3.org/RDF/">RDF</a> Triple Store. The paper is titled: <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSRDFWP">Implementing a SPARQL Compliant RDF Triple Store using a SQL-ORDBMS</a> </p>
Intermediate RDF Bulk Loading (Wikipedia & Wordnet) Experiment Results
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-07-18#1013
2006-07-18T15:21:28Z
2006-07-18T14:28:58.000004-04:00
<p> <a href="http://www.openlinksw.com/weblog/oerling/">Orri</a> shares his findings from internal experimentation re. <a href="http://virtuoso.openlinksw.com/wiki/main/">Virtuoso</a> and bulk loading RDF content such as <a href="http://labs.systemone.at/wikipedia3">Wikpedia3</a> and <a href="http://wordnet.princeton.edu/~agraves/index_archivos/Page381.htm">Wordnet</a> Data Sets:</p> <p>Here is a dump of the post titled: <a href="http://www.openlinksw.com/weblog/oerling/?id=1010">Intermediate RDF Loading Results</a>:</p> <blockquote> <p>Following from the post about a new <a href="http://www.openlinksw.com/weblogs/oerling/index.vspx?page=&id=1000">Multithreaded RDF Loader</a>, here are some intermediate results and action plans based on my findings.</p> <p>The experiments were made on a dual 1.6GHz Sun SPARC with 4G RAM and 2 SCSI disks. The data sets were the 48M triple Wikipedia data set and the 1.9M triple Wordnet data set. 100% CPU means one CPU constantly active. 100% disk means one thread blocked on the read system call at all times.</p> <p>Starting with an empty database, loading the Wikipedia set took 315 minutes, amounting to about 2500 triples per second. After this, loading the Wordnet data set with cold cache and 48M triples already in the table took 4 minutes 12 seconds, amounting to 6838 triples per second. Loading the Wikipedia data had CPU usage up to 180% but over the whole run CPU usage was around 50% with disk I/O around 170%. Loading the larger data set was significantly I/O bound while loading the smaller set was more CPU bound, yet was not at full 200% CPU.</p> <p>The RDF quad table was indexed on GSPO and PGOS. As one would expect, the bulk of I/O was on the PGOS index. We note that the pages of this index were on the average only 60% full. Thus the most relevant optimization seems to be to fill the pages closer to 90%. This will directly cut about a third of all I/O plus will have an additional windfall benefit in the form of better disk cache hit rates resulting from a smaller database.</p> <p>The most practical way of having full index pages in the case of unpredictable random insert order will be to take sets of adjacent index leaf pages and compact the rows so that the last page of the set goes empty. Since this is basically an I/O optimization, this should be done when preparing to write the pages to disk, hence concerning mostly old dirty pages. Insert and update times will not be affected since these operations will not concern themselves with compaction. Thus the CPU cost of background compaction will be negligible in comparison with writing the pages to disk. Naturally this will benefit any relational application as well as free text indexing. RDF and free text will be the largest beneficiaries due to the large numbers of short rows inserted in random order.</p> <p>Looking at the CPU usage of the tests, locating the place in the index where to insert, which by rights should be the bulk of the time cost, was not very significant, only about 15%. Thus there are many unused possibilities for optimization,for example writing some parts of the loader current done as stored procedures in C. Also the thread usage of the loader, with one thread parsing and mapping IRI strings to IRI IDs and 6 threads sharing the inserting could be refined for better balance, as we have noted that the parser thread sometimes forms a bottleneck. Doing the updating of the IRI name to IRI id mapping on the insert thread pool would produce some benefit.</p> <p>Anyway, since the most important test was I/O bound, we will first implement some background index compaction and then revisit the experiment. We expect to be able to double the throughput of the Wikipedia data set loading.</p> </blockquote>
More Thoughts on ORDBMS Clients, ADO.NET vNext, and RDF
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-07-18#1012
2006-07-18T13:29:13Z
2006-07-18T14:28:58.000001-04:00
<p>Additional commentary from <a href="http://www.openlinksw.com/weblog/oerling/">Orri Erling</a>. re. ORDBMS, ADO.NET vNext, and RDF (in relation to Semantic Web Objects):</p> <p> <a href="http://www.openlinksw.com/weblog/oerling/?id=1007">More Thoughts on ORDBMS Clients, .NET and RDF</a>:</p> <blockquote>Continuing on from the previous post... If Microsoft opens the right interfaces for independent developers, we see many exciting possibilities for using ADO .NET 3 with <a href="http://virtuoso.openlinksw.com/wiki/main/">Virtuoso</a>. <p>Microsoft quite explicitly states that their thrust is to decouple the client side representation of data as .NET objects from the relational schema on the database. This is a worthy goal.</p> <p>But we can also see other possible applications of the technology when we move away from strictly relational back ends. This can go in two directions: Towards object oriented database and towards making applications for the semantic web.</p> <p>In the OODBMS direction, we could equate Virtuoso table hierarchies with .NET classes and create a tighter coupling between client and database, going as it were in the other direction from Microsofts intended decoupling. For example, we could do typical OODBMS tricks such as prefetch of objects based on storage clustering. The simplest case of this is like virtual memory, where the request for one byte brings in the whole page or group of pages. The basic idea is that what is created together probably gets used together and if all objects are modeled as subclasses of (subtables) of a common superclass, then, regardless of instance type, what is created together (has consecutive ids) will indeed tend to cluster on the same page. These tricks can deliver good results in very navigational applications like GIS or CAD. But these are rather specialized things and we do not see OODBMS making any great comeback.</p> <p>But what is more interesting and more topical in the present times is making clients for the RDF world. There, the<a href="http://www.w3.org/TR/owl-ref/"> OWL Ontology Language</a> could be used to make the .NET classes and the DBMS could, when returning URIs serving as subjects of triple include specified predicates on these subjects, enough to allow instantiating .NET instances as 'proxies' of these RDF objects. Of course, only predicates for which the client has a representation are relevant, thus some client-server handshake is needed at the start. What data could be prefetched is like the intersection of a concise bounded description and what the client has classes for. The rest of the mapping would be very simple, with IRIs becoming pointers, multi-valued predicates lists and so on. IRIs for which the RDF type were not known or inferable could be left out or represented as a special class with name-value pairs for its attributes, same with blank nodes.</p> <p>In this way,.NETs considerable UI capabilities could directly be exploited for visualizing RDF data, only given that the data complied reasonably well with a known ontology.</p> <p>If an <a href="http://www.w3.org/TR/rdf-sparql-query/">SPARQL</a> query returned a resultset, IRI type columns would be returned as .NET instances and the server would prefetch enough data for filling them in. For a SPARQL CONSTRUCT, a collection object could be returned with the objects materialized inside. If the interfaces allow passing an Entity SQL string, these could possibly be specialized to allow for a SPARQL string instead. LINQ might have to be extended to allow for SPARQL type queries, though.</p> <p>Many of these questions will be better answerable as we get more details on Microsofts forthcoming ADO .NET release. We hope that sufficient latitude exists for exploring all these interesting avenues of development. </p> </blockquote>
Object Relational Rediscovered?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-07-13#1005
2006-07-14T01:59:15Z
2006-07-13T21:59:16.000002-04:00
<p>Microsoft's recent unveiling of the next <a href="http://msdn.microsoft.com/data/default.aspx?pull=/library/en-us/dnvs05/html/ADONETEnFrmOvw.asp">generation of ADO.NET</a> has pretty much crystalized a long running hunch that the era of standardized client/user level interfaces for "Object-Relational" technology is neigh. Finally, this application / problem domain is attracting the attention of industry behemoths such as Microsoft.</p> <p> </p> <p>In an initial response to these developments<a href="http://www.openlinksw.com/weblog/oerling/">Orri Erling</a>, Virtuoso's Program Manager, shares <a href="http://www.openlinksw.com/weblog/oerling/?id=1002">valuable insights from past re. Object-Relational technology developments and deliverables challenges</a>. As Orri notes, the Virtuoso team suspended ORM and ORDBMS work at the onset of the <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSHistory">Kubl-Virtuoso transition</a> due to the lack of standardized client-side functionality exposure points.</p> <p>My hope is that Microsoft's efforts trigger community wide activity that result in a collection of interfaces that make scenarios such as generating .NET based Semantic Web Objects (where the S in an S-P->O RDF-Triple becomes a bona fide .NET class instance generated from OWL).</p> <p>To be continued since the interface specifics re. ADO.NET 3.0 remain in flux...</p>
DBMS Hosted Filesystems & WinFS
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-06-26#990
2006-06-26T21:41:33Z
2006-06-26T21:28:44-04:00
<p> The return of WinFS back into SQL Server has re-ignited interest in the somewhat forgotten “DBMS Engine hosted Unified Storage System” vision. The WinFS project struggles have more to do with the futility of “Windows Platform Monoculture” than the actual vision itself. In today's reality you simply cannot seek to deliver a “Unified Storage” solution that's inherently operating system specific, and even worse, ignores existing complimentary industry standards and the loosely coupled nature of the emerging Web Operating System. </p> <p> A quick FYI: <br />Virtuoso has offered a DBMS hosted Filesystem via WebDAV for a number of years, but the implications of this functionality have remained unclear for just as long. Thus, we developed (a few years ago) and released (recently) an application layer above <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSDAV">Virtuoso's WebDAV storage</a> realm called: “<a href="http://virtuoso.openlinksw.com/wiki/main/Main/OdsBriefcase">The OpenLink Briefcase</a>” (nee. oDrive). This application allows you to view items uploaded by content type and/or kind (People, Business Cards, Calendars, Business Reports, Office Documents, Photos, Blog Posts, Feed Channels/Subscriptions, Bookmarks etc..). it also includes automatic metadata extraction (where feasible) and indexing. Naturally, as an integral part of our “OpenLink Data Spaces” (ODS) product offering, it supports GData, URIQA, SPARQL (note: WebDAV metadata is sync'ed with <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSRDF">Virtuoso's RDF Triplestore</a>), SQL, and WebDAV itself. </p> <p> You can explore the power of this product via the following routes: </p> <ol> <li>Download the <a href="http://virtuoso.openlinksw.com/wiki/main/">Virtuoso Open Source Edition</a> and the <a href="http://virtuoso.openlinksw.com/wiki/main/Main/OdsIndex">ODS add-ons </a>or</li> <li>Visit <a href="http://demo.openlinksw.com">our live demo server</a> (note: this is strictly a demo server with full functionality available) and simply register and then create a “Briefcase” application instance</li> <li>Digest this <a href="http://www.openlinksw.com/dataspace/~kidehen/blog/public/graphics/briefcase_home_page.png">Briefcase Home Page Screenshot</a> </li> </ol>
Structured Data vs. Unstructured Data
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-06-23#991
2006-06-23T18:35:09Z
2006-06-27T01:39:09-04:00
There is an interesting article at regdeveloper.com titled: <a href="http://www.regdeveloper.co.uk/2006/06/23/unstructured_data/">Structured data is boring and useless</a>.. This article provides insight into a serious point of confusion about what exactly is structured vs. unstructured data. Here is a key excerpt: <blockquote> <cite>"We all know that structured data is boring and useless; while unstructured data is sexy and chock full of value. Well, only up to a point, Lord Copper. Genuinely unstructured data can be a real nuisance - imagine extracting the return address from an unstructured letter, without letterhead and any of the formatting usually applied to letters. A letter may be thought of as unstructured data, but most business letters are, in fact, highly-structured." .... </cite> </blockquote> Duncan Pauly, founder and chief technology officer of Coppereye add's eloquent insight to the conversation: <blockquote> <cite>"The labels "structured data" and "unstructured data" are often used ambiguously by different interest groups; and often used lazily to cover multiple distinct aspects of the issue. In reality, there are at least three orthogonal aspects to structure: <il></il></cite> <ol> * The structure of the data itself.</ol> <ol>* The structure of the container that hosts the data.</ol> <ol>* The structure of the access method used to access the data.</ol> These three dimensions are largely independent and one does not need to imply another. For example, it is absolutely feasible and reasonable to store unstructured data in a structured database container and access it by unstructured search mechanisms." </blockquote> <p> Data understanding and appreciation is dwindling at a time when the reverse should be happening. We are supposed to be in the throws of the "Information Age", but for some reason this appears to have no correlation with data and "data access" in the minds of many -- as reflected in the broad contradictory positions taken re. unstructured data vs structured data, structured is boring and useless while unstructured is useful and sexy....</p> <p> The difference between "Structured Containers" and "Structured Data" are clearly misunderstood by most (an unfortunate fact).</p> <p> For instance all DBMS products are "Structured Containers" aligned to one or more data models (typically one). These products have been limited by proprietary data access APIs and underlying data model specificity when used in the "Open-world" model that is at the core of the World Wide Web. This confusion also carries over to the misconception that Web 2.0 and the Semantic/Data Web are mutually exclusive. </p> <p> But things are changing fast, and the concept of multi-model DBMS products is beginning to crystalize. On our part, we have finally released the long promised "OpenLink Data Spaces" application layer that has been developed using our <a href="http://virtuoso.openlinksw.com/wiki/main/">Virtuoso Universal Server</a>. We have structured unified storage containment exposed to the data web cloud via endpoints for querying or accessing data using a variety of mechanisms that include; GData, OpenSearch, SPARQL, XQuery/XPath, SQL etc.. </p> <p> To be continued.... </p>
Contd: Ajax Database Connectivity Demos
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-06-01#988
2006-06-02T02:48:00Z
2006-06-22T08:56:58-04:00
<p> 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 (<a href="http://www.openlinksw.com/oat/">OpenLink Ajax Toolkit</a>) and its Ajax Database Connectivity layer. </p> <p> The screencasts covered the following functionality realms: </p> <ol> <li> <a href="http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&id=982">SQL Query By Example (basic)</a> </li> <li> <a href="http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&id=983">SQL Query By Example (advanced - pivot table construction)</a> </li> <li> <a href="http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&id=981">Web Form Design (basic database driven map based mashup)</a> </li> <li> <a href="http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&id=985">Web Form Design (advanced database driven map based mashup)</a> </li> </ol> <p> 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: </p> <ol> <li> <a href="http://demo.openlinksw.com/public_demos/queries/customer_qry1.xml">Live XML Document produced using SQL Query By Example (basic)</a> (you can use drag and drop columns across the grid to reorder and sort presentation)</li> <li> <a href="http://demo.openlinksw.com/public_demos/reports/Pivots/employee_sales_by_ship_country_pivot.xml">Live XML Document produced using QBE and Pivot Functionality</a> (you can drag and drop the aggregate columns and rows to create your own views etc..)</li> <li> <a href="http://demo.openlinksw.com/public_demos/reports/MapMashups/country_flags_google_frm2.xml">Basic database driven map based mashup</a> (works with FireFox, Webkit, Camino; click on pins to see national flag)</li> <li> <a href="http://demo.openlinksw.com/public_demos/reports/MapMashups/employee_sales_by_ship_country_pivot_google.xml">Advanced database driven map based mashup</a> (works with FireFox, Webkit, Camino; records, 36, 87, and 257 will unveil pivots via lookup pin)</li> </ol> <p> Notes: </p> <ul> <li>â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.</li> <li>The âAjax Call In Progress..â dialog is there to show live interaction with a remote database (in this case <a href="http://virtuoso.openlinksw.com">Virtuoso</a> but this could be any ODBC, JDBC, OLEDB, ADO.NET, or XMLA accessible data source)</li> <li>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</li> </ul> <p> You can see a full collection of saved documents at the following locations: </p> <ul> <li> <a href="http://demo.openlinksw.com/public_demos/reports/MapMashups/">My Mashups demo directory</a> (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) </li> <li> <a href="http://demo.openlinksw.com/public_demos/reports/Pivots/">My Pivots demo directory</a> (other Pivots will be added as I build and save them) </li> <li> <a href="http://demo.openlinksw.com/public_demos/queries/">My Saved Queries</a> (a collection of saved QBE generated queries)</li> </ul>
SPARQL Parameterized Queries (Virtuoso using SPARQL in SQL)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-05-11#973
2006-05-11T18:54:47Z
2006-06-22T08:56:58-04:00
<h2>SPARQL with SQL (Inline) </h2> <p>Virtuoso extends its SQL3 implementation with syntax for integrating SPARQL into queries and subqueries.Thus, as part of a SQL SELECT query or subquery, one can write the SPARQL keyword and a SPARQL query as part of query text processed by Virtuoso's SQL Query Processor.</p> <h4>Example 1 (basic) : </h4> <p>Using Virtuoso's Command line or the Web Based ISQL utility type in the following (note: "SQL>" is the command line prompt for the native ISQL utility): </p> <pre>SQL> sparql select distinct ?p where { graph ?g { ?s ?p ?o } };</pre> <p>Which will return the following: </p> <blockquote> <pre> p varchar ---------- http://example.org/ns#b http://example.org/ns#d http://xmlns.com/foaf/0.1/name http://xmlns.com/foaf/0.1/mbox ... </pre> </blockquote> <h4>Example 2 (a subquery variation):</h4> <pre>SQL> select distinct subseq (p, strchr (p, '#')) as fragment from (sparql select distinct ?p where { graph ?g { ?s ?p ?o } } ) as all_predicates where p like '%#%' ;</pre> <blockquote> <pre> fragment varchar ---------- #query #data #name #comment ...</pre> </blockquote> <h3>Parameterized Queries:</h3> <p>You can pass parameters to a SPARQL query using a Virtuoso-specific syntax extension. '??' or '$?' indicates a positional parameter similar to '?' in standard SQL. '??' can be used in graph patterns or anywhere else where a SPARQL variable is accepted. The value of a parameter should be passed in SQL form, i.e. this should be a number or an untyped string. An IRI ID can not be passed, but an absolute IRI can. Using this notation, a dynamic SQL capable client (ODBC, JDBC, ADO.NET, OLEDB, XMLA, or others) can execute parametrized SPARQL queries using parameter binding concepts that are common place in dynamic SQL. Which implies that existing SQL applications and development environments (PHP, Ruby, Python, Perl, VB, C#, Java, etc.) are capable of issuing SPARQL queries via their existing SQL bound data access channels against RDF Data stored in Virtuoso. </p> <p>Note: This is the Virtuoso equivalent of a <a href="http://seaborne.blogspot.com/2006/05/parameterized-queries_07.html">recently published example using Jena </a>(a Java based RDF Triple Store).</p> <h3>Example:</h3> <p>Create a Virtuoso Function by execting the following: </p> <pre>SQL> create function param_passing_demo (); { declare stat, msg varchar; declare mdata, rset any; exec ('sparql select ?s where { graph ?g { ?s ?? ?? }}', stat, msg, vector ('http://www.w3.org/2001/sw/DataAccess/tests/data/Sorting/sort-0#int1', 4 ), -- Vector of two parameters 10, -- Max. result-set rows mdata, -- Variable for handling result-set metadata rset -- Variable for handling query result-set ); return rset[0][0]; } </pre> Test new "param_passing_demo" function by executing the following: <br /> <pre>SQL> select param_passing_demo (); </pre> <p>Which returns: </p> <blockquote> <pre> callret VARCHAR _______________________________________________________________________________</pre> <pre>http://www.w3.org/2001/sw/DataAccess/tests/data/Sorting/sort-0#four</pre> <pre>1 Rows. -- 00000 msec.</pre> </blockquote> <h3>Â </h3> <h3>Using SPARQL in SQL Predicates:</h3> <p>A SPARQL ASK query can be used as an argument of the SQL EXISTS predicate.</p> <pre>create function sparql_ask_demo () returns varchar { if (exists (sparql ask where { graph ?g { ?s ?p 4}})) return 'YES'; else return 'NO'; }; </pre> <p> <br /> Test by executing: </p> <pre>SQL> select sparql_ask_demo (); </pre> <p>Which returns:</p> <pre>_________________________ YES</pre>
"Free" Databases: Express vs. Open-Source RDBMSs
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-05-05#968
2006-05-05T16:02:17Z
2006-07-21T07:21:57.000006-04:00
<p>Very detailed and insightful peek into the state of affairs re. database engines (Open & Closed Source).</p> <p>I added the missing piece regarding the "Virtuoso Conductor" (the Web based Admin UI for Virtuoso) to the original post below. I also added a link to our live SPARQL Demo so that anyone interested can start playing around with SPARQL and SPARQL integrated into SQL right away.</p> <p>Another good thing about this post is the vast amount of valuable links that it contains. To really appreciate this point simply visit my Linkblog (excuse the current layout :-) - a Tab if you come in via the front door of this <a href="http://www.infoworld.com/opinions/index.html">Data Space</a> (what I used to call <a href="http://www.openlinksw.com/blog/%7Ekidehen/">My Weblog Home Page</a>).</p> <blockquote> <p> <a href="http://oakleafblog.blogspot.com/2006/05/free-databases-express-vs-open-source.html">"Free" Databases: Express vs. Open-Source RDBMSs</a>: "<span style="font-family: verdana;">Open-source relational database management systems (RDBMSs) are gaining IT mindshare at a rapid pace. As an example, <em>BusinessWeek</em>'s February 6, 2006 '</span> <a href="http://www.businessweek.com/technology/content/feb2006/tc20060206_918648.htm"><span style="font-family: verdana;">Taking On the Database Giants</span> </a><span style="font-family: verdana;">' article asks 'Can open-source upstarts compete with Oracle, IBM, and Microsoft?' and then provides the answer: 'It's an uphill battle, but customers are starting to look at the alternatives.'</span> <br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;">There's no shortage of open-source alternatives to look at. The <em>BusinessWeek</em> article concentrates on <a href="http://www.mysql.com/">MySQL</a>, which <em>BW</em> says 'is trying to be the Ikea of the database world: cheap, needs some assembly, but has a sleek, modern design and does the job.' The article also discusses <a href="http://www.postgresql.org/">Postgre[SQL]</a> and <a href="http://www.ingres.com/products/Prod_Ingres_2006.html">Ingres</a>, as well as <a href="http://www.enterprisedb.com/">EnterpriseDB</a>, an Oracle clone created from PostgreSQL code*. Sun includes <a href="http://www.sun.com/software/solaris/postgres.jsp">PostgreSQL with Solaris 10</a> and, as of April 6, 2006, with <a href="http://docs.sun.com/app/docs/doc/819-2183/6n4g726uc?a=view">Solaris Express</a>.**</span> <br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;"><span style="font-size: 85%;">*Frank Batten, Jr., the investor who originally funded Red Hat, invested a reported </span> <a href="http://www.theinquirer.net/?article=28201"><span style="font-size: 85%;">$16 million into Great Bridge</span> </a><span style="font-size: 85%;"> with the hope of making a business out of providing paid support to PostgreSQL users. </span> <a href="http://news.com.com/2100-1001-272715.html"><span style="font-size: 85%;">Great Bridge stayed in business only 18 months</span> </a><span style="font-size: 85%;">, having </span> <a href="http://news.com.com/2100-1001-268915.html"><span style="font-size: 85%;">missed an opportunity to sell the business to Red Hat</span> </a><span style="font-size: 85%;"> and finding that selling </span> <a href="http://news.com.com/2100-1001-269729.html"><span style="font-size: 85%;">$50,000-per-year support packages</span> </a><span style="font-size: 85%;"> for an open-source database wasn't easy. As Batten concluded, 'We could not get customers to pay us big dollars for support contracts.' Perhaps EnterpriseDB will be more successful with a choice of </span> <a href="http://www.enterprisedb.com/shop.do?cID=10000&pID=10001"><span style="font-size: 85%;">$5,000, $3,000, or $1,000 annual support subscriptions</span> </a><span style="font-size: 85%;">.</span> </span> <br /> <span style="font-family: Verdana;"></span><span style="font-family: Verdana;"></span><span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana; font-size: 85%;">**Interestingly, <a href="http://www.sun.com/smi/Press/sunflash/2005-11/sunflash.20051115.4.xml">Oracle announced in November 2005</a> that Solaris 10 is 'its preferred development and deployment platform for most x64 architectures, including x64 (x86, 64-bit) AMD Opteron and Intel Xeon processor-based systems and Sun's UltraSPARC(R)-based systems.'</span> <br /> <br /> <span style="font-family: Verdana;">There is a surfeit of reviews of current MySQL, PostgreSQL andâto a lesser extentâIngres implementations. These three open-source RDBMSs come with their own or third-party management tools. These systems compete against free versions of commercial (proprietary) databases: <a href="http://msdn.microsoft.com/vstudio/express/sql/">SQL Server 2005 Express Edition</a> (and its MSDE 2000 and 1.0 predecessors), <a href="http://www.oracle.com/technology/products/database/xe/index.html" target="_blank">Oracle Database 10g Express Edition</a>, <a href="http://www-306.ibm.com/software/data/db2/udb/db2express/download.html" target="_blank">IBM DB2 Express-C</a>, and <a href="http://www.sybase.com/linux_promo" target="_blank">Sybase ASE Express Edition for Linux</a> where database size and processor count limitations aren't important. Click <a href="http://www.ftponline.com/special/sqlserver/rjennings-overview/table4.aspx">here</a> for a summary of recent <em>InfoWorld</em> reviews of the full versions of these four databases plus MySQL, which should be valid for Express editions also. The <a href="http://www.ftponline.com/special/sqlserver/">FTPOnline Special Report</a> article, 'Microsoft SQL Server Turns 17,' that contains the preceding table is <a href="http://www.ftponline.com/special/sqlserver/rjennings-overview/">here</a> (requires registration.)</span> <br /> <br /> </p> <p> <strong><span style="font-family: verdana;">SQL Server 2005 Express Edition SP-1 Advanced Features</span> </strong> </p> <p> <span style="font-family: Verdana;"><a href="http://www.microsoft.com/downloads/details.aspx?familyid=4C6BA9FD-319A-4887-BC75-3B02B5E48A40&displaylang=en">SQL Server 2005 Express Edition with Advanced Features</a> enhances SQL Server 2005 Express Edition (SQL Express or SSX) dramatically, so it deserves special treatment here. SQL Express gains full text indexing and now supports SQL Server Reporting Services (SSRS) on the local SSX instance. The SP-1 with Advanced Features setup package, which Microsoft released on April 18, 2006, installs the release version of SQL Server Management Studio Express (SSMSE) and the full version of Business Intelligence Development Studio (BIDS) for designing and editing SSRS reports. My '<a href="http://www.ftponline.com/special/sqlserver/rjennings-sp1/">Install SP-1 for SQL Server 2005 and Express</a>' article for FTPOnline's <a href="http://www.ftponline.com/special/sqlserver/">SQL Server Special Report</a> provides detailed, illustrated installation instructions for and related information about the release version of SP-1. SP-1 makes SSX the most capable of all currently available Express editions of commercial RDBMSs for Windows.</span> </p> <p> <strong><span style="font-family: verdana;">OpenLink Software's Virtuoso Open-Source Edition</span> </strong> <br /> <span style="font-family: verdana;"></span> <br /> <span style="font-family: verdana;"><a href="http://openlinksw.com/">OpenLink Software</a> announced an <a href="http://virtuoso.openlinksw.com/wiki/main/Main/">open-source version</a> of it's <a href="http://virtuoso.openlinksw.com/">Virtuoso Universal Server</a> commercial DBMS on April 11, 2006. On the initial date of this post, May 2, 2006, Virtuoso Open-Source Edition (VOS) was virtually under the radar as an open-source product. According to <a href="http://www.openlinksw.com/press/VOSPressRelease.htm">this press release</a>, the new edition includes:</span> <span style="font-family: Verdana;"></span> </p> <blockquote> <span style="font-family: Verdana;"></span> </blockquote> <blockquote></blockquote> <blockquote></blockquote> <ul> <li> <a href="http://demo.openlinksw.com/sparql_demo/">SPARQL compliant RDF Triple Store</a> </li> <li>SQL-200n Object-Relational Database Engine (SQL, XML, and Free Text) </li> <li>Integrated BPEL Server and Enterprise Service Bus</li> <li>WebDAV and Native File Server </li> <li>Web Application Server that supports PHP, Perl, Python, ASP.NET, JSP, etc. </li> <li>Runtime Hosting for Microsoft .NET, Mono, and Java </li> </ul>VOS only lacks the virtual server and replication features that are offered by the commercial edition. VOS includes a Web-based administration tool called the "Virtuoso Conductor" According to <a href="http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&id=951&sid=&realm=">Kingsley Idehen's Weblog</a>, 'The Virtuoso build scripts have been successfully tested on Mac OS X (Universal Binary Target), Linux, FreeBSD, and Solaris (AIX, HP-UX, and True64 UNIX will follow soon). A Windows Visual Studio project file is also in the works (ETA some time this week).'<br /> <br /> <em>InfoWorld</em>'s Jon Udell has tracked Virtuoso's progress since <a href="http://www.infoworld.com/article/02/04/12/020415plvirtuoso_1.html">2002</a>, with an <a href="http://www.infoworld.com/article/03/03/21/12virtuoso_1.html">additional article in 2003</a> and a <a href="http://weblog.infoworld.com/udell/2006/04/28.html#a1437">one-hour podcast with Kingsley Idehen</a> on April 26, 2006. A major talking point for Virtuoso is its support for Atom 0.3 syndication and publication, Atom 1.0 syndication and (forthcoming) publication, and future support for Google's <a href="http://code.google.com/apis/gdata/overview.html">GData protocol</a>, as mentioned in <a href="http://www.openlinksw.com/blog/%7Ekidehen/index.vspx?page=&id=965">this Idehen post</a>. Yahoo!'s <a href="http://jeremy.zawodny.com/blog/archives/006687.html">Jeremy Zawodny</a> points out that the 'fingerprints' of <a href="http://oakleafblog.blogspot.com/2005/11/adam-bosworth-learning-from-web-and.html">Adam Bosworth</a>, Google's VP of Engineering and the primary force behind the development of Microsoft Access, 'are all over GData.' Click <a href="http://search.blogger.com/?as_q=bosworth&ie=UTF-8&ui=blg&bl_url=oakleafblog.blogspot.com&x=50&y=10">here</a> to display a list of all OakLeaf posts that mention Adam Bosworth.<br /> <br />One application for the GData protocol is querying and updating the Google Base database independently of the Google Web client, as mentioned by Jeremy: 'It's not about building an easier onramp to Google Base. ... Well, it is. But, again, that's the small stuff.' Click <a href="http://search.blogger.com/?as_q=%22google+base%22&ie=UTF-8&x=50&y=9&q=%22google+base%22+blogurl:oakleafblog.blogspot.com&filter=0&ui=blg&sa=N&start=0">here</a> for a list of posts about my experiences with Google Base. Watch for a future OakLeaf post on the subject as the GData APIs gain ground.<br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;"><strong>Open-Source and Free Embedded Database Contenders</strong> </span> <br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;">Open-source and free embedded SQL databases are gaining importance as the number and types of mobile devices and OSs proliferate. Embedded databases usually consist of Java classes or Windows DLLs that are designed to minimize file size and memory consumption. Embedded databases avoid the installation hassles, heavy resource usage and maintenance cost associated with client/server RDBMSs that run as an operating system service.</span> <br /> <br /> <span style="font-family: Verdana;">Andrew Hudson's December 2005 '<a href="http://www.theinquirer.net/?article=28201">Open Source databases rounded up and rodeoed</a>' review for The Enquirer provides brief descriptions of one commercial and eight open source database purveyors/products: Sleepycat, MySQL, PostgreSQL, Ingres, InnoBase, Firebird, IBM Cloudscape (a.k.a, Derby), Genezzo, and Oracle. Oracle <a href="http://www.sleepycat.com/">Sleepycat</a>* isn't an SQL Database, Oracle <a href="http://www.innodb.com/index.php">InnoDB</a>* is an OEM database engine that's used by MySQL, and <a href="http://www.genezzo.com/">Genezzo</a> is a multi-user, multi-server distributed database engine written in Perl. These special-purpose databases are beyond the scope of this post.</span> <br /> <br /> <span style="font-family: Verdana;"><span style="font-size: 85%;">* Oracle <a href="http://www.oracle.com/sleepycat/index.html">purchased Sleepycat Software, Inc. in February 2006</a> and </span> <a href="http://www.oracle.com/innodb/index.html"><span style="font-size: 85%;">purchased Innobase OY in October 2005</span> </a><span style="font-size: 85%;">. The press release states: 'Oracle intends to continue developing the InnoDB technology and expand our commitment to open source software.' </span> </span> <br /> <span style="font-family: Verdana; font-size: 85%;"></span> <br /> <span style="font-family: Verdana;"> <a href="http://db.apache.org/derby/"><strong>Derby</strong> </a> is an open-source release by the <a href="http://www.apache.org/">Apache Software Foundation</a> of the <a href="http://www.infoworld.com/article/04/08/03/HNcloudscape_1.html">Cloudscape Java-based database that IBM acquired</a> when it bought Informix in 2001. IBM offers a commercial release of Derby as <a href="http://www-128.ibm.com/developerworks/db2/library/techarticle/dm-0408cline/">IBM Cloudscape 10.1</a>. Derby is a Java class library that has a relatively light footprint (2 MB), which make it suitable for <a href="http://www-128.ibm.com/developerworks/db2/library/techarticle/dm-0503stumpf/">client/server synchronization</a> with the IBM DB2 Everyplace Sync Server in <a href="http://www-128.ibm.com/developerworks/library/wi-cloud/">mobile applications</a>. The IBM DB2 Everyplace Express Edition isn't open source or free*, so it doesn't qualify for this post. The same is true for the corresponding Sybase SQL Anywhere components.**</span> <br /> <br /> <br /> <p> <span style="font-family: verdana; font-size: 85%;">* IBM DB2 Everyplace Express Edition with synchronization costs $379 per server (up to two processors) and $79 per user. DB2 Everyplace Database Edition (without DB2 synchronization) is $49 per user. (Prices are based on those when </span> <a href="http://news.earthweb.com/wireless/article.php/3107101"><span style="font-family: verdana; font-size: 85%;">IBM announced version 8</span> </a><span style="font-family: verdana; font-size: 85%;"> in November 2003.)</span> </p> <p> <span style="font-family: verdana; font-size: 85%;">** Sybase's iAnywhere subsidiary calls SQL Anywhere 'the industry's leading mobile database.' A Sybase SQL Anywhere Personal DB seat license with synchronization to SQL Anywhere Server is $119; the cost without synchronization wasn't available from the Sybase Web site. Sybase SQL Anywhere and IBM DB2 Everyplace perform similar replication functions.</span> </p> <p> <span style="font-family: Verdana;">Sun's <a href="http://developers.sun.com/prodtech/javadb/"><strong>Java DB</strong></a>, another commercial version of Derby, comes with the <a href="http://www.sun.com/software/solaris/">Solaris Enterprise Edition</a>, which bundles Solaris 10, the Java Enterprise System, developer tools, desktop infrastructure and N1 management software. A recent Between the Lines blog entry by ZDNet's David Berlind waxes enthusiastic over the use of <a href="http://blogs.zdnet.com/BTL/?p=2298">Java DB embedded in a browser</a> to provide offline persistence. RedMonk analyst <a href="http://www.redmonk.com/jgovernor/archives/001151.html">James Governor</a> and <em>eWeek</em>'s <a href="http://www.eweek.com/article2/0,1895,1902407,00.asp">Lisa Vaas</a> wrote about the use of Java DB as a local data store when <a href="http://www.sauria.com/blog/2005/12/13#1440">Tim Bray announced Sun's Derby derivative</a> and <a href="http://blogs.sun.com/roller/page/FrancoisOrsini?entry=derby_apachecon_demo">Francois Orsini</a> demonstrated Java DB embedded in the Firefox browser at the ApacheCon 2005 conference.</span> <br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;"> <a href="http://www.firebirdsql.org/"><strong>Firebird</strong> </a> is derived from Borland's InterBase 6.0 code, the first commercial relational database management system (RDBMS) to be released as open source. Firebird has excellent support for SQL-92 and comes in three versions: Classic, SuperServer and Embedded for Windows, Linux, Solaris, HP-UX, FreeBSD and MacOS X. The embedded version has a 1.4-MB footprint. Release Candidate 1 for Firebird 2.0 became available on March 30, 2006 and is a major improvement over earlier versions. <a href="http://www.borland.com/us/products/interbase/index.html">Borland continues to promote InterBase</a>, now at version 7.5, as a small-footprint, embedded database with commercial Server and Client licenses.</span> <br /> <span style="font-family: Verdana;"></span> <br /> <span style="font-family: Verdana;"> <a href="http://www.sqlite.org/index.html"><strong>SQLite</strong> </a> is a featherweight C library for an embedded database that implements most SQL-92 entry- and transitional-level requirements (some through the JDBC driver) and supports transactions within a tiny 250-KB code footprint. <a href="http://www.sqlite.org/cvstrac/wiki?p=SqliteWrappers">Wrappers</a> support a multitude of languages and operating systems, including Windows CE, SmartPhone, Windows Mobile, and Win32. SQLite's primary <a href="http://www.sqlite.org/omitted.html">SQL-92 limitations</a> are lack of nested transactions, inability to alter a table design once committed (other than with RENAME TABLE and ADD COLUMN operations), and foreign-key constraints. SQLite provides read-only views, triggers, and 256-bit encryption of database files. A downside is the the entire database file is <a href="http://weblogs.asp.net/jgalloway/archive/2006/04/12/442615.aspx">locked when while a transaction is in progress</a>. SQLite uses file access permissions in lieu of GRANT and REVOKE commands. Using SQLite involves no license; its code is entirely in the public domain.</span> </p> <p> <span style="font-family: Verdana; font-size: 85%;">The Mozilla Foundation's <a href="http://wiki.mozilla.org/Mozilla2:Unified_Storage">Unified Storage wiki</a> says this about SQLite: 'SQLite will be the back end for the unified store [for Firefox]. Because it implements a SQL engine, we get querying 'for free', without having to invent our own query language or query execution system. Its code-size footprint is moderate (250k), but it will hopefully simplify much existing code so that the net code-size change should be smaller. It has exceptional performance, and supports concurrent access to the database. Finally, it is released into the public domain, meaning that we will have no licensing issues.'</span> </p> <p> <span style="font-family: verdana;">Vieka Technology, Inc.'s <a href="http://vieka.com/esql.htm"><strong>eSQL 2.11</strong></a> is a port of SQLite to Windows Mobile (Pocket PC and Smartphone) and Win32, and includes development tools for Windows devices and PCs, as well as a .NET native data provider. A conventional ODBC driver also is available. eSQL for Windows (Win32) is free for personal and commercial use; eSQL for Windows Mobile requires a license for commercial (for-profit or business) use.</span> </p> <p> <span style="font-family: verdana;"> <a href="http://hsqldb.org/"><strong>HSQLDB</strong> </a> isn't on most reviewers' radar, which is surprising because it's the default database for <a href="http://www.openoffice.org/">OpenOffice.org</a> (OOo) 2.0's <a href="http://www.openoffice.org/product/base.html">Base</a> suite member. HSQLDB 1.8.0.1 is an open-source (BSD license) Java dembedded database engine based on Thomas Mueller's original Hypersonic SQL Project. Using OOo's Base feature requires installing the Java 2.0 Runtime Engine (which is not open-source) or the presence of an alternative open-source engine, such as Kaffe. My prior posts about OOo Base and HSQLDB are <a href="http://oakleafblog.blogspot.com/2005/10/openoffice-base-20-vs-microsoft-access.html">here</a>, <a href="http://oakleafblog.blogspot.com/2005/10/openoffice-base-20-vs-microsoft-access_22.html">here</a> and <a href="http://oakleafblog.blogspot.com/2005/10/openoffice-20-base-matches-microsoft.html">here</a>.</span> </p> <p> <span style="font-family: verdana;">The <a href="http://hsqldb.sourceforge.net/web/hsqlDocsFrame.html">HSQLDB 1.8.0 documentation</a> on SourceForge states the following regarding SQL-92 and later conformance:</span> </p> <span style="font-family: verdana;"> <blockquote> <p> <span style="font-family: verdana;">HSQLDB 1.8.0 supports the dialect of SQL defined by SQL standards 92, 99 and 2003. This means where a feature of the standard is supported, e.g. left outer join, the syntax is that specified by the standard text. Many features of SQL92 and 99 up to Advanced Level are supported and here is support for most of SQL 2003 Foundation and several optional features of this standard. However, certain features of the Standards are not supported so no claim is made for full support of any level of the standards. </span> </p> </blockquote> <span style="font-family: verdana;"><span style="font-size: 85%;">Other less well-known embedded databases designed for or suited to mobile deployment are </span> <a href="http://www.mimer.com/leftright.asp?secId=172"><span style="font-size: 85%;">Mimer SQL Mobile</span> </a><span style="font-size: 85%;"> and </span> <a href="http://www.vistadb.net/"><span style="font-size: 85%;">VistaDB 2.1</span> </a><span style="font-size: 85%;">. Neither product is open-source and require paid licensing; VistaDB requires a small up-front payment by developers but offers royalty-free distribution.</span> </span> <br /> <br /> <span style="font-family: Verdana;">Java DB, Firebird embedded, SQLite and eSQL 2.11 are contenders for lightweight PC and mobile device database projects that aren't Windows-only.</span> <br /> <br /> <strong> <span style="font-family: verdana;">SQL Server 2005 Everywhere<br /> </span><span style="font-family: Verdana;"></span> </strong> <br /> <span style="font-family: verdana;">If you're a Windows developer, SQL Server Mobile is the logical embedded database choice for mobile applications for Pocket PCs and Smartphones. Microsoft's April 19, 2006 press release delivered the news that SQL Server 2005 Mobile Editon (SQL Mobile or SSM) would gain a big brotherâSQL Server 2005 Everywhere Edition. </span> <br /> <span style="font-family: verdana;"></span> <br /> <span style="font-family: verdana;">Currently, the SSM client is licensed (at no charge) to run in production on devices with Windows CE 5.0, Windows Mobile 2003 for Pocket PC or Windows Mobile 5.0, or on PCs with Windows XP Tablet Edition only. SSM also is licensed for development purposes on PCs running Visual Studio 2005.</span> <span style="font-family: verdana;"> Smart Device replication with SQL Server 2000 SP3 and later databases has been the most common application so far for SSM.<br /> <br /> </span><span style="font-family: verdana;">By the end of 2006, Microsoft will license SSE for use on <em>all</em> PCs running any Win32 version or the preceding device OSs. A version of SQL Server Management Studio Express (SSMSE)âupdated to support SSEâis expected to release by the end of the year. These features will qualify SSE as <em>the universal embedded database</em> for Windows client and smart-device applications. </span> <br /> <br /> <span style="font-family: verdana;">For more details on SSE, read <a href="http://weblogs.asp.net/jgalloway/archive/2006/04/11/442451.aspx">John Galloway's April 11, 2006 blog post</a> and my '<a href="http://www.ftponline.com/special/sqlserver/rjennings-mobile/">SQL Server 2005 Mobile Goes Everywhere</a>' article for the <a href="http://www.ftponline.com/special/sqlserver/">FTPOnline Special Report on SQL Server</a>.</span><span style="font-family: verdana;"></span>" <p>(Via <a href="http://oakleafblog.blogspot.com">OakLeaf Systems</a>.)</p> </span> </blockquote>
My podcast conversation with Jon Udell
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-04-28#965
2006-04-28T14:43:12Z
2006-07-21T07:22:41.000001-04:00
<p>Jon and I had a recent chat yesterday that is now available in <a href="http://weblog.infoworld.com/udell/2006/04/28.html#a1437">Podcast</a> form.</p> <blockquote> <cite><p>"In my <a href="http://weblog.infoworld.com/udell/gems/ju_idehen.mp3">fourth Friday podcast</a> we hear from Kingsley Idehen, CEO of <a href="http://openlinksw.com/">OpenLink Software</a>. I wrote about OpenLink's universal database and app server, Virtuoso, back in <a href="http://www.infoworld.com/article/02/04/12/020415plvirtuoso_1.html">2002</a> and <a href="http://www.infoworld.com/article/03/03/21/12virtuoso_1.html">2003</a>. Earlier this month Virtuoso became the first mature SQL/XML hybrid to make the <a href="http://www.openlinksw.com/blog/~kidehen/?id=951">transition to open source</a>. The latest incarnation of the product also adds SPARQL (a semantic web query language) to its repertoire. <b>...</b>"</p> <p>(Via <a href="http://weblog.infoworld.com/udell/">Jon's Radio</a>.)</p> </cite> </blockquote> I would like to make an important clarification re. the GData Protocol and what is popularly dubbed as "<a href="http://jeremy.zawodny.com/blog/archives/006687.html">Adam Bosworth's fingerprints.</a>" I do not believe in a one solution (a simple one for the sake of simplicity) to a deceptively complex problem. Virtuoso supports Atom 1.0 (syndication only at the current time) and Atom 0.3 (syndication and publication which have been in place for years). <blockquote>BTW - the GData Protocol and Atom 1.0 publishing support will be delivered in both the Open Source and Commercial Edition updates to Virtuoso next week (very little work due to what's already in place).</blockquote> <p>I make the clarification above to eliminate the possibility of assuming mutual exclusivity of my perspective/vison and Adam's (Jon also makes this important point when he speaks about our opinions being on either side of a spectrum/continuum). I simply want to broaden the scope of this discussion. I am a profound believer in the Semantic Web / Data Web vision, and I predict that we will be querying the Googlebase via SPARQL in the not to distant future (this doesn't mean that netizens will be forced to master SPARQL, absolutely not! But there will be conduit technologies that deal with matter).</p> <p>Side note: I actually last spoke with Adam at the NY Hilton in 2000 (the day I unveiled Virtuoso to the public for the first time, in person). We bumped into each other and I told him about Virtuoso (at the time the big emphasis was SQL to XML and the vocabulary we had chosen re. SQL extension...), and he told me about his departure from Microsoft and the commencement of his new venture (CrossGain prior to his stint at BEA), what struck me even more was his interest in Linux and Open Source (bearing in mind this was about 3 or so week after he departed Microsoft.)</p> <p>If you are encountering Virtuoso for the first time via this post or Jon's, please make time to read the <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSHistory/">product history</a> article on the <a href="http://virtuoso.openlinksw.com/wiki/main/Main/">Virtuoso Wiki</a> (which is one of many Virtuoso based applications that make up our soon to be released OpenLink DataSpace offering).</p> <p>That said, I better go listen to the podcast :-)</p>
My podcast conversation with Jon Udell
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-04-28#993
2006-04-28T14:43:12Z
2006-06-29T10:14:44.000001-04:00
<p>Jon and I had a recent chat yesterday that is now available in <a href="http://weblog.infoworld.com/udell/2006/04/28.html#a1437">Podcast</a> form.</p> <blockquote> <cite></cite> <p>"In my <a href="http://weblog.infoworld.com/udell/gems/ju_idehen.mp3">fourth Friday podcast</a> we hear from Kingsley Idehen, CEO of <a href="http://openlinksw.com/">OpenLink Software</a>. I wrote about OpenLink's universal database and app server, Virtuoso, back in <a href="http://www.infoworld.com/article/02/04/12/020415plvirtuoso_1.html">2002</a> and <a href="http://www.infoworld.com/article/03/03/21/12virtuoso_1.html">2003</a>. Earlier this month Virtuoso became the first mature SQL/XML hybrid to make the <a href="http://www.openlinksw.com/blog/%7Ekidehen/?id=951">transition to open source</a>. The latest incarnation of the product also adds SPARQL (a semantic web query language) to its repertoire. <b>...</b>"</p> <p>(Via <a href="http://weblog.infoworld.com/udell/">Jon's Radio</a>.)</p> </blockquote> I would like to make an important clarification re. the GData Protocol and what is popularly dubbed as "<a href="http://jeremy.zawodny.com/blog/archives/006687.html">Adam Bosworth's fingerprints.</a>" I do not believe in a one solution (a simple one for the sake of simplicity) to a deceptively complex problem. Virtuoso supports Atom 1.0 (syndication only at the current time) and Atom 0.3 (syndication and publication which have been in place for years). <blockquote>BTW - the GData Protocol and Atom 1.0 publishing support will be delivered in both the Open Source and Commercial Edition updates to Virtuoso next week (very little work due to what's already in place).</blockquote> <p>I make the clarification above to eliminate the possibility of assuming mutual exclusivity of my perspective/vison and Adam's (Jon also makes this important point when he speaks about our opinions being on either side of a spectrum/continuum). I simply want to broaden the scope of this discussion. I am a profound believer in the Semantic Web / Data Web vision, and I predict that we will be querying the Googlebase via SPARQL in the not to distant future (this doesn't mean that netizens will be forced to master SPARQL, absolutely not! But there will be conduit technologies that deal with matter).</p> <p>Side note: I actually last spoke with Adam at the NY Hilton in 2000 (the day I unveiled Virtuoso to the public for the first time, in person). We bumped into each other and I told him about Virtuoso (at the time the big emphasis was SQL to XML and the vocabulary we had chosen re. SQL extension...), and he told me about his departure from Microsoft and the commencement of his new venture (CrossGain prior to his stint at BEA), what struck me even more was his interest in Linux and Open Source (bearing in mind this was about 3 or so week after he departed Microsoft.)</p> <p>If you are encountering Virtuoso for the first time via this post or Jon's, please make time to read the <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSHistory">product history</a> article on the <a href="http://virtuoso.openlinksw.com/wiki/main/">Virtuoso Wiki</a> (which is one of many Virtuoso based applications that make up our soon to be released OpenLink DataSpace offering).</p> <p>That said, I better go listen to the podcast :-)</p>
Virtuoso & SPARQL Demo
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-04-12#953
2006-04-12T19:56:01Z
2006-06-22T08:56:58-04:00
<p>The W3C RDF Data Access Workgroup's (DAWG) SPARQL query language is one of the many interesting aspects of the recent Virtuoso Open-Source release. </p> <p>To assist with the general understanding of <a href="http://demo.openlinksw.com/sparql_demo/">Virtuoso's SPARQL Implementation</a>, we have released an online version of the <a href="http://www.w3.org/TR/rdf-dawg-uc/">RDF DAWG SPARQL Test Suite</a> (hosted by a live <a href="http://demo.openlinksw.com/tutorial/">Virtuoso Demo & Tutorial Instance</a>).</p>
Virtuoso is Officially Open Source!
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2006-04-11#951
2006-04-11T18:01:44Z
2006-07-21T07:22:20.000001-04:00
<p>I am pleased to unveil (officially) the fact that <a href="http://www.prnewswire.com/cgi-bin/stories.pl?ACCT=104&STORY=/www/story/04-11-2006/0004338324&EDATE=">Virtuoso is now available in Open Source form</a>.</p> <p></p> <h4>What Is Virtuoso?</h4> <p>A powerful next generation server product that implements otherwise distinct server functionality within a single server product. Think of Virtuoso as the server software analog of a dual core processor where each core represents a traditional server functionality realm.</p> <p></p> <h4>Where did it come from?</h4> <p>The <a href="http://virtuoso.openlinksw.com/wiki/main/Main/VOSHistory">Virtuoso History page</a> tells the whole story.</p> <p></p> <h4>What Functionality Does It Provide?</h4> The following: <ul> 1. Object-Relational DBMS Engine (ORDBMS like PostgreSQL and DBMS engine like MySQL) </ul> <ul> 2. XML Data Management (with support for XQuery, XPath, XSLT, and XML Schema) </ul> <ul> 3. RDF Triple Store (or Database) that supports SPARQL (Query Language, Transport Protocol, and XML Results Serialization format) </ul> <ul> 4. Service Oriented Architecture (it combines a BPEL Engine with an ESB) </ul> <ul> 5. Web Application Server (supports HTTP/WebDAV) </ul> <ul> 6. NNTP compliant Discussion Server </ul> And more. (see: <a href="http://virtuoso.openlinksw.com">Virtuoso Web Site</a>) <p> 90% of the aforementioned functionality has been available in Virtuoso since 2000 with the RDF Triple Store being the only 2006 item.</p> <p></p> <h4>What Platforms are Supported</h4> <p> The Virtuoso build scripts have been successfully tested on Mac OS X (Universal Binary Target), Linux, FreeBSD, and Solaris (AIX, HP-UX, and True64 UNIX will follow soon). A Windows Visual Studio project file is also in the works (ETA some time this week).</p> <p></p> <h4>Why Open Source?</h4> <p>Simple, there is no value in a product of this magnitude remaining the "best kept secret". That status works well for our competitors, but absolutely works against the legions of new generation developers, systems integrators, and knowledge workers that need to be aware of what is actually achievable today with the right server architecture.</p> <p></p> <h4>What Open Source License is it under?</h4> <p>GPL version 2.</p> <p></p> <h4>What's the business model?</h4> <p>Dual licensing.</p> <p>The Open Source version of Virtuoso includes all of the functionality listed above. While the Virtual Database (distributed heterogeneous join engine) and Replication Engine (across heterogeneous data sources) functionality will only be available in the commercial version. </p> <p></p> <h4>Where is the Project Hosted?</h4> <p>On <a href="http://sourceforge.net/projects/virtuoso">SourceForge.</a> </p> <p></p> <h4>Is there a product Blog?</h4> <p>Of course! </p> <p>Up until this point, the <a href="http://virtuoso.openlinksw.com/blog/">Virtuoso Product Blog</a> has been a covert live demonstration of some aspects of Virtuoso (Content Management). My Personal Blog and the Virtuoso Product Blog are actual Virtuoso instances, and have been so since I started blogging in 2003.</p> <p>Is There a product Wiki?</p> <p>Sure! <a href="http://virtuoso.openlinksw.com/wiki/main/">The Virtuoso Product Wiki</a> is also an instance of Virtuoso demonstrating another aspect of the Content Management prowess of Virtuoso.</p> <p></p> <h4>What About Online Documentation?</h4> <p>Yep! <a href="http://docs.openlinksw.com/virtuoso/">Virtuoso Online Documentation</a> is hosted via yet another Virtuoso instance. This particular instance also attempts to demonstrate Free Text search combined with the ability to repurpose well formed content in a myriad of forms (Atom, RSS, RDF, OPML, and OCS).</p> <p></p> <h4>What about Tutorials and Demos?</h4> <p>The <a href="http://demo.openlinksw.com/tutorial/">Virtuoso Online Tutorial</a> Site has operated as a live demonstration and tutorial portal for a numbers of years. During the same timeframe (circa. 2001) we also assembled a few Screencast style demos (their look feel certainly show their age; updates are in the works).</p> <p>BTW - We have also updated the <a href="http://virtuoso.openlinksw.com/FAQ/">Virtuoso FAQ</a> and also released a number of missing <a href="http://virtuoso.openlinksw.com/Whitepapers/">Virtuoso White Papers</a> (amongst many long overdue action items).</p>
Solutions to allow XMLHttpRequest to talk to external services
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-11-11#900
2005-11-11T21:01:15Z
2006-07-21T07:23:03.000001-04:00
<blockquote><p><a href="http://www.ajaxian.com/archives/2005/11/solutions_to_al.html">Solutions to allow XMLHttpRequest to talk to external services</a>: "</p><p>Over on XML.com they published <a href="http://www.xml.com/pub/a/2005/11/09/fixing-ajax-xmlhttprequest-considered-harmful.html">Fixing AJAX: XmlHttpRequest Considered Harmful</a>.</p> <p>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.</p> <p>The article walks you through three potential solutions:</p> <ol> <li><strong>Application proxies</strong>. Write an application in your favorite programming language that sits on your server, responds to <code>XMLHttpRequest</code>s from users, makes the web service call, and sends the data back to users.</li> <li><strong>Apache proxy</strong>. Adjust your Apache web server configuration so that <code>XMLHttpRequest</code>s can be invisibly re-routed from your server to the target web service domain.</li> <li><strong>Script tag hack with application proxy</strong> (doesn't use <code>XMLHttpRequest</code> at all). Use the HTML <code>script</code> 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 <a href="http://ajaxpatterns.org/On-Demand_Javascript">On-Demand JavaScript</a>.</li> </ol> <p>I can't wait for <em>Trusted Relationships</em> within the browser - server infrastructure. </p> <p>With respect to Apache proxies, these things are priceless. I recently talked about them in relation to <a href="http://www.almaer.com/blog/archives/001099.html">Migrating data centers with zero downtime</a>.</p> <p>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?</p> <p>(Via <a href="http://www.ajaxian.com/">Ajaxian Blog</a>.)</p></blockquote> <p>Well here is what I think (actually know): </p> <p>Our <a href="http://virtuoso.openlinksw.com">Virtuoso Universal Server</a> has been sitting waiting to deliver this for years (for the record see the <a href="http://www.openlinksw.com/press/v2releas.htm">Virtuoso 2000 Press Release</a>). 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 <a href="http://www.openlinksw.com/blog/~kidehen/">public blog</a>).</p> <p>Virtuoso has always been able to expose Application Logic as SOAP and/or RESTful/RESTian style XML Web Services. <a href="http://www.openlinksw.com/weblog/public/search.vspx?blogid=127">This blog's search page</a> is a simple demo of this capability.</p> <p>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).</p> <p>BTW - there is a lot more, but for now, thou shall have to seek in order to find :-) </p>
Breaking the Web Wide Open!
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-10-26#882
2005-10-26T19:28:47Z
2006-06-22T08:56:58-04:00
<p><a href="http://marc.blogs.it/">Marc Canter</a>'s <a href="http://marc.blogs.it/archives/2005/10/breaking_the_we.html">Breaking the Web Wide Open! </a> article is something I found pretty late (by my normal discovery standards). This was partly due to the pre- and post- Web 2.0 event noise levels that have dumped the description of an important industry inflection into the "Bozo Bin" of many. Personally, I think we shouldn't confuse the Web 2.0 traditional-pitch-fest conference with an attempt to identify an important industry inflection).</p><p> Anyway, Marc's article is a very refreshing read because it provides a really good insight into the general landscape of a rapidly evolving Web alongside genuine appreciation of our broader timeless pursuit of "Openness". </p><p>To really help this document provide additional value have scrapped the content of the original post and dumped it below so that we can appreciate the value of the links embedded within the article (note: thanks to Virtuoso I only had to paste the content into my blog, the extraction to my <a href="http://www.openlinksw.com/blog/~kidehen/index.vspx?page=linkblog">Linkblog</a> and <a href="http://www.openlinksw.com/blog/~kidehen/index.vspx?page=summary">Blog Summary</a> Pages are simply features of my <a href="http://www.openlinksw.com/virtuos">Virtuoso </a>based Blog Engine):</p><blockquote><h3 class="hed2" style="padding-bottom: 10px">Breaking the Web Wide Open! (complete story)</h3><p>Even the web giants like AOL, Google, MSN, and Yahoo need to observe these open standards, or they'll risk becoming the "walled gardens" of the new web and be coolio no more.</p><p class="byline"><b><a href="http://community.alwayson-network.com/cgi-bin/WebObjects/AlwaysOn.woa/wa/display?id=9254:Person">Marc Canter</a></b> [<a href="http://community.alwayson-network.com/cgi-bin/WebObjects/AlwaysOn.woa/wa/display?id=9254:Person"><b>Broadband Mechanics, Inc.</b></a>] | POSTED: 09.26.05 @12:00</p><table width="100%" border="0" cellspacing="0" cellpadding="0"><tr><td valign="TOP" class="copy1"><img src="http://community.alwayson-network.com/ao/images/thumb/19433429363e7cd6b1ecfb7.jpg" align="LEFT" border="0" width="80" style="margin: 0px 10px 5px 0px" alt="" /><i><b>Editorial Note:</b> Several months ago, AlwaysOn got a personal invitation from Yahoo founder Jerry Yang "to see and give us feedback on our new social media product, y!360." We were happy to oblige and dutifully showed up, joining a conference room full of hard-core bloggers and new, new media types. The geeks gave Yahoo 360 an overwhelming thumbs down, with comments like, "So the only services I can use within this new network are Yahoo services? What if I don't use Yahoo IM?" In essence, the Yahoo team was booed for being "closed web," and we heartily agreed. With Yahoo 360, Yahoo continues building its own "walled garden" to control its 135 million customersÂan accusation also hurled at AOL in the early 1990s, before AOL migrated its private network service onto the web. As the</i> <a href="http://bernardmoon.blogspot.com/2005/08/yahoos-personality-crisis.html" target="_blank">Economist<i> recently noted</i></a>, "Yahoo, in short, has old media plans for the new-media era."<br /><br />The irony to our view here is, of course, that today's AO Network is also a "closed web." In the end, Mr. Yang's thoughtful invitation and our ensuing disappointment in his new service led to the assignment of this article. It also confirmed our existing plan to completely revamp the AO Network around open standards. To tie it all together, we recruited the chief architect of our new site, <a href="http://www.corante.com/amateur/articles/20030211-3564.html" target="_blank">the notorious Marc Canter</a>, to pen this piece. We look forward to our reader feedback.<br /><br /><b>Breaking the Web Wide Open!</b><br />By Marc Canter<br /><br />For decades, "walled gardens" of proprietary standards and content have been the strategy of dominant players in mainframe computer software, wireless telecommunications services, and the World Wide WebÂit was their successful lock-in strategy of keeping their customers theirs. But like it or not, those walls are tumbling down. Open web standards are being adopted so widely, with such value and impact, that the web giantsÂAmazon, AOL, eBay, Google, Microsoft, and YahooÂare facing the difficult decision of opening up to what they don't control.<br /><br />The online world is evolving into a new open web (sometimes called the Web 2.0), which is all about being personalized and customized for each user. Not only open source software, but <i>open standards</i> are becoming an essential component. <br /><br />Many of the web giants have been using open source software for years. Most of them use at least parts of the <a href="http://www.onlamp.com/pub/a/onlamp/2001/01/25/lamp.html" target="_blank">LAMP</a> (Linux, Apache, MySQL, Perl/Python/PHP) stack, even if they aren't well-known for giving back to the open source community. For these incumbents that grew big on proprietary web services, the methods, practices, and applications of open source software development are difficult to fully adopt. And the next open source movementsÂwhich will be as much about open standards as about codeÂwill be a lot harder for the incumbents to exploit.<br /><br />While the incumbents use cheap open source software to run their back-ends systems, their business models largely depend on proprietary software and algorithms. But our view a new slew of open software, open protocols, and open standards will confront the incumbents with the classic <i><a href="http://www.businessweek.com/chapter/christensen.htm" target="_blank">Innovator's Dilemma</a></i>. Should they adopt these tools and standards, painfully cannibalizing their existing revenue for a new unproven concept, or should they stick with their currently lucrative model with the risk that eventually a bunch of upstarts eat their lunch? <br /><br />Credit should go to several of the web giants who have been making efforts to "open up." Google, Yahoo, eBay, and Amazon all have Open APIs (Application Programming Interfaces) built into their data and systems. Any software developer can access and use them for whatever creative purposes they wish. This means that the API provider becomes an open platform for everyone to use and build on top of. This notion has expanded like wildfire throughout the blogosphere, so nowadays, Open APIs are pretty much required.<br /><br />Other incumbents also have open strategies. AOL has got the RSS religion, <a href="http://www.siliconbeat.com/entries/2005/07/27/aol_gets_rss_religion_with_my_aoland_feedsters_help.html" target="_blank">providing a feedreader and RSS search</a> in order to escape the "walled garden of content" stigma. <a href="http://www.apple.com/podcasting/" target="_blank">Apple now incorporates podcasts</a>, the "personal radio shows" that are latest rage in audio narrowcasting, into iTunes. Even Microsoft is supporting open standards, for example <a href="http://www.microsoft.com/technet/prodtechnol/winxppro/plan/rtcprot.mspx#EKAA" target="_blank">by endorsing SIP (Session Initiation Protocol) for internet telephony and conferencing</a> over Skype's proprietary format or one of its own devising.<br /><br />But new open standards and protocols are in use, under construction, or being proposed every day, pushing the envelope of where we are right now. Many of these standards are coming from startup companies and small groups of developers, not from the giants. Together with the Open APIs, those new standards will contribute to a new, open infrastructure. Tens of thousands of developers will use and improve this open infrastructure to create new kinds of web-based applications and services, to offer web users a highly personalized online experience.<br /><br /><b>A Brief History of Openness</b><br /><br />At this point, I have to admit that I am not just a passive observer, full-time journalist or "just some blogger"Âbut an active evangelist and developer of these standards. It's the vision of "open infrastructure" that's driving <a href="http://www.broadbandmechanics.com/bbm2005.htm" target="_blank">my company </a> and the reason why I'm writing this article. This article will give you some of the background behind on these standards, and what the evolution of the next generation of open standards will look like.<br /><br />Starting back in the 1980s, establishing a software standard was a key strategy for any software company. My former company, MacroMind (which became Macromedia), achieved this goal early on with Director. As <a href="http://webmonkey.wired.com/webmonkey/99/27/index3a_page6.html?tw=multimedia" target="_blank">Director evolved into Flash</a>, the world saw that other companies besides Microsoft, Adobe, and Apple could establish true cross-platform, independent media standards.<br /><br />Then <a href="http://www.w3.org/People/Berners-Lee/" target="_blank">Tim Berners-Lee</a> and <a href="http://www.ibiblio.org/pioneers/andreesen.html" target="_blank">Marc Andreessen</a> came along, and changed the rules of the software business and of entrepreneurialism. No matter how entrenched and "standardized" software was, the rug could still get pulled out from under it. <a href="http://geekphilosopher.com/MainPage/WebBrowserWars.htm?q=Stocks" target="_blank">Netscape did it to Microsoft, and then Microsoft did it <i>back</i> to Netscape</a>. The web evolved, and lots of standards evolved with it. The leading open source standards (such as the LAMP stack) became widely used alternatives to proprietary closed-source offerings. <br /><br />Open standards are more than just technology. Open standards mean sharing, empowering, and community support. Someone floats a new idea (or <a href="http://en.wikipedia.org/wiki/Meme" target="_blank">meme</a>) and the community runs with it â with each person making their own contributions to the standard â evolving it without a moment's hesitation about "giving away their intellectual property."<br /><br />One good example of this was <a href="http://www.sifry.com/alerts/" target="_blank">Dave Sifry</a>, who built the Technorati blog-tracking technology inspired by the <a href="http://www.myelin.co.nz/ecosystem/" target="_blank">Blogging Ecosystem</a>, a weekend project by young hacker <a href="http://marc.blogs.it/archives/2005/07/phil_pearson_jo.html" target="_blank">Phil Pearson</a>. Dave liked what he saw and he ran with itÂturning Technorati into what it is today.<br /><br /><a href="http://en.wikipedia.org/wiki/Dave_Winer" target="_blank">Dave Winer</a> has contributed enormously to this area of open standards. He defined and personally created several open standards and protocolsÂsuch as RSS, OPML, and XML-RPC. Dave has also <a href="http://newhome.weblogs.com/historyOfWeblogs" target="_blank">helped build</a> the blogosphere through his enthusiasm and passion.<br /><br />By 2003, hundreds of programmers were working on creating and establishing new standards for almost everything. The best of these new standards have evolved into compelling web services platforms â such as <a href="http://del.icio.us/" target="_blank">del.icio.us</a>, <a href="http://webjay.org/about" target="_blank">Webjay</a>, or <a href="http://www.flickr.com/photos/tags/ao2005/" target="_blank">Flickr</a>. Some have even spun off formal standards â like XSPF (a standard for playlists) or instant messaging standard XMPP (also known as Jabber).<br /><br />Today's Open APIs are complemented by standardized SchemasÂthe structure of the data itself and its associated meta-data. Take for example a <a href="http://www.ipodder.org/whatIsPodcasting" target="_blank">podcasting feed</a>. It consists of: a) the radio show itself, b) information on who is on the show, what the show is about and how long the show is (the meta-data) and also c) API calls to retrieve a show (a single feed item) and play it from a specified server. <br /><br />The combination of Open APIs, standardized schemas for handling meta-data, and an industry which agrees on these standards are breaking the web wide open right now. So what new open standards should the web incumbentsÂand youÂbe watching? Keep an eye on the following developments:<br /><br /><b>Identity<br />Attention<br />Open Media<br />Microcontent Publishing<br />Open Social Networks<br />Tags<br />Pinging <br />Routing<br />Open Communications<br />Device Management and Control</b><br /><br /><br /><b>1. Identity</b><br /><br />Right now, you don't really control your own online identity. At the core of just about every online piece of software is a membership system. Some systems allow you to browse a site anonymouslyÂbut unless you register with the site you can't do things like search for an article, post a comment, buy something, or review it. The problem is that each and every site has its own membership system. So you constantly have to register with new systems, which cannot share dataÂeven you'd want them to. By establishing a <a href="http://www.wired.com/news/privacy/0,1848,68329-2,00.html?tw=wn_story_page_next1" target="_blank">"single sign-on" standard</a>, disparate sites can allow users to freely move from site to site, and let them control the movement of their personal profile data, as well as any other data they've created. <br /><br />With <a href="http://www.thehindubusinessline.com/2005/01/03/stories/2005010301440200.htm" target="_blank">Passport, Microsoft unsuccessfully attempted</a> to force its proprietary standard on the industry. Instead, a world is evolving where most people assume that users want to control their own data, whether that data is their profile, their blog posts and photos, or some collection of their past interactions, purchases, and recommendations. As long as users can control their digital identity, any kind of service or interaction can be layered on top of it.<br /><br /><a href="http://www.identity20.com/media/OSCON2005/" target="_blank">Identity 2.0</a> is all about users controlling their own profile data and becoming their own agents. This way the users themselves, rather than other intermediaries, will profit from their ID info. Once developers start offering single sign-on to their users, and users have trusted places to store their dataÂwhich respect the limits and provide access controls over that data, users will be able to access personalized services which will understand and use their personal data.<br /><br />Identity 2.0 may seem like some geeky, visionary future standard that isn't defined yet, but by putting each user's digital identity at the core of all their online experiences, Identity 2.0 is becoming the cornerstone of the new open web. <br /><br /><b>The Initiatives:</b><br />Right now, Identity 2.0 is under construction through various efforts from Microsoft (the <a href="http://msdn.microsoft.com/webservices/webservices/understanding/advancedwebservices/default.aspx?pull=/library/en-us/dnwebsrv/html/identitymetasystem.asp" target="_blank">"InfoCard" component built into the Vista operating system</a> and its "<a href="http://garage.docsearls.com/node/605" target="_blank">Identity Metasystem</a>"), <a href="http://sxip.com" target="_blank">Sxip Identity</a>, <a href="http://www.identtycommons.net" target="_blank">Identity Commons</a>, <a href="http://www.projectliberty.org/" target="_blank">Liberty Alliance</a>, <a href="http://lid.netmesh.org/" target="_blank">LID</a> (NetMesh's Lightweight ID), and SixApart's <a href="http://openid.net/" target="_blank">OpenID</a>.<br /><br /><b>More Movers and Shakers:</b><br />Identity Commons and <a href="http://www.identitywoman.net" target="_blank">Kaliya Hamlin</a>, Sxip Identity and <a href="http://blame.ca/dick/" target="_blank">Dick Hardt</a>, the <a href="http://www.identitygang.org/" target="_blank"> Identity Gang</a> and <a href="http://www.searls.com/dochome.html#Bio" target="_blank">Doc Searls</a>, Microsoft's <a href="http://www.identityblog.com/" target="_blank">Kim Cameron</a>, <a href="http://www.craigburton.com/" target="_blank">Craig Burton</a>, <a href="http://phil.windley.org/" target="_blank">Phil Windley</a>, and <a href="http://slashdot.org/article.pl?sid=05/07/05/2020221&from=rss" target="_blank">Brad Fitzpatrick</a>, to name a few.<br /><br /><br /><b>2. Attention</b><br /><br />How many readers know what their online attention is worth? If you don't, Google and Yahoo doÂthey make their living off our attention. They know what we're searching for, happily turn it into a keyword, and sell that keyword to advertisers. They make money off our attention. We don't. <br /><br />Technorati and friends proposed <a href="http://blogs.zdnet.com/Gillmor/index.php?p=74" target="_blank">an attention standard, Attention.xml</a>, designed to "help you keep track of what you've read, what you're spending time on, and what you should be paying attention to." <a href="http://attentiontrust.org/" target="_blank">AttentionTrust</a> is an effort by <a href="http://blogs.zdnet.com/Gillmor/?p=132" target="_blank">Steve Gillmor</a> and <a href="http://majestic.typepad.com/seth/2005/07/attentiontrusto.html" target="_blank">Seth Goldstein </a>to standardize on how captured end-user performance, browsing, and interest data are used. <br /><br />Blogger <a href="http://worcester.typepad.com/pc4media/2005/07/attentiontrusto_1.html" target="_blank">Peter Caputa gives a good summary</a> of AttentionTrust: <blockquote>"As we use the web, we reveal lots of information about ourselves by what we pay attention to. Imagine if all of that information could be stored in a nice neat little xml file. And when we travel around the web, we can optionally share it with websites or other people. We can make them pay for it, lease it ... we get to decide who has access to it, how long they have access to it, and what we want in return. And they have to tell us what they are going to do with our Attention data."</blockquote><br />So when you give your attention to sites that adhere to the AttentionTrust, your attention rights (<i>you own your attention, you can move your attention, you can pay attention and be paid for it</i>, and <i>you can see how your attention is used</i>) are guaranteed. Attention data is crucial to the future of the open web, and Steve and Seth are making sure that no one entity or oligopoly controls it. <br /><br /><b>Movers and Shakers:</b><br /><a href="http://blogs.zdnet.com/Gillmor/" target="_blank">Steve Gillmor</a>, <a href="http://majestic.typepad.com/about.html" target="_blank">Seth Goldstein</a>, <a href="http://www.sifry.com/alerts/" target="_blank">Dave Sifry</a> and the <a href="http://developers.technorati.com/wiki/attentionxml" target="_blank">other Attention.xml folks</a>. <br /><br /><br /><b>3. Open Media</b><br /><br />Proprietary media standardsÂFlash, Windows Media, and QuickTime, to name a few Âhelped liven up the web. But they are proprietary standards that try to keep us locked in, and they weren't created from scratch to handle today's online content. That's why, for many of us, an Open Media standard has been a holy grail. Yahoo's new Media RSS standard brings us one step closer to achieving open media, as do <a href="http://www.vorbis.com/faq/#what" target="_blank">Ogg Vorbis</a> audio codecs, <a href="http://webjay.org/" target="_blank">XSPF playlists</a>, or <a href="http://musicbrainz.org/" target="_blank">MusicBrainz</a>. And several sites offer digital creators not only a place to store their content, but also to sell it. <br /><br /><a href="http://search.yahoo.com/mrss" target="_blank">Media RSS </a>(being developed by Yahoo with help from the community) extends RSS and combines it with "RSS enclosures" Âadds metadata to any media itemÂto create a comprehensive solution for media "narrowcasters." To gain acceptance for Media RSS, Yahoo knows it has to work with the community. As an active member of this community, I can tell you that we'll create Media RSS equivalents for <a href="http://www.xml.com/pub/a/2001/01/24/rdf.html" target="_blank">rdf</a> (an alternative subscription format) and <a href="http://www.atomenabled.org/" target="_blank">Atom</a> (yet <i>another</i> subscription format), so no one will be able to complain that Yahoo is picking sides in format wars.<br /><br />When Yahoo announced the purchase of Flickr, Yahoo founder Jerry Yang insinuated that Yahoo is acquiring "open DNA" to turn Yahoo into <a href="http://www.flickr.com/services/api/" target="_blank">an open standards player</a>. Yahoo is showing what happens when you take a multi-billion dollar company and make openness one of its core valuesÂso Google, beware, even if Google does have more research fellows and Ph.D.s. <br /><br />The open media landscape is far and wide, reaching from game machine hacks and mobile phone downloads to PC-driven bookmarklets, players, and editors, and it includes many other standardization efforts. <a href="http://www.xspf.org/" target="_blank">XSPF</a> is an open standard for playlists, and MusicBrainz is an alternative to the proprietary (and originally effectively stolen) database that <a href="http://en.wikipedia.org/wiki/Gracenote" target="_blank">Gracenote</a> licenses. <br /><br /><a href="http://www.ourmedia.org/" target="_blank">Ourmedia.org</a> is a community front-end to Brewster Kahle's <a href="http://www.archive.org" target="_blank">Internet Archive</a>. Brewster has promised free bandwidth and free storage forever to any content creators who choose to share their content via the Internet Archive. Ourmedia.org is providing an easy-to-use interface and community to get content in and out of the Internet Archive, giving ourmedia.org users the ability to share their media anywhere they wish, without being locked into a particular service or tool. Ourmedia plans to offer open APIs and an open media registry that interconnects other open media repositories into a DNS-like registry (just like the www domain system), so folks can browse and discover open content across many open media services. Systems like <a href="http://www.brightcove.com/" target="_blank">Brightcove</a> and <a href="http://www.evhead.com/2005/02/how-odeo-happened.asp" target="_blank">Odeo</a> support the concept of an open registry, and hope to work with digital creators to sell their work to fulfill the financial aspect of <a href="http://en.wikipedia.org/wiki/The_Long_Tail" target="_blank">the "Long Tail."</a><br /><br /><b>More Movers and Shakers:</b><br /><a href="http://creativecommons.org/about/people" target="_blank">Creative Commons</a>, the <a href="http://www.omn.org/" target="_blank">Open Media Network</a>, <a href="http://www.momentshowing.net/about.html" target="_blank">Jay Dedman</a>, <a href="http://ryanedit.blogspot.com/" target="_blank">Ryanne Hodson</a>, <a href="http://michaelverdi.com/index.php" target="_blank">Michael Verdi</a>, <a href="http://www.chapmanlogic.com/blog/aboutEli.html" target="_blank">Eli Chapman</a>, <a href="http://www.unmediated.org/" target="_blank">Kenyatta Cheese</a>, <a href="http://www.itconversations.com/about.html" target="_blank">Doug Kaye</a>, <a href="http://www.wired.com/wired/archive/13.09/yahoo.html" target="_blank">Brad Horowitz</a>, <a href="http://webjay.org/about#colophon" target="_blank">Lucas Gonze</a>, <a href="http://musicbrainz.org/wd/MusicBrainzBio" target="_blank">Robert Kaye</a>, <a href="http://www.lifewithalacrity.com/" target="_blank">Christopher Allen</a>, <a href="http://en.wikipedia.org/wiki/Brewster_Kahle" target="_blank">Brewster Kahle</a>, <a href="http://www.newmediamusings.com/" target="_blank">JD Lasica</a>, and indeed, <a href="http://www.corante.com/amateur/articles/20030211-3564.html" target="_blank">Marc Canter</a>, among others.<br /><br /><br /><b>4. Microcontent Publishing</b><br /><br />Unstructured content is cheap to create, but hard to search through. Structured content is expensive to create, but easy to search. <a href="http://developers.technorati.com/wiki/MicroFormats" target="_blank">Microformats</a> resolve the dilemma with simple structures that are cheap to use and easy to search.<br /><br />The first kind of widely adopted microcontent is blogging. Every post is an encapsulated idea, addressable via a URL called a permalink. You can syndicate or subscribe to this microcontent using RSS or an RSS equivalent, and news or blog aggregators can then display these feeds in a convenient readable fashion. But a blog post is just a block of unstructured textânot a bad thing, but just a first step for microcontent. When it comes to<i>structured</i> data, such as personal identity profiles, product reviews, or calendar-type event data, RSS was not designed to maintain the integrity of the structures. <br /><br />Right now, blogging doesn't have the underlying structure necessary for full-fledged microcontent publishing. But that will change. Think of local information services (such as movie listings, event guides, or restaurant reviews) that any college kid can access and use in her weekend programming project to create new services and tools.<br /><br />Today's blogging tools will evolve into microcontent publishing systems, and will help spread the notion of structured data across the blogosphere. New ways to store, represent and produce microcontent will create new standards, such as <a href="http://structuredblogging.org/" target="_blank">Structured Blogging</a> and <a href="http://microformats.org/" target="_blank">Microformats</a>. Microformats differ from RSS feeds in that you can't subscribe to them. Instead, Microformats are embedded into webpages and discovered by search engines like Google or Technorati. Microformats are creating common definitions for "What is a review or event? What are the specific fields in the data structure?" They can also specify what we can do with all this information.<a href="http://www.opml.org/spec" target="_blank">OPML (Outline Processor Markup Language)</a> is a hierarchical file format for storing microcontent and structured data. It was developed by <a href="http://en.wikipedia.org/wiki/Dave_Winer" target="_blank">Dave Winer</a> of RSS and podcast fame.<br /><br />Events are one popular type of microcontent. <a href="http://www.openevents.com" target="_blank">OpenEvents</a> is already working to create shared databases of standardized events, which would get used by a new generation of event portalsâsuch as <a href="http://eventful.com/gotevents/" target="_blank">Eventful/EVDB</a>, <a href="http://upcoming.org/" target="_blank">Upcoming.org</a>, and <a href="http://www.whizspark.com/" target="_blank">WhizSpark</a>. The idea of OpenEvents is that event-oriented systems and services can work together to establish shared events databases (and associated APIs) that any developer could then use to create and offer their own new service or application. <a href="http://marc.blogs.it/archives/2005/04/rvw_redux_openr.html" target="_blank">OpenReviews</a> is still in the conceptual stage, but it would make it possible to provide open alternatives to closed systems like Epinions, and establish a shared database of local and global reviews. Its shared open servers would be filled with all sorts of reviews for anyone to access. <br /><br />Why is this important? Because I predict that in the future, 10 times more people will be writing reviews than maintaining their own blog. The list of possible microcontent standards goes on: OpenJobpostings, OpenRecipes, and even OpenLists. Microsoft <a href="http://www.reallysimplesyndication.com/2005/06/22" target="_blank">recently revealed</a> that it has been working on an important new kind of microcontent: Listsâso OpenLists will attempt to establish standards for the <i>kind</i> of lists we all use, such as lists of Links, lists of To Do Items, lists of People, Wish Lists, etc.<br /><br /><b>Movers and Shakers:</b><br /><a href="http://tantek.com/log/2005/09.html" target="_blank">Tantek Ãelik</a> and <a href="http://en.wikipedia.org/wiki/Kevin_Marks" target="_blank">Kevin Marks</a> of <a href="http://developers.technorati.com/wiki/MicroFormats" target="_blank">Technorati</a>, <a href="http://dannyayers.com/" target="_blank">Danny Ayers</a>, <a href="http://www.meyerweb.com/" target="_blank">Eric Meyer</a>, <a href="http://photomatt.net/" target="_blank">Matt Mullenweg</a>, <a href="http://zlab.commerce.net/" target="_blank">Rohit Khare</a>, <a href="http://ifindkarma.typepad.com/relax/" target="_blank">Adam Rifkin</a>, <a href="http://www.sivas.com/aleene/" target="_blank">Arnaud Leene</a>, <a href="http://radio.weblogs.com/0110772/" target="_blank">Seb Paquet</a>, <a href="http://hublog.hubmed.org/" target="_blank">Alf Eaton</a>, <a href="http://www.myelin.co.nz/post/" target="_blank">Phil Pearson</a>, <a href="http://www.joereger.com/" target="_blank">Joe Reger</a>, <a href="http://bobwyman.pubsub.com/" target="_blank">Bob Wyman</a> among others.<br /><br /><br /><b>5. Open Social Networks</b><br /><br />I'll never forget the first time I met <a href="http://www.jabrams.com/" target="_blank">Jonathan Abrams</a>, the founder of Friendster. He was arrogant and brash and he claimed he "<i>owned</i>" all his users, and that he was going to monetize them and make a fortune off them. This attitude robbed Friendster of its momentum, letting MySpace, Facebook, and other social networks take Friendster's place.<br /><br />Jonathan's notion of social networks as a way to control users is typical of the Web 1.0 business model and its attitude towards users in general. Social networks have become one of the battlegrounds between old and new ways of thinking. Open standards for Social Networking will define those sides very clearly. Since meeting Jonathan, I have been working towards finding and establishing open standards for social networks. Instead of closed, centralized social networks with 10 million people in them, the goal is making it possible to have 10 million social networks that each have 10 people in them.<br /><br />FOAF (which stands for Friend Of A Friend, and describes people and relationships in a way that computers can parse) is a schema to represent not only your personal profile's meta-data, but your social network as well. Thousands of researchers use the <a href="http://www.foaf-project.org/" target="_blank">FOAF schema</a> in their "Semantic Web" projects to connect people in all sorts of new ways. <a href="http://gmpg.org/xfn/" target="_blank">XFN</a> is a microformat standard for representing your social network, while <a href="http://www.imc.org/pdi/" target="_blank">vCard</a> (long familiar to users of contact manager programs like Outlook) is a microformat that contains your profile information. Microformats are baked into any xHTML webpage, which means that<i>any</i> blog, social network page, or any webpage in general can "contain" your social network in itÂand be used by<i>any</i> compatible tool, service or application. <br /><br />PeopleAggregator is an earlier project now being integrated into <a href="http://drupal.org/" target="_blank">open content management framework Drupal</a>. The <a href="http://www.broadbandmechanics.com/PeopleAggregator/" target="_blank">PeopleAggregator APIs</a> will make it possible to establish relationships, send messages, create or join groups, and post between different social networks. (Sneak preview: this technology will be available in the upcoming GoingOn Network.) <br /><br />All of these open social networking standards mean that inter-connected social networks will form a mesh that will parallel the blogosphere. This vibrant, distributed, decentralized world will be driven by open standards: personalized online experiences are what the new open web will be all aboutÂand what could be more personalized than people's networks?<br /><br /><b>Movers and Shakers:</b><br /><a href="http://esigler.2nw.net/" target="_blank">Eric Sigler</a>, <a href="http://lucifer.intercosmos.net/index.php?view=about" target="_blank">Joel De Gan</a>, <a href="http://crschmidt.net/" target="_blank">Chris Schmidt</a>, <a href="http://voidstar.com/" target="_blank">Julian Bond</a>, <a href="http://people.tribe.net/paul?_click_path=Application%5Btribe%5D.Person%5Bf2232c95-e123-43a3-b48d-24a5f11f09dc%5D&r=10535" target="_blank">Paul Martino</a>, <a href="http://napsterization.org/stories/archives/000513.html" target="_blank">Mary Hodder</a>, <a href="http://public.2idi.com/=Drummond.Reed" target="_blank">Drummond Reed</a>, <a href="http://danbri.org/" target="_blank">Dan Brickley</a>, <a href="http://360.yahoo.com/profile-9lciejI3aafX1stHPoIRNmkmv4EowQ--" target="_blank">Randy Farmer</a>, and <a href="http://www.kaliyasblogs.net/Iwoman/" target="_blank">Kaliya Hamlin</a>, to name a few.<br /><br /><br /><b>6. Tags</b><br /><br />Nowadays, no self-respecting tool or service can ship without <a href="http://www.salon.com/tech/feature/2005/02/08/tagging/index_np.html" target="_blank">tags</a>. Tags are keywords or phrases attached to photos, blog posts, URLs, or even video clips. These user- and creator-generated tags are an open alternative to what used to be the domain of librarians and information scientists: categorizing information and content using taxonomies. Tags are instead creating <a href="http://www.wired.com/wired/archive/13.04/view.html?pg=4" target="_blank">"folksonomies."</a><br /><br />The recently proposed OpenTags concept would be an open, community-owned version of the popular <a href="http://www.technorati.com/tag/" target="_blank">Technorati Tags service</a>. It would aggregate the usage of tags across a wide range of services, sites, and content tools. In addition to Technorati's current tag features, OpenTags would let groups of people share their tags in "<a href="http://www.zeldman.com/daily/0405d.shtml/" target="_blank">TagClouds</a>." Open tagging is likely to include some of the open identity features discussed above, to create a tag system that is resilient to spam, and yet trustable across sites all over the web.<br /><br />OpenTags owes a debt to earlier versions of shared tagging systems, which include <a href="http://www.topicexchange.com/" target="_blank">Topic Exchange</a> and something called the <a href="http://www.evectors.com/itkcollector/" target="_blank">k-collector</a>Âa knowledge management tag aggregatorÂfrom Italian company eVectors. <br /><br /><b>Movers & Shakers:</b><br /><a href="http://www.myelin.co.nz/notes/" target="_blank">Phil Pearson</a>, <a href="http://matt.blogs.it/" target="_blank">Matt Mower </a>, <a href="http://paolo.evectors.it/" target="_blank">Paolo Valdemarin</a>, and <a href="http://marc.blogs.it/archives/2005/03/opentopics.html" target="_blank">Mary Hodder</a> and <a href="http://www.equalsdrummond.name/index.php?p=39" target="_blank"> Drummond Reed</a> again, among others.<br /><br /><br /><b>7. Pinging</b><br /><br />Websites used to be mostly static. Search engines that <a href="http://en.wikipedia.org/wiki/Web_crawler" target="_blank">crawled</a> (or "spidered") them every so often did a good enough job to show reasonably current versions of your cousin's homepage or even <i>Time</i> magazine's weekly headlines. But when blogging took off, it became hard for search engines to keep up. (Google has only <a href="http://searchenginewatch.com/searchday/article.php/3548411" target="_blank">just managed</a> to offer <a href="http://www.google.com/help/about_blogsearch.html" target="_blank">blog-search functionality</a>, despite <a href="http://www.alwayson-network.com/comments.php?id=325_0_2_0_C" target="_blank">buying Blogger</a> back in early 2003.)<br /><br />To know what was new in the blogosphere, users couldn't depend on services that spidered webpages once in a while. The solution: a way for blogs themselves to automatically notify blog-tracking sites that they'd been updated. <a href="http://weblogs.com/" target="_blank">Weblogs.com</a> was the first blog "ping service": it displayed the name of a blog whenever that blog was updated. Pinging sites helped the blogosphere grow, and <a href="http://blo.gs/" target="_blank">more tools</a>, services, and portals started using pinging in new and different ways. Dozens of pinging services and sitesÂmost of which can't talk to each otherÂsprang up. <br /><br />Matt Mullenweg (the creator of open source blogging software WordPress) decided that a one-stop service for pinging was needed. He created <a href="http://pingomatic.com/" target="_blank">Ping-o-Matic</a>Âwhich aggregates ping services and simplifies the pinging process for bloggers and tool developers. With Ping-o-Matic, any developer can alert all of the industry's blogging tools and tracking sites at once. This new kind of open standard, with shared infrastructure, is a critical to the scalability of Web 2.0 services.<br /><br />As <a href="http://pingomatic.com/about/" target="_blank">Matt said</a>:<br /><blockquote>There are a number of services designed specifically for tracking and connecting blogs. However it would be expensive for all the services to crawl all the blogs in the world all the time. By sending a small ping to each service you let them know you've updated so they can come check you out. They get the freshest data possible, you don't get a thousand robots spidering your site all the time. Everybody wins.</blockquote><br /><b>Movers and Shakers:</b><br /><a href="http://photomatt.net/about/" target="_blank">Matt Mullenweg</a>, <a href="http://trainedmonkey.com/entry/2251" target="_blank">Jim Winstead</a>, <a href="http://newhome.weblogs.com/faq" target="_blank">Dave Winer</a><br /><br /><br /><b>8. Routing</b><br /><br />Bloggers used to have to manually enter the links and content snippets of blog posts or news items they wanted to blog. Today, some RSS aggregators can send a specified post directly into an associated blogging tool: as bloggers browse through the feeds they subscribe to, they can easily specify and send any post they wish to "<a href="http://www.microsoftmonitor.com/archives/010209.html" target="_blank">reblog</a>" from their news aggregator or feed reader into their blogging tool. (This is usually referred to as "<a href="http://help.blogger.com/bin/answer.py?answer=152&topic=17" target="_blank">BlogThis</a>.") As structured blogging comes into its own (see the section on Microcontent Publishing), it will be increasingly important to maintain the structural integrity of these pieces of microcontent when reblogging them. <br /><br />Promising standard <a href="http://redirectthis.com/" target="_blank">RedirectThis</a> will combine a "BlogThis"-like capability while maintaining the integrity of the microcontent. RedirectThis will let bloggers and content developers attach a simple "PostThis" button to their posts. Clicking on that button will send that post to the reader/blogger's favorite <a href="http://ecto.kung-foo.tv/archives/000990.php" target="_blank">blogging tool</a>. This favorite tool is specified at the RedirectThis web service, where users register their blogging tool of choice. RedirectThis also helps maintain the integrity and structure of microcontentÂthen it's just up to the user to prefer a blogging tool that also attains that lofty goal of microcontent integrity. <br /><br />OutputThis is another nascent web services standard, to let bloggers specify what "destinations" they'd like to have as options in their blogging tool. As new destinations are added to the service, more checkboxes would get added to their blogging toolÂallowing them to route their published microcontent to additional destinations.<br /><br /><b>Movers and Shakers:</b><br /><a href="http://reblog.org/" target="_blank">Michael Migurski</a>, <a href="http://www.gonze.com/about" target="_blank">Lucas Gonze</a><br /><br /><br /><b>9. Open Communications</b><br /><br />Likely, you've experienced the joys of finding friends on AIM or Yahoo Messenger, or the convenience of Skyping with someone overseas. Not that you're about to throw away your mobile phone or BlackBerry, but for many, also having access to Instant Messaging (IM) and Voice over IP (VoIP) is crucial. <br /><br />IM and VoIP are mainstream technologies that already enjoy the benefits of open standards. Entire industries are bornÂright this secondÂbased around these open standards. <a href="http://www.jabber.org/" target="_blank">Jabber</a> has been an open IM technology for yearsÂin fact, <a href="http://www.xmpp.org/history.html" target="_blank">as XMPP</a>, it was officially dubbed a standard by <a href="http://www.ietf.org/overview.html" target="_blank">the IETF</a>. Although becoming an <a href="http://en.wikipedia.org/wiki/IETF" target="_blank">official IETF standard</a> is usually the kiss of death, Jabber looks like it'll be around for a while, as entire generations of collaborative, work-group applications and services have been built on top of its messaging protocol. For VoIP, <a href="http://skype.com/helloagain.html" target="_blank">Skype</a> is clearly the leading standard todayÂthough one could <a href="http://socialsoftware.weblogsinc.com/entry/1234000923058521/" target="_blank">argue just how "open" it is</a> (and defenders of the IETF's <a href="http://www.cs.columbia.edu/sip/" target="_blank">SIP standard</a> often do). But it is free and user-friendly, so there won't be much argument from <i>users</i> about it being insufficiently open. Yet there may be a cloud on Skype's horizon: web behemoth Google recently released a beta of <a href="http://www.google.com/talk/developer.html" target="_blank">Google Talk, an IM client committed to open standards</a>. It currently <a href="http://radar.oreilly.com/archives/2005/08/google_talk_rel.html" target="_blank">supports XMPP, and will support SIP</a> for VoIP calls.<br /><br /><b>Movers and Shakers:</b><br /><a href="http://www.jabber.org/people/jer.shtml" target="_blank">Jeremie Miller</a>, <a href="http://www.cs.columbia.edu/~hgs/" target="_blank">Henning Schulzrinne</a>, <a href="http://www.von.com/schedule_eos11114704148.html" target="_blank">Jon Peterson</a>, <a href="http://www.pulver.com/jeff/" target="_blank">Jeff Pulver</a><br /><br /><br /><b>10. Device Management and Control</b><br /><br />To access online content, we're using more and more devices. BlackBerrys, iPods, Treos, you name it. As the web evolves, more and more different devices will have to communicate with each other to give us the content we want when and where we want it. No-one wants to be dependent on one vendor anymoreÂlike, <a href="http://www.alwayson-network.com/comments.php?id=P9409_0_6_0_C" target="_blank">say, Sony</a>Âfor their laptop, phone, MP3 player, PDA, and digital camera, so that it all works together. We need fully interoperable devices, and the standards to make that work. And to fully make use of how content is moving online content and innovative web services, those standards need to be open.<br /><br /><a href="http://en.wikipedia.org/wiki/Midi" target="_blank">MIDI (musical instrument digital interface)</a>, one of the very first open standards in music, connected disparate vendors' instruments, post-production equipment, and recording devices. But MIDI is limited, and <a href="http://www.oreillynet.com/pub/wlg/8015" target="_blank">MIDI II has been very slow to arrive</a>. Now a new standard for controlling musical devices has emerged: <a href="http://www.cnmat.berkeley.edu/OpenSoundControl/" target="_blank">OSC (Open SoundControl)</a>. This protocol is optimized for modern networking technology and inter-connects music, video and controller devices with "other multimedia devices." OSC is used by a wide range of developers, and is being taken up in the mainstream MIDI marketplace.<br /><br />Another open-standards-based device management technology is <a href="http://www.zigbee.org" target="_blank">ZigBee</a>, for building wireless intelligence and network monitoring into all kinds of devices. ZigBee is supported by many networking, consumer electronics, and mobile device companies.<br /><br /><br />   · · · · · ·   <br /><br /><b>The Change to Openness</b><br /><br />The rise of open source software and its "<a href="http://www.oreillynet.com/pub/a/oreilly/tim/articles/architecture_of_participation.html" target="_blank">architecture of participation</a>" are completely shaking up the old proprietary-web-services-and-standards approach. Sun MicrosystemsÂwhose proprietary Java standard helped define the Web 1.0Âis opening its Solaris OS and has even announced the apparent paradox of an <a href="http://blogs.zdnet.com/open-source/?p=418" target="_blank">open-source Digital Rights Management</a> system.<br /><br />Today's incumbents will have to adapt to the new openness of the Web 2.0. If they stick to their <a href="http://www.gartner.com/DisplayDocument?doc_cd=131038" target="_blank">proprietary standards</a>, code, and content, they'll become the new walled gardensÂplaces users visit briefly to retrieve data and content from enclosed data silos, but not where users "live." The incumbents' revenue models will have to change. Instead of "owning" their users, users will know they own themselves, and will expect a return on their valuable identity and attention. Instead of being locked into incompatible media formats, users will expect easy access to digital content across many platforms. <br /><br />Yesterday's web giants and tomorrow's users will need to find a mutually beneficial new balanceÂbetween open and proprietary, developer and user, hierarchical and horizontal, owned and shared, and compatible and closed. <br /><br /><br /><i>Marc Canter is an active evangelist and developer of open standards. Early in his career, Marc founded MacroMind, which became Macromedia. These days, he is CEO of Broadband Mechanics, a founding member of the Identity Gang and of ourmedia.org. Broadband Mechanics is currently developing the <a href="http://www.alwayson-network.com/comments.php?id=11262_0_1_0_C" target="_blank">GoingOn Network</a> (with the AlwaysOn Network), as well as an open platform for social networking called the PeopleAggregator.</i><br /><br />A version of the above post appears in the Fall 2005 issue of AlwaysOn's quarterly print blogozine, and ran as <a href="http://www.alwayson-network.com/comments.php?id=12063_0_1_0_C" target="_blank">a four-part series</a> on the AlwaysOn Network website.</td></tr></table><br /><p>(Via <a href="http://marc.blogs.it/">Marc's Voice</a>.)</p></blockquote>
Post-Processed Web 2.0 Report
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-10-06#872
2005-10-06T20:21:50Z
2006-06-22T08:56:58-04:00
<p>If you've read Dare's recent post titled: "Mash-ups 2.0 - Where's the Business Model?", you will notice that it's filled with juicy Web 2.0 currency (URIs). Thus, rapid extraction of the embedded URIs becomes essential (I want see those mash-ups ASAP..) </p><p> Here is what my <a href="http://www.openlinksw.com/virtuoso">Virtuoso</a> based blog system enables me to do with ease:</p><ul> 1. Grep all the URIs from Dare's "Mash-ups 2.0 - Where's the Business Model?" post via its <a href="http://www.openlinksw.com/blog/~kidehen/index.vspx?page=linkblog">linkblog</a>. </ul><ul> 2. Use Dare's Trip report to track broader Web 2.0 conversation across the blogosphere via its <a href="http://www.openlinksw.com/blog/~kidehen/index.vspx?page=summary">Summary Page</a>.</ul> In all cases relating to items 1&2, ensure that the content is syndicated in a range of formats (including the often forgotten XBEL which is a short-cut for building up your bookmarks database).
Web 2.0 Conference Trip Report: Mash-ups 2.0 - Where#39s the Business Model?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-10-06#871
2005-10-06T18:43:31Z
2006-06-22T08:56:58-04:00
<p>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<a href="http://www.openlinksw.com/virtuoso"> Virtuoso</a>). See the post that follows...</p><blockquote><p><a href="http://www.25hoursaday.com/weblog/PermaLink.aspx?guid=fe52dada-78e0-4508-80c2-8764d9668651">Web 2.0 Conference Trip Report: Mash-ups 2.0 - Where's the Business Model?</a>: "</p><p> I attended the panel on business models for mash-ups hosted by <a href="http://www.web2con.com/cs/web2005/view/e_spkr/2453">Dave McClure</a>,<br /><a href="http://www.web2con.com/cs/web2005/view/e_spkr/1637">Jeffrey McManus</a>, <a href="http://www.web2con.com/cs/web2005/view/e_spkr/2277">Paul Rademacher</a>, and <a href="http://www.web2con.com/cs/web2005/view/e_spkr/1518">Adam Trachtenberg</a>. </p><p> 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. </p><p> Paul Rademacher is the author of the <a href="http://www.housingmaps.com/">Housing Maps mash-up</a> which he used as a way to find a house using Craig'sList + Google Maps. The data obtained from Craig's List is fetched via screen scraping. Although Craig's List has RSS feeds, they didn'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. </p><p> The question was asked as to why he didn't make this a business but instead took a job at Google. He listed a number of very good reasons </p><ol><li> He did not own the data that was powering the application.</li><li> The barrier to entry for such an application was low since there was no unique intellectual property or user interface design to his application </li></ol><p> I asked whether he'd gotten any angry letters from the legal department at Craig'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. </p><p> A related mash-up site which scrapes real estate websites called <a href="http://www.trulia.com/">Trulia</a> 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 <a href="http://www.simplyhired.com/">SimplyHired</a> with integrates with a number of sites including <a href="http://www.payscale.com/">PayScale</a>, <a href="http://www.linkedin.com/">LinkedIn</a>, Job databases, etc. </p><p> 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 & Yahoo folks would give their perspective later. </p><p> Then we get a demo of a <a href="http://www.trachtenberg.com/emgm/">Google Maps & eBay Motors mash-up</a>. Unlike the <a href="http://www.housingmaps.com/">Housing Maps mash-up</a>, 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 <a href="http://www.unwiredbuyer.com/">Unwired Buyer</a> 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 <a href="http://share.skype.com/sdp">Skype API</a> perhaps some enterprising soul could mash-up eBay & Skype. </p><p> Jeffrey McManus of Yahoo! pointed out that you don'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'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't significant interest in embedding the maps on developer's sites especially when this would require paying for hosting. </p><p> We then got showed a number mapping mashups including a mashup of the <a href="http://geepster.com/london.php">London bombings which used Google Maps, Flickr & RSS feeds of news</a> (the presenter had the poor taste to point out opportunities to place ads on the site), a mashup from alkemis which <a href="http://www.alkemis.com/default.php?pID=laboratory&pID2=googleMapA">mashes Google Maps, A9.com street level photos and traffic cams</a>, and a mash-up from Analygis which <a href="http://www.analygis.com/products/google_api.htm">integrates census data with Google Maps data</a>. </p><p> The following items were then listed as the critical components of mash-ups<br />  - AJAX (Jeffrey McManus said it isn't key but a few of the guys on the panel felt that at least dynamic UIs are better) <br />  - APIs<br />  - Advertising<br />  - Payment<br />  - Identity/Acct mgmt<br />  - Mapping Services<br />  - Content Hosting<br />  - Other? </p><p> 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'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. </p><p> eBay's current solution is similar to that used by <a href="http://www.passport.net">Microsoft Passport</a> in that applications are expected to have user'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't solved this problem. </p><p> My main comment about this panel is that it didn't meet expectations. I'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. </p>" <p>(Via <a href="http://www.25hoursaday.com/weblog/">Dare Obasanjo aka Carnage4Life</a>.)</p></blockquote>
Web 2.0 API Reference
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-09-14#865
2005-09-14T16:59:04Z
2006-06-22T08:56:58-04:00
<p>The <a href="http://www.programmableweb.com">Web 2.0 API reference site</a> is a great collection of <a href="http://www.programmableweb.com/apis">Web 2.0 "Points of Presence" / endpoints and their published APIs</a>. I see this site evolving very quickly, especially as its starts to receive URIs for <a href="http://www.programmableweb.com/examples">samples</a> and <a href="http://www.programmableweb.com/mashups">mash-ups</a>. </p> <p>This site could provide a great exposure point for some very old Web 2.0 (nee "Web Services") demos from our <a href="http://demo.openlinksw.com/tutorial/services/index.vsp">Virtuoso tutorials / demos site</a>.</p>
End of Line for Microsoft?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-07-26#856
2005-07-26T22:15:51Z
2006-06-22T08:56:58-04:00
<p><a href="http://www.pcmag.com/article2/0,1895,1840479,00.asp">John C. Dvorak pens an interesting piece about the "deafening silence" accorded Windows Vista</a> thus far. <br /> </p><p> <a href="http://www.openlinksw.com/weblog/kidehen@openlinksw.com/127/?id=793">In the past I have expressed views that echo the essence</a> of John's piece. It has been pretty darn clear to me that Microsoft is struggling as a result of its inability to handle challenges associated with the metaphoric "computing vase" which it sought to own solely as a result of its proclivity for crushing and/or alienating erstwhile technology partners as part of this quest (a process that commenced a long time ago culminating the <a href="http://www.betanews.com/article/Microsoft_No_IE7_for_Windows_2000/1117464807">contradiction and ultimate paradox called IE7</a>; remember not too long ago it was impossible to separate IE from Windows! It could only exist as an OS extension etc.).</p> <p>Windows in its current incarnation fails to provide a productive working environment, you either have a plethora of viruses and spyware contending for you computing resources, or you have all the software in place to protect against these assaults rendering the computing resources equally busy. The computing power lag is simply too much when using windows, and this is its achilles heel! </p> <p> I have been using Windows since version 2.0, and although I have always found the Mac OS variations to be superior on the UI front, I never found any of the historic versions viable alternatives. In my case, this is all about providing a productive work environment across the following usage modes, in descending order of priority:</p> <blockquote>1. Power User (OutLook, Excel, WORD, and other desktop productivity tools)<br /> 2. Product Testing and QA<br /> 3. Programmer Buddy (a Microsoft term)<br /> 4. Programming (for the most part prototyping)<br /> </blockquote> <p>The release of Mac OS X Tiger lead me down an evaluation path that I have repeated many times in the past: test the viability of moving wholesale from Windows to Mac OS X and remain functional (if really lucky, exceed existing productivity levels). This time around I found that I could actually migrate over 6 years worth of emails, contacts, presentations, documents, spreadsheets from Windows to Mac OS X. I also discovered that success extended all the way to my data linked documents that are transparently bound to back-end databases (in my case the norm rather the exception via ODBC). </p> <p>I now use Mac OS X as my prime working platform (I still have to use Windows as the platform remains strategic for all our product offerings), and I am absolutely loving it! The joint feelings of euphoria and confusion that I experienced post migration were similar to how I felt after making the transition from "stick shift" to "automatic" geared cars (as I transitioned my residence from the UK to the U.S). At the time I couldn't understand why anyone (other than a grand prix driver) would ever drive a "stick shift" by choice. </p> <p>Today, I can't understand why I stuck with Windows for so long at the expense of my daily working productivity. The biggest bonus from this transition is that Mac OS X has made it easier for me to engage less technical individuals (family & friends) in the sheer joy and potential of Information Technology across a variety of realms as opposed to being confined to the "business computing" realm solely. I can demonstrate the power and potential of the Internet, Web, Web Services, Blogosphere, Wikispehere, with much more sanity and coherence now that my machine responds in a timely fashion during these demos amongst other benefits. </p> <p>Some may deem this windows bashing, but if they take the time to look a little deeper, this is simply about "straight shooting" from a real computer user (I like my computers to do deliver on their hugh potential promised; I don't compromise this basic expectation; my computer and associate software should save me time and ramp up my productivity!) . If Microsoft is the company that it once was, then it would simply use this kind of commentary to rally its troops and get its act together! That's what I would do if a customer felt so badly about our technology (<a href="http://uda.openlinksw.com">UDA </a>or <a href="http://virtuoso.openlinksw.com">Virtuoso</a>).</p>
FireFox Semantic Web Extension: Piggy Bank 2.0 Beta
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-05-24#850
2005-05-24T18:37:20Z
2006-07-21T07:25:03.000001-04:00
<div align="left">I just found this interesting Semantic Web effort via '<a href="http://dannyayers.com/">Danny Ayers</a>' blog. Here is the synopsis from his post:</div> <blockquote style="margin-right: 0px;" dir="ltr"> <p><a href="http://dannyayers.com/archives/2005/05/24/piggy-bank-20-beta/">Piggy Bank 2.0 Beta</a> </p> <p>New release of <a href="http://simile.mit.edu/piggy-bank/">Piggy Bank</a>, the Semantic Web extension for Firefox. It harvests data as you browse (when you click a status bar indicator), which can later be searched and viewed in a facetted browser. </p> <p>The docs have come along some too -</p> <blockquote> <p>Piggy Bank can collect pure information in the following cases:</p> <p>1. The web page has invisible link(s) to RDF data (encoded in RDF/XML or N3 formats).<br />2. The web page exports an RSS feeds.<br />3. The address of the web page is a file:/ URL pointing to a directory.<br />4. Piggy Bank has a "screen scraper" <em>[XSLT or Javascript]</em> that can re-structure the web page HTML code into RDF data. </p></blockquote> <p>There's a <a href="http://simile.mit.edu/piggy-bank/screen-scrapers-howto.html">tutorial</a> on writing Javascript screenscrapers on the site, nice touch.</p></blockquote> <p dir="ltr" align="left">I have also added an architecture diagram to accelerate comprehension (a picture speaks a thousand words...):</p> <p dir="ltr" align="left"><img alt="" src="http://simile.mit.edu/piggy-bank/images/architecture.png" align="bottom" border="0" hspace="0" /></p> <div align="left">The infrastructure for tier-3 is an aspect of <a href="http://virtuoso.openlinksw.com">Virtuoso's</a> functionality pool; combining Database & Web Application Server functionality amongst other things, as a single product offering.<br /> </div>
WebDAV, SQLX, and my Weblog
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-04-26#810
2005-04-26T03:54:43Z
2006-06-22T08:56:58-04:00
<p>Uche Ogbuji <a href="http://copia.ogbuji.net/blog/2005/04/24#Posting_to">comments</a> in his <a href="http://copia.ogbuji.net/blog">blog</a> about the use of WebDAV and <a href="http://www.tbradford.org/2005/02/xml-with-virtuoso-and-sqlx_02.html">SQLX </a>in my blog as part of his commentary about <a href="http://egaumer.pagecache.org/PyBlosxom/pyblosxom-webdav.html">Pyblosxom & WebDAV</a>. To provide some clarity about Virtuoso and Blogging I have decided to put out this quick step by guide to the workings of my blog (there is a long overdue technical white paper nearing completion that address this subject in more detail).</p> <p>Here goes:</p> <p><u><strong>Blog Editing</strong></u></p> <p>I can use any editor that supports the following Blog Post APIs:</p> <p>- Moveable Type</p> <p>- Meta Weblog</p> <p>- Blogger</p> <p>Typically I use Virtuoso (which has an unreleased WYSIWYG blog post editor), <a href="http://www.newzcrawler.com/">Newzcrawler</a>, <a href="http://ecto.kung-foo.tv/">ecto</a>, <a href="http://zempt.com/">Zempt</a>, or <a href="http://www.wbloggar.com/">w.bloggar</a> for my posts. If a post is of interest to me, or relevant to our company or customers I tend to perform one of the following tasks:</p> <p>- Generate a post using the "Blog This" feature of my blog editor</p> <p>- Write a new post that was triggered by a previously read post etc.</p> <p>Either way, the posts end up in our company wide blog server that is Virtuoso based (more about this below). The internal blog server automatically categorizes my blog posts, and automagically determines which posts to upstream to other public blogs that I author (e.g <a href="http://kidehen.typepad.com/">http://kidehen.typepad.com</a> ) or co-author (e.g <a href="http://www.openlinksw.com/weblogs/uda">http://www.openlinksw.com/weblogs/uda</a> and <a href="http://www.openlinksw.com/weblogs/virtuoso">http://www.openlinksw.com/weblogs/virtuoso</a> ). I write once and my posts are dispatched conditionally to multiple outlets.</p> <p><strong><u>RSS/Atom/RDF Aggregation & Reading</u></strong></p> <p>I discover, subscribe to, and view blog feeds using <a href="http://www.newzcrawler.com/">Newzcrawler</a> (primarily), and from time to time for experimentation and evaluation purposes I use <a href="http://www.rssbandit.org/">RSS Bandit</a>, <a href="http://www.bradsoft.com/feeddemon/">FeedDemon</a>, and <a href="http://www.bloglines.com/">Bloglines</a>. I am in the process of moving this activity over to Virtuoso completely due to the large number of feeds that I consume on a daily basis (scalability is a bit of a problem with current aggregators).</p> <p><u><strong>Blog Publishing</strong></u></p> <p>When you visit my blog you are experiencing the soon to be released Virtuoso Blog Publishing engine first hand, which is how WebDAV, SQLX, XQuery/XPath, and Free Text etc. come into the mix.</p> <p>Each time I create a post internally, or subscribe to an external feed, the data ends up in Virtuoso's SQL Engine (this is how we handle some of the obvious scalability challenges associated with large subscription counts). This engine is SQL2000N based, which implies that it can transform SQL to XML on the fly using recent extensions to SQL in the form of SQLX (prior to the emergence of this standard we used the FOR XML SQL syntax extensions for the same result). It also has its own in-built XSLT processor (DB Engine resident), and validating XML parser (with support for XML Schema). Thus, my <a href="http://www.openlinksw.com/blog/~kidehen/gems/">RSS/RDF/Atom archives, FOAF, BlogRoll, OPML, and OCS</a> blog syndication gems are all live examples of SQLX documents that leverage Virtuoso's WebDAV engine for exposure to Blog Clients.</p> <p><strong><u>Blog Search</u></strong></p> <p>When you search for blog posts using the basic or <a href="http://www.openlinksw.com/blog/search.vspx?blogid=127">advanced search</a> features of my blog, you end up interacting with one of the following methods of querying data hosted in Virtuoso: Free Text Search, XPath, or XQuery. The <a href="http://www.openlinksw.com/blog/search.vspx?blogid=127&q=virtuoso&type=text&output=html">result sets</a> produced by the search feature uses SQLX to produce subscription gems (<a href="http://www.openlinksw.com/blog/search.vspx?blogid=127&q=virtuoso&type=text&output=xml">RSS</a>/<a href="http://www.openlinksw.com/blog/search.vspx?blogid=127&q=virtuoso&type=text&output=atom">Atom</a>/<a href="http://www.openlinksw.com/blog/search.vspx?blogid=127&q=virtuoso&type=text&output=rdf">RDF</a>/<a href="http://www.openlinksw.com/blog/search.vspx?blogid=127&type=text&kwds=virtuoso&OpenSearch">OpenSearch</a>) and <a href="http://www.openlinksw.com/blog/search.vspx?blogid=127&q=virtuoso&type=text&output=html">URIs</a> that enable dynamic tracking of my posts using your search keywords.</p> <p>BTW - the <a href="http://www.openlinksw.com/blog/~kidehen">http://www.openlinksw.com/blog/~kidehen</a> blog home page exists as a result of Virtuoso's Virtual Domain / Multi-Homing Web Server functionality. The entire site resides in an Object Relational DBMS, and I can take my DB file across Windows, Solaris, Linux, Mac OS X, FreeBSD, AIX, HP-UX, IRIX, and SCO UnixWare without missing a single beat! All I have to do is instantiate my Virtuoso server and my weblog is live.</p>
Oracle To Support .NET Runtime Hosting
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-04-25#807
2005-04-25T22:54:03Z
2006-06-22T08:56:58-04:00
<p>Better late than never! Oracle has <a href="http://www.oracle.com/technology/oramag/oracle/05-may/o35briefs.html">announced</a> the commencement of a journey that we <a href="http://www.novell.com/news/press/archive/2002/ximian_archive/pr112502.html">completed in 2002 </a>(across Microsoft .NET and Mono). Hopefully, their support of CRL Runtime Hosting will bring added clarity to the intrinsic value of the multi-language bindings via the ECMA-CLI that facilitate the development and deployment of DBMS Stored Procedures using a plethora of languages (ditto creation of User Defined Types, Function, Table Value Functions).</p> <p>I also hope that Oracle will support Mono -off the bat- rather than taking the typical "we will port to Mono sometime in the future..." type message which will not be acceptable, especially as we pulled this off first time around in 2002 (as atop Mono then). Thus, I am sure they can do it in 2005 :-)</p> <p>Hopefully we should be able to add Oracle 10g Release 2 and <a href="http://www-128.ibm.com/developerworks/db2/library/techarticle/dm-0406evans/index.html">DB2</a> to our SQL CLR hosting features <a href="http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/index.vspx?id=138">comparison document</a> that currently only covers SQL Server 2005 and <a href="http://virtuoso.openlinksw.com/">Virtuoso</a>.</p> <p> </p> <p> </p> <p> </p>
The Invisibility of Knowledge Work
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-04-07#776
2005-04-07T20:16:46Z
2006-06-22T08:56:58-04:00
<p><a href="http://www.esj.com/news/article.aspx?EditorialsID=1327">Here</a> is an interesting from Enterprise Systems Journal by Jim McGee titled: The Invisibility of Knowledge Work. </p> <p>Here is a an interesting and insightful quote from the article that resonates with me: </p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p>Invisibility is an accidental and little-recognized characteristic of digital knowledge work. Seeing the problem is the first step to a solution. While better technology tools will play an important role, the next steps are changes in attitude and behavior at the individual and work group level. For example, organizing your own digital files into project-related directories can help, but not if you continue to name files "FinalPresentationNN.doc" where NN is some number between 1 and 15 representing a crude effort at version control. Embed more information in the file name where you know it will be visible even as you e-mail it around the organization. Use more informative subject lines on your email. Those file names and subject lines should provide the best clues possible as to what will be found inside. </p></blockquote> <p>The quote above strikes a chord with me because I have spent a majority of my professional career working on technology that is aimed at Information and Knowledge workers. It also has uncanny timing as it sheds light on a major aspect of the next major release of <a href="http://virtuoso.openlinksw.com/">Virtuoso</a> that aims to continue the process of unveiling the intrinsic value of Unified Storage (SQL, XML, and Multimedia content) for Knowledge workers.</p> <p dir="ltr">We are already experiencing a rapid build up of XML content and binary data with XML based metadata annotations as a result of the network effects of the Blogosphere and Wikisphere. This content explosion ultimately provides context for understanding the value of URIs association with collections of physically (e.g hierarchical directory structure) or logically (Tagging or Dynamic Filtering) partitioned content. </p> <p dir="ltr">To be continued..</p>
Virtualization: AMD set to detail multi-OS plan
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-03-07#736
2005-03-07T16:51:41Z
2006-06-22T08:56:58-04:00
<blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><a href="http://news.com.com/AMD+set+to+detail+multi-OS+plan/2100-1012_3-5600552.html?part=rss&tag=5600533&subj=news">AMD set to detail multi-OS plan</a> Will its "Pacifica" virtualization technology be compatible with Intel's? If not, that's a potential headache for some software makers. </p></blockquote> <div align="right">[via <a href="http://news.com.com/">CNET News.com</a>]</div> <div align="left"> </div> <div align="left">Virtualization is clearly in the air! We are seeing it at the file storage, operating system, and processor layers. I can only assume the Virtualization at database layer is imiment. Of course we know it has been around in the database realm for a while (see the original <a href="http://virtuoso.openlinksw.com/whitepapers/vdb/html/virt10/">Virtuoso 1.0 white paper</a>). Today, most <a href="http://en.wikipedia.org/wiki/EII">EII</a> products pitch the essence of "Virtual Databases" as their value proposition while strategically staying away from the use the dreaded "V" word. </div>
Udell to event promoters on leveraging folksonomy: 'Pick a tag'
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-03-04#728
2005-03-04T15:57:28Z
2006-06-22T08:56:58-04:00
<blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><a href="http://blogs.zdnet.com/Berlind/index.php?p=31&part=rss&tag=feed&subj=zdblog">Udell to event promoters on leveraging folksonomy: 'Pick a tag'</a> I'm now trying to figure out why InfoWorld's Jon Udell is a journalist and not a millionaire technologist (or maybe he is). Udell keeps coming up with one brilliant idea after another. The first of these -- which I thought was just plain obvious -- was Udell's idea for vendors ... </p></blockquote> <div align="right">[via <a href="http://blogs.zdnet.com/Berlind&part=rss&tag=feed&subj=zdblog">Berlind's Midnight Oil</a>]</div> <div align="left"> </div> <div align="left" dir="ltr">I prefer to describe <a href="http://weblog.infoworld.com/udell/">Jon Udell</a> as a Technologist Type 3 (according to <a href="http://www.tbradford.org">Tom Bradford</a>'s <a href="http://www.tbradford.org/2005/03/web-20-its-all-about-content-and-users.html">Technology Types</a> nomenclature) who is also a journalist. His insights, thought stimulation/leadership, and power of articulation defy monetization. </div> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <div align="left">I do know Jon (albeit primarily via emails and phone interviews), he even put me forward for an <a href="http://www.infoworld.com/article/03/05/23/21FEinnovidehen_1.html?s=feature">innovators award</a> in 2003 re. <a href="http://virtuoso.openlinksw.com/">Virtuoso </a>etc.</div></blockquote> <div align="left" dir="ltr">Full disclosure aside, you only need to trace back in time to see that he has been a Type 3 Technologist for a very long time. When I read one of Jon's articles I always sense that they are the end product of the following steps:</div> <div align="left"> </div> <div align="left">1. Hypothesis Development</div> <div align="left">2. Hands on Experimentation </div> <div align="left">3. Experiment Obersvation</div> <div align="left">3. Conclusion Attainment</div> <div align="left">4. Report / Article generation </div> <div align="left">5. Share findings with interested parties </div> <div align="left"> </div> <div align="left">On the subject of "sharing his findings", the blogosphere has become a very effective dispatch outlet. He starts conversations about <a href="http://weblog.infoworld.com/udell/2005/02/23.html#a1184">Google Maps</a>, <a href="http://weblog.infoworld.com/udell/2005/02/22.html#a1183">Querying Web Data</a> via XQuery/XPath for instance, that stimulate further discussion (in the form of related blog posts of varying relationship density which might discern from these posts by <a href="http://www.tbradford.org/2005/03/web-20-its-all-about-content-and-users.html">Tom</a> and <a href="http://www.openlinksw.com/blog/~kidehen/index.vspx?date=2005-03-02">myself</a> for instance ). </div> <div align="left"> </div> <div align="left">Blog conversation replaces the need for a "Jon here is our take on this..." or "Jon here is our implementation of what you demonstrated" phone call or email (you know he sees the discussion threads coalescing around his origninal post exprimentation conversation; most of the time setting up the next batch of experiments). </div> <div align="left"> </div> <div align="left">To conclude, Jon is more than likely a tech <a href="http://www.morethanmoney.org/articles/mtm33_thrill.htm">Thrillionaire </a> :-) </div> <div align="left"> </div>
Friendster befriends blogs--and fees
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-03-03#720
2005-03-03T14:58:28Z
2006-06-22T08:56:58-04:00
<blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><a href="http://news.com.com/Friendster+befriends+blogs--and+fees/2100-1038_3-5597073.html?part=rss&tag=5596640&subj=news">Friendster befriends blogs--and fees</a> Two Web trends converge as the social networking site prepares to launch blogs through partnership with Six Apart. </p></blockquote> <div align="right">[via <a href="http://news.com.com/">CNET News.com</a>]</div> <div align="right"> </div> <div align="left">We are finally beginning to understand that Social Networking (YASN - Yet Another Social Network), Blogs, Wikis, and more.. go hand in hand. There are profound implications here for vendors in the Blog and Wiki hosting business, the same applies to end users who increasingly own a myriad of disparately hosted Blogs/Wikis/Social Networking Zones etc.</div> <div align="left"> </div> <div align="left">Does this look at all familiar? By this I mean the imminent integration challenges and issues relating to vendor lock-in etc.. Our <a href="http://virtuoso.openlinksw.com">Virtuoso</a> technology evangelist <a href="http://www.tbradford.org/">Tom Bradford</a> wrote an <a href="http://www.tbradford.org/2005/02/content-content-and-more-content.html">insightful post</a> about these issues a few weeks ago. </div> <div align="left"> </div> <div align="left">I also know that we have been working on resolving these issues since 2003 (as part of the Virtuoso Blog/Wiki/YASN Platform effort), and like our initial Virtual Database work (making disparate SQL/XML databases appear as one), expect to see single solution that brings Blogs/Wikis/YASNs together also.</div> <div align="left"> </div> <div align="left"> </div> <div align="left"> </div>
The Future of Search: Perspectives
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-03-01#710
2005-03-01T21:08:00Z
2006-06-22T08:56:58-04:00
<p dir="ltr">I have yanked out a key segment from the <a href="http://www.emergic.org/archives/2005/03/01/index.html#tech_talk_the_future_of_search_perspectives">TECH TALK: The Future of Search: Perspectives</a> post that I find really poignant regarding the changing shape and form of the Web:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p></p> <p dir="ltr">It is clear that in comparison to the Web of the last century, the nature of data on the Web later in this decade will be very different in the following aspects:</p> <ul> <li dir="ltr">Volume of data is growing by orders of magnitudes every year<br>Multimedia and sensor data are becoming more and more common.<br><br></li> <li dir="ltr">Spatio-temporal attributes of data are important.<br><br></li> <li dir="ltr">Different data sources provide information to form the holistic picture.<br><br></li> <li dir="ltr">Users are not concerned with the location of data source, as long as its quality and credibility is assured. They want to know the result of the data assimilation (the big picture of the event).<br><br></li> <li dir="ltr">Real-time data processing is the only way to extract meaningful information<br>Exploration, not querying, is the predominant mode of interaction, which makes context and state critical.<br><br></li> <li dir="ltr">The user is interested in experience and information, independent of the medium and the source.<br></li></ul> <p>Effectively, the nature of the knowledge on the Web is changing very fast. It used to be mostly static text documents; now it will be a combination of live and static multimedia, including text, data and documents with spatio-temporal attributes. Considering these changes, can the search engines developed for static text documents be able to deal with the needs of the Web? [via <a href="http://www.emergic.org/">E M E R G I C . o r g</a>]</p></blockquote> <p dir="ltr">No, but this doesn't render them useless since we wouldn't be at this point without the likes of Google, Yahoo! et al. But building upon the data substrate that web data oriented search engines provide is where the next batch of Information access and Knowledge discovery solutions will carve out their space. The symbiotic relationship between <a href="http://google.com/">Google </a>(data) and Gurunet's <a href="http://answers.com/">Answers.com</a> (Information and Knowledge) is one interesting example.</p> <p dir="ltr" style="MARGIN-RIGHT: 0px">The Web is a distributed collection of databases that implement variety of data storage models but are commonly accessible via protocols that rely on HTTP for transport (in-bound and out-bound messages) services. These databases increasingly using well-formed XML for query result (data contextualization) persistence and URIs for permenant reference. 'What Database?" you might ask, "What you once called your Web Site, Blog, Wiki, etc.." my time-less reply.</p> <p dir="ltr" style="MARGIN-RIGHT: 0px">When you have the database that I describe above, and a collection of entry points from which discrete or composite Web Services can be invoked available from one or more internet domains, you end up with what I prefer to call "<a href="http://en.wikipedia.org/wiki/Web_2.0">Web 2.0</a>" presence, or what <a href="http://www.readwriteweb.com/archives/002645.php">Richard McManus</a> describes as: "The Web as a Platform".</p> <p dir="ltr" style="MARGIN-RIGHT: 0px">Here is a collection of posts I have made in the past relating to Web 2.0, note that this list is dynamic since this blog is Virtuoso based (predictably):</p> <p dir="ltr" style="MARGIN-RIGHT: 0px">Free Text Search with XHTML results page (with Virtuoso generated URIs for RSS, Atom, and RDF): <a href="http://www.openlinksw.com/blog/search.vspx?blogid=127&q=web+2.0&type=text&output=html">http://www.openlinksw.com/blog/search.vspx?blogid=127&q=web+2.0&type=text&output=html</a> </p> <p dir="ltr" style="MARGIN-RIGHT: 0px">It's also no secret that I believe that <a href="http://virtuoso.openlinksw.com/">Virtuoso</a> is a bleeding edge Web 2.0 technology platform (and more..). The URIs that I am exposing provide the foundation layer for other complimentary Web initiatives such as the <a href="http://www.openlinksw.com/blog/search.vspx?blogid=127&q=semantic+web&type=text&output=html">Semantic Web </a>(Web 2.0 provides infrastructure for the Semantic Web as time will show). They are also completely usable outside the realm of this blog.</p> <p dir="ltr" style="MARGIN-RIGHT: 0px">BTW - <a href="http://weblog.infoworld.com/udell/">Jon Udell</a> is writing, experimenting with, and demonstrating <a href="http://weblog.infoworld.com/udell/2005/03/01.html#a1187">similar concepts</a> across feeds within his Web 2.0 domain.</p> <p dir="ltr" style="MARGIN-RIGHT: 0px">These are indeed fun times!</p>
Have RSS feeds killed the email star?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-02-28#704
2005-02-28T20:36:19Z
2006-06-22T08:56:58-04:00
<blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><a href="http://networks.silicon.com/webwatch/0,39024667,39128215,00.htm">Have RSS feeds killed the email star? </a>silicon.com Feb 28 2005 12:58PM GMT </p></blockquote> <div align="right">[via <a href="http://www.moreover.com/rss">Moreover - XML and metadata news</a>]</div> <div align="left"> </div> <div align="left"><a href="http://www.answers.com/topic/rss-protocol">RSS</a> and other <a href="http://www.answers.com/main/ntquery?s=xml&method=2&gwp=13">XML</a> based syndication formats (<a href="http://www.answers.com/main/ntquery?method=4&dsid=2222&dekey=Resource+Description+Framework&gwp=8&curtab=2222_1">RDF</a>, <a href="http://www.answers.com/topic/atom-standard?hl=atom&hl=syndication">Atom</a>, etc.) allow organizations to syndicate their value propositions via feeds. Thus, instead of, depending solely on sending out HTML based advertorial emails (which end up in Spam Folders 75% of the time anyhow) to targets such as; suspects, leads, and customers. You can rely on the <a href="http://en.wikipedia.org/wiki/Web_2.0">Web 2.0 </a>fabric for <a href="http://diveintomark.org/archives/2002/06/02/important_change_to_the_link_tag">auto-discovery</a> of syndicated feeds covering marketing collateral such as; <a href="http://rss.openlinksw.com/uda.xml">features & benefits data</a>, product documentation (ODBC/JDBC <a href="http://docs.openlinksw.com/mt/mtdocs.opml">Multi-Tier</a>, ODBC/JDBC <a href="http://docs.openlinksw.com/st/litedocs.opml">Single-Tier</a>, and <a href="http://docs.openlinksw.com/virtuoso/virtdocs.opml">Virtuoso</a> ), <a href="http://demo.openlinksw.com/tutorial/rss.vsp">product functionality tutorials</a>, and screencasts (<a href="http://support.openlinksw.com/viewlets/uda_viewlets_rss.vsp">UDA </a>, <a href="http://support.openlinksw.com/viewlets/virtuoso_viewlets_rss.vsp">Virtuoso</a>, and <a href="http://support.openlinksw.com/viewlets/utilities_viewlets_rss.vsp">ODBC Benchmark & Troubleshooting Utilities</a>) etc. </div>
Email As A Platform
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-02-10#680
2005-02-10T17:01:57Z
2006-06-22T08:56:58-04:00
<blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><a href="http://techdirt.com/articles/20050209/1329235_F.shtml">Email As A Platform</a> It looks like more people are starting to realize that email is more than it seems. Especially given the drastic increase in storage size of web-based email applications, more people are realizing that <a href="http://news.bbc.co.uk/2/hi/business/4167633.stm">email is basically a personal database</a>. People simply store information in their email, from contact information that was emailed to them to schedule information to purchase tracking from emailed receipts. Lots of people email messages to themselves, realizing that email is basically the best "permanent" filing system they have. That's part of the reason why good email search is so important. Of course, what the article doesn't discuss is the next stage of this evolution. If you have a database of important information, the next step is to build useful applications on top of it. In other words, people are starting to realize that email, itself, is a <i>platform</i> for personal information management. </p></blockquote> <div align="right">[via <a href="http://www.techdirt.com/">Techdirt</a>]</div> <div align="left"> </div> <div align="left">Yep! And this is where the Unified Storage vision comes into play. Many years ago the same issues emerged in the business application realm, and at the time the issue at hand was: separating the DBMS engine from the Application logic. This is what the SQL Access Group (SAG) addressed via the CLI that laid the foundation for ODBC, JDBC, and recent derivatives; OLE DB and ADO.NET. </div> <div align="left"> </div> <div align="left">Most of us live inside our email applications and the need to integrate the content of emails, address books, notes, calendars with other data sources (Web Portal, Blogs, Wikis, CRM, ERP, and more) as part of our application interaction cycles and domain specific workflow is finally becoming obvious. There is a need for separation of the application/service layer from the storage engine across each one of these functionality realms. XML, RDF, and Triple Stores (RDF / Semantic Data Stores) collectively provide a standards based framework for achieving this goal. On the other hand so does WinFS albeit total proprietary (by this I mean none standards compliant) at the current time.</div> <div align="left"> </div> <div align="left">As you can already see there are numerous applications (conventional or hosted) that address email, address books, bookmarking, notes, calendars, blogs, wikis, crm etc. specifically, but next to none that address the obvious need for transparent integration across each functionality realm - the ultimate goal.</div> <div align="left"> </div> <div align="left">Yes, you know what I am about to say! <a href="http://virtuoso.openlinksw.com">OpenLink Virtuoso</a> is the platform for developing and/or implementing these next generation solutions. We have also decided to go one step further by developing a number of applications that demonstrate the vision (and ultimate reality); and each of these applications (and the inherent integration tapestry) will be the subject of a future Virtuoso Application specific post.</div>
Google Ups Web 2.0 Ante with Web Services edition of AdWords
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-01-28#673
2005-01-28T23:36:17Z
2006-06-22T08:56:58-04:00
<p>Google has just unveiled a <a href="http://www.openlinksw.com/blog/~kidehen/index.vspx?id=373">Web 2.0</a> initiative in the form of a <a href="http://www.google.com/apis/adwords/">Web Services interface for its AdWords service</a>. You can now programmatically interact with Google's keyword based advertising service using <a href="http://answers.com/main/ntquery?dym=0&cid=984588381&method=6">SOAP</a> calls (with service <a href="http://answers.com/main/ntquery?dym=2&cid=396232605&method=6">signature</a> described using <a href="http://answers.com/main/ntquery?s=wsdl">WSDL</a>).</p> <p>An immediate implication is that you can generate Google AdWords based adds using any development environment (<a href="http://docs.openlinksw.com/virtuoso/sqlprocedures.html">Virtuoso's SQL Stored Procedure Language</a>, any .NET bound language, Java, C/C++, PHP, Ruby, Perl, Python, TCL etc.) that supports SOAP, WSDL, and I would presume <a href="http://answers.com/main/ntquery?s=ws-security">WS-Security</a>.</p> <p>An even more interesting offshoot of this initiative from Google, is the fact that it could bring a degree of clarity to the issue of multi-protocol and multi-purpose servers (what I call <a href=" http://en.wikipedia.org/wiki/Universal_server">Universal Servers</a> e.g. <a href="http://virtuoso.openlinksw.com">OpenLink Virtuoso</a>). For instance, you could manage AdWords campaigns across product portfolios using Triggers (the SQL database kind) or Notification Services.</p>
IBM Flexes XML Muscle
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2005-01-04#657
2005-01-04T17:18:36Z
2006-06-22T08:56:58-04:00
<p>Here is another article titled "<a href="http://www.eweek.com/article2/0,1759,1747224,00.asp?kc=ewnws010305dtx1k0000599">IBM Flexes XML Muscle</a>" that covers the same general theme: IBM's appreciation of Unified Storage.</p> <p>As indicated in an earlier <a href="http://www.openlinksw.com/blog/~kidehen/index.vspx?id=648">post</a>: IBM is clearly validating what we have done with Virtuoso (as was the case initially with their Virtual / Federated DBMS initiative ala DB2 Integrator). Here is an excerpt from today's <a href="http://www.eweek.com/article2/0,1759,1747224,00.asp?kc=ewnws010305dtx1k0000599">eWeek article</a> supporting this position:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p>To achieve maximum XML performance, bolstered indexing attributes in the technology will enable advanced search functions and a higher degree of filtering. IBM is also adding support for XPath and XQuery data models. This will allow users to create views that involve SQL and XQuery by sending the protocol through DB2's query optimizer for a unified query plan. </p> <p><a href="http://www.eweek.com/article2/0,1759,1747224,00.asp?kc=ewnws010305dtx1k0000599">Read on..</a></p></blockquote> <p dir="ltr"><a href="http://virtuoso.openlinksw.com/">Virtuoso</a> has been doing this since 2000; unfortunately a lot of</p>
What is OpenLink Virtuoso?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-12-09#646
2004-12-09T05:01:06Z
2006-06-22T08:56:58-04:00
<blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><a href="http://www.tbradford.org/2004/12/what-is-openlink-virtuoso.html">What is OpenLink Virtuoso?</a> </p> <div xmlns="http://www.w3.org/1999/xhtml">I think one of the main difficulties when trying to extrapolate the value of Openlink Software's Virtuoso Universal Server product is determining what exactly Virtuoso is to begin with. The web site says it's quite a few things, and in the noise, you might neglect to notice that, at it's core, it's an incredibly fast, standards-compliant, and versatile SQL database. But there's more to the story..</div></blockquote> <div align="right">[via <a href="http://www.tbradford.org/">tbradford.org: Tom Bradford</a>]</div> <div align="left"></div>
Virtuoso gets Second Place for Enterprise Information Integration
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-10-07#626
2004-10-07T19:16:27Z
2006-06-22T08:56:58-04:00
<p>Hmm... I just found out that <a href="http://virtuoso.openlinksw.com">Virtuoso</a></p>
Is Google Web 2.0's Netscape?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-08-26#611
2004-08-26T21:52:30Z
2006-06-22T08:56:58-04:00
<p>I put this piece together in response to another <a href="http://www.25hoursaday.com/weblog/CommentView.aspx?guid=5ab1ca87-b0df-4dd0-99b6-7730955620ab">stimulating post</a> by Dare Obasanjo titled "Is Google the Next Microsoft or the Next Netscape?". I changed the title of this post to project the fact that Web 2.0 provides the appropriate context (IMHO) for Dare's point re. "Web Site Stickiness". </p> <p>Stickiness is a defining characteristic of Web 1.0 . It's all about eyeballs (site visitors) which implied ultimately that all early Web business models ended up down the advertising route. </p> <p>I always felt that Web 1.0 was akin to having a crowd of people at your reception area seeking a look at your corporate brochures, and then someone realizes that you could start selling AD space in these brochures in response to the growing crowd size and frequency of congregation. The long-term folly of this approach is now obvious, as many organizations forgot their core value propositions (expressed via product offerings) in the process and wandered blindly down the AD model cul-de-sac, and we all know what happened down there.. </p> <p>Web 2.0 is taking shape (the inflection is in its latter stages), and the defining characteristics of Web 2.0 are: </p> <ol> <li>Fabric of Executable Endpoints <br></li> <li>Semantic Content (the RSS/RDF/Atom/FOAF semantic crumbs emerging from the Blogosphere are great examples of things to come re. XQuery queries over HTTP for instance) Migration from the Web Site (defined by static or dynamic HTML page generation) concept, to that of a "Web Point of Presence" (I don't know if this term will catch on, but the conceptual essence here is factual) that enables an organization to achieve the following: <br></li> <ul> <li>Package/catalog value proposition (product and services) using RSS/RDF/Atom <br></li> <li>Provide SOAP compliant Executable Endpoints (Web Services) for consuming value proposition (as opposed to being distracted by the AD model) <br></li> <li>Provide Web Services for consummating contracts associated with core value proposition Identification of internal efficiencies, new products/services that leverage Semantic Content and Web Services, and tangibly exploit: <br></li> <ul> <li>Composite Web Services construction from legacy monolithic application pools <br></li> <li>Standards based (e.g. BPEL) orchestration and integration of disparate composite services (across the Fabric referred to above) </li></ul></ul></ol> <p>When you factor in all of the above, the real question is whether Google and others are equipped to exploit Web 2.0? To some degree, is the best answer at the current time as they have commenced the transition from "content only" web site to web platform (via the many Web Services initiatives that expose SOAP and REST interfaces to various services), but there is much more to this journey, and that's the devil in the "competitive landscape details". </p> <p>From my obviously biased perspective, I think <a href="http://virtuoso.openlinksw.com/">Virtuoso</a> and <a href="http://www.midrangeserver.com/two/two042804-story02.html">Yukon+WinFS</a> provide the server models for driving Web 2.0 points of presence (single server instances that implement multiple protocols). Thus, if Google, Yahoo! et al. aren't exploiting these or similar products, then they will be vulnerable over the long term to the competitve challenges that a Web 2.0 landscape will present. </p>
The Google PC & BlogTelepathy
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-06-22#563
2004-06-22T20:09:20Z
2006-06-22T08:56:58-04:00
<p dir="ltr">I was on a conference call with the <a href="http://www.openlinksw.com/virtuoso">Virtuoso</a> product manager about the opportunities WinFS and RDF Storage provide regarding yet another attempt to get</p>
Will .Net Developers Get Mono?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-06-11#561
2004-06-11T19:29:42Z
2006-06-22T08:56:58-04:00
<p>Some clarifications re. my comments in the recent interview with <a href="http://www.linuxinsider.com/">LinuxInsider</a>:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><a href="http://www.linuxinsider.com/story/34338.html">Will .Net Developers Get Mono?</a> Novell has released a new version of Mono -- an open-source implementation of Microsoft's .Net framework -- and some early adopters are already singing its praises. "Mono makes Novell extremely relevant now," said Kingsley Idehen, president and CEO of OpenLink, which has just released Virtuoso 3.5, a database-oriented middleware product that was built using Mono. </p></blockquote> <p dir="ltr">I meant making</p>
Comparison of RDF Query Languages
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-06-09#1100
2004-06-09T18:32:42Z
2006-12-14T15:53:29-05:00
<p>The W3C RDF Data Access Working Group recently released an initial public Working Draft specification for "<a href="http://www.w3.org/TR/2004/WD-rdf-dawg-uc-20040602/"><font color="#000000">RDF Data Access Use Cases and Requirements</font></a>". Naturally, this triggered discussion on the RDF mailing list along the following lines:</p> <blockquote dir="ltr" style="margin-right: 0px;"> <p>In section, 4.1 Human-friendly Syntax, you say<font size="4"><b> </b></font>"There must be a text-based form of the query language which can be read and written by users of the language", and you list the status as "pending".</p> <p>As background for section 4.1, you may be interested in <a href="http://www.aifb.uni-karlsruhe.de/WBS/pha/rdf-query/">RDFQueryLangComparison1</a> (original text replaced with live link).<br /> <br />It shows how to write queries in a form that includes English meanings.<br /> <br />The example queries can be run by pointing a browser to <a eudora="autourl" href="http://www.reengineeringllc.com/" title="http://www.reengineeringllc.com/">www.reengineeringllc.com</a> .<br /> <br />Perhaps importantly, given the intricacy of RDF for nonprogrammers, one can get an English explanation of the result of each query.<br /> <br />-- Dr. Adrian Walker of <a href="https://www.reengineeringllc.com/ibl_login.html#about">Internet Business Logic </a> </p> </blockquote> <p dir="ltr">The Semantic Web continues to take shape, and Infonauts (information centric agents) are already taking <a href="http://www.reengineeringllc.com/IBL_tutorial_part1.html">shape</a>.</p> <p dir="ltr">A great thing about the net is the "back to the future" nature of most Web and Internet technology. For instance we are now frenzied about Service Oriented Architecture (SOA), Event Drivent Architecture (EDA), Loose Coupling of Composite Services etc. Basically rehashing the CORBA vision.</p> <p dir="ltr">I see the Semantic Web playing a similar role in relation to artificial intelligence. </p> <p dir="ltr">BTW - It still always comes down to data, and as you can imagine <a href="http://www.openlinksw.com/virtuoso">Virtuoso</a> will be playing its usual role of alleviating the practical implementation and ulization challenges of all of the above :-)</p> <p dir="ltr"> </p>
Comparison of RDF Query Languages
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-06-09#557
2004-06-09T17:32:42Z
2006-06-22T08:56:58-04:00
<p>The W3C RDF Data Access Working Group recently released an initial public Working Draft specification for "<a href="http://www.w3.org/TR/2004/WD-rdf-dawg-uc-20040602/"><font color="#000000">RDF Data Access Use Cases and Requirements</font></a>". Naturally, this triggered discussion on the RDF mailing list along the following lines:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p>In section, 4.1 Human-friendly Syntax, you say<font size="4"><b> </b></font>"There must be a text-based form of the query language which can be read and written by users of the language", and you list the status as "pending".</p> <p>As background for section 4.1, you may be interested in <a href="http://www.aifb.uni-karlsruhe.de/WBS/pha/rdf-query/">RDFQueryLangComparison1</a> (original text replaced with live link).<br><br>It shows how to write queries in a form that includes English meanings.<br><br>The example queries can be run by pointing a browser to <a eudora="autourl" href="http://www.reengineeringllc.com/" title="http://www.reengineeringllc.com/">www.reengineeringllc.com</a> .<br><br>Perhaps importantly, given the intricacy of RDF for nonprogrammers, one can get an English explanation of the result of each query.<br><br>-- Dr. Adrian Walker of <a href="https://www.reengineeringllc.com/ibl_login.html#about">Internet Business Logic </a></p></blockquote> <p dir="ltr">The Semantic Web continues to take shape, and Infonauts (information centric agents) are already taking <a href="http://www.reengineeringllc.com/IBL_tutorial_part1.html">shape</a>.</p> <p dir="ltr">A great this about the net is the "back to the future" nature of most Web and Internet technology. For instance we are now frenzied about Service Oriented Architecture (SOA), Event Drivent Architecture (EDA), Loose Coupling of Composite Services etc. Basically rehashing the CORBA vision.</p> <p dir="ltr">I see the Semantic Web playing a similar role in relation to artificial intelligence. </p> <p dir="ltr">BTW - It still always comes down to data, and as you can imagine <a href="http://www.openlinksw.com/virtuoso">Virtuoso</a> will be playing its usual role of alleviating the practical implementation and ulization challenges of all of the above :-)</p> <p dir="ltr"> </p>
XML, the New Database Heresy
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-06-04#555
2004-06-04T04:04:48Z
2006-06-22T08:56:58-04:00
<p dir="ltr">A great <a href="http://www.25hoursaday.com/weblog/PermaLink.aspx?guid=d28ce1fb-7b27-407d-b1a3-0b9a34831ca1">post </a>by Dare, especially his bringing into context the essence of this matter refrred to by C.J. Date as "XML the New Database Heresy".</p> <p dir="ltr">I have little to add to this matter as our understanding and vision is aptly expressed via the architecture and feature set of <a href="http://www.openlinksw.com/virtuoso">Virtuoso</a> (this area was actually addressed circa 1999).</p> <p dir="ltr">We are heading into a era of multi-model databases, these are single database engines that are capable of effectively serving the requirements of the Hierarchical, Network, Relational, and Object database <a href="http://www.web-dictionary.org/encyclopedia/db/DBMS.html#Navigational_databases">models</a> . As we get closer to the unravelling of universal storage, hopefully this will get clearer.</p> <p dir="ltr">Back to Dare's commentary:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><a href="http://www.informatik.uni-trier.de/~ley/db/indices/a-tree/d/Date:C=_J=.html">C.J. Date</a>, one of the most influential names in the relational database world, had some harsh words about XML's encroachment into the world of relational databases in a recent article entitled <a href="http://searchdatabase.techtarget.com/originalContent/0,289142,sid13_gci962948,00.html">Date defends relational model </a> that appeared on SearchDatabases.com. Key parts of the article are excerpted below </p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p>Date reserved his harshest criticism for the competition, namely object-oriented and XML-based DBMSs. Calling them "the latest fashions in the computer world," Date said he rejects the argument that relational DBMSs are yesterday's news. Fans of object-oriented database systems "see flaws in the relational model because they don't fully understand it," he said. </p> <p>Date also said that XML enthusiasts have gone overboard. </p> <p>"XML was invented to solve the problem of data interchange, but having solved that, they now want to take over the world," he said. "With XML, it's like we forget what we are supposed to be doing, and focus instead on how to do it." </p> <p>Craig S. Mullins, the director of technology planning at BMC Software and a SearchDatabase.com expert, shares Date's opinion of XML. It can be worthwhile, Mullins said, as long as XML is only used as a method of taking data and putting it into a DBMS. But Mullins cautioned that XML data that is stored in relational DBMSs as whole documents will be useless if the data needs to be queried, and he stressed Date's point that XML is not a real data model. </p></blockquote> <p dir="ltr">Craig Mullins points are more straightforward to answer since his comments don't jibe with the current state of the art in the XML world. He states that you can't query XML documents stored in databases but this is untrue. Almost three years ago, I was writing articles about <a href="http://features.slashdot.org/article.pl?sid=01/10/29/0725214&mode=thread&tid=156">querying XML documents stored in relational databases</a>. Storing XML in a relational database doesn't mean it has to be stored in as an opaque binary BLOB or as a big, bunch of text which cannot effectively be queried. The next version of SQL Server will have extensive capabilities for querying XML data in relational database and doing joins across relational and XML data, a lot of this functionality is described in the article on <a href="http://msdn.microsoft.com/xml/default.aspx?pull=/library/en-us/dnsql90/html/sql2k5xml.asp">XML Support in SQL Server 2005</a>. As for XML not having a data model, I beg to differ. There is a data model for XML that many applications and people adhere to, often without realizing that they are doing so. This data model is the <a href="http://www.w3.org/TR/1999/REC-xpath-19991116#data-model">XPath 1.0 data model</a>, which is being updated to handled typed data as the <a href="http://www.w3.org/TR/2003/WD-xpath-datamodel-20031112/">XQuery and XPath 2.0 data model</a>. </p> <p dir="ltr">Now to tackle the meat of C.J. Date's criticisms which is that XML solves the problem of data interchange but now is showing up in the database. The thing first point I'd like point out is that there are two broad usage patterns of XML, it is used to represent both rigidly structured tabular data (e.g., relational data or serialized objects) and semi-structured data (e.g., office documents). The latter type of data will only grow now that office productivity software like <a href="http://www.microsoft.com/office">Microsoft Office</a> have enabled users to save their documents as XML instead of proprietary binary formats. In many cases, these documents cannot simply shredded into relational tables. Sure you can shred an Excel spreadsheet written in spreadsheetML into relational tables but is the same really feasible for a Word document written in WordprocessingML? Many enterprises would rather have their important business data being stored and queried from a unified location instead of the current situation where some data is in document management systems, some hangs around as random files in people's folders while some sits in a database management system. </p> <p dir="ltr">As for stating that critics of the relational model don't understand it, I disagree. One of the major benefits of using XML in relational databases is that it is a lot easier to deal with fluid schemas or data with sparse entries with XML. When the shape of the data tends to change or is not fixed the relational model is simply not designed to deal with this. Constantly changing your database schema is simply not feasible and there is no easy way to provide the extensibility of XML where one can say "after the <font face="Courier New">X </font>element, any element from any namespace can appear". How would one describe the capacity to store âany dataâ in a traditional relational database without resorting to an opaque blob? </p> <p dir="ltr">I do tend to agree that some people are going overboard and trying to model their data hierarchically instead of relationally which experience has thought us is a bad idea. Recently on the XML-DEV mailing list entitled <a href="http://lists.xml.org/archives/xml-dev/200405/msg00216.html">Designing XML to Support Information Evolution </a>where Roger L. Costello described his travails trying to model his data which was being transferred as XML in a hierarchical manner. Micheal Champion accurately described the process Roger Costello went through as having "rediscovered the relational model". In a response to that thread I wrote "Hierarchical databases failed for a reason". </p> <p dir="ltr">Using hierarchy as a primary way to model data is bad for at least the following reasons </p> <ol dir="ltr"> <li> <div>Hierarchies tend to encourage redundancy. Imagine I have a <Customer> element who has one or more <ShippingAddress> elements as children as well as one or more <Order> elements as children as well. Each order was shipped to an address, so if modelled hierarchically each <Order> element also will have a <ShippingAddress> element which leads to a lot of unnecessary duplication of data. </div></li> <li> <div>In the real world, there are often multiple groups to which a piece of data belongs which often cannot be modelled with a single hierarchy. </div></li> <li> <div>Data is too tightly coupled. If I delete a <Customer> element, this means I've automatically deleted his entire order history since all the <Order> elements are children of <Customer>. Similarly if I query for a <Customer>, I end up getting all the <Order> information as well. </div></li></ol> <p>To put it simply, experience has taught the software world that the relational model is a better way to model data than the hierarchical model. Unfortunately, in the rush to embrace XML many a repreating the mistakes from decades ago in the new millenium. </p></blockquote> <div align="right">[via <a href="http://www.25hoursaday.com/weblog/">Dare Obasanjo aka Carnage4Life</a>]</div>
Semantic Web brings clarity to the Universal Server concept
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-05-21#1190
2004-05-21T03:14:42Z
2007-04-23T12:42:13-04:00
<p dir="ltr">As I continue my quest to unravel the thinking and vison behind the "Universal Server" branding of <a href="http://www.openlnksw.com/virtuoso">Virtuoso</a>, it always simplifies matters when I come across articles that bring context to this vision. </p> <p dir="ltr">Tim Berners-Lee provided a <a href="http://www.w3.org/2004/Talks/0519-tbl-keynote/">keynote at WWW2004</a> earlier this week, and <a href="http://www.xml.com/pub/au/192">Paul Ford </a>provided a <a href="http://www.xml.com/pub/a/2004/05/20/www-timbl.html">keynote breakdown</a> from which I have scrapped a poignant excerpt that helps me illuminate Virtuoso's role in the inevitable semantic web.</p> <p dir="ltr">First off, I see the <a href="http://www.w3.org/DesignIssues/Semantic.html">Semantic Web</a> as a core component of Web 2.x (a minor upgrade of <a href="http://www.web2con.com/">Web 2.0</a>), and I see Virtuoso as a definitive Web 2.0 (and beyond) technology, hence the use today of the branding term "Universal Server". A term that I expect to become a common product moniker in the not too distant future.</p> <p dir="ltr">The first challenge that confronts the semantic web is the creation of Semantic content. How will the content be created? Ideally, this should come from data, at the end of the day this is a data contextualization process. The excerpt below from Paul's <a href="http://www.xml.com/pub/a/2004/05/20/www-timbl.html">article</a> highlights the point:</p> <blockquote dir="ltr" style="margin-right: 0px;"> <p>Rather than concerning themselves unduly with hewing to existing ontologies, Berners-Lee pushed developers to start using RDF and triples more aggressively. In particular, he wants to see existing databases exported as RDF, with ontologies created ad-hoc to match the structure of that data. Rather than using PHP scripts only to produce HTML, he suggested, create RDF as well. Then, when all of the RDF is aggregated, apply rules and see what happens. "Let's not fall back on handmade markup."</p> </blockquote> <p dir="ltr">Data in existing databases does not have to be exported as RDF, especially if sensitivity to change is a specific contextual requirement. Naturally, the assumption is made that most databases don't have the ability to produce RDF so an additonal tool would be required to perform the data exports and transformation, and then a separate HTTP server makes this repurposed RDF data accessible over HTTP.</p> <blockquote dir="ltr" style="margin-right: 0px;"> <p dir="ltr">Later in the talk, he described a cascade of Semantic Web connections, postulating that one day, individuals may be able to follow links from a parts catalog to order status, from location to weather to taxes.</p> </blockquote> <p dir="ltr">The final excerpt (above) outlines the kinds of interactions that the Semantic Web facilitates. The traversal from a "part catalog" to "order status", or from "location" to "weather" to "taxes", illustrates the roles that services and service orchestration will also play in the Semantic Web era.</p> <p dir="ltr">Thus, we can safely deduce the following about the semantic web:</p> <ol dir="ltr"> <li> <div>It has RDF at its foundation </div> </li> <li> <div>We need to transform existing data into RDF; ideally retaining sensitivity to changes</div> </li> <li> <div>Allows ontologies to be associated with RDF post generation</div> </li> <li> <div>RDF graph navigation will be event driven and orchestrated (the cascading effect)</div> </li> <li> <div>There will be an RDF Query Language (there are several burgeoning ones currently)</div> </li> <li> <div>HTTP will be the prime transport protocol</div> </li> </ol> <p>I would also like to conclude that what we know today, as the monolithic "point of presence" on the web called a "Web Site" (which infers browsing and page serving), is naturally going to morph into a different kind of "point of presence" that is capable of delivering the following from a single process:</p> <ol> <li> <div>Serve up Semantic Data from existing data sources </div> </li> <li> <div>Provide execution endpoints for Web Services</div> </li> <li> <div>Provide an instigation point for events that trigger Service Orchestratio</div> </li> </ol> <p>This is what Virtuoso is all about, and why it is described as a "Universal Server"; a server instance that speaks many protocols, delivering a plethora of functionality (Database, Web Services Platform, Orchestration Engine, and more).</p>
Semantic Web bringing clarity to the Universal Server concept
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-05-20#548
2004-05-21T03:14:42Z
2006-06-22T08:56:58-04:00
<p dir="ltr">As I continue my quest to unravel the thinking and vison behind the "Universal Server" branding of <a href="http://www.openlnksw.com/virtuoso">Virtuoso</a>, it always simplifies matters when I come across articles that bring context to this vision.</p>
Collaboration Software
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-05-14#543
2004-05-14T23:39:35Z
2006-06-22T08:56:58-04:00
<p dir="ltr"><a href="http://www.25hoursaday.com/weblog/PermaLink.aspx?guid=d2312299-0c0d-497b-9268-4b124f61f801">Dare Obasanjo</a> points out that Microsoft Sharepoint offers "by reference" as opposed to "by value" mail attachment capability that <a href="http://www.infoworld.com/article/04/02/27/09TCxythos_1.html">Jon Udell reviewed </a>in a recent blog post, true! So does Virtuoso in a number of ways (most importantly independent of client or server operating system).</p> <p dir="ltr">This issue really brings WebDAV into scope as this is the protocol that enables this capability (as covered by Jon's piece), and it is one of the many client and server side protocols implemented by <a href="http://www.openlinksw.com/virtuoso/whatis.htm">OpenLink Virtuoso</a> (the key to how Virtuoso delivers URI based SQL-XML, XQuery, XPath services). </p> <p dir="ltr">When you install Virtuoso you simply have to start the Virtuoso server instance to the get WebDAV functionality going. All of Virtuoso's services are advertised at ports, and in the case of WebDAV you will find this at port 8890 if you start the demo database. </p> <p dir="ltr">To exploit the Virtuoso/WebDAV server from any WebDAV client (or point urls at WebDAV hosted resources) simply do the following:</p> <ol dir="ltr"> <li> <div>Install Virtuoso and depending on your OS do the following:</div></li> <ul> <li> <div>Windows - create a <a href="http://support.openlinksw.com/support/tutorials.vsp?c=Web+Server">Web Folder </a>that points to a WebDAV server</div></li> <li> <div>Mac OS X - <a href="http://developer.apple.com/technotes/tn/tn2043.html">mount a WebDAV</a> folder</div></li> <li> <div>Linux - mount a <a href="http://www.sfu.ca/acs/linux/webdav-linux.html">WebDAV directory</a> (also see the <a href="http://dav.sourceforge.net/">Davfs2</a> Open Source project)</div></li> <li> <div>You can also make WebDAV client calls from Virtuoso's Stored Procedure Language (Virtuoso PL) or use WebDAV implementations in any development environment of your choice (<a href="http://www.independentsoft.de/webdav/">.NET</a>, <a href="http://sourceforge.net/projects/skunkdav/">Java</a>, .<br /></div></li></ul> <li> <div>Place content that you want to reference in your mails in your WebDAV repository via any of the client side mechanisms described in step 1. You can see the results of this in my earlier <a href="http://www.openlinksw.com/weblogs/virtuoso/index.vspx?id=505">blog post</a>, even better pass the <a href="http://kingsleydemo.openlinksw.com:8890/rtmhosting/99bottles.php">url </a>on in an email! Or browse the <a href="http://kingsleydemo.openlinksw.com:8890/rtmhosting/">WebDAV folder </a>(there are some nuggets deliberately left in place :-) )<br /></div></li> <ul> <li> <div>You could simply save an Office Doc (<a href="http://kingsleydemo.openlinksw.com:8890/rtmhosting/webDADWWW2004.ppt">powerpoint</a>, excel, word etc) to this location and the circulate urls in your mails (this has been standard practice at OpenLink for many years; we even have a full blown portal server that would soon be available as a public service to sharing anything via DAV and as usual some more... stay tuned)<br /></div></li></ul> <li> <div>That's it for any platform (Windows, Linux, Mac OS X, FreeBSD, Solaris, AIX, HP-UX etc.) once you install Virtuoso!</div></li></ol> <p>BTW - This blog is WebDAV based (it's a live instance of Virtuoso doing many things; WebDAV, HTTP, SQL-XML based feed generation for ATOM, RSS, Blog Post APIs support (Moveable Type, Metaweblog, Blogger, ATOM), Free Text, XPath, XQuery, and more). </p>
INSTEAD-OF Triggers
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-04-23#526
2004-04-24T00:52:50Z
2006-06-22T08:56:58-04:00
<p>During a session with a potential customer/partner I was posed the following question re. <a href="http://www.openlinksw.com/virtuoso/whatis.htm">Virtuoso's Virtual Database</a> functionality:</p> <p>"Can I create an updateable SQL VIEW in Virtuoso that would comprise columns from 3rd party databases such as Oracle, SQL Server, and say MySQL".</p> <p>The answer was yes, based on the fact that Virtuoso does support SQL <a href="http://docs.openlinksw.com/virtuoso/TRIGGERS.html#TRIGGERS">INSTEAD-OF Triggers</a> - even in Virtual Database mode. </p> <p>I am certainly keen to see if any other Virtual Database style products achieve this feat (which is trying for many homogeneous SQL database engines).</p> <p>Dr. Paul Dorsey of <a href="http://www.dulcian.com/">Dulcian, Inc</a>. wrote a very <a href="http://www.dulcian.com/papers/INSTEAD%20OF%20Trigger%20Views_ODTUG.htm">good article about this subject</a>, and here is an excerpt from his article overiew:</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p>Views are an important part of application development. Since Oracle 7.3, we quickly recognized the importance of using Oracleâs updateable view feature. An updateable view allows you to join several tables and perform updates against the driving table. For example, if you join EMP and DEPT in the traditional way and display columns from both tables, DML operations are possible against EMP but not DEPT. </p> <p class="Text">For traditional relational database designs, this is enough functionality. For example, in a typical Forms application, when you are basing a block on a table, the additional columns that you want to display are lookups from other tables and can therefore be easily supported using traditional updateable views. These views are built using a combination of joins and outer joins or,<span> </span>in extreme cases, looking up additional information through functions embedded in the views. Under no circumstances should post query triggers be used to support this functionality. Post query triggers cause unnecessary network traffic and also embed the logic in the application rather than in the database or somewhere else where it can easily be reused.</p> <p class="Text">What happens in a situation where the information you want to display in the block requires a query that is so complex that your ability to maintain (insert, update, delete) that information using a simple updateable view is eliminated? The updateable views are relatively restrictive. Only a single table can be updated. Joins must be created carefully and based on Foreign Key constraints in the database. No set operators such as UNION or MINUS can be used. For these reasons, it is common to end up with a block that cannot be updated as required. How do most developers handle this situation?</p> <p class="Text" style="MARGIN-LEFT: 0.5in; TEXT-INDENT: -0.25in"><!--[if !supportLists]-->a)<span style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal"> </span><!--[endif]-->By placing complex logic in the form (WHEN-VALIDATE-ITEM triggers)</p> <p class="Text" style="MARGIN-LEFT: 0.5in; TEXT-INDENT: -0.25in"><!--[if !supportLists]-->b)<span style="FONT: 7pt 'Times New Roman'; font-size-adjust: none; font-stretch: normal"> </span><!--[endif]-->By writing procedures that access Formsâ ability to replace the Insert, Update, Delete routines and place that logic in the form</p> <p class="Text">These practices are just as undesirable as using POST-QUERY triggers. The logic is in the wrong place and is not reusable. </p> <p class="Text">The INSTEAD-OF trigger views feature was introduced by Oracle in version 8.15. This feature enables developers to create views on single or multiple tables or any other view imaginable by writing INSTEAD-OF triggers that tell the view how to behave when Inserts, Updates or Deletes are issued. Peter Koletzke and I first wrote about this feature in our Oracle Press book <i>Oracle Developer: Advanced Forms & Reports</i> (2000). At the time, we gave the feature relatively brief mention because we believed that most of the systems we were building included blocks based on traditional updateable views, which allow updates to a single table. Now, there is a good reason to look more closely at INSTEAD-OF trigger views. </p></blockquote> <p class="Text" dir="ltr">Database Journal also has an <a href="http://www.databasejournal.com/features/mssql/article.php/1437741">article on this subject</a>.</p>
SQL Support in Mozilla?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-04-16#523
2004-04-16T16:13:30Z
2006-06-22T08:56:58-04:00
<blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><a href="http://www.mozilla.org/projects/sql/">Mozilla's SQL Support </a>allows applications to directly connect to SQL databases. A web application no longer needs to pass information through a scripting language, such as Perl or Python, in order to recieve information it can use. The removal of the layer seperating applications and data simplifies the job of the programmer. </p></blockquote> <p dir="ltr">Somehow I missed this effort, and only stumbled across it today after experimenting with <a href="http://www.openlinksw.com/virtuoso/whatis.htm">Virtuoso's SyncML features</a> (and then pondering about OutLook, WinFS, and what may or may not happen with SyncML support - another story).</p> <p dir="ltr">As usual the SQL binding to Mozilla caught my attention (I do recall trying to get Marc and Jim Clark to head down this path many years ago via an email; at least Jim acknowledged not knowing that much about SQL and past it on.., and as for Marc well... nothing happened).</p> <p dir="ltr">A few</p>
621 variations of The "99 Bottles of Beer" programming puzzle
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-04-07#504
2004-04-07T23:48:39Z
2006-06-22T08:56:58-04:00
<p><a href="http://www.99-bottles-of-beer.net//">621 variations of the "99 Bottles of Beer" programming puzzle</a> implemented across a plethora of programming languages. Cool!</p> <p>As I completed this post a bell went off! Why not use this for a quick live demo of <a href="http://www.openlinksw.com/virtuoso/whatis.htm">Virtuoso's hosting capabilities</a>? Starting off with something simple like PHP for instance?</p> <p>So, I quickly did the following:</p> <ol> <li>Cut and pasted the PHP version of this programming puzzle into a text file (using notepad) </li> <li>Copy and pasted from my Windows Directory to my Virtuoso WebDAV directories on our Windows and Linux Virtuoso Demo Servers. I achieved this by creating Web Folders (Windows OS level</li></ol>
Moving to XML: Does it Mean Throwing Out Your RDB Queries?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-03-17#476
2004-03-17T16:04:22Z
2006-06-22T08:56:58-04:00
<font size="2"> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p>By Jack Vaughan, Application Development Trends</p> <p>XML has clear benefits as a lingua franca for integration, but it must co-exist with a well-established body of relational DB know-how. More than a few architects are concerned that they will soon have to throw a slew of finely tuned relational queries out the window and start over. JNetDirect recently unveiled software to address RDB-to-XML data mapping. JSQLMapper is a bidirectional data-mapping tool that cuts requirements for custom coding to bring relational data into XML format. With JSQLMapper, developers can create data mappings from existing relational data stores to XML documents.</p> <p></font><a href="http://www.adtmag.com/article.asp?id=9092"><u><font color="#0000ff" size="2">http://www.adtmag.com/article.asp?id=9092</u></font></a></p><font size="2"> <p>See also XML and Databases: </font><a href="http://xml.coverpages.org/xmlAndDatabases.html"><u><font color="#0000ff" size="2">http://xml.coverpages.org/xmlAndDatabases.html</u></font></a></p></blockquote> <p dir="ltr">Why on earth does XML's emergence somehow imply dumping existing investement in relational database queries? </p> <p dir="ltr">XML provides an alternative, uniform, and widely adopted mechanism for exploiting existing relational data. The emergence of the recent SQL/XML (SQLX) standard should at least bring this into clearer perspective.</p> <p dir="ltr">Obviously the lack of practical SQLX tutorial material may be the source of some of the confusion about this subject matter, so here are a few urls:</p> <p dir="ltr">Generating RSS from SQL Data - <a href="http://www.openlinksw.com/articles/rssvirtsqlx.htm">http://www.openlinksw.com/articles/rssvirtsqlx.htm</a> (this is one of many ways that this can be achieved using <a href="http://www.openlinksw.com/virtuoso/whatis.htm">OpenLink Virtuoso</a>).</p> <p dir="ltr">SQLX Tutorials and online demos - <br><a href="http://demo.openlinksw.com:8890/tutorial/xml/index.vsp?f=1">http://demo.openlinksw.com:8890/tutorial/xml/index.vsp?f=1</a></p> <p dir="ltr"> </p> <p dir="ltr"> </p>
Remember WebDAV
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-02-03#462
2004-02-03T21:04:10Z
2006-06-22T08:56:58-04:00
<P><A href="http://www.webdav.org">WebDAV</A> is one of those interesting standards that sometimes gets lost in the broader industry hoopla. Well I finally decided to take a look at <A href="http://www.mozilla.org/projects/calendar/">Mozilla's Calendar project </A>as more open solution for sharing my calendar. After browsing around a little I came a across the following <A href="http://www.mozilla.org/projects/calendar/faq.html#share">piece</A>:</P> <BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"> <P><!--StartFragment --><EM>To share your calendars, you need access to a </EM><A href="http://www.webdav.org/"><EM>webDAV server</EM></A><EM>. If you run your own web server, you can install </EM><A href="http://www.webdav.org/mod_dav"><EM>mod_dav</EM></A><EM>, a free Apache module that will turn your web server into a webDAV server. Instructions on how to set it up are on their website. Once you set up your webDAV server, you can publish your calendar to the site, then subscribe to it from any other Mozilla Calendar. Automatically updating the calendar will give you a poor man's calendar server.</EM></P></BLOCKQUOTE> <P>Through WebDAV we will be able to share calendars across disparate calendaring tools (albeit with some degree of pain when Outlook is in the mix). Even better for me, I can post my shared calendar data via a <A href="http://www.openlinksw.com/virtuoso">Virtuoso</A> instance (internally and externally since <A href="http://www.openlinksw.com/virtuoso/whatis.htm#webdav">WebDAV is one of the many protocols that it implements</A>), in short I could even seriously consider generating this on the fly and sharing it via this blog (Wow!).</P> <P>We aren't too many miles away from open and standards compliant Unified Data Storage thanks to WebDAV.</P> <P> </P>
Enterprise Databases get a grip on XML
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2004-01-06#442
2004-01-06T23:17:07Z
2006-06-22T08:56:58-04:00
<blockquote style="margin-right: 0px;" dir="ltr"> <p><a class="listLinkLrg" title="http://newsletter.infoworld.com/t?ctl=4FEDB6:1F3948D" href="http://newsletter.infoworld.com/t?ctl=4FEDB6:1F3948D" target="_new"><strong><font face="Verdana">Databases get a grip on XML</font></strong></a><br /><font size="2"></font><font face="Verdana">From <a href="http://newsletter.infoworld.com/t?ctl=4FEDB6:1F3948D">Inforworld</a>.</font><br /><br /><font face="Verdana,Geneva,Arial,sans-serif" size="2">The next iteration of the SQL standard was supposed to arrive in 2003. But SQL standardization has always been a glacially slow process, so nobody should be surprised that SQL:2003 ? now known as SQL:200n ? isn?t ready yet. Even so, 2003 was a year in which XML-oriented data management, one of the areas addressed by the forthcoming standard, showed up on more and more developers? radar screens.ÃÂ <a title="http://newsletter.infoworld.com/t?ctl=4FEDB6:1F3948D" href="http://newsletter.infoworld.com/t?ctl=4FEDB6:1F3948D" target="_blank">>> READ MORE</a></font></p></blockquote> <p dir="ltr"><font face="Verdana" size="2">This article rounds up product for 2003 in the critical area of Enterprise Database Technology. It's certainly provides an apt reflection of how Virtuoso compares with offerings from some the larger (but certainly slower to implement) database vendors in this space. As usual Jon Udell's quote pretty much sums this up:</font></p> <blockquote style="margin-right: 0px;" dir="ltr"> <p dir="ltr"><!--StartFragment --><span class="artText"><em>"While the spotlight shone on the heavyweight contenders, a couple of agile innovators made noteworthy advances in 2003. </em><a class="regularArticleU" href="http://www.infoworld.com/699"><em>OpenLink Software?s Virtuoso 3.0</em></a><em>, which we reviewed in March, stole thunder from all three major players. Like Oracle, it offers a WebDAV-accessible XML repository. Like DB2 Information Integrator, it functions as database middleware that can perform federated ?joins? across SQL and XML sources. And like the forthcoming Yukon, it embeds the .Net CLR (Common Language Runtime), or in the case of Linux, Novell/Ximian?s Mono."</em></span> </p></blockquote> <p dir="ltr"><font face="Verdana" size="2">Albeit still somewhat unknown to the broader industry we have remained true our "innovator" discipline, which still remains our chosen path to market leadership. Thus, its worth a quick Virtuoso release history, and featuresÃÂ recap as we get set to up the ante even further in 2004:</font></p> <p dir="ltr"><font face="Verdana" size="2"><a href="http://www.openlinksw.com/press/virtuoso.htm">1998 - Virtuoso's initial public beta</a> release with functional emphasis on Virtual Database Engine for ODBC and JDBC Data Sources.</font></p> <p dir="ltr"><font face="Verdana" size="2"><a href="http://www.openlinksw.com/press/virtuoso1.htm">1999 - Virtuoso's official commercial</a> release, with emphasis stillÃÂ on Virtual Database functionality for ODBC, JDBC accessible SQL Databases.</font></p> <p dir="ltr"><font face="Verdana" size="2"><a href="http://www.openlinksw.com/press/v2releas.htm">2000 - Virtuoso 2.0</a> adds XML Storage, XPath, XML Schema, XQuery, XSL-T, WebDAV, SOAP, UDDI, HTTP, Replication, Free Text Indexing (*feature update*), POP3, and NNTP support.</font></p> <p dir="ltr"><font face="Verdana" size="2"><a href="http://www.openlinksw.com/press/v27releas.htm">2002 - Virtuoso 2.7</a> extends Virtualization prowess beyond data access via enhancements to its Web Services protocol stack implementation by enabling SQL Stored Procedures to be published as Web Services. It also debutsÃÂ its Object-Relational engine enhancements that include theÃÂ incorporation of Java and Microsoft .NET Objects into its User Defined Type, User Defined Functions, and Stored ProcedureÃÂ offerings.</font></p> <p dir="ltr"><font face="Verdana" size="2"><a href="http://www.openlinksw.com/press/virt3beta.htm">2003 - Virtuoso 3.0</a> extends data and application logic virtualization into the Application Server realm (basically a Virtual Application server too!), by adding support for ASP.NET, PHP, Java Server Pages runtime hosting (making applications built using any of these languages deployable using Virtuoso across all supported platforms).</font></p> <p dir="ltr"><font face="Verdana" size="2">Collectively each of these releases have contributed to a very premeditated architecture and vision that will ultimately unveil the inherent power of critical I.S infrastructure virtualizationÃÂ along the following lines; data storage, data access , and application logic via coherent integration of SQL, XML, Web Services, and Persistent Stored Modules (.NET, Java, and other object based component building blocks).</font></p> <p dir="ltr"><font face="Verdana"></font>ÃÂ </p>
Deploying .NET on Mac OS X Inches closer
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-12-02#433
2003-12-03T03:49:43Z
2006-06-22T08:56:58-04:00
<BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"> <P><A href="http://primates.ximian.com/~miguel/all.html#12%2F02%2F2003+12%3A00%3A00">02 Dec 2003: Mono 0.29 has been released</A> </P> <P>This release took us a long time to go out, but it is pretty exciting, with PPC supported. The best Mono release ever! [via <A href="http://monologue.go-mono.com/">Monologue</A>]</P></BLOCKQUOTE> <P dir=ltr>This time <A href="http://www.ximian.com/about_us/press_center/press_releases/index.html?pr=openlink_mono">last year </A>Mono enabled us to deliver a release of<A href="http://www.openlinksw.com/virtuoso"> Virtuoso </A>that unveiled the power of .NET integration as a database extension mechanism on Windows and Linux along the following lines; <A href="http://demo.openlinksw.com:8890/tutorial">User Defined Types, User Defined Functions, and Stored Procedures using any .NET bound language</A>. It also enabled the deployment of ASP.NET applications on Linux, and on Windows without IIS. One item missing from my check list at the time was a Virtuoso release for Mac OS X with identical functionality. <P dir=ltr>This announcement implies we are within striking distance of a Virtuoso 3.2 release that enables .NET classes and frameworks utilization (along the lines described above) on Mac OS X.</P>
Creating RSS Using SQLX
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-11-11#423
2003-11-11T23:33:50Z
2006-06-22T08:56:58-04:00
<P>Here is a <A href="http://www.openlinksw.com/articles/rssvirtsqlx.htm">practical example of how to create RSS on the fly from SQL </A>data sources leveraging Virtuoso 3.2's SQLX implementation.</P> <P>This is further illuminates the content of my <A href="http://www.openlinksw.com/weblogs/virtuoso/index.vspx?id=426">earlier post</A> on this subject.</P> <P> </P>
Virtuoso 3.2 Web Services Platform Features Enhancements
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-11-05#413
2003-11-05T15:07:08Z
2006-06-22T08:56:58-04:00
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">We released Virtuoso 3.2 last week with significant enhancements to Web Services Platform functionality that includes:</span></p> <p class="MsoNormal" style="MARGIN: 0in 0in 0pt; mso-margin-top-alt: auto; mso-margin-bottom-alt: auto"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"></span></p>
Yukon's Top 10 Development Features & Virtuoso
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-10-30#407
2003-10-31T04:39:03Z
2006-06-22T08:56:58-04:00
<a href="http://demo2.usnet.private:8890/?id=1307">Yukon's Top 10 Development Features & Virtuoso</a> <p>Yukon's top 30</p>
WinFS validates Unified Storage Vision
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-10-29#406
2003-10-29T18:34:00Z
2006-07-21T07:24:45.000001-04:00
<p dir="ltr">I have been following the PDC event and information outflows with very keen interest. The newly published document from Microsoft re. WinFS is certainly interesting reading, especially as it articulates a vision that validates our<a href="http://www.openlinksw.com/virtuoso"> Virtuoso universal server </a>(as far as data storage goes). The excerpt below pretty much sums this up:<!--StartFragment --></p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p>Every year, as new hard disks get bigger and faster, applications catch up by producing more data. Hard disks are commonly used to store personal information: correspondence, personal contacts, and work documents. These items are currently treated as separate entities, yet they are interrelated on some level; and it's no surprise that e-mail comes from your personal contacts list and influences the work that you should be doing and hence determines the documents that you'll create. When you have a large number of items, it is important to have a flexible and efficient mechanism to search for particular items based on their properties and content. Up until now, storage mechanisms like Outlook</p></blockquote>
Virtuoso Hosting CLR & ASP.NET Demo
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-10-24#402
2003-10-24T19:08:04Z
2006-06-22T08:56:58-04:00
<div class="Section1"> <p><font size="2">I finally have two live servers that demonstrate Virtuoso</font></p></div>
A Virtuoso of a Server
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-10-23#395
2003-10-23T21:57:48Z
2006-06-22T08:56:58-04:00
<font size="2"> <p><a href="http://www.nwfusion.com/index.html">NETWORK WORLD</a> NEWSLETTER: MARK GIBBS ON WEB APPLICATIONS </p> <p><font size="2">Today's focus: A Virtuoso of a server</font></p> <p>By <a href="http://www.nwfusion.com/columnists/gibbs.html">Mark Gibbs</a></p> <p>One of the bigger drags of Web applications development is that building a system of even modest complexity is a lot like herding cats - you need a database, an applications server, an XML engine, etc., etc. And as they all come from different vendors you are faced with solving the constellation of integration issues that inevitably arise.</p> <p>If you are lucky, your integration results in a smoothly functioning system. If not, you have a lot of spare parts flying in loose formation with the risk of a crash and burn at any moment.</p> <p>An alternative is to look for all of these features and services in a single package but you'll find few choices in this arena.</p> <p>One that is available and looks very promising is OpenLink's Virtuoso (see links below).</p> <p>Virtuoso is described as a cross platform (runs on Windows, all Unix flavors, Linux, and Mac OS X) universal server that provides databases, XML services, a Web application server and supporting services all in a single package.</p> <p>OpenLink's list of supported standards is impressive and includes .Net, Mono, J2EE, XML Web Services (Simple Object Application Protocol, Web Services Description Language, WS-Security, Universal Description, Discovery and Integration), XML, XPath, XQuery, XSL-T, WebDav, HTTP, SMTP, LDAP, POP3, SQL-92, ODBC, JDBC and OLE-DB.</p> <p>Virtuoso provides an HTTP-compliant Web Server; native XML document creation, storage and management; a Web services platform for creation, hosting and consumption of Web services; content replication and synchronization services; free text index server, mail delivery and storage and an NNTP server.</p> <p>Another interesting feature is that with Virtuoso you can create Web services from existing SQL Stored Procedures, Java classes,</p> <p>C++ classes, and 'C' functions as well as create dynamic XML</p> <p>documents from ODBC and JDBC data sources.</p> <p>This is an enormous product and implies a serious commitment on the part of adopters due to its scope and range of services.</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><em>Virtuoso is enormous by virtue of its architectural ambitions, but actual disk requirements are</em></p></blockquote></font>
Using SQL-XML Based RSS Feeds to Syndicate Documentation, Tutorials, and Demos
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-10-21#392
2003-10-21T13:41:15Z
2006-06-22T08:56:58-04:00
<p><font size="2">I have embellished a number of weblogs that I oversee (<a href="http://www.openlinksw.com/blog/~kidehen">Personal</a>, <a href="http://www.openlinksw.com/weblogs/virtuoso">Virtuoso</a>, and <a href="http://www.openlinksw.com/weblogs/uda">UDA</a>) as part of an OpenLink technology "dog-fooding" effort. We now have SQL-XML based RSS 2.0 feeds that make an array of content available for RSS Aggregators as well as ad hoc <a href="http://www.w3.org/TR/xquery/">XQuery</a> and <a href="http://www.w3.org/TR/xpath">XPath</a> queries over <a href="http://en.wikipedia.org/wiki/WebDAV">HTTP/WebDAV</a>.</font></p><br /> <table id="table1" width="74%" border="1"> <tbody> <tr> <td width="236"><font size="2"><strong>Feed</strong></font></td> <td width="336"><font size="2"><strong>Description</strong></font></td></tr> <tr> <td width="236"><a href="http://docs.openlinksw.com/virtuoso/"><font size="2">Virtuoso Documentation</font></a></td> <td width="336"><font size="2">Product documentation available as a collection RSS feeds per chapter with a feed catalog in an <a href="http://docs.openlinksw.com/virtuoso/virtdocs.opml">OPML file</a>.</font></td></tr> <tr> <td width="236"><font size="2">Data Access Driver Suite Documentation</font></td></tr></tbody></table>
Commercial Server Supports Four Weblog APIs
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-10-09#389
2003-10-09T18:33:00Z
2006-06-22T08:56:58-04:00
Just came across this interesting post by <a href="http://www.cadenhead.org/workbench">Rogers Cadenhead</a> which shed's light on Virtuoso's xmlStorageSystemAPI() implementation which is available as a live demonstration on our <a href="http://demo.openlinksw.com:8890/tutorial">demo server</a> machine (alongside many other demos -- there are <a href="http://demo.openlinksw.com:8890/tutorial/opml.vsp">OPML</a>, <a href="http://demo.openlinksw.com:8890/tutorial/ocs.vsp">OCS</a>, and <a href="http://demo.openlinksw.com:8890/tutorial/rss.vsp">RSS</a> feeds for these funcitonality demos/tutorials). <a href="http://www.cadenhead.org/workbench/categories/javaTips/2003/10/09.html#a949" title="Workbench: Thursday, October 09, 2003">Commercial Server Supports Four Weblog APIs</a> Virtuoso 3.2 will be released in beta form latter this week or early next week, and it extends the Weblog Functionality aspect of Virtuoso to include the following: Tracbacks and Pingbacks CommentAPI Subscription Harmonization Atom The new release will include an Weblog Platform module that offers the Virtuoso equivalent of Moveable Type or pMachine, the fundamental difference being that Virtuoso's storage is database independent and the application layer is developed using the Virtuoso's web application development languages (<a href="http://demo.openlinksw.com:8890/tutorial/web/index.vsp?f=1">VSP and VSPX</a>).
What's Up with Feedster?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-10-03#386
2003-10-03T13:29:00Z
2006-06-22T08:56:58-04:00
<P>I have been trying to get <A href="http://feedster.com">Feedster</A> to index my blog correctly and no matter what I do I get the same result -- neither my <A href="http://www.openlinksw.com/blog/~kidehen">main blog </A>nor any of my other <A href="http://kidehen.typepad.com">non Radio Userland blogs </A>ever get presented on the search <A href="http://feedster.com/search.php?q=kingsley+idehen&sort=date&ie=UTF-8&limit=15&type=rss">results page</A>.</P> <P>Strangely enough, when there is a reference to my blog the urls are broken because they actually point to articles from my internal blog (which is part of a private net behind a firewall). Now, I do actually blog behind my corporate or home firewall (depending on my location at time of blogging), and I when I blog the actual typing and editing occurs within a single Blog Editor (typically using Zempt, w.bloggar, or Newzcrawler). My blog posts are propagated (conditionally using upstream rules via the <A href="http://www.openlinksw.com/virtuoso">Virtuoso</A> Blog Engine) to many <A href="http://www.openlinksw.com/weblogs">surrogate blogs </A>such as the ones listed above which may or may not be Virtuoso based, they just need to support Blog Post APIs such as Moveable Type, Meta-Weblog, or Blogger. </P> <P>Anyway, I need to know if there is something about this blog site that is tripping up Feedster.</P>
Variation on The Syncato Theme
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-09-26#378
2003-09-26T21:39:06Z
2006-06-22T08:56:58-04:00
<html> <body> <p> This is an imput form that will post to Syncato and then bring you back to the Virtuoso based XQuery post (assuming you spot the comment post I made earlier) re. BloggerCon</p> <br /> <form method="get" action="http://www.xmldatabases.org/WK/Comment" name="comments_form"> PostID:<br /> <input type="text" name="postID" value="507" /><p>Your Name:<br /><input name="author" /><br /><br /> Blog or Web URL:<br /><input name="url" /><br /><br /> Comments:<br /><textarea name="body" rows="10" cols="50"></textarea><br /><br /><input type="submit" name="preview" value="Preview" /><input type="submit" name="post" value="Post" /><br /><br /> </p> </form> </body> </html>
Java Virtual Machine Bridges for .NET
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-09-09#354
2003-09-09T21:47:44Z
2006-06-22T08:56:58-04:00
0
Cool XSL-T Tutorial
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-08-22#244
2003-08-22T04:07:59Z
2006-06-22T08:56:58-04:00
XSLT is one of the most powerful aspects of the entire XML value proposition (this weblog site is an example of what XML and XSLT can deliver), but is also one of the more daunting aspects (both hands-on and getting your brain wrapped around the syntax). Here is a really nice <a href="http://www.zvon.org/xxl/XSLTutorial/Books/Output/example1_ch1.html">XSLT tutorial</a> site. Demystify XSLT, and the world of XML's potential really opens up. It certainly accelerates the comprehension to the concept of <a href="http://jena.hpl.hp.com:3030/blojsom-hp/blog/technologies/blogging/metadata/?">generating RSS from internal data sources</a> - bearing in mind that in the case of <a href="http://www.openlinksw.com/virtuoso">Virtuoso</a> we use our in-built XSLT processor for facilitate XML-RPC to SOAP bridging, SQL-XML, RSS, OPML, RDF, FOAF, Atom|Echo, OCS feed generation amongst other things.
<a href="http://services.devx.com/feeds.cfm">DevX RSS Feeds</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-08-21#243
2003-08-21T23:17:04Z
2006-06-22T08:56:58-04:00
Ah! DevX have got it re. <a href="http://services.devx.com/feeds.cfm">RSS!</a> They have responded positively to the obvious disruptive effects of RSS on the Web 1.0 portal model. Good stuff! Welcome to Web 2.0's RSS Syndication Model. Now all they need is RSS Auto Discovery, and an OPML and.or OCS file and things really get rolling (<a href="http://www.openlinksw.com/virtuoso/whatis.htm">Virtuoso 3.2</a> will give to them out of the box! Or should I say post-installation :-) ) They also have a good article/page that lists a collection of <a href="http://www.devx.com/DevX/Article/16190">RSS Readers, Aggregrators, and related technologies</a> .
RSS: INJAN (It's not just about news)
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-08-21#241
2003-08-21T15:41:25Z
2006-06-22T08:56:58-04:00
<p><span style="font-size: 10pt; font-family: Arial;">When Virtuoso first unleashed support for XML (in-built XSL, Native XML Storage, Validating XML Parser, XPath, and XQuery) the core message was the delivery of a single server solution that would address the challenges of creating XML data.</span></p><p xmlns="o"></p> <p><span style="font-size: 10pt; font-family: Arial;">In the year 2000 the question of the shape and form of XML data was unclear to many, and reading the article below basically took me back in time to when we released <a href="http://www.it-director.com/article.php?articleid=916">Virtuoso 2.0</a> (we are now at <a href="http://www.openlinksw.com/virtuoso">release 3.0</a> commercially with a <a href="http://www.openlinksw.com/press/virt32_wwdc1.htm">3.2 beta </a>dropping any minute).</span></p><p xmlns="o"></p> <p><span style="font-size: 10pt; font-family: Arial;">RSS is a great XML application, and it does a great job of demonstrating how XML --the new data access foundation layer-- will galvanize the next generation Web (I refer to this as Web 2.0.). </span></p> <blockquote dir="ltr" style="margin-right: 0px;"><span style="font-size: 10pt; font-family: Arial;"> <p><a href="http://jena.hpl.hp.com:3030/blojsom-hp/blog/technologies/blogging/metadata/?permalink=1214847A10C1966396472E816A7A4243.textile">RSS: INJAN (It's not just about news)</a> </p> <p><span class="caps">RSS</span> is not just about news, according to <a href="http://groups.yahoo.com/group/rss-dev/message/5764">Ian Davis on rss-dev</a>.<br />He presents a nice list of alternatives, which I reproduce here (and to which I�d add, of course, bibliography management)</p> <ul> <li>Sitemaps: one of the S�s in <span class="caps">RSS</span> stands for summary. A sitemap is a summary of the content on a site, the items are pages or content areas. This is clearly a non-chronological ordering of items. Is a hierarchy of <span class="caps">RSS</span> sitemaps implied here � how would the linking between them work? How hard would it be to hack a web browser to pick up the <span class="caps">RSS</span> sitemap and display it in a sidebar when you visit the site?</li> <li>Small ads: also known as classifieds. These expire so there�s some kind of dynamic going on here but the ordering of items isn�t necessarily chronological. How to describe the location of the seller, or the condition of the item or even the price. Not every ad is selling something � perhaps it�s to rent out a room.</li> <li>Personals: similar model to the small ads. No prices though (I hope). Comes with a ready made vocabulary of terms that could be converted to an <span class="caps">RDF</span> schema. Probably should do that just for the hell of it anyway � gsoh</li> <li>Weather reports: how about a week�s worth of weather in an <span class="caps">RSS</span> channel. If an item is dated in the future, should an aggregator display it before time? Alternate representations include maps of temperature and pressure etc.</li> <li>Auctions: again, related to small ads, but these are much more time limited since there is a hard cutoff after which the auction is closed. The sequence of bids could be interesting � would it make sense to thread them like a discussion so you can see the tactics?</li> <li>TV listings: this is definitely chronological but with a twist � the items have durations. They also have other metadata such as cast lists, classification ratings, widescreen, stereo, program type. Some types have additional information such as director and production year.</li> <li>Top ten listings: top ten singles, books, dvds, richest people, ugliest, rear of the year etc. Not chronological, but has definate order. May update from day to day or even more often.</li> <li>Sales reporting: imagine if every department of a company reported their sales figures via <span class="caps">RSS</span>. Then the divisions aggregate the departmental figures and republish to the regional offices, who aggregate and add value up the chain. The chairman of the company subscribes to one super-aggregate feed.</li> <li>Membership lists / buddy lists: could I publish my buddy list from Jabber or other instant messengers? Maybe as an interchange format or perhaps could be used to look for shared contacts. Lots of potential overlap with <span class="caps">FOAF</span> here.</li> <li>Mailing lists: or in fact any messaging system such as usenet. There are some efforts at doing this already (e.g. yahoogroups) but we need more information � threads; references; headers; links into archives.</li> <li>Price lists / inventory: the items here are products or services. No particular ordering but it�d be nice to be able to subscribe to a catalog of products and prices from a company. The aggregator should be able to pick out price rises or bargains given enough history.</li> <div align="right">[via <a href="http://jena.hpl.hp.com:3030/blojsom-hp/blog/">Semantic Blogging Demonstrator</a>] </div></ul></span></blockquote> <p><span style="font-size: 10pt; font-family: Arial;">Thus, if we can comprehend RSS (the blog article below does a great job) we should be able to see the fundamental challenges that are before any organization seeking to exploit the potential of the imminent Web 2.0 inflection; how will you cost-effectively create XML data from existing data sources? Without upgrading or switching database engines, operating systems, programming languages? Put differently how can you exploit this phenomenon without losing your ever dwindling technology choices (believe me choices are dwindling fast but most are oblivious to this fact).</span></p><p xmlns="o"></p> <p> </p> <a href="index.vspx?tag=xml" rel="tag" style="display:none;">xml</a><a href="index.vspx?tag=rss" rel="tag" style="display:none;">rss</a><a href="index.vspx?tag=syndication" rel="tag" style="display:none;">syndication</a>
A Weblog-Based Content Architecture for Business
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-08-06#234
2003-08-06T16:41:11Z
2006-06-22T08:56:58-04:00
An interesting article that shed's light on how corporate blogging can impact the enterprise. Ironically, we pretty much work this way at OpenLink and this was one of the overriding reasons for adding weblog functionality to Virtuoso. If we can use blogs as electronic filing cabinets, then the obvious need to integrate weblog data with other corporate data sources for a myriad of other data, information, and knowledge creation and dissemination efforts should be pretty obvious. To quote <a href="http://blogs.salon.com/0002007/">Dave Pollard</a> the article author: <blockquote>"In a previous post, <a href="http://blogs.salon.com/0002007/2003/03/23.html#a133">The Weblog as Filing Cabinet</a> , I proposed that business weblogs could be used to codify and 'publish', in a completely voluntary and personal manner, the individual worker's entire filing cabinet. The key advantage of providing such a capability is vastly increased access to, and sharing of, a company's knowledge. This post outlines a content architecture that could enable this to occur. This architecture would have two principal components: The Enterprise Content Architecture and the Desktop Content Architecture".</blockquote> <a href="http://blogs.salon.com/0002007/2003/03/23.html#a133">Read On.</a>
Howl is Rendezvous for Windows and Linux
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-08-05#232
2003-08-05T19:18:55Z
2006-06-22T08:56:58-04:00
<p dir="ltr">Very interesting, we have basically ported Zeroconfig as released by Apple (in Open Source) too, and used it in both our <a href="http://www.openlinksw.com/virtuoso/whatis.htm">Virtuoso</a> 3.x and <a href="http://www.openlinksw.com/product.htm">UDA</a> 5.x products.</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p><a href="http://www.swampwolf.com/products/">Howl</a> is Rendezvous for Windows and Linux. [via <a href="http://www.scripting.com/">Scripting News</a>]</p></blockquote> <p dir="ltr">In the case of UDA you can configure ODBC and JDBC consumable data source names that are hosted on the server. Users can nownbspsimply picknbspDSNs from anbspcombo box and they are ready to make connections to remote databases from any ODBC, JDBC, OLE DB, or ADO.NET application.nbspAnother benefit ofnbspZeroconfignbspis that it facilitates centralized server side configuration which further enhances our server side session rules book;nbspwhich serves all our Multi-Tier data access drivers.</p> <p dir="ltr">In the case of Virtuoso you are able to bind to pre-configured Virtuoso instances in exactly the same way.</p> <p dir="ltr">Our Zeroconfig support has beennbspimplemented across Solaris, AIX, Digital UNIX, IRIX, HP-UX amongst others, but this is a project of interest all the same, and we may end up contributing to this effort.</p>
Microsoft to do for Usenet what it did for Email & The Web?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-08-03#228
2003-08-03T21:10:56Z
2006-06-22T08:56:58-04:00
<p><a href="http://slashdot.org/article.pl?sid=03/08/03/142259">Microsoft to do for Usenet what it did for Email & The Web?</a> </p> <p><a href="http://netscan.research.microsoft.com/">Netscan</a> is an interesting NNTP based project and it is pretty much along the same lines of what <a href="http://www.openlinksw.com/virtuoso/whatis.htm">Virtuoso</a> has provided (albeit with an inferior UI) for NNTP since 1999.</p> <p>Using Virtuoso the data presented by Netscan could very easily be presented as XML which could then be further processed using XPath, XQuery, and XSL-T with the final result RDF (since this is metadata afterall - another contribution to the Semantic Web)</p>
Email: Killer App Or Just A Killer?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-07-31#224
2003-07-31T18:28:28Z
2006-06-22T08:56:58-04:00
<p dir="ltr">The current state of e-mail is one of the travesties of the Internet in my opinion, the excerpt below pretty much sums this up"</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p dir="ltr"><a href="http://techdirt.com/articles/20030730/2334203.shtml">Email: Killer App Or Just A Killer?</a> While many people consider email to be the "killer app" that brought the internet into homes and businesses, now some are saying that <a href="http://www.globetechnology.com/servlet/story/RTGAM.20030731.ujack0731/BNStory/Technology/">email has become annoying and costly</a>. The most obvious issue is with spam, but there are other things as well. Maintaining an email server is a pain, and keeping email free from viruses is an additional cost. For companies that monitor email (and there are more and more), that's yet another expense. Finally, since there are questions about email security, some companies are telling employees not to use email for sensitive material. Thus, for many companies, email is only useful for informal communications, and you can only find those messages once you wade through all the spam and viruses - or so this article would have you believe. It's really not <i>that</i> bad - and there are reasonable technology solutions that should be able to keep most companies afloat with minimal costs. Yes, it's annoying, but the benefits of having email certainly outweigh the annoyances associated with it. [via <a href="http://www.techdirt.com/">Techdirt</a>]</p></blockquote> <p dir="ltr">One of the reasons for e-mail enabling <a href="http://www.openlinksw.com/virtuoso/whatis.htm">Virtuoso</a> (circa. 2000) was to set the stage for addressing what I anticipated would ultimately become the Spam Monster. This is how the solution was envisioned.</p> <p dir="ltr">Build a Driver/Sink that could be attached to the SMTP Agents such as Sendmail, Excim, Exchange etc.. such that the mail received is actually stored in a DBMS Engine (in this case Virtuoso or an ODBC accessible database). Once the mail is in the database it is then possible for Triggers to handle filtering of the Mime headers and mail body (using regular experessions). The end result being that Spam and Virulent mails are already filtered prior to POP or IMAP retrieval.</p> <p dir="ltr">With the emergence of Bayesian Spam Filters and other Anti Spam solutions there remains a possibility for this pursuing the best of both worlds. Enhance the DB Engine via its extensions API (In the case of Virtuosowhich supports Python, Perl etc..), or enhance the Mail Driver/Sink by extending it in a similar manner (a little more work if extensibility isn't part of the original Mail Sink design). My preference is obviously to handle this at the database level so that the Bayesian spam filter becomes a Trigger on the table into which the mail is stored. </p> <p dir="ltr">With a database in the mix I pretty much have a rules based engine for e-mail and also a pretty flexible mechanism for dealing with false positives (nothing's perfect!) since they remain in the database too, but not automatically part of the IMAP or POP retrieval process.</p> <p dir="ltr">At the end of the day e-mail is data and we simply need to look at data </p> <div align="right"></div>
VSIP program free of charge
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-07-30#209
2003-07-30T21:46:48Z
2006-06-22T08:56:58-04:00
<p dir="ltr">Microsoft just made the <a href="http://www.vsipdev.com/">VSIP program free of charge</a>. Awesome.</p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p dir="ltr">[via <a href="http://radio.weblogs.com/0001011/">The Scobleizer Weblog</a>]</p></blockquote> <p>Now this is good news from Microsoft! This means that products like <a href="http://www.openlinksw.com/virtuoso/whatis.htm">Virtuoso</a> can now compete head-on with Yukon (on a level playing field when it arrives) as far as Visual Studio.NET integration goes. Hopefully I will no longer have to rant about any of the following:</p> <ol> <li>Missing Data Access Controls and Wizards for ODBC (we already have annbsp interesting Generic ADO.NET Provider en route to GA release)</li> <li>Tightly bound integration between Visual Studio.NET <a href="http://www.microsoft.com/presspass/press/2003/Jul03/07-29InnovationListPR.asp">("Whidbey" or "Orcas")</a>nbspand Yukon (next release of SQL Server), it's up to us (OpenLink) to get the same degree of integration re. Virtuoso (via VSIP), but most importantly Visual Studio's future will not be inextricably linked to Yukon's (let's hope the same applies to IE and Longhorn)</li></ol> <p>I wonder if the same degree of openness could extend to Web Matrix? That would be something indeed!</p>
Is The Internet an Application?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-07-16#205
2003-07-16T19:07:00Z
2006-06-22T08:56:58-04:00
Certainly Not. Its the infrastructure used to develop a plethora of distributed applications: World Wide Web, Usenet, SMTP based Mail, Instant Messaging and more. Along the same lines it might be interesting to shed additional light on the evolving nature of the World Wide Web as one of the more prominent Internet Applications. Personally, I have always seen the World Wide Web as a distributed collection of arbitrarily linked multi-format databases (structured, semi-structured, and unstructured ). Today the unstructured format dominates, but we are clearly heading toward a period where there is a significant increase in the structured database variant (aka Semantic Web). Thus, we could also be looking at a period where <a href="http://www.openlinksw.com/virtuoso/whatis.htm">multi-purpose</a> and <a href="http://www.openlinksw.com/virtuoso">multi-protocol servers</a> -rather than the protocol and purpose specific servers (such as dedicated HTTP-Only Servers) dominate the URI processing realm.
Tim O'Reilly about network aware software
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-07-07#201
2003-07-07T20:51:35Z
2006-06-22T08:56:58-04:00
<p><a href="http://blog.bitflux.ch/p1077.html">Tim O'Reilly about network aware software</a> </p> <p>Tim O'Reilly wrote some thoughts about network aware software. Good sumup and nice ideas, why not only blogs should be net-aware (and where even blogs can be improved ;) ) </p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <div align="left">"<i>For the desktop, my personal vision is to see existing software instrumented to become increasingly web aware. It seems that Apple are doing a good job with this. (What does web aware mean for me? Being able to grok URIs, speaking WebDAV, and using open standard data formats.)</i>" -- <strong>Edd Dumbill</strong> </div> <div align="left"></div> <div align="left">[via <a href="http://blog.bitflux.ch/">Bitflux Blog</a>]</div></blockquote> <div align="left">I agree, but you do have to add Open Data Access formats (such as ODBC and to some degree JDBC) to this mix otherwise the you will need to create data for Open Standard Data Formats from sratch (tough for any enterprise irrespective of size).</div> <div align="left"></div> <div align="left">Tim O'Reilly added the following items to Edd's list:</div> <div align="left"> <ul> <li> <p>Rendezvous-like functionality for automatic discovery of and potential synchronization with other instances of the application on other computers. Apple is showing the power of this idea with iChat and iTunes, but it really could be applied in so many other places. For example, if every PIM supported this functionality, we could have the equivalent of "phonester" where you could automatically ask peers for contact information. Of course, that leads to guideline 2. </p></li></ul></div> <p>Another application is discovery of <a href="http://www.openlinksw.com/info/docs/uda50/mt/features.html#features">ODBC data sources</a>, and database servers. Rendezvous can also simply security and administration of data sources accessible by either one of these standards data access mechanisms. It can also apply to XML databases and data sources exposed by <a href="http://www.openlinksw.com/virtuoso/whatis.htm">XML Databases</a>.</p> <p></p> <p></p> <ul> <li>If you assume ad-hoc networking, you have to automatically define levels of access. I've always thought that the old Unix ugo (user, group, other) three-level permission system was simple and elegant, and if you replace the somewhat arbitrary "group" with "on my buddy list", you get something quite powerful. Which leads me to... <p></p> <p></p></li> <ul> <li>Buddy lists ought to be supported as a standard feature of many apps, and in a consistent way. What's more, our address books really ought to make it easy to indicate who is in a "buddy list" and support numerous overlapping lists for different purposes. <br></li></ul> <li>Every application ought to expose some version of its data as an XML feed via some well-defined and standard access mechanism. It strikes me that one of the really big wins that fueled the early web was a simple naming scheme: you could go to a site called www.foo.com, and you'd find a web server there. While it wasn't required, it made web addresses eminently guessable. We missed the opportunity for xml.foo.com to mean "this is where you get the data feed" but it's probably still possible to come up with a simple, consistent naming scheme. And of course, if we can do it for web sites, we also need to think about how to do it for local applications, since... </li></ul> <p>The very point I continue to make about Internet Points of Presence beingactual data acces points, in short these end points should be served by database serverprocesses. This is the very basis of <a href="http://www.openlinksw.com/virtuoso">Virtuoso</a>, the inevitability of this realization remains the undepinings of this product. There are other products out there that have some sense of this vision too, but there is a little snag (at least so far in my research efforts), and that is the tendency to create dedicated independent server per protocol (an ultimate integration, administration, and maintenance nightmare).</p> <ul> <li>We ought to be able to have the expectation that all applications, whether local or remote (web) will be set up for two-way interactions. That is, they can be either a source or sink of online data. So, for example, the natural complement to amazon's web services data feeds is data input (for example, the ability to comment on a book on your local blog, and syndicate the review via RSS to amazon's detail page for the book.) And that leads to: <p></p> <p></p></li> <li>We really need to understand who owns what, and come up with mechanisms that protect the legitimate rights of individuals and businesses to their own data, while creating the "liquidity" and free movement of data that will fuel the next great revolution in computer functionality. (I'm doing a panel on this subject at next week's Open Source Convention, entitled "<a href="http://conferences.oreillynet.com/cs/os2003/view/e_sess/4526">We Need a Bill of Rights for Web Services</a>.") <p></p> <p></p></li> <li>We need easy gateways between different application domains. I was recently in Finland at a Nokia retreat, and we used camera-enabled cell phones to create a mobile photoblog. That was great. But even more exciting was the ease with which I could send a photo from the phone not just to another phone but also to an email address. This is the functionality that enabled the blog gateway, but it also made it trivial to send photos home to my family and friends. Similarly, I often blog things that I hear on mailing lists, and read many web sites via screen-scraping enabled email lists. It would be nice to have cross-application gateways be a routine part of software, rather than something that has to be hacked on after the fact.</li></ul> <div align="left">The wish list is pretty much a clear articulation of key items that should matter most to decision makers (CTOs and CIOs) ; in particular those that continue to wrestle with the identification and isolation of relevantcomponentsfor their enterprisearchitectures. </div>
OpenLink Software Announces Virtuoso 3.2
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-25#187
2003-06-25T21:35:54Z
2006-06-22T08:56:58-04:00
<P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><A href="http://www.openlinksw.com/press/virt32_wwdc1.htm">OpenLink Software Announces Virtuoso 3.2 </a></span></p> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">This <A href="http://wwdc2003.openlinksw.com/"><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'"><FONT face=Arial size=2>Blog Site</font></span></a> is actually powered by <A href="http://www.openlinksw.com/virtuoso">Virtuoso</a> 3.2 (has been doing so prior to the announcement). Hmm. product utilization preceding press release? Why not?</span><B><SPAN style="FONT-FAMILY: Arial"><FONT size=3></font></span></b></p> <BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"> <P><B><SPAN style="FONT-FAMILY: Arial">OpenLink adds Weblog client and server functionality to <BR>Virtual Database Engine for SQL, XML, and Web Services</span></b><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"> <BR><BR><B>Burlington, MA. June 25, 2003</b> - OpenLink Software, Inc., a leading provider of universal data access and enterprise information integration middleware, announces Virtuoso 3.2 the latest edition of its cross platform Virtual Database for SQL, XML, and Web Services for Mac® OS X. <BR><BR>The new release incorporates full client and server support for the Blogger, Moveable Type, and MetaWeblog APIs, providing users with choice over location, format, data storage, development environment, and host operating system, for personal, community, and corporate Weblogs. The new release also facilitates the transparent integration of Weblog data with other enterprise data sources. </span></p> <P><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><A href="http://www.openlinksw.com/press/virt32_wwdc1.htm"><SPAN style="FONT-SIZE: 12pt; FONT-FAMILY: 'Times New Roman'"><FONT face=Arial size=2>Full Press Release</font></span></a></span></p></blockquote> <P dir=ltr><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">Putting together the community site took 5 minutes and it basically involved the following steps:</span></p> <P dir=ltr><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">1. Standard installation from installer program (Mac OS X in this case, but Windows, Linux, and UNIX supported)</span></p> <P dir=ltr><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">2. Creation of WebDAV user account for WebDAV repository (where all the gems reside)</span></p> <P dir=ltr><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">3. Clicking on the "Generate Web Site" button situated in the Weblog menu tree with the Virtuoso HTML based Admin UI</span></p> <P dir=ltr><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">4. Filled up my channel and blogrolls by asking Virtuoso to use its <U>very old web</u> content aggregation functionality </span></p> <P dir=ltr><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">5. Setup my upstreams (so that I post once and propagate to my numerous blog sites on a conditional basis)</span></p> <P dir=ltr><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">6. Create a Virtuoso HTTP Virtual Domain for the community/personal Blog </span></p> <P dir=ltr><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">7. Start blogging using any Blog Client that supports; Blogger API, MetaWeblog, or Moveable Type</span></p> <P dir=ltr><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">No more no less. Most importantly I have a choice of programming languages (VSP, VSX, PHP, ASP.NET, JSP, Perl, Python), operating systems, and databases that constitute the shape and form of my blog home. </span></p> <P dir=ltr><SPAN style="FONT-SIZE: 10pt; FONT-FAMILY: Arial">See the<A href="http://www.openlinksw.com/virtuoso/faqs.htm"> Virtuoso FAQ </a>for how this all comes together.</span></p>
Amazon.com RSS Feeds
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-25#181
2003-06-25T13:27:02Z
2006-06-22T08:56:58-04:00
<P><A href="http://www.lockergnome.com/update/archives/week_2003_06_22.html#005997">Amazon RSS Feeds</A></P> <P>RSS feeds are everywhere, and they are changing the Web landscape fast. The Web is shifting from distributed freeform database, to distributed semi-structured database. </P> <BLOCKQUOTE dir=ltr style="MARGIN-RIGHT: 0px"> <P><A href="http://www.lockergnome.com/update/archives/week_2003_06_22.html#005997">Amazon.com RSS Feeds</A> They never got around to it, so we set up <A href="http://www.lockergnome.com/amazon/" target=_blank>160+ separate RSS channels</A> for darn near every type of product on Amazon.com for you. If you have any feedback for this new (free) service, please let us know immediately! We're looking to make it an outstanding and permanent part to your <A href="http://chris.pirillo.com/MySubscriptions.opml" target=_blank>collection</A>. Enjoy! (Chris) [via <A href="http://update.lockergnome.com/">Lockergnome's Bits and Bytes</A>]</P></BLOCKQUOTE> <P>Your Web Site is gradually becoming a database (what?). Yes, your Web Site needs to be driven by database software that can rapidly create RSS feeds for your organizations non XML and XML data sources. Your web site needs to provide direct data access to users, bots, Web Services.</P> <P>Here is my <A href="http://kidehen.com:8890/blogdb/">blog database </A>for instance, you can query the XML data in this database using XQuery, XPath, and Web Services (if I decide to publish any of my XML Query Templates as Web Services). </P> <P>Note the teaser here, each XML document is zero bytes! This is becuase these are live <A href="http://www.openlinksw.com/virtuoso/whatis.htm">Virtuoso SQL-XML </A>documents that are producing a variety of XML documents on the fly, which means that they retain a high degree of sensitivity to changes in the underlying databases supplying the data. I could have chosen to make these persistent XML docs with interval based synchronization with the backen data sources (but I chose not to for maximum effect).</P> <P>As you can see SQL and XML (Relational and Hierarchical Models) engines can co-exist in a single server, ditto Object-Relational (which might be hidden from view but could be used in the SQL that serves the SQL-XML docs), ditto Full Text (see the search feature of this blog) and finally, ditto directed graph model for accessing my RDF data.(more on this as the RDF data pool increases).</P> <DIV></DIV>
Virtuoso Blog System Quick Setup Guide
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-21#287
2003-06-21T21:50:13Z
2006-06-22T08:56:58-04:00
<p class="MsoNormal" style="MARGIN: 0in 0in 0pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"><strong>Virtuoso Blog System setup instructions:</strong></span></p> <p class="MsoNormal" style="MARGIN: 0in 0in 0pt"><span style="FONT-SIZE: 10pt; FONT-FAMILY: Arial"></span></p>
Get Ready for Yukon
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-18#138
2003-06-18T05:19:22Z
2006-06-22T08:56:58-04:00
<p><a href="http://www.ftponline.com/dotnetmag/2003_06/magazine/columns/sqlconnection/default.asp">Get Ready for Yukon</a> </p> <blockquote dir="ltr" style="MARGIN-RIGHT: 0px"> <p>The next release of SQL Server promises increased developer productivity and reduced DBA workload. </p> <p>by Roger Jennings June 2003 Issue <a href="http://www.ftponline.com/dotnetmag/">.NET Magazine</a> </p></blockquote> <p>After reading this article I decided to put together a simple comparitive analysis of our existing product and the soon to be released Yukon.</p> <p>Our <a href="http://www.openlinksw.com/virtuoso/whatis.htm">Universal Server</a> product called <a href="http://www.openlinksw.com/virtuoso">Virtuoso</a> will compete head on with this future release of SQL Server in many regards (.NET CLR hosting, Native XML Types, SQL-XML, XMLA, Web Services etc.), but I am also keen to see what interesting perspectives Microsoft's implementation brings to the table. Here is a summary comparison, note that some of the hyperlinks in the table below actually take you to live functionality demos (for effect these links point to a Linux server, and you can change the machine part of the url from "demo" to "kingsleydemo" to see the equivalent demos on an XP server).</p> <table width="97%" border="1"> <tbody> <tr> <td width="42%"><font size="2"></font></td></tr></tbody></table>
<a href="http://www.sys-con.com/xml/article2a.cfm?id=652&count=18437&tot=14&page=12">piece</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-11#276
2003-06-11T21:13:07Z
2006-06-22T08:56:58-04:00
<P>An interesting <A href="http://www.sys-con.com/xml/article2a.cfm?id=652&count=18437&tot=14&page=12">piece</A> by Michael Carey architect for Liquid Data at BEA re. Enterprise Information Integration from <A href="http://www.sys-con.com/xml">XML Journal</A>.</P> <P>Key quote.</P> <P><EM>Since the dawn of the database era more than three decades ago, enterprises have been amassing an ever-increasing volume of information - both current and historical - about their operations. For the past two of those three decades, the database world has struggled with the problem of somehow integrating information that natively resides in multiple database systems or other information sources (Landers and Rosenberg).</EM> </P> <P>This is the root cause of many of the systems integration challenges facing may IT decsion makers. They want to exploit the new and emerging technologies, but the internal disparity of data and application logic presents many obstacles.</P> <P>Michael had this to say in his introduction.</P> <P><EM>The IT world knows this problem today as the enterprise information integration (EII) problem: enterprise applications need to be able to easily access and combine information about a given business entity from a distributed and highly varied collection of information sources. Relevant sources include various relational database systems (RDBMSs); packaged applications from vendors such as Siebel, PeopleSoft, SAP, and others; "homegrown" proprietary systems; and an increasing number of data sources that are starting to speak XML, such as XML files and Web services</EM>.<BR></P> <P>Virtuoso (which coincedentally has been used to build and host this blog) has been developed to address the challenges presented above; by providing a Virtual Database Engine for disparate data and application logic (all the GEMs on this page have been generated on the fly using it's SQL-XML functionality).</P> <P>Additional article excerpts:<BR><EM>With XQuery, the solution sketched above can be implemented by viewing the enterprise's different data sources all as virtual XML documents and functions. XQuery can stitch the distributed customer information together into a comprehensive, reusable base view.</EM> </P> <P>A critical issue at this point is how sensistive the XML VIEW is to underlying data source changes. Enterprises are dynamic, so static XML VIEWs are going to be suboptimal in many situations. Applications are only as relevant as the underlying data fluidity served up by the data access (this issue is data format agnostic).</P> <P>Virtuoso addresses this problem through its support of Persistent and Transient forms of XML VIEWs (which are derived from SQL, XML, Web Services, or any combination of these).</P> <P>Final excerpt:<BR><EM>The relational data sources can be exposed using simple default XML Schemas, and the other sources - SAP and the credit-checking Web service - can be exposed to XQuery as callable XQuery functions with appropriate signatures.</EM> </P> <P>Unfortunately XML Schemas aren't easy, so making this a requirement for producing XML VIEWs is somewhat problematic (or should I say challenging). Of course this approach has it merits, but it does put a significant knowledge acquisition burden on the end-user or developer. This is why Virtuoso also supports an approach based on SQL extensions for generating XML from SQL that facilitate the production of Well Formed and/or Valid XML documents on the fly from heterogeneous SQL Data Sources (this syntax is identical to the FOR XML RAW | AUTO | EXPLICIT modes of SQL Server). It can also use it's in-built XSL-T engine to further transform other non SQL XML data sources (and then generate an XML Schema for the final product if required and validate against this schema using it's in-build XML Schema validaton engine).</P> <P>This article certainly sheds light on the kinds of problems that EII based technologies such as Virtual Databases are positioned to address.</P> <P>There is a live XQuery demo of Virtuoso at: <A href="http://demo.openlinksw.com:8890/xqdemo"><a href="http://demo.openlinksw.com:8890/xqdemo">http://demo.openlinksw.com:8890/xqdemo</a></A></P>
What is Trackback?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-08#111
2003-06-08T21:20:31Z
2006-06-22T08:56:58-04:00
<DIV class=blogdate><STRONG>What is trackback about?</STRONG></DIV> <DIV class=trackback-text>Sometimes when you see a post on somebody's blog that you like, it's enough just to leave a comment on the other blog about that issue. But what if you've got something to say about the issue that you'd like to share with readers of your own blog? If you do post to your blog, you have to go and leave a comment in the other blog if you want the people there to know about your own blog entry.<BR>[From <A href="http://www.muhajabah.com/islamicblog/what-is-tb.htm">http://www.muhajabah.com/islamicblog/what-is-tb.htm</A>]</DIV> <DIV class=trackback-text> </DIV> <DIV class=trackback-text> <DIV class=blogdate>Do I have to be using Movable Type?</DIV> <DIV class=trackback-text>At this time, only <A href="http://www.movabletype.org/">Movable Type</A> is configured "out of the box" to use trackback. However, if you have your own web server space you may be able to set up <A href="http://www.movabletype.org/docs/tb-standalone.html">Stand-Alone Trackback</A> to work with your blogging system. You might also wish to look into similar applications such as <A href="http://www.hixie.ch/specs/pingback/pingback">Pingback</A>.</DIV> <DIV class=trackback-text> </DIV> <DIV class=trackback-text><EM>No! Virtuoso's Blogg System supports this feature.</EM></DIV></DIV>
What is Trackback?
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-08#264
2003-06-08T21:20:31Z
2006-06-22T08:56:58-04:00
<DIV class=blogdate><STRONG>What is trackback about?</STRONG></DIV> <DIV class=trackback-text>Sometimes when you see a post on somebody's blog that you like, it's enough just to leave a comment on the other blog about that issue. But what if you've got something to say about the issue that you'd like to share with readers of your own blog? If you do post to your blog, you have to go and leave a comment in the other blog if you want the people there to know about your own blog entry.<BR>[From <A href="http://www.muhajabah.com/islamicblog/what-is-tb.htm">http://www.muhajabah.com/islamicblog/what-is-tb.htm</A>]</DIV> <DIV class=trackback-text> </DIV> <DIV class=trackback-text> <DIV class=blogdate>Do I have to be using Movable Type?</DIV> <DIV class=trackback-text>At this time, only <A href="http://www.movabletype.org/">Movable Type</A> is configured "out of the box" to use trackback. However, if you have your own web server space you may be able to set up <A href="http://www.movabletype.org/docs/tb-standalone.html">Stand-Alone Trackback</A> to work with your blogging system. You might also wish to look into similar applications such as <A href="http://www.hixie.ch/specs/pingback/pingback">Pingback</A>.</DIV> <DIV class=trackback-text> </DIV> <DIV class=trackback-text><EM>No! Virtuoso's Blogg System supports this feature.</EM></DIV></DIV>
<a href="http://weblogs.asp.net/rholloway/posts/8197.aspx">Deconstructing the Yukon Delay </a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-06-03#358
2003-06-03T21:28:41Z
2006-06-22T08:56:58-04:00
Deconstructing the Yukon Delay Microsoft is <a href="http://www.eweek.com/article2/0,3959,1116195,00.asp">citing</a> customer concerns about product stability and internal dependencies on Whidbey as the primary drivers for the project delays in the Yukon release. The software is now projected to release in the second half of 2004. I'm the last person that would criticize Microsoft for delaying the schedule to ensure that the product is reliable, however I take exception with their claim that customer concern is a factor. If customers were not voicing their concerns over product stability, how would Microsoft do anything differently? The nature of the product, being a database server, is that is must be reliable and secure. I think this is Microsoft's way of responding to perception that they release "beta" quality software without sufficient testing and allow the customers to discover the issues. In my opinion the Whidbey dependence is the primary driver for the scheduling delays, although without inside knowledge of the product development initiative it is probably not possible to understand the complexities. Microsoft is probably better off citing the new Yukon features and the Whidbey dependencies rather than "customer concerns" over reliability. Security and reliability concerns need to be Microsoft's concerns, not the customer's.[<a href="http://weblogs.asp.net/rholloway/posts/8197.aspx">via Randy Holloway's Blog] </a> <br> <i>Transalates to: we have some additional time to make Virtuoso even better!</i>
Web-enable Your Business Intelligence Using XML/A and ASP.NET
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-29#338
2003-05-29T20:01:48Z
2006-06-22T08:56:58-04:00
0
Web-enable Your Business Intelligence Using XML/A and ASP.NET
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-29#66
2003-05-29T20:01:48Z
2006-06-22T08:56:58-04:00
<P>Don't you sometimes wish that accessing database data were easier, and you didn't have to deal with such things as OLE DB, ODBC, and JDBCthat you could use just one uniform approach to access the data regardless of the location and type? </P> <P><EM>Yes, but I don't see how any of the data access mechanisms listed have anything to do with the problem as each serves a different application domain.</EM></P> <P>Well, guess what? You won't have to wait too much longer to see this dream become reality. All major vendors are not only working on this issue seriously but have already started releasing SDKs for exactly this purpose. The point of commonality between them is XML. Like it or not, XML is becoming a standard part of programmers' lives because it's simple and easy to understand structure make it a suitable format for transferring data between disparate applications and platforms. But the real power of XML lies in its ability to not only extend itself, but also define itself.<BR><BR><EM>This is all well and good but it is XML, yes a uniforming technology, but the opening paragraph undermines the pont! </EM></P> <P><EM>XML For Analysis is just another addition to the pool of data access mechanisms, it is an XML./SOAP based data access mechanism for Tabular and Mulitdimensional Data and without our implementation XMLA simply offers little to anyone trying to get at tabular data (SQL Data) as many of the current implementers fall into the OLAP camp, and there is no standard query language for persistenf CUBES (MDX from Microsoft is de facto at best). Thus, without Virtuoso tabular data (where the real data actually resides) is out of the picture.</EM></P> <P><EM>So we say goodbye to ODBC, JDBC, OLE DB to get what exactly? From our perspective, another showcase opportunity, but for the innocent readers of this article I haven't got the faintest idea.</EM></P> <P><EM></EM> </P>
Weblog API Multiplexer
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-29#65
2003-05-29T16:25:29Z
2006-06-22T08:56:58-04:00
<A href="http://internetalchemy.org/2003/05/weblogAPIMultiplexer.html">Weblog API Multiplexer</A> After reading this article by Ben Hammersley, it stuck me that what the weblog community needs is a Weblog API Multiplexer service. This would be a service that would accept a ping containing some posting info, e.g. the entry's trackback... [via <A href="http://internetalchemy.org/">Internet Alchemy</A>] <DIV> </DIV> <DIV><EM>I smell new Virtuoso Blog features here. This article sheds light on the fundamental value of Web Services, and its intersection with emerging blog section of the SemWeb (Semantic Web), without explicity seeking to do so (based on my reading). </EM></DIV> <DIV><EM></EM> </DIV> <DIV><EM>At the time making this blog entry, it would be nice if I could create a metadata entry that references this article (make a statement about the article in general, and then make a specific statement about "intersection" as used above). Yes, "intersection", what does this mean (as used in my paragraph above)? That where ontologies come into play, the use of "intersection" means something to me (but not the the SemWeb client that pick of the statement from my metadata repository; RDF doc for instance).</EM></DIV> <DIV><EM></EM> </DIV> <DIV><EM>So we need to have standard annotation terms (ontologies) when persisting metadata statements (RDF). </EM></DIV>
The Harry Tuttle award
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-27#333
2003-05-27T13:06:02Z
2006-06-22T08:56:58-04:00
<a href="http://weblog.infoworld.com/udell/2003/05/27.html#a704">The Harry Tuttle award</a> The weekend's Harry Tuttle award goes to <a href="http://clarity.awakeheart.net/">Robert Ivanc</a>. On Friday he wrote to inform me that my weblog was interfering with an otherwise painless visit to the dentist: <blockquote><i>A few days ago, I was waiting at a dentist and trying to kill the time thought of using my Nokia 3650 (with Doris HTML browser) to have a look at your site, to see if there's anything there that might put my mind on other matters than the precarious closeness of the dentist drilling machines! And what I found out was how hard it was to get to the actual content on your site...I had to scroll through all of what is usually hidden...after about 10 minutes or so I finally got to the content. Any way to redesign it, so that content gets loaded first or putting up a mobile lightweight version? </i></blockquote> <p>Excellent point. I thought about this for five seconds and realized that Rob could solve this problem for himself -- and for others -- in a very simple way. I pointed him at the solution, and he picked up the ball and ran with it. <b>...</b> </p> <p><!--StartFragment --> </p> <p>My blog is currently available in two XML flavors: the <a href="http://weblog.infoworld.com/udell/rss.xml">standard feed</a> and the <a href="http://weblog.infoworld.com/udell/gems/longDescriptionFeed.xml">extended feed</a>. My suggestion to Rob was to write an XSLT transform for one or the other, and pipe the XML content through it (using the W3C's public XSLT transformation service) to create a lightweight HTML rendering. </p> <p>Here is the <a href="http://awakeheart.net/rss2html.xsl">XSLT file</a> Rob wrote. Here's how <a href="http://www.w3.org/2000/06/webdata/xslt?xslfile=http%3A%2F%2Fawakeheart.net%2Frss2html.xsl&xmlfile=http%3A%2F%2Fweblog.infoworld.com%2Fudell%2Frss.xml&transform=Submit">it renders</a> my standard feed. Here's how <a href="http://www.w3.org/2000/06/webdata/xslt?xslfile=http%3A%2F%2Fawakeheart.net%2Frss2html.xsl&xmlfile=http%3A%2F%2Fweblog.infoworld.com%2Fudell%2Fgems%2FlongDescriptionFeed.xml&transform=Submit">it renders</a> my extended feed. </p> <p>As Rob notes in <a href="http://clarity.awakeheart.net/archives/000233.html#000233">his writeup</a>, there was a problem with the extended feed, so originally he was only able to pipe the standard feed to his Nokia. But that was my fault, not his. I kicked my setup and it seems to be working properly now. Rob's conclusion: </p> <blockquote><i>Wow, that was pretty simple and quite powerful. The power of this kind of ad hoc scripting never ceases to amaze me! [<a href="http://clarity.awakeheart.net/">Clarity's Blog</a>] </i></blockquote> <p>[via <a href="http://weblog.infoworld.com/udell/">Jon's Radio</a>]</p> <p><em>Very cool! The power of XSLT! Now I am sure we can see how Virtuoso would extend this further? In short I will try to have this become an attribute of my Blog. </em></p> <p><em>Virtuoso could enable this site to automatically determine what type of User Agent (clients such as Web Browsers)</em></p>
The Harry Tuttle award
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-27#61
2003-05-27T13:06:02Z
2006-06-22T08:56:58-04:00
<A href="http://weblog.infoworld.com/udell/2003/05/27.html#a704">The Harry Tuttle award</A> The weekend's Harry Tuttle award goes to <A href="http://clarity.awakeheart.net/">Robert Ivanc</A>. On Friday he wrote to inform me that my weblog was interfering with an otherwise painless visit to the dentist: <BLOCKQUOTE><I>A few days ago, I was waiting at a dentist and trying to kill the time thought of using my Nokia 3650 (with Doris HTML browser) to have a look at your site, to see if there's anything there that might put my mind on other matters than the precarious closeness of the dentist drilling machines! And what I found out was how hard it was to get to the actual content on your site...I had to scroll through all of what is usually hidden...after about 10 minutes or so I finally got to the content. Any way to redesign it, so that content gets loaded first or putting up a mobile lightweight version? </I></BLOCKQUOTE> <P>Excellent point. I thought about this for five seconds and realized that Rob could solve this problem for himself -- and for others -- in a very simple way. I pointed him at the solution, and he picked up the ball and ran with it. <B>...</B> </P> <P><!--StartFragment --> </P> <P>My blog is currently available in two XML flavors: the <A href="http://weblog.infoworld.com/udell/rss.xml">standard feed</A> and the <A href="http://weblog.infoworld.com/udell/gems/longDescriptionFeed.xml">extended feed</A>. My suggestion to Rob was to write an XSLT transform for one or the other, and pipe the XML content through it (using the W3C's public XSLT transformation service) to create a lightweight HTML rendering. </P> <P>Here is the <A href="http://awakeheart.net/rss2html.xsl">XSLT file</A> Rob wrote. Here's how <A href="http://www.w3.org/2000/06/webdata/xslt?xslfile=http%3A%2F%2Fawakeheart.net%2Frss2html.xsl&xmlfile=http%3A%2F%2Fweblog.infoworld.com%2Fudell%2Frss.xml&transform=Submit">it renders</A> my standard feed. Here's how <A href="http://www.w3.org/2000/06/webdata/xslt?xslfile=http%3A%2F%2Fawakeheart.net%2Frss2html.xsl&xmlfile=http%3A%2F%2Fweblog.infoworld.com%2Fudell%2Fgems%2FlongDescriptionFeed.xml&transform=Submit">it renders</A> my extended feed. </P> <P>As Rob notes in <A href="http://clarity.awakeheart.net/archives/000233.html#000233">his writeup</A>, there was a problem with the extended feed, so originally he was only able to pipe the standard feed to his Nokia. But that was my fault, not his. I kicked my setup and it seems to be working properly now. Rob's conclusion: </P> <BLOCKQUOTE><I>Wow, that was pretty simple and quite powerful. The power of this kind of ad hoc scripting never ceases to amaze me! [<A href="http://clarity.awakeheart.net/">Clarity's Blog</A>] </I></BLOCKQUOTE> <P>[via <A href="http://weblog.infoworld.com/udell/">Jon's Radio</A>]</P> <P><EM>Very cool! The power of XSLT! Now I am sure we can see how Virtuoso would extend this further? In short I will try to have this become an attribute of my Blog. </EM></P> <P><EM>Virtuoso could enable this site to automatically determine what type of User Agent (clients such as Web Browsers) is being used by the visitor and then automatically associated the required XSTL stylesheet for the User Agent.</EM></P> <P><EM>This was one of the very basic Virtuoso XML and XSLT demos (circa 2000-2001).</EM></P> <P><EM>Blogging is going to provide a very fluid demo canvas for Virtuoso as this article demonstrates.</EM></P> <DIV></DIV>
<a href="http://blogs.law.harvard.edu/isItTheSyntax">My thoughts</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-23#327
2003-05-23T15:39:41Z
2006-06-22T08:56:58-04:00
<P><A href="http://blogs.law.harvard.edu/isItTheSyntax">My thoughts</A> re Tim Bray's thread on RDF. [via <A href="http://www.scripting.com/">Scripting News</A>]</P> <P><EM>Key excerpt of relevance to us (as potential providers of an application that demonstrates RDFs value prop.):</EM></P> <P>It's not the syntax that makes the difference, it's the app. History supports this view. How many people tried to pry apart the <A href="http://dictionary.reference.com/search?q=obscure"><STRONG><FONT color=#920011>obscure</FONT></STRONG></A> Excel file format on the Mac? Or the Lotus file format on the PC? Name all the market leaders of the past, and only the Web had both the killer app and a transparent format. Maybe the relationship is multiplicative. Maybe Excel would have <I>been the Web</I> if it had used an open file format that anyone could understand. What if you could have created a spreadsheet with BBEdit or a HyperTalk script? The mind boggles at the possibilities (it never happened, of course).</P> <P><EM>Even in Office 2003 there is a failure to really open things up.</EM><BR><BR>An aside, <A href="http://scriptingnews.userland.com/weblogsearch/?q=paoli"><STRONG><FONT color=#920011>Jean Paoli</FONT></STRONG></A> rushes into the room, jumping up and down and saying "That's what I'm doing that's what I'm doing."<BR><BR>Anyway, I don't see any killer apps in the RDF crowd. I see lots of people with strong opinions and not much software. Killer apps are not something you wish into existence. Lots of people have said that RDF models a relational database. Okay that tells me something important, the killer app is a relational database. </P> <P><EM>Ha Ha!</EM></P> <P>But we already have relational databases. They were new when I was a grad student, and that was a <I>long</I> time ago. <IMG src="http://static.userland.com/shortcuts/images/qbullets/sidesmiley.gif"><BR><BR><EM>Yeah, but what we don't have is a relational databases that incorporate RDF as part of the database technology evolution roadmap. Of course many will get it (and FUD-emulate) when we unveil something via Virtuoso.</EM></P> <DIV></DIV>
<a href="http://blogs.law.harvard.edu/isItTheSyntax">My thoughts</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-23#55
2003-05-23T15:39:41Z
2006-06-22T08:56:58-04:00
<p><a href="http://blogs.law.harvard.edu/isItTheSyntax">My thoughts</a> re Tim Bray's thread on RDF. [via <a href="http://www.scripting.com/">Scripting News</a>]</p> <p><em>Key excerpt of relevance to us (as potential providers of an application that demonstrates RDFs value prop.):</em></p> <p>It's not the syntax that makes the difference, it's the app. History supports this view. How many people tried to pry apart the <a href="http://dictionary.reference.com/search?q=obscure"><strong><font color="#920011">obscure</font></strong></a> Excel file format on the Mac? Or the Lotus file format on the PC? Name all the market leaders of the past, and only the Web had both the killer app and a transparent format. Maybe the relationship is multiplicative. Maybe Excel would have <i>been the Web</i> if it had used an open file format that anyone could understand. What if you could have created a spreadsheet with BBEdit or a HyperTalk script? The mind boggles at the possibilities (it never happened, of course).</p> <p><em>Even in Office 2003 there is a failure to really open things up.</em><br /><br />An aside, <a href="http://scriptingnews.userland.com/weblogsearch/?q=paoli"><strong><font color="#920011">Jean Paoli</font></strong></a> rushes into the room, jumping up and down and saying "That's what I'm doing that's what I'm doing."<br /><br />Anyway, I don't see any killer apps in the RDF crowd. I see lots of people with strong opinions and not much software. Killer apps are not something you wish into existence. Lots of people have said that RDF models a relational database. Okay that tells me something important, the killer app is a relational database. </p> <p><em>Ha Ha!</em></p> <p>But we already have relational databases. They were new when I was a grad student, and that was a <i>long</i> time ago. <img src="http://static.userland.com/shortcuts/images/qbullets/sidesmiley.gif" /><br /><br /><em>Yeah, but what we don't have is a relational databases that incorporate RDF as part of the database technology evolution roadmap. Of course many will get it (and FUD-emulate) when we unveil something via Virtuoso.</em></p> <div></div>
By Harry Fuecks
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-21#997
2003-05-21T20:49:29Z
2006-07-07T08:29:38-04:00
<h2> <font size="3">By Harry Fuecks</font> <br /> <font size="2">Here's a question: what if I was to tell you that you can write your own version of Word using something like HTML and JavaScript? What if I added that you could run on your hard disk or launch it directly from your Web server and use it to update your site's content? It sounds a little far fetched, I know, but it's right here, right now -- and it calls itself "Zool". </font> </h2> <p>Here?s what this three-part series will cover:</p> <p></p> <ul> <li>The XUL Revolution: just who is Zool? </li> <li>Back to School: time to dust of that JavaScript... </li> <li>Zoolology: getting read to fire up your first XUL application </li> <li>3D Browsing with XUL: straight in at the deep end. </li> <li>Desperately Seeking: the search is over. </li> <li>Takeaway Menu: with fries please! </li> <li>But no one uses Mozilla: back to browser detection. </li> <li>The Rise of the Rich Client: the future is XUL. </li> </ul> <p> <strong><a href="http://www.sitepoint.com/article/1140/1">Part 1</a> </strong> </p> <p> <em><u>My Comments</u>:<br /> </em><em>I am a firm believer in the possibilities presented by XUL. It will enable the bundling of UI, Data, Data Manipulation logic (Application or Module ) as part of a payload hosted on report server Like Virtuoso. Basically, I anticipate the emergence of an IDE that is able to persist is UI components (widgets) and UI behaviour as XML using the XUL grammer. Then along comes a XUL Processor that is able to emit a XUL based UI payloads ( via user agent aware transformation) as:<br />.NET/Mono Windows Forms assemblies<br />Javascript<br />Flash MX<br />XUL (If we know the client is Mozilla or Firebird for instance)<br />.....<br />I think this is a Virtuoso demo in the making :-)</em> </p> <p> <br /> <br /> <br /> </p> <p> <font face="Verdana"></font> </p>
<a href="http://www.waypath.com/apis/xmlrpc1">has</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-21#317
2003-05-21T20:25:28Z
2006-06-22T08:56:58-04:00
Waypath <A href="http://www.waypath.com/apis/xmlrpc1">has</A> an XML-RPC interface for keyword searches on weblog content. <DIV align=right>[via <A href="http://www.scripting.com/">Scripting News</A>]</DIV> <DIV align=left><EM>Could be interesting re. Virtuoso's Blogging Services.</EM></DIV>
<a href="http://www.waypath.com/apis/xmlrpc1">has</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-21#45
2003-05-21T20:25:28Z
2006-06-22T08:56:58-04:00
Waypath <A href="http://www.waypath.com/apis/xmlrpc1">has</A> an XML-RPC interface for keyword searches on weblog content. <DIV align=right>[via <A href="http://www.scripting.com/">Scripting News</A>]</DIV> <DIV align=left><EM>Could be interesting re. Virtuoso's Blogging Services.</EM></DIV>
<a href="http://www.bloki.com/">Bloki is</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-21#309
2003-05-21T12:11:11Z
2006-06-22T08:56:58-04:00
<A href="http://www.bloki.com/">Bloki is</A> "a Web site on which you can create Web pages, right in your browser, with no additional software required. Think of it as a word processor for the Web." [via <A href="http://www.scripting.com/">Scripting News</A>] <DIV> </DIV> <DIV><EM>This is an interesting product, especially in relation to our current Virtuoso Blog, Wiki, and General Content Mgmt. efforts.</EM></DIV>
<a href="http://www.bloki.com/">Bloki is</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-21#36
2003-05-21T12:11:11Z
2006-06-22T08:56:58-04:00
<A href="http://www.bloki.com/">Bloki is</A> "a Web site on which you can create Web pages, right in your browser, with no additional software required. Think of it as a word processor for the Web." [via <A href="http://www.scripting.com/">Scripting News</A>] <DIV> </DIV> <DIV><EM>This is an interesting product, especially in relation to our current Virtuoso Blog, Wiki, and General Content Mgmt. efforts.</EM></DIV>
<a href="http://chkpt.zdnet.com/chkpt/emailvideonews/www.cnet.com/video/synd/mail_redir2.html?page=http://www.news.com/,vid_win=http://news.com.com/1601-2-1000672.html">Video</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-15#298
2003-05-16T03:57:33Z
2006-06-22T08:56:58-04:00
<p>Enjoy the <a href="http://chkpt.zdnet.com/chkpt/emailvideonews/www.cnet.com/video/synd/mail_redir2.html?page=http://www.news.com/,vid_win=http://news.com.com/1601-2-1000672.html">Video</a> .</p> <p>Virtuoso 64-Bit is becoming a priority, larger addressable memory space (we are talking about 512GB memory re. 64-Bit systems). </p> <p>You can now do on Windows what you could have done many years ago on IRIX and Digital UNIX :-)</p> <p></p>
<a href="http://radio.weblogs.com/0100059/stories/2002/04/05/howToBackupImportantRadioFiles.html">backup Radio</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-14#12
2003-05-14T18:18:06Z
2006-06-22T08:56:58-04:00
<P>What's the best way to move Radio UserLand over to a new computer? Without breaking anything. Yeah, I've read the "<A href="http://radio.weblogs.com/0100059/stories/2002/04/05/howToBackupImportantRadioFiles.html">backup Radio</A>" site, but that's not what I want to do. I want to move my entire Radio license, copy, and all the data contained therein, to a newly-setup computer. I can't get it to work. Any tips?[via <A href="http://radio.weblogs.com/0001011/">The Scobleizer Weblog</A>]</P> <DIV>Well what I wanted to do, and have successfully achieved, is as follows (this isn't to knock Radio Userland which in my opinion is a fabulous piece of pioneering work in the weblog space):</DIV> <OL> <LI>Migrate my Radio Blog Web to a <A href="http://www.openlinksw.com/virtuoso">Virtuoso</A> Blog Server (it is a Web Log server that supports; Blogger API 1.0/2.0, Meta-Weblog API, Moveable Type, and xmlStorageSystem)</LI> <LI>Continue to use Radio as my desktop blogging tool, but also as the local blog server gateway for other tools that I use such as w.bloggar, FM Radio and Newzcrawler</LI></OL> <P>How was this acheived?</P> <OL> <LI>I had to reconfigure the Radio #upstream.xml file so that it points to my Virtuoso Server for xmlStorageSystem Web Publishing</LI> <UL> <LI><FONT color=#0000ff size=1> <P>This is my modified version of #upstream.xml<BR><!--</FONT><FONT color=#808080 size=1> edited with XMLSPY v5 rel. 3 U (http://www.xmlspy.com) by Kingsley Idehen (OpenLink Software) </FONT><FONT color=#0000ff size=1>--><BR><</FONT><FONT color=#800000 size=1>upstream</FONT><FONT color=#ff0000 size=1> type</FONT><FONT color=#0000ff size=1>="</FONT><FONT size=1>xmlStorageSystem</FONT><FONT color=#0000ff size=1>"</FONT><FONT color=#ff0000 size=1> version</FONT><FONT color=#0000ff size=1>="</FONT><FONT size=1>1.0</FONT><FONT color=#0000ff size=1>"><BR></FONT><FONT color=#0000ff size=1> <!--</FONT><FONT color=#808080 size=1>This is my Virtuoso WebDAV account</FONT><FONT color=#0000ff size=1>--><BR></FONT><FONT color=#0000ff size=1> <</FONT><FONT color=#800000 size=1>usernum</FONT><FONT color=#0000ff size=1>></FONT><FONT size=1>kingsley</FONT><FONT color=#0000ff size=1></</FONT><FONT color=#800000 size=1>usernum</FONT><FONT color=#0000ff size=1>><BR></FONT><FONT color=#0000ff size=1> <</FONT><FONT color=#800000 size=1>name</FONT><FONT color=#0000ff size=1>></FONT><FONT size=1>Kingsley Idehen</FONT><FONT color=#0000ff size=1></</FONT><FONT color=#800000 size=1>name</FONT><FONT color=#0000ff size=1>><BR></FONT><FONT color=#0000ff size=1> <!--</FONT><FONT color=#808080 size=1>This is my Radio Password Name Reference</FONT><FONT color=#0000ff size=1>--><BR></FONT><FONT color=#0000ff size=1> <</FONT><FONT color=#800000 size=1>passwordName</FONT><FONT color=#0000ff size=1>></FONT><FONT size=1>default</FONT><FONT color=#0000ff size=1></</FONT><FONT color=#800000 size=1>passwordName</FONT><FONT color=#0000ff size=1>><BR></FONT><FONT color=#0000ff size=1> <!--</FONT><FONT color=#808080 size=1>This is the Virtuoso instance reference</FONT><FONT color=#0000ff size=1>--><BR></FONT><FONT color=#0000ff size=1> <</FONT><FONT color=#800000 size=1>server</FONT><FONT color=#0000ff size=1>></FONT><FONT size=1>demo2.usnet.private</FONT><FONT color=#0000ff size=1></</FONT><FONT color=#800000 size=1>server</FONT><FONT color=#0000ff size=1>><BR></FONT><FONT color=#0000ff size=1> <!--</FONT><FONT color=#808080 size=1>Virtuoso HTTP Server Instance Port Number</FONT><FONT color=#0000ff size=1>--><BR></FONT><FONT color=#0000ff size=1> <</FONT><FONT color=#800000 size=1>port</FONT><FONT color=#0000ff size=1>></FONT><FONT size=1>8890</FONT><FONT color=#0000ff size=1></</FONT><FONT color=#800000 size=1>port</FONT><FONT color=#0000ff size=1>><BR></FONT><FONT color=#0000ff size=1> <</FONT><FONT color=#800000 size=1>protocol</FONT><FONT color=#0000ff size=1>></FONT><FONT size=1>soap</FONT><FONT color=#0000ff size=1></</FONT><FONT color=#800000 size=1>protocol</FONT><FONT color=#0000ff size=1>><BR></FONT><FONT color=#0000ff size=1> <!--</FONT><FONT color=#808080 size=1>Virtuoso XML-RPC or SOAP Endpoint</FONT><FONT color=#0000ff size=1>--><BR></FONT><FONT color=#0000ff size=1> <</FONT><FONT color=#800000 size=1>rpcPath</FONT><FONT color=#0000ff size=1>></FONT><FONT size=1>/xmlStorageSystem</FONT><FONT color=#0000ff size=1></</FONT><FONT color=#800000 size=1>rpcPath</FONT><FONT color=#0000ff size=1>><BR></FONT><FONT color=#0000ff size=1> <</FONT><FONT color=#800000 size=1>soapAction</FONT><FONT color=#0000ff size=1>></FONT><FONT size=1>/xmlStorageSystem</FONT><FONT color=#0000ff size=1></</FONT><FONT color=#800000 size=1>soapAction</FONT><FONT color=#0000ff size=1>><BR></</FONT><FONT color=#800000 size=1>upstream</FONT><FONT color=#0000ff size=1>></FONT></P></LI> <LI> <P><FONT color=#0000ff size=1><FONT color=#000000 size=2>You also have to make the following change via the following Userland Radio menu path <FONT size=2>"Radio"->Window->Radio.root->user->radio->prefs->upstream->servers:<BR><FONT size=2><STRONG>'serverCapabilities'->flError = true;</STRONG></P></FONT></FONT></FONT></FONT></LI></UL> <LI>Publish my local Radio site, this time to Virtuoso rather than the Userland Community Server destination</LI></OL> <P>New Architecture</P> <P>----------------------<BR>| Blogging Clients<BR>---------------------<BR> |<BR>------------<BR>| Local Radio Userland Web Server <BR>--------------------------------<BR> |<BR>-----------<BR>| Virtuoso Server (RSS, RDF, XML, SQL etc.. in one place for further use)<BR>----------------------</P> <P>End result is productive blogging, and reusable content storage in my Virtuoso knowledgebase.</P> <P> </P>
<a href="http://www.forbes.com/2003/05/14/cz_tm_0514sf.html">Forbes Magazine Article</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-14#262
2003-05-14T17:34:58Z
2006-06-22T08:56:58-04:00
<p><span class="mainarttxt"><a href="http://www.forbes.com/2003/05/14/cz_tm_0514sf.html">Forbes Magazine Article</a></span></p> <p><em><span class="mainarttxt">Net margins and return on equity are popular metrics that investors turn to in an effort to identify the most profitable companies. One less-used measure is return on invested capital, or ROIC. </span><br /><br /><span class="mainarttxt">Definitions of return on capital vary, but they all try to capture the same thing: how much a company has earned on all the capital it has invested, which includes both equity and debt. By including both, return on capital shows how a company uses all of its financial resources. </span><br /><br /><span class="mainarttxt">For our purposes, we define ROIC as earnings before interest, depreciation and amortization divided by invested capital. Invested capital encompasses shareholders' equity, plus all long-term liabilities and short-term debt.</span></em></p> <p><span class="mainarttxt">WOW! We now use this metric to assess companies? Times have really changed!</span></p> <p><span class="mainarttxt">This could be the basis of an <a href="www.xbrl.org">XBRL</a> project, the goal being to produce an XQuery to filter for all companies with a positive ROIC. Watch this space, it would be a great <a href="http://www.openlinksw.com/virtuoso">Virtuoso demo</a>!</span></p> <p><span class="mainarttxt"> </span></p><table cellspacing="0" cellpadding="1" border="0"> <tbody> <tr> <td class="mainarttblhed">ROIC Industry Leaders</td></tr> <tr> <td> <table cellspacing="1" cellpadding="1" border="0"> <tbody> <tr bgcolor="#cccccc"> <td><b>Company</b><b> </b></td> <td><b>Price</b><b> </b></td> <td><b>Latest 12- Month Sales ($mil)</b><b> </b></td> <td><b>Return On Invested Capital</b><b> </b></td> <td><b>2003 Estimated P/E</b><b> </b></td> <td><b>2003 Estimated EPS Growth</b> </td></tr> <tr bgcolor="#eeeeee"> <td><b>Applebee's Int'l</b> (nasdaq: <a class="maintkrlink" href="http://www.forbes.com/finance/mktguideapps/compinfo/CompanyTearsheet.jhtml?tkr=APPB">APPB</a> - <a href="http://www.forbes.com/markets/company_news.jhtml?ticker=APPB">news </a>- <a href="http://www.forbes.com/peopletracker/results.jhtml?startRow=0&name=&ticker=APPB">people </a>) </td> <td>$28.73 </td> <td>$862 </td> <td>25.4% </td> <td>17 </td> <td>15% </td></tr> <tr bgcolor="#cccccc"> <td><b>AutoZone</b> (nyse: <a class="maintkrlink" href="http://www.forbes.com/finance/mktguideapps/compinfo/CompanyTearsheet.jhtml?tkr=AZO">AZO</a> - <a href="http://www.forbes.com/markets/company_news.jhtml?ticker=AZO">news </a>- <a href="http://www.forbes.com/peopletracker/results.jhtml?startRow=0&name=&ticker=AZO">people </a>) </td> <td>86.60 </td> <td>5,407 </td> <td>30.7 </td> <td>17 </td> <td>26 </td></tr> <tr bgcolor="#eeeeee"> <td><b>CVS</b> (nyse: <a class="maintkrlink" href="http://www.forbes.com/finance/mktguideapps/compinfo/CompanyTearsheet.jhtml?tkr=CVS">CVS</a> - <a href="http://www.forbes.com/markets/company_news.jhtml?ticker=CVS">news </a>- <a href="http://www.forbes.com/peopletracker/results.jhtml?startRow=0&name=&ticker=CVS">people </a>) </td> <td>27.08 </td> <td>24,524 </td> <td>16.8 </td> <td>14 </td> <td>10 </td></tr> <tr bgcolor="#cccccc"> <td><b>Dell Computer</b> (nasdaq: <a class="maintkrlink" href="http://www.forbes.com/finance/mktguideapps/compinfo/CompanyTearsheet.jhtml?tkr=DELL">DELL</a> - <a href="http://www.forbes.com/markets/company_news.jhtml?ticker=DELL">news </a>- <a href="http://www.forbes.com/peopletracker/results.jhtml?startRow=0&name=&ticker=DELL">people </a>) </td> <td>32.45 </td> <td>35,404 </td> <td>32.9 </td> <td>33 </td> <td>24 </td></tr> <tr bgcolor="#eeeeee"> <td><b>HCA</b> (nyse: <a class="maintkrlink" href="http://www.forbes.com/finance/mktguideapps/compinfo/CompanyTearsheet.jhtml?tkr=HCA">HCA</a> - <a href="http://www.forbes.com/markets/company_news.jhtml?ticker=HCA">news </a>- <a href="http://www.forbes.com/peopletracker/results.jhtml?startRow=0&name=&ticker=HCA">people </a>) </td> <td>32.42 </td> <td>20,129 </td> <td>18.1 </td> <td>11 </td> <td>10 </td></tr> <tr bgcolor="#cccccc"> <td><b>McClatchy</b> (nyse: <a class="maintkrlink" href="http://www.forbes.com/finance/mktguideapps/compinfo/CompanyTearsheet.jhtml?tkr=MNI">MNI</a> - <a href="http://www.forbes.com/markets/company_news.jhtml?ticker=MNI">news </a>- <a href="http://www.forbes.com/peopletracker/results.jhtml?startRow=0&name=&ticker=MNI">people </a>) </td> <td>59.95 </td> <td>1,087 </td> <td>13.4 </td> <td>20 </td> <td>7 </td></tr> <tr bgcolor="#eeeeee"> <td><b>PepsiCo</b> (nyse: <a class="maintkrlink" href="http://www.forbes.com/finance/mktguideapps/compinfo/CompanyTearsheet.jhtml?tkr=PEP">PEP</a> - <a href="http://www.forbes.com/markets/company_news.jhtml?ticker=PEP">news </a>- <a href="http://www.forbes.com/peopletracker/results.jhtml?startRow=0&name=&ticker=PEP">people </a>) </td> <td>43.47 </td> <td>25,541 </td> <td>25.9 </td> <td>20 </td> <td>12 </td></tr> <tr bgcolor="#cccccc"> <td><b>Select Medical</b> <b></b>(nyse: <a class="maintkrlink" href="http://www.forbes.com/finance/mktguideapps/compinfo/CompanyTearsheet.jhtml?tkr=SEM">SEM</a> - <a href="http://www.forbes.com/markets/company_news.jhtml?ticker=SEM">news </a>- <a href="http://www.forbes.com/peopletracker/results.jhtml?startRow=0&name=&ticker=SEM">people </a>) </td> <td>19.68 </td> <td>1,167 </td> <td>18.8 </td> <td>16 </td> <td>33 </td></tr> <tr bgcolor="#eeeeee"> <td><b>University of Phoenix Online</b> (nasdaq: <a class="maintkrlink" href="http://www.forbes.com/finance/mktguideapps/compinfo/CompanyTearsheet.jhtml?tkr=UOPX">UOPX</a> - <a href="http://www.forbes.com/markets/company_news.jhtml?ticker=UOPX">news </a>- <a href="http://www.forbes.com/peopletracker/results.jhtml?startRow=0&name=&ticker=UOPX">people </a>) </td> <td>45.16 </td> <td>418 </td> <td>39.1 </td> <td>51 </td> <td>66 </td></tr> <tr bgcolor="#cccccc"> <td><b>Wal-Mart Stores</b> (nyse: <a class="maintkrlink" href="http://www.forbes.com/finance/mktguideapps/compinfo/CompanyTearsheet.jhtml?tkr=WMT">WMT</a> - <a href="http://www.forbes.com/markets/company_news.jhtml?ticker=WMT">news </a>- <a href="http://www.forbes.com/peopletracker/results.jhtml?startRow=0&name=&ticker=WMT">people </a>) </td> <td>55.49 </td> <td>244,524 </td> <td>15.6 </td> <td>27 </td> <td>13 </td></tr></tbody></table></td></tr> <tr> <td class="mainarttblsrc">Prices as of May 13 (with XBRL it would as of last XQuery). Sources would read: Would be my Virtuoso DB instance. </td></tr></tbody></table> <p><span class="mainarttxt"></span></p>
<a href="http://chkpt.zdnet.com/chkpt/emailvideonews/www.cnet.com/video/synd/mail_redir2.html?page=http://www.news.com/,vid_win=http://news.com.com/1601-2-1000672.html">Video</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-14#360
2003-05-14T16:55:05Z
2006-06-22T08:56:58-04:00
<P>Enjoy the <A href="http://chkpt.zdnet.com/chkpt/emailvideonews/www.cnet.com/video/synd/mail_redir2.html?page=http://www.news.com/,vid_win=http://news.com.com/1601-2-1000672.html">Video</A> .</P> <P>Virtuoso 64-Bit is becoming a priority, larger addressable memory space (we are talking about 512GB memory re. 64-Bit systems). </P> <P>You can now do on Windows what you could have done many years ago on IRIX and Digital UNIX :-)</P> <P> </P>
<a href="http://weblog.siliconvalley.com/column/dangillmor/archives/000802.shtml">buying Blogger creator Pyra Labs</a>
http://www.openlinksw.com/blog/kidehen@openlinksw.com/blog/?date=2003-05-14#8
2003-05-14T14:34:37Z
2006-06-22T08:56:58-04:00
With Google <A href="http://weblog.siliconvalley.com/column/dangillmor/archives/000802.shtml">buying Blogger creator Pyra Labs</A> many are wondering when and if Microsoft will take a similar plunge into the Weblog-tools world. <P>It will come as a surprise to many that, with little fanfare, Microsoft officially entered the blogging-tool space. At the recent VSLive! developer conference, Microsoft unveiled five new sample applications built on top of its ASP.Net scripting environment. One of these five ? the ASP.Net <A href="http://www.asp.net/Default.aspx?tabindex=9&tabid=47">Community Starter Kit </A>? is a blog builder.</P> <P><A href="http://www.asp.net/Default.aspx?tabindex=9&tabid=47">The Community Starter Kit</A> consists of application code, templates, documentation and forum-based help. According to Microsoft's own definition of the kit: "The Community Starter Kit enables you to quickly create a community Web site such as a user group site, a developer resource site, or a news site." </P> <P>Some additonal commentary from <A href="http://www.drupal.org/node/view/1203">Drupal</A>:<BR><EM>Food for </EM><A href="http://www.megnut.com/weblogs/002620.asp"><EM>thought and discussion</EM></A><EM>. What would happen when every </EM><A href="http://www.msn.com/"><EM>MSN/Hotmail</EM></A><EM> user was automatically given the option to opt in for a free weblog (a la </EM><A href="http://www.livejournal.com/"><EM>LiveJournal</EM></A><EM>)?</EM></P> <P><EM>Here is an extreme scenario. Having single sign-on in place (.NET Passport), every MSN user could comment on anyone else's blog and have his personal preferences follow him or her as he/she travels from weblog to weblog; a problem the rest of the weblog world has yet to solve. </EM></P> <P>Well! I think we have one Virtuoso Blogging Subsystem evangelist in the making here :-) </P> <P><EM>Naturally, their weblogs would seemingly integrate with their IM service/client, and both Internet Explorer and Outlook would get a handy "blog this" feature. Moreover, having billions of MSN users, they could establish </EM><A href="http://langemark.com/node.php?id=82"><EM>de facto technology standards</EM></A><EM> and render existing technologies such as the </EM><A href="http://plant.blogger.com/api/"><EM>Blogger API</EM></A><EM>, </EM><A href="http://www.xmlrpc.com/metaWeblogApi"><EM>MetaWeblog API</EM></A><EM> and </EM><A href="http://www.movabletype.org/trackback/"><EM>Trackback</EM></A><EM> almost useless. At every aspect, they would have an immediate technical advantage over established weblog software.</EM></P> <P>Like you know what .. they would! These APIs simply need a product that demonstrates:<BR>What they are, Why they are useful, and more importantly how they preserve freedom of choice re. IT infrastructure Lampooning -- (L)inux, (A)pache, (M)ySQL, (P)HP|ERL|YTHON|)-ONING -- isn't the solution but potentially the problem.</P> <P>I think we see why OPS needs blogging, ditto Virtuoso !</P>