Skip navigation.

exploreopera

| Help

Sign up | Help

Semantic Web at Opera

Posts tagged with "tags"

avatar

SKOS support with links and list of tagged resources

, , ,

Two new RDF exports are part of the release we just did. We now support SKOS, which is a knowledge organisation system, used in many places to represent things like terms that are broader or narrower than another term. We just use it to dump all the tags and give them a URI. For an example, see this group's tags.

The other thing is that I've created an export that gives you the RDF linking your SKOS tags to the resource (i.e. you images, albums or blog posts) they were used for. Take for example the tag Riga in my own blog. If you look through the source, you will see it describes two blog posts, a whole bunch of images and an album, and if you then look at the source of my tags, in the Riga section you'll find a line like

<tm:means rdf:resource="http://www.w3.org/2006/03/wn/wn20/instances/wordsense-riga-noun-1"/>


This links the Riga tag to the definition in Wordnet, which clearly states, yes, this is about the Latvian capital.

There has been a lot of discussion about how to do this on various Semantic Web mailing lists, initiated by the usage I envisioned for us, I had preferred if SKOS itself had support for this, but it isn't quite there yet. So, I ended up writing a very small vocabulary just for this, so the tm:means is my invention, but is likely to change as the discussion proceeds.

Now, the way you get that tag mapping is by using the tag mapper feature of your tags page. As previously discussed, this interface was somewhat complicated, so I have simplified it a bit, and in the future, we need to deal with the different possible predicates in a smarter way.

As I also mentioned in my previous post, we now can fully support POWDER through tags. So, if someone has a "nude" tag, there will be an option in the tags suggestions to map it to a POWDER label.
avatar

Complexities of tag to vocabulary mapping

, , , ...

"Things should be as simple as possible, but not simpler" -- Albert Einstein


I'm happy that quite a few people have mapped their tags, more than I expected! :up: Now, many things are somewhat complex by their very nature, sometimes you have deal with complexities to make things that are useful. And even more often, the question is who or what should deal with the complexities. When I created the tag mapper, I realised that there would be conflicting goals, and now I'd like to discuss them with you:

For some terms, you will see that there is a dropdown under "Relation" that contains both "topic" and "depicts". The "depicts" is there when the term is a noun, and the idea is that when a tag is used for a picture, then you can say that the picture depicts a dog, for example. So, it is a way to very directly express that meaning.

Doing it this way would also create really simple SPARQL queries, to get all pictures that depicts a dog would amount to (ignoring the namespaces):
    SELECT ?pics WHERE { ?pics foaf:depicts <http://www.w3.org/2006/03/wn/wn20/instances/wordsense-dog-noun-1> . }

That's about as simple as these queries get.

Also, as I mentioned, the plan is to use tags for content labels, and since I'm Opera's representative on W3C's POWDER working group one of my main concerns is how people can easily tag their content with content labels on sites like Opera Community. Again, the easiest would be if a content label could be directly associated with a picture. For example, we have to live with a certain amount of nudity in the pictures our users upload since we don't want to exercise censorship, we just don't want to push it on random visitors, and we want to facilitate parental control, and that's one of the things content labels will be used for: A standard way to say that a picture contains nudity.


This is made possible by a slightly more complex user interface. Arguably, it would be easier to just map your tags, not also having to decide if it depicts something, or if it points to a content label. If we didn't do this, it would be harder to formulate the SPARQL queries, but more importantly, this would only be the beginning, since you're clearly using the same tag not just for pictures, but also for blog posts, and you wouldn't say that a blog post depicts something. So, for this to really work, we would need different relation types depending on the type of resource, whether it was a picture or a blog.

That's where it gets nasty.

So, I'm wondering if the course I've started out on is unworkable. Perhaps the relationship from a tag to a term like the Wordnet terms should be unchangeable? That would make the user interface simpler, but the queries and other uses would be harder. So, it isn't just a question what's the simplest, rather, it is a question of who should deal with the complexities.

Now, it is important that as many as possible to participate in tag mapping. Not everyone needs to write applications or queries that uses these data, so those wishing to do so are probably better suited to deal with the complexities than all those seeing the tag setup page. On the other hand, it is quite important to make the POWDER specification quite simple too, and this use could add complexity to the specification.

So, your opinions will matter here, please bring them forward!

Then, you might ask, dear guinea pigs :psmurf: , why I made a complex user interface to begin with, and then ask if I should make it simpler? Well, clearly, I couldn't start discussing this with you if I didn't show you a complex user interface that worked, it would be much harder to explain what I had in mind. So, I figured I might as well do a little research on you. The experiences gain from this is something that will be used to make the right decisions when designing important standards that will be with us from many years to come, and I feel it is important to get this experience now, before those standards are set.
avatar

Marrying folksonomies and taxonomies

, , , ...

With the new release, there is a new feature that you can find on your account page:

I'm allowing you to map your tags to a controlled vocabulary. For the time being, it is Wordnet, but I can include a number of such things. The main reasons I used it is that it is allready quite widespread, is organised in subclasses and superclasses (e.g. it knows that a dog is an animal, and that the W3C is standardising a Semantic Web representation of it.

Up to recently, people have classified their stuff into a set of rigidly defined categories, so-called taxonomies. The advantage of having such a rigid set, are that the meaning of each category is clearly defined, you avoid problems such as one person using "dog" while another uses "dogs", and you can organise your categories into hierarchies such as Wordnet, which makes it very usable for a number of applications.

The downside is that it is also very difficult to know the whole vocabulary well enough so that you can classify things in the right way. Thus, it has remained the domain of professional librarians mainly.

Enter "folksonomies", or "tags". Tags have become enormously popular, as it is easy to use. You just name a tag for yourself and use it. You can the find your pictures easily, if people are using the same tag for the same thing, you can also find it to find similar things. But, and a big but, people often use the same tag for a lot of different things. You can perhaps find some related items, but it is often not very reliable, and since everyone would need to maintain their own tag hierarchy, you can't figure out from a picture tagged "dog" that it also depicts an animal.

Now, you can say explicitly what you mean by mapping your tag to any of the suggested Wordnet meanings. If you do, we get the advantages of both these approaches.

For the time being, we don't do a lot with it, and it is only mapped to Wordnet, but in the future, we hope to enable exactly the kind of searches above, "give me all pictures of animals" will include pictures tagged "dog", "cat" etc.

There will also be many more vocabularies. For example, we intend to use tags to allow you to set any Content Label available. We can also let you map tag with a person, when, for example your picture depicts a person.

With this, we intend to make tags the simple way to annotate things on the Semantic Web. Try it out! On the top of your page, you'll see a "My Account", and it is a "Tags" page underneath.