Friday, July 30, 2004

Which one?

The question is: the Semantic Web or global warming. 6-7 metres if Greenland melts is nothing compared to 100 metres if Antartica melts.

That Song

Mocking Woody Guthrie's Memory "Guthrie wanted credit for what he wrote, but he had contempt for severe legal restrictions on what others might do with it. According to Pete Seeger, in this account (widely acknowledged in the folk world to be true) from the Museum of Musical Instruments, when Guthrie was singing on the radio in Los Angeles during the Depression, he'd mail mimeographed songs to listeners, and wrote on one:
"“This song is Copyrighted in U.S., under Seal of Copyright # 154085, for a period of 28 years, and anybody caught singin’ it without our permission, will be mighty good friends of ourn, cause we don’t give a dern. Publish it. Write it. Sing it. Swing to it. Yodel it. We wrote it, that’s all we wanted to do.”
I'll bet, therefore, that Woody would be horrified -- and angered -- by the behavior of an outfit called The Richmond Organization, which controls the copyright to his music. This humor-impaired crew has gone ballistic and has launched legal threats (CNN) at JibJab."

Thursday, July 29, 2004

Triple Store Bake-Off

Scalability Report on Triple Store Applications "Drawing conclusions about remotely accessible stores is more pertinent to our project requirements. In passing, it seems MySQL 3 performs the most quickly in general as a Jena store, and Kowari shows some great promise with its order of magnitude less time for configuration and its speed of loading data into the store.

Browsing and configuration times were the most pertinent figures to our future work. We don't believe the browsing times are really significant beyond the second granularity, so by that metric, it appears models with a performance between one and two seconds are potentially worth pursuing. All of our network models with caching appear to fall in that range, which is perhaps not a surprise since all of them implement caching in approximately the same fashion.

This leaves configuration time as the more interesting metric - how fast does a store return its results for creating the in-memory cache? For network models, the fastest were 3store and Sesame with files, though using files for the remote store is akin to using an in-memory model for our application, meaning it probably is not feasible for extremely large stores. So 3store and Sesame using MySQL 3 appear to be our best choices."

What would be nice to see is the data and queries being done. Some of the code is here.

There does seem to be some slight errors in the code, like creating a new ItqlInterpreterBean every time which effectively sets up a new RMI session. There are large differences in the testing, like the local "Load Page" is slower than over the network by two orders of magntitude, this may have to do with using the Jena API on top of Kowari.

The "configure" tests appears to be testing different things, because the variation in results including both the network and local tests is from 2ms to 200,000ms. The difference in Kowari local vs Kowari over the network is 2166ms vs 80304ms. Which shows the network version is slower but the only difference should be RMI and 78 seconds seems excessive even for RMI.

And the use of "In-Memory" should probably be "In JVM".

Something not shown in the graphs is the time taken to load the triples:
* Jena w/ Postgres - 971784 ms
* Jena w/ MySQL 4 - 844257 ms
* Jena w/ MySQL 3 - 667138 ms
* Kowari - 139092ms
* 3Store - 213088ms

Overall, it's pretty much what's expected, Kowari can achieve an order of magntitude improvement over SQL databases even over small datasets. Comparing Kowari against an SQL database with 5-10 million statements would show a greater margin of difference. Jena Fastpath and creating our own Model implementation should speed some of these results up.

Wednesday, July 28, 2004

Is that curve a little steep?

Learning curves "The Semantic Web and ARRESTED are extensions built upon the Web and REST. I believe that these will be the future of loosely coupled, document oriented services offered and integrated over the Internet."

First I'd heard of ARRESTED.

The Sound of IR

How-To Turn your iPod in to a Universal Infrared Remote Control " How did we do this? Basically, we “recorded” the “sounds” an infrared remote makes on a PC and then put them on an iPod as songs. Adding a special sound-to-IR converter then turns those sounds back to IR and allows you to use your iPod as a remote control. As an added bonus, it works up to 100 feet. It’s a slick all-in-one unit and we’re never going back to 6 remotes ever again."

Tuesday, July 27, 2004

More Kowari References

* Bipartite Graphs as Intermediate Model for RDF.
* An approach to using the Resource Description Framework (RDF) for Life Science Data "Several open source solution were evaluated but did not meet our performance requirements. To be fair, few projects claim to support such large data sets and most focus on providing advanced features such as inference capabilities instead. Kowari [http://kowari.sourceforge.net/] was the most promising solution, but does not at the time fulfill the last two requirements." The last requirement was maintaining insertion order.
* del.icio.us / url
* RDF APIs (JRDF 0.3 should be out soon, btw).

First Kowari Kontribution

KModel - Client-side Jena Model Impl for Kowari by Chris Wilper. Haven't had a look at it yet but hopefully this can be rolled into Kowari.

Chris is the author of RDQLPlus.

Monday, July 26, 2004

What to do with a 40 Petabyte iPod

A Conversation with Brewster Kahle "Let's consider the question of how much information there is. If you break it down, it turns out to be not that big of a deal. The largest print library in the world, which is the Library of Congress, has about 28 million volumes. A book is about a megabyte. That's just the ASCII of a book, if you put it in Microsoft Word. So 28 million megabytes is 28 terabytes, which fits in a bookshelf and costs about $60,000 right now. Storing books in ASCII is no problem, and the scanned images are more but still affordable.

Scanning books costs between $5 and $20. That's the mechanical cost if you just wanted to scan a book and end up with the images of the pages at high enough resolution that you could print it on a high-end laser printer so it would be a good facsimile at 600 DPI, color—a nice-looking book. So books are doable, in terms of technology.

Now let's take music. It's been estimated that there are about 2 to 3 million albums. In terms of salable units—things that were sold as either 78s, LPs, or CDs—that's the universe of commercial music. If you do the math again, it's a few more of your bookshelves. So you're still not talking about anything daunting.

If you take movies and video, Rick Prelinger [founder of a film collection known as the Prelinger Archives] estimated that the total number of theatrical releases of movies was between 100,000 and 200,000. Again if you do the math, based on DVD quality, you come up with low numbers of petabytes [one petabyte is 1 million gigabytes]."

You'd still have enough storage space left over for your address book, email, and every second of your life in video.

What was also interesting is the comments about the printing of library books rather than borrowing:
"A 100-page black-and-white book with current toner and paper costs in the United States is $1, not figuring labor costs, rights costs, or depreciation of capital. That's an interesting number, because at a buck a book, it turns out that for a library, it could be less expensive to give books away than to loan them. In his book, Practical Digital Libraries, Michael Lesk reported that it cost Harvard incrementally $2 to loan a book out and bring it back and put it on the shelf. This is not figuring in the warehousing costs and all the building costs. This is just the incremental cost of loaning a book out."

D2RMap 0.3

Now with added Kowari. "D2R Map Version 0.3 has been released. The new release supports different Jena model implementations like the Kowari Metastore. ProcessMap methods, connection and driver accessors have been added to the D2R processor. The error handling has changed to Log4J and Ant build scripts have been added. Thanks a lot to Robert Turner from Tucana Technologies for his contributions."

Sunday, July 25, 2004

RDF Mapper 2.0

RDFMapper: an RDF-Based Web Mapping Service "RDFMapper is a web service that searches an RDF or RSS file for resources with geographic locations, and returns a map overlayed with dots representing located resources. Clicking on a dot displays a web page representing the clicked resource (see these examples). Arbitrary images can be treated as maps, so the service can be used for any kind of image annotation.

RSS is translated into RDF before processing (except for RSS 1.0, which is already RDF). For brevity, RSS is mentioned in what follows only when the non-RDF variants of RSS (RSS 0.9x and RSS 2.0) require explicit discussion."

Thursday, July 22, 2004

Tamino goes Semantic (sort of)

Software AG's Tamino takes a 'semantic' step "Whether the W3C vision of the Semantic Web can be implemented in the real world may be debatable. But XML-based semantic technologies do have potential to be useful within the enterprise, contends Mike Champion, senior technologist with Software AG Inc., Reston Va."

"In keeping with Champion's vision of Tamino evolving with semantic technology, he pointed out that the new version offers capabilities for a meta data repository containing definitions of business terms that can be used for 'semantic integration.'

The new version has a special developer's edition and includes improvements made for developers, including:

* expanded XQuery, XPath and text retrieval functions, including a thesaurus;
* additional indexing capabilities for rapid query execution;
* improved handling of standard XML schemas; and
* a redesigned and more intuitive online tutorial."

Also of interest is Perspective on XML: Steady steps spell success with Google.

Two for Thursday

Making RDF Data Available for XML processing "The RDF Data Access Working Group is charged with providing access to RDF Knowledge Bases (repositories, data stores – we will use the term repository) by selecting instances of subgraphs from an RDF graph. This will involve a language for the query, and the use of RDF in some serializations for the returned results. As part of the requirements process, the Working Group has refined this to include Variable Binding Results and local access to RDF repositories."

Defining N-ary Relations on the Semantic Web: Use With Individuals "In Semantic Web languages, such as RDF and OWL, a property is a binary relation: it links two individuals or an individual and a value. How do we represent relations among more than two individuals? How do we represent properties of a relation, such as our certainty about it, severity or strength of a relation, relevance of a relation, and so on?"

If you look closely...

... you can see the lunar research and hosting centre.

IBM Releases Semantics Toolkit

IBM Semantics Toolkit "The semantics toolkit contains three main components (Orient, EODM, and Rstar), which are designed for users of different levels.

1. Integrated Ontology Development Toolkit (Orient), as a visual ontology management tool, is mainly used by domain experts who have limited computer knowledge but who are familiar with specific domain knowledge. It is designed as a set of loosely-coupled cooperative Eclipse plug-ins. Orient can now run on Eclipse 3.0 or compatiable software. Orient is a joint R&D project of IBM China Research Laboratory, Beijing, and APEX Data and Knowledge Management Lab, Shanghai Jiao Tong University.
2. Extended Ontolgy Definition Metamodel (EODM) and RDF Repository Star (RStar) provide a set of programming APIs for programmers and IT specialists. EODM is designed to provide a high performance OO interface for the programmer. Now, it is mainly used to manage ontology-level data with limited size.
3. RStar is used for storing and querying mass data, most of which belong to the instance level. In such a situation, the programmer will use SQL-like sentences to manipulate data."

"RStar provides a high-performance RDF storage and query system. It can takes RDF/XML files or RDF triples as input for loading ontology and instances. It accepts queries in the RStar Query Language and returns results as tables. It supports RDF(S) inference. Currently, RStar uses relational database as its back-end storage."

From, Semantic Web Interest Group IRC Scratchpad.

Wednesday, July 21, 2004

XQuery or SQL

SQLfX: Is It Progress Or Piffle? "“XML is important enough that it’s pulling the SQL market apart,” asserted David, expressing concern about the proprietary solutions that have emerged from the so-called big three database vendors, which have largely ignored David’s ideas. “IBM, Oracle and Microsoft are all very different in how they approach XML support, and each requires training. If you want to combine or pull data from two of those products, you have to learn those two.”"

"“With XPath calls, you go down one leg at a time,” he said, with manual coding required to traverse more than one leg at a time. “XQuery’s FLWR statement has loop statements. But you’d have to do your own correlation between paths and set up a different path call on each leg, and that gets complex.”"

"At the heart of SQLfX, which David expects to release in mid-2005, is SQL’s “outer join” operation. This brings two hierarchical structures together as a means of coping with XML’s nesting. “If you’ve ever looked at two legs of an org chart to see how they’re related, that’s what this does. The user doesn’t have to know the structure; they just need to say what data they need.”"

"“Because XML documents can and often do have a large maximum depth of nesting, with 10 or 15 levels not uncommon,” Melton continued, “a combination of 10 to 15 outer joins would be required to reassemble the data into a hierarchical representation,” which he said is enough to make many SQL engines bog down.

Ironically, David claims to address these inefficiencies with proprietary algorithms."

So, there is a similar debate in the database world about using XQuery over SQL to query XML.

The use case for multiple paths in a hierarchy, is similar to the Optional Match requirement in the DAWG. With RDF, of course, it's graph matching not multiple hierarchies.

With respect to querying RDF, I'm not sure that there should automatically be only one type of syntax. Currently, the DAWG is focused on the use cases and the required operations to meet these use cases. Then I'm sure the group can make a judgement as to how it could be expressed functionally (like XQuery does for XML) or declaractively (like in a BRQL/iTQL way).

Another problem that was brought up in our discussions at work was with the return syntax in XQuery. Applying some of the syntax of XQuery to an RDF query language, it would have to describe returning either a graph or some sort of list of results. This seems to be mixing the binding of results with the presentation of the results.

Paul's most recent blog discusses some of the issues, especially as Network Inference continues to make the claim that RDF is "grounded" in XML.

Monday, July 19, 2004

Adaptive Information

Top Quandrant's White Papers page has a preview of the book Adaptive Information: Improving Business Through Semantic Interoperability, Grid Computing, and Enterprise Integration.

"Semantic Interoperability Framework – A highly dynamic, adaptable, loosely-coupled, flexible, real-time, secure and open infrastructure service to facilitate a more automated information sharing framework among diverse organizational environments."

This was preceeded by:
"One way to describe a system is with a set of buzzwords. A standard set of them has been used to describe the framework. The rest of this section is to explain what is meant by those buzzwords and the problems that are being addressed."

Everyone wants to Integrate

JBoss airs expansion plans "JBoss is looking specifically to open-source, standards-based integration software, called an enterprise service bus, and business process management (BPM) software, which is server-based software for automating complex business processes, Bickel said. Currently, enterprise service bus and BPM software are offered by both large commercial software companies and smaller, specialized ones."

"He noted that adding integration capabilities to the JBoss application server mirrors what other Java server companies are already doing and could help make JBoss more competitive.

"Integration is a critical factor in many of the same projects that people are deploying application servers for," O'Grady said. "It's almost as if integration is a new checklist item for application server projects." "

And something I thought I'd wouldn't see JBoss Application Server gets J2EE-certified.

Ontology Editors

A nicely timed posting, given our recent work on Ontology editing at work, 94 ontology editors on the wall… links to Ontology Tools Survey, Revisited.

"Reference to taxonomies and ontologies by vendors of mainstream enterprise-application-integration (EAI) solutions are becoming commonplace. Popularly tagged as semantic integration, vendors like Verity, Modulant, Unicorn, Semagix, and many more are offering platforms to interchange information among mutually heterogeneous resources including legacy databases, semi-structured repositories, industry-standard directories and vocabularies like ebXML, and streams of unstructured content as text and media."

"The ontology editor enhancement mentioned most often by respondents was a higher-level abstraction of ontology language constructs to allow more intuitive and more powerful knowledge modeling expressions."

And on the second page:
"While achieving full-range ontology editing functionality is a tall order for toolmakers, the capabilities called out above are not the only demands toolmakers face...Some see the gathering demands as an impending crisis for providing editing environments that can accommodate an expanding scope of ontology language responsibilities. Eventually, editors will have to address the ontology language and reasoner functions currently under development..."

XQuery, XDS and Oracle

Integrating Data Using XML Data Synthesis "XDS provides an easy-to-use declarative framework to plug-in and query across the information sources. Instead of writing custom applications to access information from disparate information sources, customers have a choice of using XDS to build their information integration applications."

"There's a lot of similarity between the technologies Andrew links to, together with what Oracle are trying to achieve with XDS and XQuery, and what we're trying to do with business intelligence, data warehousing and data mining. It wouldn't suprise me if we start to hear more about XML, XQuery, RDF and so on in a business intelligence context in the future, and I fully expect these sorts of technologies making their way into Oracle's BI & knowledge management products over the next few years."

I've mentioned Oracle's recent interest in RDF here and here.

Saturday, July 17, 2004

SW is Vietnam

Johnson and FDR "I'm thinking of course of the great commander-in-chief of the Semantic Web, Tim Berners-Lee. Like Johnson, he had a vision for a great society, the HTML web, but let it languish while he fought a no-way-to-win war in Semantic Web Land".

So when did the French try the Semantic Web?