Wednesday, October 27, 2004

Isolation

ACID is Good "Unfortunately, ACID transactions do not work effectively over a long period of time. Do not expect things to work if your transactions last more than even a few seconds...This is the so-called “long transaction problem”. No one has found a solution for it after many years of research. The basic problem is achieving isolation – the “I” in “ACID”. There are no known concurrency control algorithms that will operate over a long period of time."

"Over the years, several techniques have been proposed for managing long-lived activities. One of the first is called a Saga. [GGKKS] Sagas require you to define compensating transactions. A compensating transaction compensates for the effects of a transaction. For example, a compensating transaction for reserving a hotel room would be a transaction that cancels the reservation."

"Therefore, rather than provide support for a single model, such as Sagas, JSR 95 defines an infrastructure to support a wide range of extended transaction models. The architecture is based on the insight that the various extended transaction models can be supported by providing a general purpose event signaling mechanism that can be programmed to enable activities (application specific units of computations) to coordinate each other in a manner prescribed by the extended transaction model under consideration."

The read phases in Kowari/TKS can work over days without interrupting other phases. I've been meaning to try and explain its isolation level which is somewhere between 2 and 3. Reads don't interact with locking but writes are serialized. It doesn't prevent phantom reads but it does mean that querying graphs and getting sub-graphs will always be consistent - i.e. as you constrain it further you always get fewer results.

Tuesday, October 26, 2004

Scalable OWL Lite

An Evaluation of Knowledge Base Systems for Large OWL Datasets "In this paper, we present an evaluation of four knowledge base systems (KBS) with respect to use in large OWL applications."

"DLDB-OWL [23], is a repository for processing, storing, and querying large amounts of OWL data. Its major feature is the extension of a relational database system with description logic inference capabilities. Specifically, DLDBOWL uses Microsoft Access® as the DBMS and FaCT [16] as the OWL reasoner. It uses the reasoner to precompute subsumption and employs relational views to answer extensional queries based on the implicit hierarchy that is inferred."

"...we were surprised to see that Sesame-Memory could load up to 10 universities, and was able to do it in 5% of the time of the next fastest system. However, for 20 or more universities, Sesame-Memory also succumbed to memory limitations...The result reveals an apparent problem for Sesame-DB: it does not scale in data loading...As an example, it took over 300 times longer to load the 20-university data set than the 1-university data set, although the former set contains only about 25 times more instances than the later...Sesame is a forward-chaining reasoner, and in order to support statement deletions it uses a truth maintenance system to track all deductive dependencies between statements."

"From our analysis, of the systems tested: DLDB is the best for large data sets where an equal emphasis is placed on query response time and completeness."

Lehigh University Benchmark.

Network Inference gets $8.1 million

Network Inference Announces $8.1 Million in New Funding "Network Inference, the leading provider of standards-based adaptive software infrastructure, today announced the first quarter 2004 close of $8.1 million as part of its Series B venture capital funding round."

In Search of Mosaic for the SW

Mining the Semantic Web "You've got to have ontologies; you've got to have a language for doing it; you need a social networking mechanism to enable you to make these inferences between representations that people are putting up about themselves. And you need a higher layer that actually crawls or somehow gathers that data and integrates it behind a single interface.

Today we have this new generation of technology. We don't really even have a browser for this information. There are some standards that have just come out, and we're at the stage now where there's no Yahoo. There's not even a Mosaic. There's definitely no Netscape. The question will be really who is in position to make these critical, enabling first key pieces of technology that will catalyze the rest of it."

"Where we're going is to take the hundreds of thousands of real-time news feeds today—going on millions—and turn it into broad search. The way we look at RSS is it's everything on the web that changes, which is to say everything on the web that has value."

Slides for Urchin and Kowari

NPG and the Semantic Web, Urchin and Kowari
"Urchin:
* RSS Aggregator which represents all feeds in RDF
* Written in Perl
Kowari:
* Specialized RDF database
* Written in Java
Urchin-Kowari:
* Replace Perl's RCQL with Tucana's iTQL query
* The interface is otherwise unchanged
* Urchin and Kowari are connected via SOAP"

P2P Review

The Networked Semantic Desktop "In the first phase, Semantic Web, P2P, and Social Networking technologies are developed, researched and partially deployed. In the second stage, we will see convergence: Semantic Web technology is deployed on the Desktop, resulting in the Semantic Desktop. Similarly, Semantic Web technology is incorporated in P2P networks and Social Networking. Once there is a reliable technology available for the technology convergences, the next phase can be tackled: the combination of the three fields Semantic Desktop, Semantic P2P and ontology-driven Social Networking into the Networked Semantic Desktop."

Via Post details: Networked Semantic Desktop.

Information Architecture

Metadata? Thesauri? Taxonomies? Topic Maps! "Information architects have so far applied known and well-tried tools from library science to solve this problem, and now topic maps are sailing up as another potential tool for information architects. This raises the question of how topic maps compare with the traditional solutions, and that is the question this paper attempts to address."

Offers a good introduction to the ideas of taxonomies, ontologies, faceted classification, controlled vocabularies, and of course, topic maps.

XP vs RUP

XP vs RUP "The main reason is that I think XP focus is the correct one: Simplicity, feedback, embracing change, people developing quality software that works. XP has a positive perspective on software development, putting trust before control. Furthermore, many tools for quality assurance, testing, reporting, and continuous integration have emerged from the XP community."

Monday, October 25, 2004

Interception

Using Spring AOP to Implement the Cuckoo's Egg Design Pattern "This article has shown how to carefully use the active around form of advice inside of the Spring framework. The around form of advice is commonly used when implementing the Cuckoo's Egg design pattern, and so you were shown one example of how this aspect-oriented design pattern can be implemented using Spring AOP."

Sunday, October 24, 2004

Apple in the Enterprise

Apple's Stupidity - Not Supporting "Third Party" User Space Applications That Cause Kernel Panics "...when Qmail is spam bombed with a flood of emails, the system suffers a kernel panic. Yet, this problem only occurs on dual processor machines! Apple's lovely suggestion - "Oh, just disabled the second processor...Under no circumstances should a userspace application cause the kernel to panic. On Unix, this is just plain unacceptable and represents an issue with something in the kernel or core libraries. Basically, you are saying that any end user has the ability to crash the machine. For example, if I have an account on a Mac OS X box, I can compile qmail and bind it to an unprivileged port. At that point, I can flood the machine with enough requests to crash the system."

That's exactly what we've seen with Kowari/TKS. I like developing on an Apple system, sure it's slow and Apple keep tying upgrades of the JVM to the OS but it's those other productivity benefits that make it worthwhile.

Recent Java 1.5 Articles

* To Annotate or Not? "...when the goal is really about adding layers of metadata on top of the source and that applies uniquely to specific code elements, metadata in Java should fill the bill perfectly. The ability to supply the metadata at the same time and locality as the code increases ease of development. Not only is development made easier but the processing is also much simpler, because the object model is defined by the annotation type definitions themselves."
* GETTING TO KNOW SYNTH "Synth is a new look and feel added to project Swing in J2SE 5.0. Synth is a skinnable (that is, a customizable) look and feel, where the "skin" (that is, the user interface) is controlled by an XML file. Instead of customizing the look and feel by providing default properties to the UIManager in a Properties table, you load in an XML file with component definitions. That means you can create a custom look without writing code."
* While not 1.5 releated, IBM security providers: An overview, shows JAAS login modules for OS/390, AIX, and Windows (both Active directory and NT 4).

Friday, October 22, 2004

Instance editing with Giblet

Announcing Giblet Features include:
* Class selection and resource creation
* Appropriate property selection, based on the domain of the class and its super-classes
* Appropriate value input, whether as a string literal or an internal resource reference (based on the range of the property)
* Saving and loading of simple graphs to and from local storage, via cookies
* Export of graphs as RDF/XML, and a submission to the W3C's online image generator for RDF graphs
* Availability of templates (initially FOAFNet only) to help a user get started

Demo.

I also noticed RDF Templates which seems to have similarities with Kowari's Descriptors.

Thursday, October 21, 2004

Pychinko

"Pychinko is a Python implementation of the classic Rete algorithm (see Forgy82 for original report.) Rete (and its since improved variants) has shown to be, in many cases, the most efficient way to apply rules to a set of facts--the basic functionality of an expert system. Pychinko employs an optimized implemention of the algorithm to handle facts, expressed as triples, and process them using a set of N3 rules. We've tried to closely mimic the features available in CWM, as it is one of the most widely used rule engines in the RDF community. Several benchmarks have shown our Rete-based Pychinko to be upto 5x faster than the naive rule application used in CWM (see presentation below for preliminary results.) A typical use case for Pychinko might be applying the RDFS inference rules, available in N3, to a document. Similar rules are available for XSD and a dialect of OWL."

Gibson vs Stephenson

Who would win? "In a fight between you and William Gibson, who would win?

You don't have to settle for mere idle speculation. Let me tell you how it came out on the three occasions when we did fight.

The first time was a year or two after SNOW CRASH came out. I was doing a reading/signing at White Dwarf Books in Vancouver. Gibson stopped by to say hello and extended his hand as if to shake. But I remembered something Bruce Sterling had told me...During the regeneration process, telescoping Carbonite stilettos had been incorporated into Gibson's arms...Gibson and I dueled among blazing stacks of books for a while. Slowly I gained the upper hand, for, on defense, his Praying Mantis style was no match for my Flying Cloud technique. But I lost him behind a cloud of smoke."

Ethnoclassification

Metadata for the Masses "We’re beginning to see ethnoclassification in action on the social bookmarks site Del.icio.us, and the photo sharing site Flickr. Both services encourage users to apply their own freely listed tags to content — tags that others can then employ when looking for content. See a web page that looks interesting, but don’t have time to read it? Post it to Del.icio.us with a tag that will help you find it again."

"The primary benefit of free tagging is that we know the classification makes sense to users. It can also reveal terms that “experts” might have overlooked. “Cameraphone” and “moblog” are newborn words that are already among Flickr’s most popular; such adoption speed is unheard of in typical classifications. For a content creator who is uploading information into such a system, being able to freely list subjects, instead of choosing from a pre-approved “pick list,” makes tagging content much easier. This, in turn, makes it more likely that users will take time to classify their contributions."

Wednesday, October 20, 2004

Unit of Knowledge

CBD - Concise Bounded Description "A concise bounded description of a resource is a body of knowledge about that resource which does not include any explicit knowledge about any other resource which can be obtained separately from the same source.

Concise bounded descriptions of resources can be considered to be a form of representation, however they are a highly specialized form and not the most usual or obvious form in a web primarily intended for human consumption. They are, however, a key form of representation which semantic web agents need in order to reason about such resources and adjust their behavior accordingly."

Deploying Metadata

To Metadata or Not To Metadata "Given the rather pathetic record that many metadata efforts have racked up, it is little wonder that organizations have begun to question the entire value of adding metadata. However, there is another side to the story. First, the cost of adding metadata can be reduced in several ways. For example, the $200K for a metadata initiative performed by outside consultants can be greatly reduced by not starting from scratch in each case, but rather starting with existing metadata standards and controlled vocabularies and taxonomies. The cost of a unique custom job will always be higher than one that at least starts with predefined components.

In addition, the cost of doing metadata has to be weighed against the cost of not doing metadata. Assume for the moment that adding metadata would solve all of the problems associated with search. One estimate from IDC puts the cost of bad search at $6 million for a 1,000 person company. Now it is unlikely that adding metadata will solve all search problems, but even if it only solves half, that is still a savings of $3 million per year. In this context, $200,000 for metadata doesn't seem so exorbitant."

"You wouldn't think of running a company without organizing your employees, why do you think you can create access to information without organizing that information?"

Tuesday, October 19, 2004

Googling your way to freedom

Australian journalist tells of capture in Iraq "Initially they thought Martinkus was a CIA agent or a contractor working for the US. Then they entered his name into an internet search engine to check his story. Convinced he had no links to the United States, his captors let him go."

The BBC story confirms that it was Google.

tolog

One topic map query language, tolog. In comparison to SPARQL, behold the magical abilities of projection (no distinct required), count and sorting. Also, non-failing queries (optional), negation, limit and offset, and built-in inferencing predicates.

Their negation looks very similar to iTQL's exclude.

Monday, October 18, 2004

Date and Pascal on RDF

ON METADATA, RDF AND RELATIONAL REPRESENTATION and ON RELATIONAL BINARY DATABASE DESIGN.

From the later:
"Research papers abound from the Semantic, Topic Map and RDF camps that claim relational binary database design is the superset of n-ary or the true relational model.

The only reference to relational binary that I could find on your site was mentioned by C.J. Date in passing. He mentioned that Codd showed that n-ary and even 0-ary relations have unique and important properties that would in fact make n-ary the superset."

"The foregoing point notwithstanding, there are actually some pretty strong arguments in favor of making all base relations binary. Well, not binary exactly, but irreducible, rather; an n-ary relation is irreducible if it can’t be non-loss decomposed into two or more projections each of degree less than n. (In practice, irreducible relations often are binary, a fact that might account for part of the confusion I mentioned; however, some irreducible relations are not binary and some binary relations are not irreducible.) But the question of whether base relations should be irreducible is a database design question, not a relational model question."

From Good recent writings on data.

Another one, ON THE “SEMANTIC WEB”. I was going to say that in iTQL we don't return NULL but we do if the value is unconstrained. I was going to say that in SPARQL it doesn't return NULL but it does. I've been playing with REL as well, just to see how it performs certain queries too.

Breaking Classloader Hierarchy

Find a way out of the ClassLoader maze "Thread context classloaders were introduced in Java 2 Platform, Standard Edition (J2SE). Every Thread has a context classloader associated with it (unless it was created by native code). It is set via the Thread.setContextClassLoader() method. If you don't invoke this method following a Thread's construction, the thread will inherit its context classloader from its parent Thread. If you don't do anything at all in the entire application, all Threads will end up with the system classloader as their context classloader. It is important to understand that nowadays this is rarely the case since Web and Java 2 Platform, Enterprise Edition (J2EE) application servers utilize sophisticated classloader hierarchies for features like Java Naming and Directory Interface (JNDI), thread pooling, component hot redeployment, and so on."

The 3rd Age

The end of data? "There used to be a difference between data and metadata. Data was the suitcase and metadata was the name tag on it. Data was the folder and metadata was its label. Data was the contents of the book and metadata was the Dewey Decimal number on its spine. But, in the Third Age of Order (see the previous issue), everything is becoming metadata."

"So, in the Third Age of Order, all data is metadata. Contents are labels. Data is all surface and no insides...Why does this matter? It changes the primary job of information architects. It makes stores of information more useful to users. It enables research that otherwise would be difficult, thus making our culture smarter overall...But, now that everything is metadata, no particular way of understanding something is any more inherently valuable than any other; it all depends on what you're trying to do. The old framework of knowledge — and authority — are getting a pretty good shake."

Saturday, October 16, 2004

SWAP Highlights

From the Semantic Web Applications and Perspectives program:
* Peer-to-Peer Semantic Coordination which considers "...the problem of coordinating hierarchical classifications". A paper on the algorithm listed, CtxMatch, is "Improving CtxMatch by means of grammatical and ontological knowledge – in order to handle attributes".
* RDFGrowth and the Dbin Project. Another paper was published here. Dbin is "..a p2p semantic web algorithm designed so that each single peer is only allowed to cause a minimal, bounded, remote computational burden".
* Semantic Web Tool Evaluation "We have tested the following systems: Jena, Sesame, RdfSuite, Triple, RdfStore, 4Suite, RdfDB....RDF(S) is unable to express basic representation needs typical in simple ontologies...few tools are unable to correctly handle RDF(S) ontologies...no semantic web tool is able to correctly handle even OWL-Lite...the only tool able to correctly handle OWL-Lite ontologies is the description logic inference engine Racer." I'm not sure quite how correct these statements are, maybe with respect to the projects listed, I know we intend for Kowari to support RDFS and OWL-Lite.
* Querying the Semantic Web: a new approach Also talks about using CtxMatch, "...we introduce in the paper a first set of semantic parameters we consider relevant: (i) the type of relation, i.e., the semantic relation that holds between a concept of the source schemas and concepts in the target schemas (e.g., equivalence, greater or lesser generality); (ii) the ontological distance, namely the distance between a source and a target concept with respect to some reference ontology; and (iii) the lexical distance, that is the distance between the formulation of semantically related concepts in different schemas."
* A Framework for Unified Information Browsing Which discusses the RDFX Project.

Friday, October 15, 2004

Google is the platform

Search your own computer "Google Desktop Search is how our brains would work if we had photographic memories. It's a desktop search application that provides full text search over your email, computer files, chats, and the web pages you've viewed. By making your computer searchable, Google Desktop Search puts your information easily within your reach and frees you from having to manually organize your files, emails, and bookmarks."

Screenshots.

Google Desktop Search Launched "Indexing is fast and only happens when your computer is idle...Get a new email? Visit a new web page? All this information is automatically recorded and made searchable within seconds."

"Each time you view something, a snapshot of what you've seen is created. Did you visit the same web page several times in a month? A copy of the page each time you visited is made. The "1 cached" link will change to reflect the number of copies recorded."

While support is incomplete, this article mentions that other file types, "Images, Acrobat, Windows Media and MP3" are indexed. This probably suggests future features.

The most important missing feature seems to be, failure to capture metadata or allow you to modify it. What a wasted opportunity. There's no advertising but hopefully this can stay as a way to integrate people's desktops with the web site and not have to become its own money spinner.

Another article with screenshots, "Google Your Desktop".

AOL is going to do the same, curiously "...the desktop search tool is being tested alongside the AOL Browser but declined to elaborate further. She said the AOL Browser will launch as early as November."

Tuesday, October 12, 2004

Resolvers

Masala That's what Kowari's resolvers should do - it will be able to either provide a standard interface to live data (like LDAP queries, SQL queries, etc.) or to extract the metadata/data (from files, email, etc.) and index them in order to perform full text or normal RDF queries on it (through iTQL, RDQL, etc.).

Democratization of Radio

podcasting "Podcasting is a term used to describe the recent phenomenon of pointcasting audio programs over the Internet to people's iPod for later listening. We're all familiar with the iPod; it's become an icon of the times: hip, fun, and progressive. Most people use the iPod, and other MP3 players, to listen to music. But, combine an iPod with the Internet and innovative things start to happen."

"iPodder and similar applications have sprung up over the last few months to solve that problem. iPodder checks a list of RSS feeds on a scheduled basis and downloads any attachments right into iTunes. Anytime I hook my iPod up to my PowerBook, new MP3s are downloaded to my iPod. Very convenient."

Masala

IBM delivers Masala ""What IBM will be able to do [with Masala] is offer a federated data model that brings together a number of disparate sources in one place [to let users] search, index, and retrieve data without writing to individual data sources as you might have had to in the past," said Stephen O'Grady, senior analyst at Redmonk. "It is a fairly significant step up," he added."

"Masala has been at the heart of that effort to help "redefine" business intelligence. It is designed to allow corporate users to create a "virtual database" by collecting information seamlessly across the enterprise from things such as customer service records, e-mails, tables of numbers, photos, and other forms of information and view them all as if they were in one location.

With the new offering, IBM will also be able to compete against traditional enterprise information integration vendors such as Composite Software, MetaMatrix, and BEA's Liquid Data along with enterprise search vendors such as Verity, Endeca, and Autonomy."

Sunday, October 10, 2004

Bi-Directional Interoperability

Metatomix Delivers the mtx ERI PLATFORM for Enterprise Resource Interoperability "Metatomix(TM), Inc...announced the release of the industry's first bi-directional Java platform for integration, correlation, and policy-based automation...Based on the Semantic Web's Resource Description Framework (RDF) and a central ontology framework -- two technologies recommended by the W3C for commercial-grade data integration -- the mtx ERI Platform is the only interoperability platform that enables enterprises and government agencies to leverage node-based data integration, distributable across an entire network, for unprecedented data interoperability. The mtx ERI Platform combines scalability, reliability, and extensibility with the power of the Semantic Web to create complete resource interoperability."

Saturday, October 09, 2004

Jumping to Java 5

* Java 5 - "final" is not final anymore "It makes sense to allow updates to final fields. For example, we could relax the requirement to have fields non-final in JDO. If we read section 9.1.1 carefully, we see that we should only modify final fields as part of our construction process. The use case is where we deserialize an object, and then once we have constructed the object, we initialise the final fields, before passing it on. Once we have made the object available to another thread, we should not change final fields using reflection. The result would not be predictable."
* Annotations in Tiger, Part 1: Add metadata to Java code "Annotations are modifiers you can add to your code and apply to package declarations, type declarations, constructors, methods, fields, parameters, and variables. Tiger includes built-in annotations and also supports custom annotations you can write yourself."
* AbstractStringBuilder "AbstractStringBuilder and its subclasses demonstrate another new feature of Java 5.0: covariant returns. This is the ability to narrow the return type of a method when you override it in a subclass. It got added to the language along with generics." See also, Generics Tutorial.
* alt.lang.jre: Twice as Nice "Java 5.0 incorporates generic types as an effective means of addressing ClassCastExceptions, but this adaptation will do little for many corporations still using Java 1.3. Nice, on the other hand, was developed with ClassCastExceptions and NullPointerExceptions in mind. As such, the language supports two features, parametric classes and optional types, that go a long way toward keeping applications from throwing these exceptions. What's more, with Nice you can employ these features today, on any Java platform 1.2 or higher."
* Tiger's Corner - Displaying array contents java.util.Arrays has a toString or deepToString for multi-dimensional arrays which will print out the contents of an array.
* Why Mac Developers are Concerned About the J2SE 5.0 Wait Highlights the historic lag of porting Java to Apple OSes.

Mistakes Made by OO Databases

Whatever happened to OODBMSes, anyway? The 5 reasons given are:
1. They were seen as nonscalable and nonperformant.
2. It was "new" technology in a time when only the tried-and-true was being used. 3. It had no compelling features for anybody but the developer.
4. They just didn't perform or scale well at first.
5. OODBMS doesn't store the same way as the RDBMS. This may be the kicker--people building OODBMS systems as if they were RDBMS systems were bound to be hurt by worlds of disappointment, and vice versa (which is where we are today).

Friday, October 08, 2004

iCite

Why can’t I manage academic papers like MP3s? The evolution and intent of Metadata standards "Two key differences are identified: Firstly, digital music metadata is standardized and moves with the content file, while academic metadata is not and does not. Secondly digital music metadata lookup services are collaborative and automate the movement from a digital file to the appropriate metadata, while academic metadata services do not."

"Academic metadata is obtained in a variety of ways, yet even the most sophisticated methods stop short of the level of automation and convenience reached by digital music. For those not using citation management software the process is a manual one of re-entering citations in the required format. This is often done through “reference list raiding”, is subject to copying errors and is extremely tedious."

"Thankfully systems like the CDDB or the one proposed above have the characteristic that only one upload is required to make the metadata available to all. It is established that online availability increases citations to one’s work so it does not seem a stretch that easy availability of accurate metadata would also increase citations...We propose that two tasks are required to move towards more effective practices: using XMP to store academic metadata with the file and using content-based hashing to map between the digital files and a user contributed metadata database."

There's also the recent Wanted: Cheap Metadata: "What about new incentives for adding judgment-call metadata? Stephen Cayzer's work at HP Labs (see his XML Europe paper), which demonstrates how better user interfaces can make the entry of metadata less trouble for the user, will hopefully inspire others to think more about acquiring good metadata and postpone some of their ideas about what to do with that metadata."

Jotspot

Begin the Intro Tour or Advanced Tour.

Jon Udell posts a Flash demo too.

This joins other Wiki technologies like SnipSnap and XWiki.

Web of the Future

Tomorrow's Semantic Web: Understanding What We Mean "We're moving to a web where I know what was meant instead of I know what was input, where the web can understand the meaning of the terms on the page instead of just the text size and color that it should present those words in. It knows a little bit about the user background. We're facilitating interoperability so you don't have to have all these stand-alone applications that don't understand each other. The web is moving to be programmable by normal people instead of just geeks like me."

"Analyses from Gartner and Forrester say that expectation citing is critical for applications. And one of the ways you can do that is exposing the top levels of your hierarchy about what your site covers. You also see things like umbrella upper-level structures; I gave an example of the UNSPSC, which provides the top five layers for business-to-business ontologies. They don't really expect to have enough information for any one application in the business space to function, but they say if you're going to do B2B applications, come use our top levels of integration terms so that if you're using a certain kind of widget, we know where that fits in our hierarchy."

The Semantic Web "Although search engine services will still play a big role in locating information for people across the Web, the foundations set by the Semantic Web will lower the entry barrier for applications to utilize a wide array of software agents for the purposes of information retrieval and mining."

Thursday, October 07, 2004

1.5's Executor

Put JDK 1.5's Executor to Work for You "The new java.util.concurrent package that is part of JDK 1.5 (Tiger) contains a host of concurrency utilities that are designed to make developing concurrent applications easier. The package provides the Executor framework, which is a collection of classes for managing asynchronous task execution. One way to execute a task asynchronously is to simply fire off a new thread:

new Thread(aRunnable).start();

While this approach is convenient, it has a number of serious drawbacks. Thread creation on some platforms is relatively expensive, and starting a new thread for each task could limit throughput. Even if thread creation were free, in a server application, or any application that will likely be executing many asynchronous tasks, there is no way to bind the number of threads created. This situation can cause the application to crash with OutOfMemoryException, or perform poorly because of resource exhaustion. A stable server application needs a policy to govern how many requests it can be processing at once. A thread pool is an ideal way to manage the number of tasks executing concurrently.

The Executor framework simplifies the management of asynchronous tasks and decouples task submission and management from task execution. The various implementations of Executor in java.util.concurrent can support thread-per-task execution, a single background thread for executing tasks, or thread pooling (and it would even be possible to write an Executor that executes the Runnable in another Java Virtual Machine). It can provide for execution policies such as before-execution and after-execution hooks, saturation policies, queuing policies, and so on."

There's a 1.4 backport of the concurrent library available. The CopyOnWriteArrayList and ConcurrentHashMap would be useful for JRDF. A more general article on the new 1.5 features is online as well.

Medical Metadata

ADL (Archetype Definition Language) is a developing standard that is part of the Open Electronic Health Records site. A screenshot of the archetype editor shows a familiar ontology editor interface.

This looks like it is being converted to OWL by the Mayo Clinic and the University of Manchester.

RE: OWL vs. ADL "We at Mayo are working with OpenEHR to produce a set of Java methods to create Archetypes which can be represented in OWL. These Archetypes are output in the abstract syntax which is loaded into memory as Java objects which are exposed for your use. Then we have a set of routines to output these objects as OWL:rdf, which is the exchange syntax for the semantic web. This output of Archetypes will be linked to higher level models such as the CDA and a terminology model (expressed as an archetype)."

See the previous message in this thread as well.

A paper explaining what archetypes are is available here. From the paper, "In this approach [interoperable knowledge methodology], the single, hard-coded software model has become a small reference object model (ROM), while domain concepts are expressed in a separete formalism and maintained in a concept library. Accordingly, software development can proceed separately from domain modelling.

Since the software is an implementation of the ROM, it has no direct dependency on domain concepts; i.e., if new concept models are introduced, the system does not need to be altered."

Seems similar to ontology based programming or meta-programming.

Wednesday, October 06, 2004

Kowari 1.0.5 Released

From the release notes:
* iTQL now supports the having clause, exclude constraints, repeated variables in a where constraint, improved subqueries and empty select clauses:
o The having clause allows restrictions to be placed on aggregate functions, such as count.
o exclude imposes a logically opposite match on the graph to normal constraints.
o Repeated variables in the where clause allow, for example, the ability to find statements with the same subject and object values.
o Subqueries now support the use of trans, walk and exclude.
o An empty select clause returns true if the items in the where clause exist in the given graph.
* The existing string pool was rewritten to allow support to add new hard-coded datatypes. The caching was also moved closer to the string pool implementation, increasing load speed by up to 50%.
* Complete rewrite of the Jena support layer. Multiple Jena models/graphs can be created and accessed independently on multiple machines. Fastpath support allows RDQL queries to make use of Kowari's native query handling. A client/server API is added allowing client access to a Jena Model or Graph backed by Kowari. There are also bugs fixes and further enhancements to performance, such as reading RDF files.
* Enhanced JRDF support including a client/server interface, similar to Jena's. A new OWL API, called SOFA is also available. This can operate on any JRDF compliant implementation. Currently this can be in-memory or Kowari.
* N3 file support for importing and exporting of models.
* Improved RMI support including the ability to load or save data from a client to a remote server or from a remote server to a client.

It's been a long time between releases. A Kowari 1.1 preview release should be along next, followed by a Kowari 1.0.6 release.

Sunday, October 03, 2004

Visualizing Online Social Network

Vizster "Vizster is an interactive visualization tool for online social networks, allowing exploration of the community structure of social networking services such as friendster.com [4], tribe.net [12], and orkut [10]. Such services provide means by which users can publicly articulate their mutual "friendship" in the form of friendship links, forming an undirected graph in which users are the nodes and friendship links are the edges. These services also allow users to describe themselves in a profile, including attributes such as age, marital status, sexual orientation, and various interests."

Built on prefuse.

Saturday, October 02, 2004

Quick Complement of Links

* RIO 1.0 "Rio 1.0 is the first seperate release that supports the Terse RDF Triple Language, or Turtle, format"
* Tim Berners-Lee: Weaving a Semantic Web "The MIT Technology Review Emerging Technologies conference opened today with a keynote by Tim Berners-Lee, inventor of the World Wide Web. Promising “a one-hour talk in 30 minutes,” Berners-Lee gave an animated, rapid-fire presentation -- more like a 90-minute talk in 30 minutes -- about the Semantic Web, his latest initiative."
* Semantic Web: Funding Nascent Democracy "Semantic web enthusiasts, here's your chance! For just US$1000 a pop, you can be the proud owner of fo.af or lo.af!"
* Metadata "Metadata switch: thinking about some metadata management and knowledge organization issues in the changing research and learning landscape "

Thursday, September 30, 2004

DAWG query language has a name

SPARQL - A Query Language for RDF from the latest DAWG minutes. Even has a Simpsons reference and possible logo, Mr Sparkle.

Kendall Clark has some ideas about whether FROM is necessary in "Re: [Fwd: FROM keyword unnecessary?]". I wish I had time to consider this more fully.

RDF's Rainbow

RDF Gravity (RDF Graph Visualization Tool) "RDF Gravity is a tool for visualising RDF/OWL Graphs/ ontologies. Its main features are:
* Graph Visualization
* Global and Local Filters (enabling specific views on a graph)
* Full text Search
* Generating views from RDQL Queries
* Visualising multiple RDF files"

It uses Jena and Jung.

Wednesday, September 29, 2004

One Persistance Framework?

Sun Proposes Single Persistence Model for Java ""Ideally I think a new JSR devoted to transparent persistence would have been more appropriate," Johnson said. "It's odd for EJB3 to be defining a persistence API applicable to J2SE. But overall I think it's promising. Everyone seems to agree that transparent persistence is important, and that POJO persistence is the future. The EJB expert group seems finally to accept that persistence should not be tied to the EJB container. Hopefully from here the focus will be on getting a good technical solution, rather than on politics.""

Good Ontologies and the Semantic Web

Judging the likely Success of an Ontology "The debate about the promised value of the Semantic Web seems to me to be missing a dispassionate examination of the success, or otherwise, of existing ontology based solutions. Clay Shirky is obviously right when he states that a single monolithic ontology will never work. His critics are equally right when they claim the Semantic web will only work if it is a melange of multiple interoperable Ontologies."

"The success or failure of any ontology should be judged primarily by it's ability to support the exchange of operational activity data between agents. This can only be confirmed after the ontology is implemented by assessing how the system performs in the context of use. To reduce the risk of failure in the early stages of specification the various components of the ontology should be assessed individually and collectively in terms of their ability to support required use cases for operational activity data."

From the same blog, Ontology Review 1. The NHS Common Basic Specification. Why top level Ontologies don't work. and Ontology Review 2: The International System of Units (SI). US Resistance to Adoption of the Metric System.

"Building a great ontology is only the first step. Getting people to adopt it is far more challenging. Adoption is not driven by the merits of the new ontology alone. Enforcement is often required. The US will not become metric until congress is prepared to enact enforceable laws that mandate the use of the metric system."

Bubbling to the top

What the Bubble Got Right Another Paul Graham essay. "So what's the connection between nerds and technology? Roughly that you can't fool mother nature. In technical matters, you have to get the right answers. If your software miscalculates the path of a space probe, you can't finesse your way out of trouble by saying that your code is patriotic, or avant-garde, or any of the other dodges people use in nontechnical fields."

"There does seem to be: that in the coming century, good ideas will count for more. That 26 year olds with good ideas will increasingly have an edge over 50 year olds with powerful connections. That doing good work will matter more than dressing up-- or advertising, which is the same thing for companies. That people will be rewarded a bit more in proportion to the value of what they create.

If so, this is good news indeed. Good ideas always tend to win eventually. The problem is, it can take a very long time."

Finding things in a non-semantic web

Drowned out by keywords "So here's a case for the semantic web. It's stupidly difficult to search for news of my hometown.

I live in the beautiful city of York, UK. In most search oriented applications I cannot search for my city. Why?

Because "New York" always matches a search for "York", too. Google ameliorates this a little: you can search for "York UK" or "York -New". But most search facilities aren't as good, and quite a few of my local news sources would not consider "UK" a term they should include in their metadata. "

Here's one closer to home, ISWC'04 or "International Symposium on Wearable Computers" not to be confused by ISWC 2004 or "International Semantic Web Conference". We're in trouble when 4 letter acronyms collide.

Not is no more

The operation still exists but it's now called "exclude". After spending too much time explaining to people how our "not" is not SQL's "not" but another type of "not" that inverts constraint values combined with the implementer occassionally getting confused between the syntax and the semantics, it lead to this new name. "Not" isn't what it used to be but then again maybe it never was.

From what I can tell so far, "exclude" and subqueries will allow you to perform set difference operations, whether it's clear is another problem. Similarly, you can do OPTIONAL queries using only subqueries but once you get to a few layers of subqueries your head explodes. In these cases it's probably better to have syntactic sugar for certain operations - how users express something and what the machinery underneath does to perform it shouldn't be so tightly coupled.

I made a mistake for the allValuesFrom restriction, here's the corrected version:

select $s $p $x subquery (
select $instance $t $x subquery (
select
from <...#testexclude>
where exclude($instance $t $x))
from <...#testexclude>
where $s $p $instance and $t <tucana:#is> <rdf:type>
and exclude($instance $t $x))
from <...#testexclude>
where $r <rdf:type> <owl:Restriction>
and $r <owl:onProperty> $p
and $r <owl:allValuesFrom> $x
and $s $p $o2
order by $s ;


I also recently read a paper, "OWL Lite- Reasoning with Rules", which clears up the difference between range and allValuesFrom: "[it] takes into account not only the property but also the domain of the statement. For example, you can say that Stefan manages Wolf, and Wolf is of type Student entails that Stefan is of class Advisor." That's also missing from the query but that's an intentional omission. :-)

Tuesday, September 28, 2004

Gnowsis Alpha

Available for Download I had to prioritize downloading it or blogging it...

Installing and running it was pretty painless (just running a shell script) and I'm already going through my MP3s - it evens executes iTunes. It's good to see these ideas implemented.

Feature list :
Server Features
* Local RDF Database (Jena Model based)
* Data integration Hub. integrates different Data sources.
* Filesystem adapter
* MP3-ID3 tag adapter (using MP3 Library by Jens Vonderheide)
* Microsoft Outlook adapter
* Mozilla Thunderbird email adapter
* Mozilla Firefox bookmarks adapter
* XML/RPC API
* Java Client API
* full text indexing (using Apache Lucene)
* local webserver for experiments (using Jetty)

Browser Features
* Browse the local Semantic Desktop
* shows related information for any resource
* Manage your projects using ordinary File Folders
* full text search
* Link anything with drag-drop
* annotate photos and persons

Check out the planned features too.

No New Ideas

Paul has blogged (under the title "Graph Data Model") about a book called "Graph Data Model and its Data Language". It explains how you would go about creating a graph based database and query language - it would've saved us some time when writing TKS/Kowari. It even suggests powerful operations you could perform on such a database such as transitive closure.

Semantic Web Services Graphically

ODE SWS "The ODE SWS framework proposes the use of Problem-Solving Methods (PSM) to describe the services at the knowledge level; that is, independently of the language in which the service will be expressed."

"The Unified Problem-solving Method Language (UPML) has been proposed to provide a high-level description of the knowledge components of a PSM:
* Tasks, describe the operation to be solved, defining its input/output roles and the pre/post-conditions that should be verified to execute the task;
* Methods, detail the control of the reasoning process needed to achieve a task, specifying, if required, the decomposition of tasks into their sub-tasks as well as the coordination of the execution of such sub-tasks to obtain the result (operational description);
* Domain models, contain the knowledge of the domain of an application;
* Ontologies, semantically describe the elements used in the definition of tasks and methods (roles), and domain models (objects); and
* Adapters, establish mappings among the other knowledge components of a PSM, enabling the reuse of the components since adapters define the conditions in which the components could be applicable each other."

The manual was convincing enough to give it a try. The main graph UI is UML like, similar to Rational Rose. Written in Java it uses Jena and JGraph. The JAR is self executing but you need Jena and the rest in the classpath for it to work. It also comes with a distribution of Minerva and WebODE.

Monday, September 27, 2004

Other links

* Social Networks Connecting people with Information and Each Other "Verity K2 solutions take advantage of social network technology to automatically provide users with personalized discovery features. Through automatic analysis of the way users create, modify, locate and retrieve information, a model of the entire community..."
* Sir Tim Berners-Lee "TR: What kinds of Semantic Web applications are people making for the next phase?
B-L: Exciting things are happening in the life sciences. The big challenges such as cancer, AIDS, and drug discovery for new viruses require the interplay of vast amounts of data from many fields that overlap—genomics, proteomics, epidemiology, and so on. Some of this data is public, some very proprietary to drug companies, and some very private to a patient. The Semantic Web challenge of getting interoperability across these fields is great but has huge potential benefits."
* MG4J (Managing Gigabytes for Java) From a book I found interesting (NZDL is great). "MG4J (Managing Gigabytes for Java) is a collaborative effort aimed at providing a free Java implementation of inverted-index compression techniques; as a by-product, it offers several general-purpose optimised classes, including fast & compact mutable strings, bit-level I/O, fast unsychronised buffered streams, (possibly signed) minimal perfect hashing for very large strings collections, etc."
* Practical RDF Browser "So who’s going to do it? Awk, I wish I had time. Most of the stuff I’ve done previously along visualization lines has been from scratch using Java. But this time, for The Browser I’d go with SVG-enabled Mozilla/Firefox (or even forget the SVG, just make heavy use of CSS for a more graphic layout, or Plan C use XUL). Moz is already riddled with RDF, which should help. Its purpose would be a viewer, so I’d try and avoid having too many dependencies - a full RDF API/triplestore shouldn’t be needed, though being able to handle subclasses/properties would be very desirable, to enable approximate rendering."

Web Based Ontology Editing

pOWL " * POWL supports viewing, editing of RDFS/OWL ontologies of arbitrary size. It is even quite fast with the largest available models (e.g. NCI Cancer Ontology containing about 28,000 classes).
* Sophisticated widgets for data editing such as widgets for editing HTML in a WYSIWIG manner or for dates are integrated.
* Questioning the knowledge base. pOWL currently offers an RDQL query builder as well as a full-text search for literals and resources.
* Plugin concept. POWL is easy extensible, unfortunately still laking exhaustive documentation on this - please have a look at the source code and pester the developers. :-)
* Powerful object oriented API. All functionality is accessible by a clean application programming interface.
* Authentification scheme. Fine grained exposition of features and model data: Privileges (view, edit) for users and groups are planned to be assigned to Models, Classes and Properties.
* Versioning. All edits of a knowledge base may be logged and rolled back (depending on time, user and edit action).
* POWL is fast. Models are stored in database tables and only those parts of the model are loaded into main memory which are actually needed. Thus POWL is scalable and fast.
* Multi language support. POWL comes with English and German translations of the user interface. If you would like to provide a translation please contact us!"

The live demo is well worth a look.

Saturday, September 25, 2004

Load Speed

Triple Loading "What doesn’t show in the numbers is the fact that the entire load process is CPU bound, it’s not disk accesses that’s taking time. Also, the amount of triples, 473589, isn’t enough to fill up the in-memory cache MySQL maintains (here), not even importing a large dataset like Jim’s 6.7 million scuttered statements (converted into NTriples with jim2ntriples) seems to be. With bulk loading turned on, that entire process takes about 34 minutes, equivalent to about 3300 triples per second, as compared to the about 3000 triples per second for the best case above."

allValuesFrom in iTQL

I like this query because:
* It shows what NOT is (basically allows you to say things like "give me all the states that are not Alabama").
* Uses the new HAVING clause.
* Seems to be a nice use case for count and/or subqueries i.e. the ability to execute an outer query and plug the results into the inner query finally makes sense.
select $s $p $x count (

select $type
from <rmi://.../server1#foo>
where $s $p $type
and not($type <rdf:type> $x ))
from <rmi://.../server1#foo>
where $r <rdf:type> <owl:Restriction>
and $r <owl:onProperty> $p
and $r <owl:allValuesFrom> $x
and $s $p $o2
having $k0 <tucana:occursMoreThan> '0'^^<xmlschema:nonNegativeInteger>
order by $s ;

$k0 is the variable binding for the COUNT - we should offer a way to explicitly bind aggregates to a variable.

Another new feature that Paul's been working on, querying only URIs, makes use of virtual graphs and magical predicates like our data typing support.

Improving Guided Search

Site-search tools expand scope ""It is all about creating the metadata surrounding your content and using it effectively. With automated metadata creation, we can go through a site and pick out portions to expose," he said.

Whereas other search tools go through SQL for relational data queries, Atomz Commerce does relational metadata queries through site metadata.

"It is easier than SQL queries because that [metadata] is readily available on the Web site," Kusmer said."

"Guided search and self-service tools aim to improve on basic keyword site searching by pointing users to what they really want, said Eric Peterson, site operation and technology analyst at Jupiter Research.

"We see search vendors each looking at [their] core technology to see how they can better leverage that into other areas," such as applying natural language processing to self-service or guided commerce, Peterson said. "

Google's XUL

Old but Google's XUL is something for new Mozilla/Firefox users (2 million in 10 days). Via Xuggle.

XUL, something for your generic RDF browser. Not one UI for data but a framework to render your data with. Mozilla/Firefox is using RDF, and a query language, templates and bindings. There's also Kowari's descriptors which allow nesting of templates (vCard example).

Friday, September 24, 2004

Think Local, Search Global

Simple search lightens Net load " Researchers from the University of California at Los Angeles have devised a fast search algorithm that uses local rules to find nodes and content in randomly-formed, scale-free networks such as the Internet."

"The researchers' algorithm is based on the bond percolation threshold, or the smallest probability that a message is guaranteed to reach a core sub-network of highly-connected nodes, said Roychowdhury.

As connections randomly percolate through the network at a low rate, only small, isolated islands form. Once the bond percolation threshold is passed, the core of the network becomes connected. The threshold is an abrupt phase transition like the quick transformation of would in that takes place when water boils or freezes.

The algorithm involves three basic steps: content caching, query implantation, and bond percolation, said Roychowdhury.

Content caching happens when a node joins a peer-to-peer network and performs a one-time short random survey, or walk of nearby nodes and adds its content directory to each of these neighboring nodes.

The query implementation step is similar, but happens at the beginning of every query. When a node has a query, it performs a short random walk and passes the query along to each node it encounters.

These random walks are long enough that any given node will almost surely encounter at least one highly-connected node, said Roychowdhury. "So after these two steps one of the high-degree nodes has a copy of a node's directory, and a query is implanted at one of the high-degree nodes.""

"The key step in working out the algorithm was making sure that each query could reach a high-degree node starting from any node in the network. The conceptual breakthrough was the realization that the whole search process could be implemented locally, through messages passed among neighbors only, said Nima Sarshar, a researcher at the University of California at Los Angeles."

For some background see: Linked.

Matter's has a follow up with a link to: Scalable Percolation Search in Power Law Networks .

Adobe's use of RDF

XMP Lowdown "Adobe looks very strongly committed to XMP. Their decision to make it an RDF-based format, the high profile that Adobe products have in the commercial publishing world, and big print media publishers' growing interest in efficiently tracking their metadata are three factors that combine to make XMP a golden opportunity for the business world to appreciate the value of RDF. This business community doesn't care much about the Semantic Web, and its use of XMP (and hence RDF) will be behind firewalls, but an increased use of XMP in PDF, JPEG, and other formats will eventually mean more files with RDF-based metadata sitting on publicly accessible web servers, and hence a greater extension of the Semantic Web."

Verity Entity Extractor

Verity extracts meaning from content "Extractor scans documents of all types, and identifies the expected "information entities" such as names, addresses, dates and Social Security numbers, but also less obvious ones such as places, measurements and holidays."

Wednesday, September 22, 2004

Does Google's browser have name?

gbrowser "I would just love if the following rumor was true: Google builds a browser based upon Mozilla. Of course, there is some evidence Google is going to build a browser, just whois gbrowser.com"

Google Browser Opens Up Gates For Web Services "This would take Google on a head-to-head strategy with Microsoft. Gmail or something like it could even very easily serve as a personal online server and archive.

The only core product that Google couldn’t challenge with that is the operating software and the office suite."

"In fact, a Google browser move is a strong example of what David Stutz warned Microsoft of; networked computing will overtake PC-based computing and Microsoft doesn’t have a competitive answer.

Google would have a lot to gain from a central position in Internet-based communications. Microsoft would have everything to lose.

Give me one good reason why Google wouldn’t do it."

IBM and its Semantic Web Technologies

Introduction to semantics technology "New semantic information-management schemes enable companies to make better use of their information. What exactly is semantics? And how can semantics technology help your development efforts?"

"Semantics technologies are important in a variety of industries such as life sciences, in which biomedical text plays a fundamental role in knowledge discovery. It can also be applied to numerous solutions, for example autonomic computing, where data correlation and inference technologies can be used as core components for building autonomic computing systems and to perform automated and continuous analysis that can result in actions that protect and heal a system."

"...State-of-the-art ontology management systems either are memory-based or use ad hoc solutions for persisting data...To overcome these limitations, researchers work on database-centered architectures for storing and manipulating ontological data. Such solutions will take advantage of existing standards for data management and the DBMS features that have been optimized over the years (robustness, concurrency control, recovery, and scalability). There is also much activity in the application domain. Two prominent applications that come to mind are the efforts involved in semantic Web services for capability-based discovery and composition of business processes, and the use of semantics with social networks for better collaboration."

Apart from the previous releases (IBM Integrated Ontology Development Toolkit and Ontology Management System (SNOBASE)) there's the more recent Ontology-based Web Services for Business Integration. Only for Windows (screenshots).

Tuesday, September 21, 2004

Early days for the Semantic Web Browser

Google's Browser Project...And Ours... "If true, the folks at Google should get in touch with me... without disclosing too much (yet), we are working on a project (for SRI and DARPA) to build a Java-based fully-semantic open-sourced PIM that grafts Mozilla onto my company's Semantic Applications Platform. The result is an integrated cross-platform PIM suite comprised of an OWL-ontology-based Web browser, e-mail, calendar, to-do manager, and chat... and that's just the beginning..."

FOAF based social network

Clique "Clique is a social networking site helping to drive the next evolution of the Web.

Clique is based on FOAF, an RDF vocabulary which helps to describe people and the relationships between them. These are the technologies that are driving the Semantic Web, which is envisioned to be the next evolution of the Semantic Web, and is well under way."

Pfizer Goes Semantic Too

WD: Pfizer Position Paper From the attached Word document:"There are really two issues here where Semantic Web technologies could be used to great effect. The first of these is the communications issue. How can experimental protocols, descriptions of model systems, statistical criteria for data acceptability, and many other critical elements be effectively communicated between technology silos? The second issue is that of synthesizing results from the various technology silos into a holistic picture of physiology..."

"...there are gaps between discovery, development, and clinical groups as well. These gaps have to do with inter-group communications and with the fact that, while there are some similarities, the different groups often work with very different types of information. Here again it seems that Semantic Web technologies could be instrumental in solving some of these problems, although it is clear that the solutions are not trivial."

"...When presented with a large amount of data and other information, IT departments typically create databases to store the data and provide interfaces by which users can query the data. Unfortunately, there are some problems with this approach. Non-IT users are typically very poorly equipped to perform queries of even middling sophistication, especially when they require the use of a query language such as SQL to accomplish. The upshot is that the data gets into the database, but it doesn’t come out again..."

Via langreiter.com.

Monday, September 20, 2004

Scaling Redland

Impact of storing RDF triples with Redland "In my prototyping Archipel, my pet software configuration management system, I started to use Redland to store the version information as RDF triples. I quickly realised that the RDF storage (stored by Redland using Berkeley DB) was using a lot of space, compared to what I was doing. For instance, storing 143 files generated a database of 624Kb, plus a directory containing the actual file content (the RDF storage did only contain versioning information). This is something like 5 to 6 time the size I was expecting."

"It seems that unless I am not using Redland Python API properly, Redland has an important overhead on storing triples. I hoped to use it as a storage backend for Archipel, because I liked the idea of managing version information in RDF, but the overhead is disappointing, if not discouraging.

However, Redland scales really well, and obvisouly will not grow in an unexpected manner when you reach the million of triples, which makes it really robust."

Data is structured

Forget unstructured data "In other words, all data is structured - it is just that some data is more structured than others. Actually, our misconceptions go further than this. The truth is that a photograph has more structure than a sales order, say. In fact, it has so much structure that we cannot usefully encapsulate it.

Indeed, this has important consequences for the way we that we think about metadata. This usually described as data about data. Now, consider the metadata that you would require to describe the Mona Lisa. We could agree that it was a painting, a portrait of a woman, and that it was painted by Leonardo. But metadata is supposed to describe the data: could you get any two people to agree on how to describe the Mona Lisa? And, if you can't get agreement on your metadata then it ceases to be worthwhile.

Perhaps then that is the distinction we need: it is not a question of whether data is structured or not, but actually about whether the data can be fully described by the relevant metadata."

Sunday, September 19, 2004

So much for the truth

Iraq had no WMD "A draft of the Iraq Survey Group's final report circulating in Washington found no sign of the alleged illegal stockpiles that the US and Britain presented as the justification for going to war, nor did it find any evidence of efforts to reconstitute Iraq's nuclear weapons programme."

A similar NY Times article and the Guardian also has another article on how Iraq is Far graver than Vietnam.

But then, there's the article "Who Cares About the Truth?".
"At the end of the day, is it always better to believe and speak the truth? Does the truth itself really matter? While generalizing is always dangerous, the above responses to the Iraq affair indicate that many Americans would look at such questions with a jaundiced eye. We are rather cynical about the value of truth."

"Sure, we may say we want to believe the truth, but what we really desire is to believe what is useful. Good beliefs get us what we want, whether nicer suits, bigger tax cuts, or a steady source of oil for our SUV's. At the end of the day, the truth of what we believe and say is beside the point. What matters are the consequences."

Saturday, September 18, 2004

Own your Data

The Future of the Semantic Web is Here Today and is Evenly Distributed "In this essay I will argue that the tools to do this exist now, and that all factors point toward a future of owning and publishing all our contributions."

"The most obvious example where redundant work has been noticed recently has been the proliferation of social networking sites like Orkut and Friendster. You had to reproduce the same data across every site. This didn't work out so well. In fact people were sick of these sites pretty fast. Now imagine producing, by hand, an rss feed for every rss aggregator in existence. Worst. Idea. Ever."

"We contribute our thoughts and work to the web now. We all write these incredibly useful pieces of information now, just not for ourselves.

Own your data. This future is here and is evenly distributed."

Friday, September 17, 2004

Drops to make an Ocean

many little models "Like many others (e.g. lost boy and more news) I’m wondering about the scalability of RDF data stores. In particular, we have many very small models (under 25 statements for most models, the largest is unlikely to exceed 100 statements) which we don’t really need super fast access to, but store more for reflection. While at current we only have twelve thousand of these models, we are expecting to collect much closer to 100,000 each term, and want to keep data around for at least the last couple of years (si lets say a million or so models). The 12,000 or so has already kicked our database to its knees (MySQL, Jena 2.1, an old P3 700Mhz with minimal ram), which we didn’t really expect."

Sesame 1.1 RC1 Released

"1.1-RC1 is the first official Release Candidate for Sesame 1.1. This release has a number of major improvements:

* The Graph API, an extension of Sesame's access APIs, allows fine-grained manipulation of RDF models directly from Java.
* The Native Disk Store is a new storage backend that works directly on the file system, without need for a DBMS. It uses B-Tree indexing on binary files for fast, efficient and scalable storage.
* SeRQL revision 1.1 is a syntax revision that makes SeRQL queries even easier to read and write, and makes embedding in XML easier.
* Blank node handling has dramatically improved compared to 1.0.x.
* RDF Schema inferencing has been updated to be fully compliant with the W3C RDF Semantics Recommendation.
* Support for MS SQL Server as storage backend RDBMS. Thanks to Adam Skutt for providing fixes and suggestions for this.
* Partial OWL reasoning support through Sesame's custom inferencer."

From openRDF.org.

In A new Sail for Sesame thread: "1. Loading of multimedia metadata (includes metadata-extraction from 2777 MP3 files, transformation and load; so don't care for the absolute times...):

MSR: 85 sec (49089 explicit + 139894 inferred =188983 total statements)
NR: 87 sec (49089 explicit statements)

=> As NR does not generate inferred statements, I'm not sure what the performance will be with inferencing, but this looks good to me at the moment.

2. Renaming of a Class with 2777 associated instances:
MSR: 52 sec
NR: 3 sec
=> Wow! This is much better and depends on the number of triples involved (in contrast to the memoryrepository)."

Live Link Sharing

What are Live Bookmarks? "Services like http://del.icio.us let you publish your own bookmarks as RSS feeds, so that other Firefox users can subscribe to your bookmarks through Live Bookmarks. Live Bookmarks and del.icio.us makes it easy to share cool sites you like with your friends."

Thursday, September 16, 2004

More Military Intelligence

Uncle Sam's Semantic Web ""The beginning of the Iraqi operation was postponed for weeks because information systems couldn't be made interoperable in the time required," said Hendler. "Systems couldn't talk to one another." It was a problem, he says, that a Semantic Web framework could have solved."

"As more triples are created, checkbooks are coming out. TopQuadrant, one of the co-sponsors of the conference, has decided that the Semantic Web is a bankable technology, and predicts that a U.S. $63 billion market for "Semantic Technology" will emerge by 2010.

Miller, the W3C Semantic Web Activity lead, is not as confident in these numbers -- not from a lack of confidence in the technology, but from a suspicion of all predictions. "I am cautiously optimistic. I'm seeing an increase in tools and services," said Miller."

Wednesday, September 15, 2004

The Right Amount of Integration

Killing the "WinFS is About Making Search Better" Myth "At its core, WinFS was about storing strongly typed objects in the file system instead of opaque blobs of bits. The purpose of doing this was to make accessing and manipulating the content and metadata of these files simpler and more consistent. For example, instead of having to know how to manipulate JPEG, TIFF, GIF and BMP files there would just be a Photo item type that applications would have to deal with. Similarly one could imagine just interacting with a built in Music item instead of programming against MP3, WMA, OGG, AAC, and WAV files. In talking to Mike Deem a few months ago and recently seeing Bill Gates discuss his vision for WinFS to folks in our building a few weeks ago it is clear to me that the major benefits of WinFS to end users is the possibilities it creates in user interfaces for data organization."

Monday, September 13, 2004

Fibrous Blogging

David Wood's new blog, is where he sits down and gives us a vigorous, new article "Making the Semantic Web Viral": "The Semantic Web has not undergone the explosion of users that caused the early World Wide Web to be successful...The barrier to entry is currently substantially higher than it was in the early Web."

"The way I see it, Web links with semantics need an attribute on a hyperlink that defines the relationship between the resources...Once you have links with semantics, you need to provide a means of navigating from the existing Web to the more abstract space of RDF and back again. You can already link a Web page to another Web page, but what do you do when you want to link to a person? Representing people as email addresses or even FOAF files is weak, silly and just plain insufficient. People exist only in Meat Space and so have to be represented in Semantic Web Space by some non-trivial means. RDF & OWL already provide a great answer for this: A person object can exist that link to email addresses, FOAF and all the rest. Now we only need a way to navigate it via the Web."

I'm not sure if this is anything like what David wants but I recently came across Cocoal.icio.us. This is a nice OS X client for del.icio.us. The screenshots shows a user searching and adding metadata.

Saturday, September 11, 2004

Quick Links

* Dave Orchard on the Semantic Web
* Study: Facets on the web
* Mindmapping blogs
* Allchin's last stand?

Combine SW and Google

"Swoogle provides data service that discovers, digests, analyzes and indexes semantic web documents as well as portal service for the semantic web researchers. It is carried out by the ebiquity research group at UMBC."

Topic search and statistics.

Also, a paper is available: eBiquity: Publication: Swoogle: A Semantic Web Search and Metadata Engine.

Friday, September 10, 2004

NG4J

Named Graphs API for Jena "The Named Graphs API for Jena (NG4J) is an extension to the Jena Semantic Web framework for parsing, manipulating and serializing sets of Named Graphs."

A lot of these methods are similar to the changes made between Kowari 1.0.4 and Kowari 1.0.5; including methods on DatabaseSession that actually use Jena objects.

Chemically assisted nuclear reactions

Cold Fusion Back From the Dead "THE FIRST HINT that the tide may be changing came in February 2002, when the U.S. Navy revealed that its researchers had been studying cold fusion on the quiet more or less continuously since the debacle began. Much of this work was carried out at the Space and Naval Warfare Systems Center in San Diego, where the idea of generating energy from sea water—a good source of heavy water—may have seemed more captivating than at other laboratories."

"Then, last August, in a small hotel near the Massachusetts Institute of Technology, in Cambridge, some 150 engineers and scientists met for the Tenth International Conference on Cold Fusion. Conference observers were struck by the careful way in which various early criticisms of the research were being addressed. Over the years, a number of groups around the world have reproduced the original Pons-Fleischmann excess heat effect, yielding sometimes as much as 250 percent of the energy put in."

Thanks to Paul for letting me know about this.

Open Workbench source available

Open Workbench it's a replacement for MS Project written in Java and C++.

Historic News

Brooklyn Daily Eagle 1852-1902 It's a very interesting experience. Via Shelflife, this article explains a bit more about it:
"The Brooklyn Daily Eagle, founded in 1841, was Brooklyn's newspaper of record. During the Civil War it was the most widely read afternoon newspaper in the nation, gaining prestige as the century drew on. The vast repository contains vibrant reporting on local and national events through a period of enormous growth. It is also a rich resource for illustrations and photographs."

"Naturally, the demand for digitizing 1902–55 of the Eagle is very high, since these recent years cover the lifetimes of many people's close ancestors. But several issues need to be resolved. First, web access to newspapers after 1923 presents copyright complications, which lawyers are now reviewing."

A enjoyed flipping through it like a clipping from 1902, Decemeber 5th or you can read the sports section before basketball was invented or about the solar system before Pluto was discovered.

Reiser4 Metadata

Reiser4 file semantics: An opportunity for open source "Some people feel that the Reiser4 file semantics will present problems for the Linux community. In a nutshell, every file now looks like a directory and can be opened as a directory. The names in that directory are not new files but metadata associated with the file, as documented by Hans Reiser on the Namesys site. The immediate response in the community has been that this is too big a change and should be withdrawn. I humbly propose that this is a challenge we should face head on now or we may not have an opportunity to do so in the future.

The best way for open source to fight patents is to create prior art, and you can only create prior art if you have a problem to solve. WinFS is going to give Microsoft the opportunity to discover the problems that have to be solved when faced with a filesystem that offers rich metadata. "

Wednesday, September 08, 2004

A Rel Query Language

"Rel is a project to develop a true relational database server based on a relational language called "Tutorial D". Rel is not SQL!"

"In The Third Manifesto, Date and Darwen propose a database language that:

* Is truly relational;
* Provides certain desirable programming language features, including some that are typically (but not exclusively) found under the "Object Oriented" heading;
* Represents a "firm foundation for the future of data.""

They haven't finished implementing TCLOSE (transitive closure) yet though.

Meta-mail

Dyson's Meta-Mail: merging email with business processes "The point of this example is that a business process is being conducted via email. Each message is a step within our ad-hoc "renew a support contract" process."

While the idea of business process via email doesn't seem novel to me. Something that people have been doing with applications like Exchange for quite a long time. I did notice a link to Roundup. Whose data model (hyperdatabase) sounds a lot like RDF:
"For our application, we store each item as a item in a hyperdatabase. The item's properties are stored as key-value pairs on its item. Several types of properties are allowed: string, number, boolean, date, interval, *link, and multlink...The link type denotes a single selection from a number of options. A link property entails a link from the item possessing the property to the item representing the chosen option.

The multilink type is for a list of links to any number of other items in the in the database. A multilink property, for example, can be used to refer to related items or topic categories relevant to an item."

Trans and Walk in the DAWG

"In order to traverse class/property hierarchies defined in a schema, RQL provides functions such as subClassOf (for transitive subclasses) and subClassOf^ (for direct subclasses). For example, we can issue the queries: subClassOf(Artist) and subClassOf^(Artist) to find all transitive (direct) subclasses of class Artist. Similarly, functions superClassOf and superClassOf^ return transitive (direct) superclasses.

Similar functions exist for schema properties (i.e., subPropertyOf and subPropertyOf^). For example, we can ask for all transitive (direct) subproperties of creates: subPropertyOf(creates) and subPropertyOf^(creates)."

"That's what I had in mind for 4.6 as originally proposed."

I hope I'm correct in characterizing this as the functionality we currently provide in iTQL with trans and walk. Swapping the first parameter's values around swaps between super and sub class. I'd also like to add a limiting factor for recursing called depth.

Google Photo

Picasa Ads Appearing On Google Image Search Results "When the search engine first featured a link for the digital photo utility, traffic to Picasa increased by 6000%.

Now Google has begun including an ad-style Picasa banner on the result pages for their image search engine."

Further information, "Picasa.com – Google’s New Photographic Portal": "Picasa.com is a free photo organizer that allows you to share your photos with friends and family. Best of all, its free! Picasa.com is integrated with enhanced photo editing tools that could possibly rival Photoshop with the ease of use and portability."

The continues the Googlification of all things like the recently rumoured Google Chat based on Jabber.

RDF Dump

RDF Data "This is a list of stores of RDF data available on the web."

From rdfdata.org is go.

Tuesday, September 07, 2004

dbfs

"Database File System; It is a new type of file system that does away with places where you store your files. Actually do not think of it as a file system, instead think of it as a document system. And while being precise, it is not database system either, it is a faceted system?. It is a file system geared toward serving the user and is meant to make your live easier. It supports 'locating' files the way you think about them."

"The implementation is not perfect, it is a prototype grade application, meant as a proof of concept. The server and client are implemented using O'Caml?, but the client has different APIs: O'Caml, C, C++ and Objective-C."

Semantic Web Technologies

Semantic Web Technologies "...provides the core technology found in Topic Map Explorer. We are also about to release a C# RDF Engine, C# Peer-to-Peer infrastructure Technology and a C# Topic Map Engine."

Topic Map Explorer.

Monday, September 06, 2004

Creative Commons Search

Our updated Search "We flipped the switch last week and have been testing it ever since. Compared to the last version of our search engine, this one is blazingly fast to return results, the results are much more specific to what you're looking for, and it is constantly keeping up to date on over 1 million pages with Creative Commons license info in them."

What I like, is the "explain" feature. It looks like the Nutch API is specific to Creative Commons and isn't available for general RDF use. Nutch has a bunch of other plugins similar to resolvers in Kowari like mp3 and mbox.

Florida Courts deploying RDF

Florida Supreme Court Selects Metatomix "Metatomix, Inc...today announced that the Florida Supreme Court, Office of State Courts Administrator, has selected it to deliver a next-generation Judicial Integration Solution for the Florida Supreme Court system. The Metatomix solution enables a seamless, cross-agency, real-time information-sharing system for the Florida courts."

"Metatomix, Inc. provides what it calls next-generation Semantic Web-based technology for enterprise resource interoperability (ERI). Using the W3C RDF standard, Metatomix technology offers bi-directional, distributed interoperability platform, that enables business managers and enterprise IT professionals to manage their entire resource set and IT infrastructure assets through a unified view."

Military Intelligence

Army seeks to use semantic Web to improve knowledge management "Lt. Gen. Steven W. Boutelle, CIO of the Army, said the service must move away from the current Web environment and turn to the semantic Web, which will help military users improve their knowledge management.

“This is the next step … to really get knowledge out of terabytes of information,” Boutelle said yesterday in a keynote speech at the Army’s 2004 Directories of Information Management conference."

Friday, September 03, 2004

The Banality of XML.com

I guess I'm just annoyed that they publish these things when I'm asleep but I actually liked Paul Ford's The Banality of Google:
"Oh, and I almost forgot—after the first focus group, and this is true, Satan stayed after to get his $30 and then tried to tempt Google. He said, “Larry and Sergey, I will give you everything! I will give you a cluster of 100,000 Linux servers!”[1]The Google guys were like, “Linux servers, huh. That sounds cool.”

And Satan said, “I will give you an algorithm to rank pages based on links.” And they were like, “you totally read our minds! Did you go to Stanford?” And Satan said, “I will give you six years of press coverage by fawning, lazy journalists, and a million slavering blogger acolytes to command as you will.”

Now the Google guys were nodding. They were like, “whatever you need, Satan. We'll give interviews to pornographic magazines, sell ads to the world's worst polluters, whatever you want.” So Satan said, “To seal the deal, I will give you a new logo—one that does not look like half-digested fridge magnets!”

But Satan had miscalculated! Because the logo was Google's number one secret technological advantage, the one thing no one would ever think to copy: it was so bad that it always made their search look good, no matter what could happen. So they said, “begone, foul wyrm, destroyer of worlds!” Although they later invited him back as a consultant. And that is how Google became the Jennifer Lopez of the Internet. "

Sure there's Screenscraping the Senate and Converting XML to RDF.

Thursday, September 02, 2004

Google for the Semantic Web

Accepted papers for FOAF-Galway included the following submissions:
* Open Rating Systems "If we ignore distrust and negative ratings, i.e., we only consider statements of trust and positive ratings, we can easily adapt PageRank as follows..." (that's Google's PageRank),
* SemIndex: Preliminary results from semantic web indexing "...indexing RDF documents such that they may be ranked and retreived by their contents." It talks about indexing a 1,000 million (an American billion) triples.

Also of interest:
* Fentwine: A navigational RDF browser and editor.

Also, earlier this year Semantic Web Personalization.