Friday, August 06, 2004

Leveraging Information Goo

Making the Most of Data "To leverage unstructured data -- i.e., information that does not or cannot reside in relational databases -- technology must impose organization where none exists. Analogous to tables and schemas in relational databases, taxonomies and metadata organize and categorize the unstructured world."

"As a result, the data discovery and classification process must be easy enough to happen on a constant basis. Moreover, it must occur without an army of library scientists -- small teams of experts who are actually using the information themselves should be able to create the taxonomies, and define whether the topics and categorization schema are meaningful and important."

Linux Gazette on RDF

RDF and the Semantic Web " RDF is a framework for defining metadata; data that describes data. It was developed by the W3C, based on work by Ramanathan V. Guha, and was originally used in Netscape Navigator 4.5's Smart Browsing ("What's related?") feature, and by Open Directory. RDF followed from work Guha had done earlier, both on the Cyc project, and on Apple's Hotsauce project."

A very nice article from the pre-history of RDF to Web-of-trust, Co-depiction and DOAP.

Thursday, August 05, 2004

RDF Data Access Use Cases and Requirements Updated

RDF Data Access Use Cases and Requirements The July 2004 FTF has more details. Includes a link to XQuery-based RDF Query Languages.

Is RDF a graph at all?

This follows from discussions by Paul and Andrae about RDF being a 3-uniform directed hypergraph (or whatever the syntax is for a directed hypergraph where all the elements in the set of edges have a cardinality of 3).

There are two properties that I think prevent RDF being a hypergraph or more generally a graph:
* The edge set cannot be empty.
* That all RDF nodes are vertices.

A graph with an empty set of edges is a 3-uniform hypergraph due to the elements in the empty set having any properties. However, an RDF graph has no way of expressing a set of nodes outside of them being part of a statement. So there's no such thing as a set of RDF nodes (vertices) and an empty set of statements (edges). RDF/XML and N3 serialization and programming APIs like Jena have no way of creating a graph that only consists of a set of nodes.

The other problem, also stems from the fact that nodes don't exist outside statements, and that's blank nodes. These blank nodes don't exist in the set of nodes unless they exist in a statement first. A blank node is specifically there to be a place holder in a statement. What you seem to do in RDF is take a set of set of statements (edges) and place all the unique items into a set of nodes (vertices). This is the opposite approach you take with a graph. The definition of a hypergraph is: "an ordered pair (V, {E}) where V is a set of vertices and {E} is a set of edges such that {E} is a subset P(V) (power set of V)."

So RDF seems to really be a network - an application of a graph. I think this is part of the confusion people have when they try to visualize RDF. If I was to characterise it: RDF is statement/edge centric and graphs are node/vertex centric. So a good visualization is one of statements rather than nodes - so the approach should be more faceted than ball-and-stick.

Copyright not patents

Open Source Against Software Patents "t is worth taking a look at the history of databases to understand why copyrights, rather than patents, are the right form of protection.

In 1970, Edgar Codd, an IBM computer scientist, wrote a number of papers which developed the idea of a new form of relational database which went beyond the then current hierarchical and network database models. Codd's paper was instrumental in the development of IBM's prototype relational database known as System R (and ultimately in the development of IBM's DB2 database), as well as Oracle, the first commercial relational database. Codd's paper was read by computer scientists Michael Stonebraker and Eugene Wong at the University of California at Berkeley, who subsequently developed the Ingres database. System R and Ingres in turn inspired the development of virtually all commercial relational databases, including those from Sybase, Informix, Tandem, and even Microsoft's SQL Server. SQL (Structured Query Language) became a de facto standard as well as an official standard published by ANSI in 1986 and ratified by ISO in 1987. And then in the 1990s, we saw the emergence of open source databases such as MySQL, Postgres, Firebird, and others. All of these databases benefit from the development of standards that ensure compatibility and interoperability...Every time you search on the Internet, shop online, or book a reservation, you're using database technology. The database industry has grown successfully because it was not locked up in proprietary patents.

Of course, the history of database technology is hardly unique. The same story could be told about spreadsheets, word processors, e-mail systems, graphical user interfaces, electronic shopping carts, search engines, and even the Internet itself. Tim Berners-Lee, the inventor of the World Wide Web, says software patents have "run amok.""

Wednesday, August 04, 2004

Continuations

Native Java Continuations "...all of these things can be done without continuations in the JVM, they just get more convenient when you do have them. In the small is where the ideas really shine -- coroutines, generators, certain types of graph traversals, error recovery (in languages which support continuations you get java's try/catch being a trivial thing to implement, and you get other niceties like "try ... catch { retry two times; fail } finally ... end"."

Hmm, graph traversal.

Stupid Laws

Click at your own risk "Anyone who has copied songs from a CD onto an iPod or computer hard drive has fallen foul of Australian copyright laws, which critics argue are failing to keep pace with technological change. Copying music for personal use is generally OK in the US and Europe. But not in Australia."

"Songwriters and publishers want to change the law and pay for the copies through levies on digital music players and blank CDs. The record labels - which own the recordings - want the law to stay."

Also, mentions the free trade agreement (FTA) with America and bringing DMCA to Australian, EFA has their submission about the FTA's effects. Slashdot has Australia to Get Software Patents and Anti-Circumvention Laws. Andrew Tridgell, author of Samba, has attacked the FTA too.

Tuesday, August 03, 2004

Setting SAIL

A new Sail for Sesame "This document describes the design of a new Sail for Sesame. [The] Goal for this Sail implementation is to offer a scalable and fast persistent repository for RDF data that does not need third-party applications like databases. More specifically: one should not need to install any additional software to be able to use this Sail. This does not include LGPL-compatible, embeddable Java components. Main reasons for coming up with a new Sail are that the currently available memory Sail isn't scalable enough when limited memory is available, and the RDBMS Sail is both complicated to install and too slow in aspects like adding and removing statements."

Kowari is actually a svelt 2.4MB (or so) when Jena, Jetty, and everything else is removed. Without Jena, however, you can't parse RDF. If you are only interested in storing longs that gets down to about 1.5MB. I meantioned Paul's earlier ideas on various persistent triple stores.

Monday, August 02, 2004

OS Cloudscape

IBM to make Java database open source "Big Blue is expected to detail the open-source initiative, code-named Derby, according to a source familiar with IBM's plans. The software will be governed by the open-source Apache Software License and stewarded by the Apache Software Foundation, the source said."

"Cloudscape is a niche product in IBM's overall data information line and has tiny market share compared with its multibillion-dollar DB2 franchise. IBM has used Cloudscape as an embedded data store as part of its Workplace desktop application line."

"The decision to release Cloudscape into open source mimics moves by other proprietary software companies, which have created open-source projects around existing products in an effort to generate more interest in the product and make it easier for programmers to access it. At LinuxWorld next week, Computer Associates International will release its Ingres r3 database, a product with limited market share, into open source."

"Putting an existing product into open source is not a surefire recipe for stimulating usage or sales, said Michael Olson, president and CEO of Sleepycat Software, which offers its own open-source database."

Google and the Semantic Web

How Google Will Have Achieved The Semantic Web This is old and has been contradicted by Google founders themselves:

"He [Sergey Brin] basically said he doesn't believe in the semantic web as a set of linked RDF data-structures. His basic argument is that the structure of natural language and what it presents is much much richer than meta-data tagging schemes. Clearly, Google's understanding of natural language is unique, but there still is a need for machine readable APIs for data on the Internet."

The ideas that Paul Ford puts forward are pretty interesting and illustrate the usefulness of some of the ideas of the Semantic Web; except maybe the reliance on a central authority like Google. The Semantic Web is like the Web, not like Google.

Also, I (well Google) found a new link to "The Anatomy of a Large-Scale Hypertextual Web Search Engine" written by Sergey Brin and Lawrence Page for WWW7.

July 2004 issue of SIGSEMIS

I knew this was coming, but my lack of an internet connection meant I couldn't check it or read it. The next issue is ready for download in PDF format.

Includes an interview with Eric Miller:
"Freeing the data from the applications that created them and managing this information directly relates to a strong return on investment. The predominant skepticism I hear is perhaps the most is 'if I have XML why do I need RDF'. It's interesting however to see some of the skepticism dissipates after organizations learn from experiences (often times painful ones) that agreement on syntactic conventions are often overly brittle and not adequate for the effective management of data."

"The WWW2004 conference had a similar impact on me with regards to the Semantic Web. The technologies and toolkits are maturing. Semantic Web applications are becoming far more prevalent. Novel ideas for how these technologies may be used are happening on a daily basis. It was quite a week!"

Danny Ayer's "The Missing Webs":
"...there is a lot missing from the current Web. Those gaps can be filled in part using a logic-based framework."

It also includes lots of KM based articles, the ones I found interesting: "The Road Ahead to Competency-Based Learning Activity Selection: A Semantic Web Perspective", "Reflection on the future of knowledge portals", "Reflection on the future of knowledge portals", and "Methodologies for the Semantic Web: state-of-the-art of ontology methodology".

The book review, "Developing Semantic Web Services", has a link to Semantic Web Author a "...Multi-Markup Language (XML, RDF, and OWL) Validating Parser, Editor, and Web Development Environment."

What real hackers do

Great Hackers "If companies want hackers to be productive, they should look at what they do at home. At home, hackers can arrange things themselves so they can get the most done. And when they work at home, hackers don't work in noisy, open spaces; they work rooms with doors. They work in cosy, neighborhoody places with people around and somewhere to walk when they need to mull something over, instead of in glass boxes set in acres of parking lots. They have a sofa they can take a nap on when they feel tired, instead of sitting in a coma at their desk, pretending to work. There's no crew of people with vacuum cleaners that roars through every evening during the prime hacking hours. There are no meetings or, God forbid, corporate retreats or team-building exercises. And when you look at what they're doing on that computer, you'll find it reinforces what I said earlier about tools. They may have to use Java and Windows at work, but at home, where they can choose for themselves, you're more likely to find them using Perl and Linux."

Yeah, real programmers go home and boot up Linux and write some really neat regexes in Perl. Yeah ;-).

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?

That was quick

Explanation of the Network Inference DAWG Strawman Objection "...the working group outright rejected any requirement or objective which expressed any commitment, at any level, to XQuery.

We believe that the DAWG working group is making an egregious error by rejecting any level of commitment to XQuery at this critical juncture."

"Regardless of outcome, Network Inference will remain devoted to our customer feedback by continuing our XQuery support for query-driven inferencing across RDF and OWL data inside our Cerebra Server product family."

Friday, July 16, 2004

Semantic Web and MDA

The July edition of the MDA Journal "...the only thought I had as to the potential for integrating the Semantic Web and MDA was the idea a rather obvious one to MDA aficionados that MOF metamodels of the Semantic Web languages would help to integrate ontologies into the MDA world. I did not appreciate the role that reasoning could play in making MDA more scalable."

"As ontologies move into industry they need to coexist with industrial metadata. We do not want ontologies to become yet another silo in a fragmented metadata landscape. Since much enterprise tooling is moving toward MOF-based metadata management, a minimal goal would be to make it possible for MOF-based tools to physically manage ontologies using the common MOF mechanisms."

"In order to achieve the goal of using MDA and the Semantic Web together, the OMG issued an RFP that calls for standardizing the following:
* A MOF metamodel for ontology definition
* A UML profile for ontology definition
* A mapping between the UML profile and the MOF metamodel".

Found by “Semantic Web” applied.

RDF Querying going to the DAWGs

The most recent DAWG face-to-face raised some interesting issues with respect to using XQuery for querying RDF. Jim Hendler has a response:

"You show RDFS/OWL/Rule query langauges as somehow being more easy inXquery, but again I think that is because you are assuming these things will be kept in their RDF/XML documents, or in APIs that respect the "boundaries" of those. I already see many applications moving towards multiontologies w/linking, and that seems to me to argue that we simply don't know yet which of these models are better."

The original proposal suggests that we're going to need a query language for OWL, Rules and RDF, which probably won't happen and it's suggested without proof. It also suggests that because RDF can be serialized in XML that it has something in common with XQuery, which is untrue. The standard RDF/XML serialization can have multiple forms of the same RDF graph. The same RDF query will work across different RDF/XML serializations, because it is operating on the same data model, this isn't true for XQuery.

It reminded me of the recent anti-XQuery article, "If You Liked SQL,You'll Love XQUERY".

Fabian is saying that the relational model was a simplification of graph theory. In this respect relational theory and RDF have much in common, much more in common than XML.

At a syntactic level, query languages like RDQL, iTQL and other SQL-like RDF query languages are leveraging off a legacy of SQL, Datalog and other similar languages. This is something that XQuery lacks as well. Do we really want FLWOR and Conditional Expressions in our query language?

Fabian also mentions NULLs, a continual pet peeve of the anti-SQL crowd, it's good to see XQuery avoids this. Something that I hope an RDF query language avoids as well.

Interestingly, Don Chamberlin's XQuery tutorial is quoted both by Fabian and in Jeff's proposal.

Andrae is also blogging some of this as well, "Jumping the gun".

Thursday, July 15, 2004

New co-Chair of SW Best Practices

"This is to inform you that as of 14 July 2004, David Wood of Tucana Technologies joins Guus Schrieber of Ibrow as co-Chair of the Semantic Web Best Practices and Deployment Working Group (SWBPD) [1]. We wish to express our thanks to David and Tucana and to Guus and Ibrow for their generous support of the Semantic Web Activity."

Fwd: W3C Announcement: David Wood, New Co-Chair of the Semantic Web Best Practices and Deployment Working Group

Querying with Rules

ISWC 2004 Research Track: Accepted Papers the first paper titled "Query Answering for OWL-DL with Rules", when plugged into Google gave two interesting papers:
* Answering DL Queries using Deductive Database Techniques and
* Rules and Queries with Ontologies: a Unified Logical Framework.

This is appropriate for our current TKS work, see Paul's blog for more details.

Everything New is Old Again

A short while ago I wrote, Accessing vs Naming Models. I was unaware that @semantics had done a presentation called "A naming mechanism for the RDF model" which lists the RFCs: 3401, 3402, 3403 and 3404 (both interesting) and 3405.

There's also the older, yet still relevant THTTP specification for encoding resolution into a HTTP request.

I was aware of the Handle System, which is for documents, and has its own RFCs including RFC 3650.

I think I got rid of all the times I tried to type RFC and my hand spat out RDF.

Wednesday, July 14, 2004

Supersonik

MOLVANIA DISQUALIFIED FROM EUROVISION! "The tiny Eastern European republic of Molvania was disqualified from the Eurovision Song Contest this year.

Zladko “Zlad” Vladcik was to perform his very popular techno-ballad, “Elektronik – Supersonik” - described as “a melodic fusion combining hot disco rhythms with cold war rhetoric”."

"Hey baby, wake up from your asleep
We have arrived on to the future,
And the whole world has become...
Electronic... Supersonic...
Supersonic... Electronic"

Champagne comedy indeed...by Working Dog.

Via Metafilter.

Discretization

semantic what? "people don't want to manage. people want to interact. applications that want users to enter metadata that enable management, at least in the consumer marketplace, are doomed to failure."

And while a little unreadable, The unbearable inevitability of discretization is an interesting rant about the Semantic Web and all things in general:
"Evolutive efficiency also applies to the Semantic Web. Luckily for us, it benefits from two distinct evolutionary avenues. It indeed gains effectiveness both from cleverer agents and from semiotically-complete ontology representation formats (relational databases, XML/RDF, OWL, UML, etc.). Therefore, with some site correctly implementing the Semantic Web-enabling technologies, one is right to argue that the Web already shows some signs of semantic intelligence.
Discretization is the fundamental mechanism behind any form of cognition. Solve et coagula-based computing rules!"

For XML Users

An no-nonsense guide to Semantic Web specs for XML people (Part I) "The Semantic Web has a serious problem: the XML people don't understand it.

They think it's an utterly complex way to write metadata that you can do with simple namespaces. The two worlds (despite being both hosted inside W3C) don't talk very much. Many (if not all) W3C folks are all in the RDF camp (and have been there for a while) and they see XML as a half-baked attempt to solve issues that RDF already solves. Unfortunately, not having been in the XML camp at all, they have no way to communicate with the other side.

The XML camp, on the other hand, thinks that they know how to build things that work, while the RDF people are all sitting in their ivory towers telling them that what they are doing is wrong, but without understanding their real-world needs.

As it normally happens in a debate, both are right and both are wrong. "

Tuesday, July 13, 2004

Nature nuturing Oracle

A presenation by Nature Publishing Group looking at Oracle's NDM as an RDF store, the last slide:
"NPG and Oracle investigating the suitability of the NDM to store and query
RDF-encoded information
o Storage looks OK
o Can hold directed labelled graphs
o Allows URIs, literals and blank nodes
o Can include provenance information

Querying may need more development:
o Can extract sub-graphs but performance and scalability need to be tested
o RDF/XML import and export would be desirable
o Support for RDFS- and OWL-based inferencing"

Mentions Urchin.

Monday, July 12, 2004

Ontologies for the Web

Leveraging Ontologies: The Intersection of Data Integration and Business Intelligence, Part 2 "The real significance of ontologies - leveraging the reusable aspects - is within vertical domains where the use of common meta data, services and processes has the most worth. Once we get semantics under control within vertical systems (more often, a collection of systems), data integration, or linking a common set of semantics to back-end systems, won't be as daunting as this process is today. What's more, the application of standards such as Semantic Web and OWL will make ontologies that much more attractive."

Sunday, July 11, 2004

N3QL

N3QL - RDF Data Query Language "N3QL is an implementation of an N3-based query language for RDF. It treats RDF as data and provides query with triple patterns and constraints over a single RDF model. The target usage is for scripting and for experimentation in information modelling languages. The language is derived from Notation3.and RDQL."

Part of CWM.

WebMethods and RDF

WebMethods, for One, Believes in UDDI " But UDDI doesn’t paint the whole development picture, which Glass believes may partially explain why its adoption has been slow. “In its current version, UDDI is not well suited for metadata about everything. If you’re building an application out of parts, Web services is only one portion.” Others might include portals, portlets, schemas and business processes, among other things.

Glass said WebMethods has been looking at specifications for publishing metadata of other types, such as the W3C’s Resource Definition Framework (RDF). “This looks promising as a way to represent a broader array of metadata than simply that of Web services. And in [the forthcoming] UDDI version 4, there’s a lot of work on leveraging RDF.”"

Friday, July 09, 2004

Pay me!

Eternal Refactoring "Some may consider Semantic Web developers to be very much concerned with the abstract, but a recent thread shows that good old materialism is as good a driver for progress on the Semantic Web as anywhere.

Many of us, no doubt, employ the wishlist facility on Amazon to communicate our birthday needs to distant relatives. The decentralization of this seems like a natural target for RDF-savvy developers."

More metadata than data (again)

Anyone who has done any work on RDFS/OWL won't be surprised by this, Behind the Scenes at Yahoo Labs, Part 2:

"I would claim that there is more implied data (or inferable meta-data) than "raw" data on the web, and that we are barely scratching the surface of it. Today, all search engines are scraping for some simple forms of implied data: language, locality, etc. What's missing from this list is a nearly infinite collection of relationships that are obvious to most any human reader but extremely difficult to infer from a single document. The reason why implied data is so hard to identify is because, in the aggregate, it forms our collective cultural wisdom."

Thursday, July 08, 2004

Oracle's RDF Store

Create a logical Network Data Model in Oracle and it would be great to store RDF. That was what I thought after reading "Re: Chemistry and the Semantic Web".

The attached document is based on articles available from Oracle. An indepth description is available in "Network Data Model Overview" (free registration required).

There are various schemas defined for storing networks which includes:
"NODE_NAME VARCHAR2(32) Name of the node.
NODE_TYPE VARCHAR2(24) User-defined string to identify the node type."

The schema is obviously not designed to store RDF unlike other RDBMS mappings.

One difference is their flexibility in storing different graphs and giving links a "cost".

Another difference is their nodes and links are typed as strings; this looks like it would limit the effectiveness of data type operations. Querying for all nodes that are numbers between two values or dates between two ranges is going to be costly compared to dedicated data type handling. That's apart from the obvious difficulty in trying to put everything into a VARCHAR2(24).

Unless they have optimised the query layer specifically for the task, which might be case, it will also incur the costs of joining against the same table many 10s or 100s of times.

It does have some neat operations (like shortest-path), a Java API, PL/SQL integration and of course it integrates well with existing Oracle databases.

Tuesday, July 06, 2004

Kowari 1.0.4 Released

New in this release (links to kowari.org will be inside a frame):
* Walk and transitive constraints.
* Backup individual models.
* Automatic reconnect of the iTQL Swing UI when the server restarts.
* Constructing Jena and JRDF with sessions rather than databases to allow multiple access.
* Sub-queries and the greater-than/less-than constraints are much faster.

Download here.

Monday, July 05, 2004

A Simpler Time

I read recently that someone thought animation was the key to Java's early success. JAVA TECHNOLOGY: THE EARLY YEARS "Next, Gosling and Gage pushed the audience over the edge with an animated line-sorting algorithm that Gosling had written.

In each of three sets of horizontal lines of random lengths, the demo sorted the collection by size, from shortest to longest, by actually moving them up and down in the browser. The audience had never seen anything but static images in a browser before this: The lines were moving, as if being sorted by unseen hands!

Suddenly, everyone in the room was rethinking the potential of the Internet. Far from the crash-and-burn scenario Gosling had first envisioned, his demo had jolted a very influential audience off their seats, and they were delivering enthusiastic applause. And within this technology-entertainment crowd, word would spread quickly."

That draw dropping demo still runs, too.

Sunday, July 04, 2004

Java Rules

The Mandarax Project "Mandarax is based on backward reasoning. This fits perfectly in a computing landscape based on a pull model (e.g. a transaction initiated from a web site). Data (e.g., from relational databases) can be integrated on the fly at query time, no replication is necessary (see the manual for a more detailed discussion of "Mandarax vs. RETE")."

The manual says: "The mandarax inference engine uses backward reasoning, and the reference implementation uses an object ­oriented version of backward reasoning similar to the algorithm used in Prolog. On the other hand, most commercial rule systems such as ILOG and popular open source solutions like CLIPS and JESS use forward reasoning, in particular an algorithm called RETE. This algorithm keeps the derivation structure in memory and propagates changes in the rule and fact base."

A description of the RETE algorithm is here.

Desktop Metadata

RDF For Desktop Metadata? "There is an article "Metadata for the desktop" that suggests that RDF should be used to describe data in desktop environments. This is an interesting idea. RDF is already used by Creative Commons to attach license metadata to its works. Mozilla also supports it. RDF was designed for the web, but can it also find its way to the desktop? And what metadata is most important to describe?""

Comments link to: WinFS is not filesystem, Spotlight, rdf semweb winfs, Haystack, Questions about Longhorn, Pike and libferris.

Friday, July 02, 2004

Blast from the Past

The Ur-Quan Masters "The project started in August 2002, when Toys For Bob released the partially ported sources of Star Control 2 3DO version to the fan community. Our goal is to port this wonderful game to current personal computers and operating systems. It is and will remain 100% free of charge, and anyone can contribute to the project and thus help make it even better."

Many wasted hours spent playing this the first time...

Thursday, July 01, 2004

Updated Kowari Site

The new kowari.org web site is up. The only negative is that it's now framed based; the website equivalent of SOAP. The positive is that it's now more up-to-date and includes documentation for Kowari 1.0.4. There's more to come including the Javadoc and the Jena tutorial.

Word! The DOPE Project

A recent IEEE article, Exploring Large Document Repositories with RDF Technology: The DOPE Project "(Drug Ontology Project for Elsevier) explores ways to provide access to multiple life-science information sources through a single interface."

"Current per-formance problems stem mostly from query procedures between the Sesame system and the Collexis-SOAP interface. We plan to address these problems by expanding DOPE with other data sources and thesauri."

Download and project page here.

FOAF next for Feedster?

An Interview With Feedster’s Scott Rafer, Part II "All this semantic web stuff is derived from a file format called RDF. RSS is a very simple version of that. The next one to gain any popularity is FOAF, which stands for “friend of a friend.” Under the hood, several of the social networks, LinkedIn, Tribe, maybe a couple of the others, are FOAF-based, and it’s very easy for them to start turning all those relationships into feeds, if they want. And that’s what I personally want, given my own habits. I know a lot of people in my “second degree” in LinkedIn. If I could have a feed of my second degree, as it increases, so I could go into my RSS aggregator and just hit links for “Yes, I know that guy” or “No, don’t know him,” they would end up with a much richer database, knowing more about me and my network. It would be really time efficient, and I’d be even more likely to pay for their service when they start charging."

RDF Query Languages

Design Evaluations Links Includes: SeRQL, RDQL, REX, iTQL, Algae2, and TriQL. Also links to Versa, BRQL and XsRQL (interesting given a recent anti-XQuery link).

RDF - Just don't mention the Semantic Web

Metadata for the desktop "My premise then is that more metadata is required to create a usable desktop for users and manage the increasing volume of information stored in our homes. That's a conclusion other people are agreeing with, too. Microsoft's next-generation operating systems will ultimately include WinFS, a file system supporting the attachment of arbitrary metadata to files. Mac OS X is acquiring similar functionality. ReiserFS has been trying to do it for ages. Closer to GNOME, there are projects like Dashboard, Storage and iFolder."

"First introduced in 1998, the W3C's Resource Description Framework is a computer-processible way of describing things. And that's about as simple as it gets. Despite being mired for some time in controversy over an awkward XML expression, the current view and consensus over RDF is in terms of its data model. The data model is simple and expressive, and is the best starting point for understanding RDF."

Tuesday, June 29, 2004

Jena Ported to .NET

JenaNet "This is a port of the Jena2 Semantic Web API to the .NET framework. We will be converting the Java API into the .NET framework so as to gain the best Semantic Web engine possible."

Sun sponsored XML for Swing

JDNC At last.

Spotlight - Metadata Done Right?

Mac OS X Tiger: Search Technologies "The metadata engine makes searching smarter, more flexible and powerful by indexing the descriptive informational items already saved within your files and documents. Metadata describes the “what, when and who” of every piece of information saved on your Mac: the kind of content, the author, edit history, format, size and many more details. Most documents, including Microsoft Word documents, Photoshop images and emails, already contain rich metadata items. By using this indexed information for searching, you can tap into tremendous power and accuracy for refining search results."

The list of file formats are fairly standard but the cool stuff is probably the API layers. Part of Spotlight. See also, Does Spotlight == BFS?.

The example screen shots show rendering Slashdot's RSS feed and they also claim support for Adobe Photoshop. So that seems to suggest a limited support support of RDF - RSS 1.0 and perhaps XMP. Back in 2003 I found mention of metadata in OS X; it's a shame it's taken this long ;-).

And the new 30" monitors save you money. Buy 10, buy 100...

Monday, June 28, 2004

Radar Networks Decloaks

Minding the Planet: From Semantic Web to Global Mind "As the global mind develops it will initially be focused around making information more useable. But that will be just the beginning. Already a new generation of tools that will bring the power of distributed intelligence to the desktop and the enterprise are being developed in labs such as HP, Cycorp and Network Inference. In addition to these projects, my company,Radar Networks has developed a complete platform in Java for developing and deploying Semantic Web applications for the desktop, enterprise and Web – most of our platform will be released as open-source code in 2005 as part of a research project we are working on for SRI (more news about this project in the future!). Following the initial open-source release, we plan to offer a commercial version of the Radar Platform as well as related applications, services, solutions and support for enterprises and developers."

"Of course for this to work lots of new infrastructure is required. There are also numerous issues that arise as soon as one digs deeper into the subject -- issues related to data synchronization, privacy and security, ontology integration, policies and many other subjects. My company, Radar Networks' software platform (to be released as LGPL in 2005) will provide an open-source framework that solves many of these problems and will enable the open community to collaborate to solve any that remain or are found in the future."

Danny beat me to it.

Accessing vs Naming Models

We recently had a use case where the directory where the triples were persisted moved to a different machine or where the host name of the machine frequently changed (moving from network to network).

Our existing scheme for naming models takes the form:
protocol://hostname/servername#modelname

Which usually becomes:
rmi://www.kowari.org/server1#model1

This is pretty brittle given the above use case. We've known for quite some time that our model naming scheme confused two distinctive properties:
* How to access the model, and
* The name of the model.

By ignoring this issue we could get around to adding views, security and the iTQL FROM and IN clause.

However, we now have the need to uniquely identify the model as well as continuing to support the old naming scheme. The currently proposed idea is to first map the URL of a model to a URN so that:
<rmi://fully.qualified.hostname/server1#model1>

Becomes:
<urn:fully-qualified-hostname:server1:model1>

This also allows us some added flexibility such that you can now have names for RSS feeds and external models that can be described using:
<urn:slashdot-org:news-rss> <access> <http://slashdot.org/news.rss>
<urn:my-com:server1:hr> <access> <rmi://localhost/server1>

The second entry refers to a local copy, which can be changed to:
<urn:my-com:server1:hr> <access> <rmi://my.com/server1#hr>

Which will access the live version of the database. It will break some of the current functionality in iTQL. This is where it creates a model on the fly if it happens to use an external model. For example:
select $s $p $o
from <http://slashdot.org/rss.xml>
where $s $p $o ;

This downloads the RDF and puts it in a model. Subsequent calls will be done against the local model. Also, iTQL doesn't implicitly have a default host so you must give it another way of giving the connection.

The simplest way is to create the mapping when creating a model:
create <urn:slashdot-org:rss-feed> <http://slashdot.org/rss.xml>

In the future, resolvers will have configuration settings so you could make statements such as:
<urn:slashdot-org:rss-feed> <updateOnlyIfChanged> <every 5 minutes>

Once created, it can then be accessed in the FROM:
select $s $p $o
from <urn:my-com:server1:hr> and <urn:slashdot-org:rss-feed> <rmi://my.com/server1>
where $s $p $o ;

This will do a set operation over the two listed models as defined in the Kowari/TKS server at "my.com".

However, this can get verbose so we'll probably borrow something from RDQL and the like and add a USING clause:
select $s $p $o
from <urn:my-com:hr> and <urn:pi-com:cal>
where $s $p $o
using <rmi://my.com/server1> ;

Or alternatively, we could set the server before doing a query using:
set server <rmi://localhost/server1> ;

To turn it from a local query to a distributed query (a TKS only feature):
set server <rmi://my.com/server1> for <urn:my-com:hr> ;
set server <rmi://pi.com/server1> for <urn:pi-com:cal> ;

Sunday, June 27, 2004

Illegal iPod

Dirty rotten inducers - the law the IT world deserves? "It may soon be possible to carry around an AK-47 assault rifle and an iPod with you down the street - and be arrested for carrying the iPod."

Prelude to a Fake Complaint "Apple's iPod music player seemed particularly vulnerable to attack. Any major record label could bring a strong lawsuit against Apple for "intentionally inducing" infringement under this new law with the iPod, both because it's plausible to argue that having an iPod enhances the lure of using P2P to download music (gotta fill all that space!) and because all the major record labels still believe that private sharing of songs from your CDs with friends is copyright infringement. We still disagree with the labels on these points, but the reality is that no court has yet convinced them that their legal theories are flawed. We also threw in Toshiba for making the iPod's hard drive and CNET for showing people how to move the iPod's music files."

Saturday, June 26, 2004

Jena Jumble

* SWeDe "...OWL editor [and] integrates existing tools like the OWL Validator, Kazuki (OWL to Java code generator), and DumpOnt (Ontology Visualizer)." See also, using Kazuki (requires Jena).
* Introduction to Jena "RDF is increasingly recognized as an excellent choice for representing and processing semi-structured data. In this article, Web Developer Philip McCarthy shows you how to use the Jena Semantic Web Toolkit to exploit RDF data models in your Java applications."
* BRQL "This document describes the Bristol RDF Query Language, or BRQL (pronounced 'burkol'), designed to meet the requirements and design objectives described in the W3C RDF Data Access Working Group (DAWG) document RDF Data Access Use Cases and Requirements (and its working version). This query language is based on RDQL Member Submission."

Friday, June 25, 2004

Kowari Bloggers

Kowari "Even though I’ve never tried it, I already have quite an attachment for the Kowari triplestore, due to reading More News from Andrew Newman and Paul Gearon’s remarkable Working Notes - perhaps the most special-interest blog I’ve come across (recently featuring their battle with unclosed Tuples…)"

This seems like the ideal time to mention that Andrae is joing the Kowari blogging craze with Etymon.

Kowari on XML.com

A First Look at the Kowari Triplestore "Kowari is a solid tool created by an enthusiastic, knowledgeable team. That said, it's not for everyone: the architecture of the application is clearly focused on the server, and developers looking for an embeddable RDF store for desktop apps will likely want to look elsewhere, unless they are willing to add several megs to their applications. Kowari's dependence on Java is another possible sticking point for those developing tools using other frameworks. Documentation is brief and unfinished, but what's there is useful for the adventurous."

Updated documentation is going to be released to coincide with 1.0.4. Hopefully, this should make it a little more accessible to most.

"According to Tom Adams, "Our triplestore is really a quad store, the 4th tuple being the group/model that a triple belongs to.""

Apparently, I made this quote but it doesn't matter.

Paul said, "a better name might be "platypus"" - that was already taken by a previous project.

Thursday, June 24, 2004

Semantic Clarity

Two related pieces dealing with integration and the Semantic Web.

Triple-based Computing "[Johanson & Fox, 2004] expect ubiquitous computing as the “killer app” for tuplespace-based computing because of the model’s portability, extensibility, flexibility, and ability to deal with heterogeneous environments...Since applications are decoupled in reference, time, and space many issues in protocol and process alignment disappear because they are provided by the underlying middleware that implements the tuplespace."

Semantic Web bringing clarity to the Universal Server concept "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:

1. Serve up Semantic Data from existing data sources
2. Provide execution endpoints for Web Services
3. Provide an instigation point for events that trigger Service Orchestratio

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)."

Wednesday, June 23, 2004

D2RQ

D2RQ - Treating Non-RDF Databases as Virtual RDF Graphs "Using D2RQ you can:
* access information in a non-RDF database using the Jena model API.
* query a non-RDF database using RDQL or find(spo).
* do RDFS and OWL inferencing over the content of a non-RDF database using the Jena ontology API.
* publish the content of a non-RDF database on the Semantic Web using the Joseki RDF server."

D2R is already integrated into TKS 2.0 and hopefully we'll get D2RQ in there. Good to see it using RDF for configuration.

Tuesday, June 22, 2004

News Services go RDF

Adobe and IPTC Collaborate on the Implementation of Metadata Standards for News Organizations " Adobe Systems Incorporated (Nasdaq:ADBE) today announced that it is collaborating with the International Press Telecommunications Council (IPTC) to extend the capabilities of IPTC metadata through use of the open-standard, Adobe XMP (Extensible Metadata Platform). Based on World Wide Web Consortium (W3C) standards, XMP is a specification expressed in XML that provides a standardized framework to capture and manage metadata, the information that describes files.

Photographers and news services around the world use IPTC metadata schemas to embed identifying characteristics such as captions, credits, location and time and dates within digital photos and scans. This information can be read by content management systems, used by virtually every newspaper publisher, to review and identify photos they want to publish to accompany a story. Adobe and IPTC also announced plans to develop future implementations that will be accessible via the Adobe(R) Creative Suite, and related point products including Photoshop(R) CS, through a customizable metadata user interface. This is intended to streamline the data capture process and allow relevant IPTC metadata to be preserved as the file is utilized across news and derivative workflows. "

Eve of Sleepycat

Apache Leader: Berkeley DB Java Edition Eases Hand-Rolling "In the case of the Apache Directory Project, Karasulu says the project members are so convinced that Sleepycat's pure-Java database will become the "de facto standard Java API for manipulating B-tree databases" that they're basing the project's pure-Java LDAP directory server, called Eve, on back-ends built using Berkeley DB Java Edition."

"Who's building applications in Java? Does it span the spectrum?

I think so. People can use a B-tree anywhere a fast, relatively constant time lookup is needed, regardless of the size of the data. This happens all over the place.

We're actually in the process of building an embeddable, pure-Java LDAP server called Eve. She's a beaut, introducing triggers and stored procedures to the world of LDAP. "

" What do you think of Berkeley DB Java Edition's performance capabilities?

It uses NIO [new input/output], which should have a considerable effect on performance due to the way memory is accessed. The NIO packages are new APIs that allow Java to have the power of C where IO is concerned. These APIs are new in the 1.4 JDK and make Java-based servers much more effective. Furthermore, a binding API makes mapping objects to records very intuitive while avoiding the overheads in serialization.

Other implementations often leave this up to users, who often use serialization and wind up paying for it with a massive performance hit. "

There was also a recent comparison between C++ and Java showing Java is faster in all but three tests.

The Next Web - Web Services

The Third Web "Web services represent the third attempt to rebuild enterprise IT on the standards-based foundation conceived by Tim Berners-Lee. To realize that vision, vendors and IT pros must resist some familiar temptations and avoid some traditional mistakes...But it would be a sad repetition of past errors if IT vendors seized upon the success of Web services as their latest excuse for locking customers into product stacks—perversely building proprietary structures from standards-based components, for example, by devising proprietary XML schemas for their applications and documents."

Scaling Taxonomies

Verity Announces New Content Classifier (with screenshot) "VCC is based on roles and rules. Roles include taxonomy experts, subject matter experts within the organization (e.g., chemists, engineers, human resources staff, etc.), editors, and publishers. The company says the workflow feature allows taxonomy and classification management to be distributed to subject matter experts who know the content, as well as to knowledge engineers who know and understand taxonomy development. Different people who serve different roles are assigned different permissions to alter categories. The company claims that VCC is the only software that enables such real-time collaboration between knowledge workers and subject experts.

VCC uses rules to define how documents should be classified. Once taxonomies have been set up, VCC automatically classifies new documents as spiders discover them. The customer can control automatic classification by defining how well VCC thinks a document matches a category. For instance, if VCC’s confidence level for a candidate category exceeds 70 percent, then automatically publish it into that category; if not, route the decision to an assigned knowledge worker. Verity calls this “automated classification with manual oversight.”

Verity worked with DuPont to develop VCC. Whitney said the company uses VCC to manage a 25,000 node taxonomy. Internal users include “everyone from a bench chemist to a knowledge engineer—whoever.” He said VCC provides DuPont with “frictionless review between highly specialized knowledge workers, many with PhDs, and the knowledge engineering staff.”"

Monday, June 21, 2004

Semantic Web for 5th Graders

This was an interesting find using the Google Catalog to search for the Semantic Web.

It says: "Twenty-two lessons show students how to build a vocabulary...(KWL, SQ3R, semantic web making, outlining)...". Of course, it doesn't look like it's *the* Semantic Web.

Searching for Java by itself reveals some interesting results. Searching for Java in the Computers category reveals no hits; the category function seems to be broken.

Thursday, June 17, 2004

Global Scalability

Semantic Web: Hype-Bubble or an interesting research area? Links to a comment made by on the SUO list "In 6 years (1998 to 2004) with ENORMOUS hype and funding, the semantic web has evolved from Tim BL's book to a few prototype applications, which are less advanced than technologies of the 1970s such as SQL, Prolog, and expert systems -- and they're doing it with XML, which is far less advanced than LISP, which was developed in the 1950s."

There are many interesting responses in the thread including one from Frederick Kintanar: "...I do think the Web makes a big difference between earlier knowledge representation efforts and Semantic Web initiative. A big one is global scalability, where the key element is URI's (and their already deployed global acceptance). Hypertext was already a relatively mature technology in the research community, when Tim Berners-Lee hit upon what is needed to make it scalable: global identification..."

And no this isn't scaling a single agreed upon ontology across the Web.

Spicy Searching

IBM expands search push with Masala "The computing giant, based in Armonk, N.Y., is gearing up to release Masala, a new version of its DB2 Information Integrator software that will let corporate employees retrieve information from databases, applications and the Web at the same time. Subsequent improvements will include a data-mining component code-named Criollo."

"Microsoft, though, isn't standing still. It is working on its own distributed search plan with Longhorn and a new release of its SQL Server database, code-named Yukon, and plans to build its own Internet search service. BEA Systems and others are working on similar technology."

"Information Integrator is a software layer than can pull data from different software--Oracle databases, Microsoft Excel, IBM's own DB2 and Lotus databases--with a single query. IBM and other companies are touting this "federated" database approach, in which searches tap into spread-out data sources, as a potentially cheaper alternative to shipping and storing large amounts of information in a single database."

Ruined by Developers

How Microsoft Lost the API War Most of this is standard "how the Web has won" but there were a couple of interesting snippets.

"WinFS, advertised as a way to make searching work by making the file system be a relational database, ignores the fact that the real way to make searching work is by making searching work. Don't make me type metadata for all my files that I can search using a query language. Just do me a favor and search the damned hard drive, quickly, for the string I typed, using full-text indexes and other technologies that were boring in 1973."

"RSS became fragmented with several different versions, inaccurate specs and lots of political fighting, and the attempt to clean everything up by creating yet another format called Atom has resulted in several different versions of RSS plus one version of Atom, inaccurate specs and lots of political fighting. When you try to unify two opposing forces by creating a third alternative, you just end up with three opposing forces. You haven't unified anything and you haven't really fixed anything."

Sunday, June 13, 2004

Loom and Drools

Loom is now open source (a BSD-like license). "Loom is a language and environment for constructing intelligent applications. The heart of Loom is a knowledge representation system that is used to provide deductive support for the declarative portion of the Loom language. Declarative knowledge in Loom consists of definitions, rules, facts, and default rules. A deductive engine called a classifier utilizes forward-chaining, semantic unification and object-oriented truth maintainance technologies in order to compile the declarative knowledge into a network designed to efficiently support on-line deductive query processing."

An article theServerSide.com introduces "...the JSR-94 Rules Engine API and an Open Source product called Drools, the forerunner implementation of this up-and-coming technology...it can scale to incorporate and execute hundreds of thousands of rules in a manner which is an order of magnitude more efficient then the next best algorithm." Drools Homepage.

WSDL2OWL-S 1.1 Released

WSDL2OWL-S "...provides a partial translation between WSDL and OWL-S. The results of this translation are a complete specification of the Grounding, partial specification of the Process Model and Profile and Daml Class file, when at least one of the input and output messages are of XSD Complex type." Download it here.

Friday, June 11, 2004

TKS the RDF Database

The Semantic Web in the Enterprise ""RDF provides a simple model to represent logical statements in the form of subject, predicate, object," said Daconta. "While this follows a linguistic approach, that same model can also represent resource, property, and value. This triple model is a powerful underpinning of more powerful languages layered on top of it like OWL."

He referenced one of his non-RDF projects that uses explicit database tables to make certain data associations. This approach is neither scalable nor flexible. The unique nature of RDF, however, can provide a flexible mechanism that would allow far greater associative capabilities, thereby increasing the ability to query and make inferences on topic matters not explicitly hard-wired into tables.

Daconta added that good strides have been made in commercial products supporting Semantic Web technologies, including RDF databases (such as Tucana Knowledge Server), ontology editors and inference engines (such as Network Inference's Cerebra Server), and data source integration engines (such as Unicorn System)."

The author is Ken Fromm from Loomia who are working on "a semantic technology software company building an RDF/FoaF-based identity and relationship stack".

Behind the Wall

Something Useful This Way Comes "Mike Champion offered an optimistic note, suggesting that Semantic Web technology may first flourish behind the enterprise firewall, in a way reminiscent of the earliest days of Netscape's corporate success:

The other previously missing ingredient is that real organizations have at least something approximating an implicit ontology in their database schema, standard operating procedures, official vocabularies, etc. It is at least arguable that the technologies that have emerged from the Semantic Web efforts allow all this diverse stuff to be pulled together in a useful way -- ontology editors, inferencing engines, semantic metadata repositories, etc. I'm seeing real success stories in my day job, and a coherent story is starting to be told by a number of vendors, analysts, etc.

Champion here makes a similar point to the one I argued in an article last fall ("Commercializing the Semantic Web"), namely, that there exist today several startups and fledgling ventures that are selling Semantic Web technologies to corporate clients, including Network Inference, Tucana Technologies, and others."

"Honestly, I don't know whether to laugh, because with WinFS Microsoft seems to be buying into the Semantic Web idea, or cry, because with WinFS Microsoft seems to be embracing-and-extending the Semantic Web idea. Oh well -- outside of the realm of unenforced US antitrust legislation, Microsoft is like gravity. Eventually, you just learn to work around it."

Thursday, June 10, 2004

Semantic Web Tutorial

Tutorial on basic SW Technologies Nice to get mentioned in the same breath as Sesame, Redland, etc. (not quite with Jena which got two of its own slides). Links also included: graphical editors and the Semantic Web Application Survey

WinFS and RDF to Square Off?

Questions about Longhorn, part 2: WinFS and semantics "Today's personal information systems are organized hierarchically. WinFS proposes that they be organized semantically. A number of observers have noted a family resemblance between RDF (Resource Description Framework) "triples" and WinFS relationships. An RDF triple, in geek-speak, is a subject-predicate-object relation. Sets of RDF triples can be (and Semantic Web people say must be) used to represent and organize knowledge."

Where do you get Longhorn today? RDF and schemas for RDF are available now. Taking the both bottom up and top down schemas and deployed locally and globally. Last year I asked, Should the RDF model be integrated into the File System?, the answer still seems to be 'yes'.

Danny has a good summary of part 1 of this discussion.

Wednesday, June 09, 2004

Can't get enough of the Semantic Web?

The Special Interest Group on Semantic Web and Information Systems. The first bulletin (PDF) is 75 pages of Semantic Web goodness. Includes interviews with Jim Hendler and Amit Sheth, where the SIGSEMIS is positioned, and various papers on the Semantic Web. There's also related events, an industry column (about Semagix Freedom) and book reviews.

Tuesday, June 08, 2004

Cynical Development

A fresh look at the waterfall "Analysis -> Dream, Design -> Guess and Waffle...Support -> Duck and Deny"

Monday, June 07, 2004

Sesame Speed

The KIM Platform: Performance and Scale "The result: a repository of 15M explicit statements, describing 1.2M entities, is manageable with an indicative upload speed of 1300 statements/sec...The experiment was performed on a 2xOpteron 240 (1.4GHz) server with 6GB of RAM - a $3000-worth, brandless machine. 64-bit beta-versions for Amd64 of Windows 2003 Server and JDK 1.5.0 were used."

iTQL evaluated

iTQL evaluation We do support optional match through the ugly sub-query syntax but apart from that I think Kendell has it right. Aliases allow you to shorten URIs.

Sunday, June 06, 2004

Datalog and Inferencing

Implementing OWL Lite in rule-based systems and recursion-enabled relational DBs "The semantics of negation in stratified Datalog is not compatible with the semantics of negation in Description Logics...Alternative, more compatible semantics for negation in Datalog exist, namely well-founded semantics, that also relies on such a three-valued logics. However, this is not semantics available in SQL:1999 compliant databases. Well-founded semantics only regards the minimal model when computing negation, whereas Description Logics regard all possible models. Hence, they are also incompatible."

Two other related papers: Bubo - Implementing OWL in rule-based systems and Description Logic Programs: Combining Logic Programs with Description Logic.

This maps well to 3VL and the recursive predicate functions trans and walk.

Not Relational Enough

Two recent articles about XML and database technology. One of the FAQs about Kowari is in respect to relational databases. Taking the pedantic view, the two databases mentioned are not relational but SQL. I've previously posted links about XML management systems too.

In, XML, the New Database Heresy "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 X 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?

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."

Edd Dumbill wrote in, Ron Bourret on XML and databases "My guess is that everything will pick up on this front in a year or two, with companies moving towards what I consider the holy grail of XML support in relational databases: native storage behind a first-class XML data type, XQuery support with extensions for (a) including relational data or SQL queries and (b) updates, SQL/XML support with extensions for embedded XQuery queries, and support for JSR 225 (see below)."

One of the aspects we've found in implementing TKS/Kowari was that it pays to stick closely to the relational model. Everything comes down to tuples and I think that the problems with putting RDF on top of SQL database is that they aren't relational or "relational enough" (whatever that means).

Actually, the DAWG is asking for comments, maybe ensuring that the queries are expressed in relational algebra. That should prevent things like NULL getting in there.

Why FOAF? Why XFN?

This is a fairly old blog entry (4 months) but I hadn't seen it before, it discusses another social software format, XFN.

Social software snippets "So Jonas poses a good question, why was FOAF invented? Perhaps an attempt to justify RDF? Is this an example of a solution looking for a problem? A clever acronym looking for a reason to exist?

Speaking of which, the biggest irony I see about FOAF is its name, which stands for "Friend of a Friend", and yet the technology has nothing to do with "friends". Like Jonas said, it's simply vCard recast in RDF, except for the "knows" relationship, which itself is quite meaningless (quite ironic for a Semantic Web effort), as it provides no more meaning than a plain hyperlink. Why work so hard for so little?

FOAF could be saved however, simply by adding an XFN module, thus enabling FOAF to finally fulfill its namesake, and represent friendship rather than just claiming to."

Friday, June 04, 2004

TCO of open source software

Weighing the costs of open source "While MySQL passed performance tests, the IT staff at the credit card processing company became concerned that MySQL didn't have enough formal support backing it up. What if the credit card processing company's databases failed, asked Tim Kelly, who serves as technical director of technology at TSYS.

"We were not prepared to deal with new support contracts and rely on an alternative database with our customer data." Tim Kelly director of technology, TSYS

"We have a procedure on how to roll back transactions when something goes wrong, but in the event that everything you try doesn't work and you look for support, there area million comments out there on the Web -- and newsgroup articles on MySQL -- but in production scenarios, you can't really rely on that," Kelly said.

Figuring out the total cost of ownership for a DBMS can be more complex than many companies expect at the outset, said Mike Schiff, vice president of data warehousing and business intelligence at Sterling, Va.-based Current Analysis.

"The cost of ownership isn't just the cost of acquisition or maintenance; it's also the vendor responsiveness when you've got a critical issue and downtime," Schiff said. "The cost of dollars to a company that has a database down can be staggering.""

Thursday, June 03, 2004

RDF Data Access Use Cases and Requirements

No keeping your bananas unbruised but some pretty important use cases:
* 2.2 Finding Information about Motorcycle Parts (Supply Chain Management)
* 2.5 Avoiding Traffic Jams (Transportation)

More seriously, they don't mention beep but I would assume that the "web" in Semantic Web will mean the protocol will be http. Aggregate queries (4.5) might mean getting a FROM clause, or something like it, in the language.

http://www.w3.org/TR/rdf-dawg-uc/