2006-06-20

Wikipedia's semantic cow paths

I've been quite silent here on this blog for two months, and meanwhile resumed a bit of my Wikipedian activity lately. Although I'd been an enthusiastic early adopter of Wikipedia back in 2001, I have a poor and episodic editing history so far. But every time I've been coming back to the editor dashboard after months or years of inactivity, I've been amazed by the tremendous qualitative growth of the toolkit made available to users. Wikipedia's growth has been stressed again and again in terms of quantity and quality of articles, languages, editors, popularity as a reference resource etc. But was has not been stressed enough is the parallel growth in terms of features supporting better search and editing. And many of those features are in fact adding a quality of information which makes it ready for semantic parsing, and easy RDF re-writing. The basis of it all is a sound use of URIs, names and namespace.
For example http://en.wikipedia.org/wiki/Volcano defines without ambiguity the unique page dedicated to this geological feature, while http://en.wikipedia.org/wiki/Volcano_(disambiguation) is a hub to potential homonyms such as http://en.wikipedia.org/wiki/Volcano_(film). Links are provided to similar resources in other languages such as http://fr.wikipedia.org/wiki/Volcan. One can reasonably use any of those URIs to identify the concept "Volcano". But what about a class Volcano? Here come Wikipedia categories. http://en.wikipedia.org/wiki/Category:Active_volcanoes is ready-made for a class, and parsing the page will give you easily the list of instances, with a link to the full description page. This description itself is formatted using templates such as "infoboxes", so that a page in a category "Active Volcanoes" will yield standard properties in a standard format. Easy to turn this into a data base, and if one interprets the infobox elements as so many properties, turn it into a RDF description, and the infobox structure itself in a RDFS or OWL description of the matching class.
What should we learn from that? That from a collaborative and mostly non-directed process, are emerging cow paths which look more and more like semantic markup, ready to be spidered by smart parsers and tools, either to improve Wikipedia content itself (there are already a bunch of bots and agents doing that), or to extract of this amazing knowledge base any kind of structured data in whatever format, including implicit ontology, like structure of categories, attributes used, and the like. And my hunch is that this process will be quickly much more effective for Semantic Web building than many costly academic ontologies nobody will ever use.

[2010-04-08] : What is described here is exactly what DBpedia started in 2007

2006-04-11

More use cases for nondescript resources

nondescript is a funny word. Quite sure I did not catch its correct meaning when I first heard it. It has no real equivalent in French. Indescriptible is too strong, it refers to something too extraordinary to be described, whereas nondescript is actually too ordinary to deserve a proper description. Or is it that any description would miss the point? The free online dictionary says : Lacking distinctive qualities; having no individual character or form. Maybe in fact nondescripts remain such because those features which makes their individuality are too subtle to be captured, or this capture would be useless.
Anyway, let's take them as they are : no description. What does a nondescript look like in RDF? Well, easy, it's a resource with no description. No type, no identity, no properties, certainly not even worth a URI. A blank node with no property whatsoever. Rings a bell now? After the previous post, I've come out with more use cases for those nondescript resources, and how natural language uses them as binding points. Examples

John walks through the neighborhood where Ann is working.

:John :walksThrough _:n
:Ann :worksIn _:n

In The Rule of Four (currently reading) Vincent and Richard have different theses about Hypnerotomachia Poliphili. Paul prefers Richard's thesis.

:Vincent :hasThesis _:tV
:Richard :hasThesis _:tR
:Paul :prefers _:tR

Now the "Class or Concept" example comes naturally as just another case

a:Restaurant a owl:Class
b:Restaurant a skos:Concept

a:Restaurant :represents _:x
b:Restaurant :represents _:x

Cloud hidden, whereabouts unknown. (Similar stuff in the early '70s)

2006-04-04

Identifying things - blank nodes again

Still trying to figure if the hubject seeds are likely to grow somewhere, so I dropped one today on Danny Ayers' blog, as a comment on a post itself commenting on another one from Jon Udell where is introduced the cool notion of collaborative aliasing. "What a concept!" will say Jack. And actually, it's no more no less the idea that hubjects can be created out of aggregation of resources being "about the same thing". An aliasing service, which really looks like tagging.
So my suggestion again is here to use blank tagging, that is, allow users, in a simple way, to make all those resources point to the same blank node.
Now something is slowly coming from the back of my mind. I thought for a while we needed a specific and mysterious vocabulary to do that, hubjects and the like. Since this kind of stuff is far from being on the track of adoption, maybe using more popular and less exotic vocabulary, such as dc:subject or something similar would make the whole thing more understandable. Seems there is no formal opposition to declare things like:

http://www.amazon.com/gp/product/B00006RCLH dc:subject _:b
http://labs.oclc.org/xisbn/068981836X dc:subject _:b
http://en.wikipedia.org/wiki/Call_of_the_Wild dc:subject _:b

And actually, any other property could be used as well, such as the following, to take the example from Jon Udell's post
http://upcoming.org/venue/3669/ a:venue _:x
http://eventful.com/venues/V0-001-000150985-3 a:venue _:x

This kind of declaration keeps completely agnostic on what a venue in general, and this particular one actually is. It simply says that the two resources are about the same one.

2006-03-15

Identity vs Meaning

Under this really boring title "The Semantics Are Important", Seth Ladd in his Semergence blog is making a really good point :
The identity is singular. The meaning is relative.
In other words, identity and identifiers can be shared, global, universal, whereas semantics/meaning, such as expressed in a particular RDF graph, is local, relative, context-bound, perspective-defined. And therefore multiple, orthogonal, non-compatible, globally inconsistent.
I like it more and more. This goes along the same lines as Pat Hayes' recent post, and puts again the question of how to deal with context. I'm not sure now, munching over Pat's arguments, that the context always needs to be explicited. I've been working those days on SKOS used to express simplified view of hierarchies (of any kind) in an OWL ontology. In some OWL ontology, one would find
a:SomeRegion a:partOf a:SomeCountry
In a simplified SKOS view
a:SomeRegion skos:broader a:Some Country
Reasoners and RDF stores are happy with the OWL version, search engines, taxonomy managers and the like are happy with the SKOS version. So one perspective by kind of tools/applications. What would not make sense would be to merge them, and entail that a:SomeRegion is at the same time an instance of a:Region and skos:Concept. It is not at the same time, it is one in some application context, and the other one in another context. No problem with that. So what is a:SomeRegion in essence, to use this arrogant word I saw passing in the previous post? Well, it's neti, neti, neither this, nor that. No big deal. Who cares?
Set this question about a week ago on the SKOS forum. An astounding silence has been the answer so far ...
[2013-08-01] : Still waiting for an answer ... more than 7 years after the issue is still open.

2006-02-10

Identity -- some philosophical musings

Here are some interesting words taken from the link. Follow the link for more. Following, I'll sketch what I am thinking. This is a bit disjoint, but, I think, necessary. It seems that our topic maps are becoming sophisticated enough that we are now able to push the boundaries of subject identities that motivated Bernard to start this blog in the first place. Maybe someone else, or something else (hubjects?) will help resolve some things dealing with subject identity. Possibly longish.
IDENTITY

Crystals appear (on the scene of Reality) -- just like organisms -- always as individuals. Such an individual has a definite Identity that remains constant during its existence. It is, say, A, it is not B, not C, etc. A developing crystal of Salt (growing in a solution) can change its shape while its Identity remains the same. For organisms this applies even stronger. We ourselves (being an organism) seem to have direct experience of our Identity staying the same during all of our life in spite of the fact of the many changes we constantly undergo. Some insects undergo a strong metamorphosis (for example from caterpillar to butterfly) but nevertheless their Identity stays the same. So it seems for every entity, which is an intrinsic whole, that there is something that remains the same, and something else not remaining the same, but always changing. In Philosophy such changes are called "accidental" or "per accidens" in relation to the persistent Identity. This Identity is called the "intrinsic Essence" of the thing, so every real uniform being has such an Essence.

IDENTITY AS A PRINCIPLE

But what then is this Essence?
Where does it abide?
Does it abide outside the thing (as Plato assumed), or inside the thing (as his famous pupil Aristotle assumed)?
And if the Essence is located inside the thing (meaning that the Essence of every being abides in "our world", and not in some external immaterial world transcending the material world), which I consider the most probable position, where in the thing is it located and in what way? Could this Essence be a concrete part of the thing, the "heart" or "soul" of the thing, which implies that the Essence itself would also be a thing (and this thing should of course also have an Essence of its own........Oh my god, where are we going???), or is it in the thing in an abstract way (whatever that means), like a principle?


A background sketch: together with Joshua Levy, I am building a subject mapped social bookmarking application. We call it Tagomizer (tm). It's being fun. But, it's also causing (moi) brain pain. What is a subject? Let me translate. Someone bookmarks a webpage. This means that the URL of that page, and the page title, are sent to Tagomizer, which then paints a form in which the user can add tags (words or phrases for now, images and other objects later), and a body of text taken as a comment. A user can come in later and add more comments or more tags, or remove tags. Tags are a large part of Web 2.0, where folksonomies are breaking out everywhere.

What is a subject? When Tagomizer creates a bookmark, it creates several subject proxies in the subject map where those objects don't already exist. Tagomizer is a kind of TMA (topic maps application -- or SMA in the newspeak of the TMRM), so it is responsible for identification of its subjects, some of which might already have subject identity granted by other TMAs. What, then, is a subject? Consider the webpage itself. Tagomizer asks the core TMA to create a subject proxy for a webpage with a given URL. If that subject proxy already exists, it is returned. Otherwise, a new one is created and granted subject identity by way of a PSI associated with the core TMA. Tagomizer, as a different TMA then grants that subject proxy subject identity with a different PSI, one that says "this is a subject identified by Tagomizer." Other TMAs might grant an SIP (psi) of their own. This is necessary because each individual TMA will be adding other properties to the proxy, mostly assertions.

So, a webpage has granted to it subject identity. What is the subject? In this case, subject identity has been granted to a particular resource, a webpage. Nothing more than that. The resource exists, it is located on the web at a particular URL, and it has been granted subject identity based on that URL by one or more TMAs. Each TMA is going to confer other properties on that subject. We know from nothing about the subject itself other than those properties of location and object type. What is contained/presented at that webpage will be the subject(s) of other subject proxies, for which that resource becomes an instance of an occurrence.

Brain pain, for me (warning: admission of ignorance forthcoming), stems from notions of essence. Essence is mentioned in the quote above as an intrinsic issue. Now, we're deep into the same issues that come up from time to time in the OODB community, intrinsic vs. extrinsic properties. There's an interesting thread on web resource identity, not dissimilar to Bernard's previous post on URI ambiguity. That xml-dev thread starts here.
Intrinsice-extrinsic properties are discussed here.

Closure? Is closure possible? I post this because I am interested in looking for concensus reality related to interoperable ways in which subject identity can/should be conferred on the subjects of future topic/subject maps. My sense is that the inquiry I reveal in this post represents the, um, essense of this entire blog and of Bernard's inquiry. I'll take my answers anywhere I can find them.

2006-01-27

Pat Hayes on URI ambiguity

In this excellent thread on SWBPD list, Pat Hayes makes a good point again. URI are ambiguous identifiers, and can be used for more than one referent, hence bearing different or conflicting semantics in different declaration or processing contexts. Just as any name.
Now, what I pushed lately here and there is that different URIs can have the same referent, but describe it differently from different perspectives. Hubjects are formalizations of referents as binding blank nodes. Those two points seem dual and complementary.
Where I differ with Pat is when he says that context, which indeed provides disambiguation of the referent, and is implicitly defined by rules of a given community, a given protocol, should stay this way. In other words, it can't, or should not, be formalized as an object, jusque like in ordinary conversation : the context is effective without being explicit. I think context (or perspective) could and should be declared formally ...

2005-12-27

The Wheel and the Hub (six months later)

Six months have passed since the first release of 'The Wheel and the Hub'. Thought it was time to revisit it, and make it consistent with a parallel new release of SPEK vocabulary. The new presentation is much shorter and more full of emptiness. Eventually I've came back to the first impression about it, which is well known to often turn out to be the best one. Blank Nodes are indeed the clue for representation of subjects, but with a subtle and important difference with the first version. Blank nodes representing subjects must be really empty, they have to bear absolutely no declaration of any property whatsoever, not even links to their various descriptions (as they did in the previous versions). It's up to the various descriptions to point to the same blank node, as so many fingers pointing at the Moon, and not the other way round ...
Following this logic, SPEK vocabulary has also be simplified to the extreme ... I don't need "views" and "aspects" any more. Any RDF description is a view and provides a specific aspect. Note also that 'hubject' is back in the SPEK vocabulary, but no more as a class, but as the property linking a description to the binding blank node.

I guess this is now as simple as possible ...