Localization & RDF
I'm just curious--how does RDF deal with descriptions about the same subject but in different languages, i.e. "hat" & "chapeau"? Will the content be in the language of choice but the RDF triple description in English? Is someone talking about this somewhere?
Groups:
Login to post comments

Ical feed
Your question is a bit vague.
What you are asking depends heavily on what you are trying to do and on what you mean by 'triple description'. If you are just worried about localizing the display of values of certain RDF properties on objects, then that's a display-level question with RDF as it is with an SQL backend. Drupal's t() will take care of you here just as well as it would with anything else, and a module could easily be written to provide the same kind of localization workflows that exist for RDF-based data as exist for node-based data. If by triple description you mean that you would still be using English property names, i.e. dc:author, then the answer to your question is that yes, your triples will be in English, just as you use SELECT * FROM users in both English and German. I'm not sure what the DERI guys have done already for d7; for all I know it's already in there.
If, on the other hand, you're worried about the localization of an object definition, this is actually why RDF is so awesome. 'hat' and 'chapeau' almost always mean the same thing semantically, and it's therefore easy to set up ontologies that declare that certain objects are the same, such as, in pseudocode, uri://hat owl:sameAs uri://chapeau. You'd have to be working with very domain-specific properties like isFrenchWord or something for the two terms to lose semantic equivalence. I'm not familiar with RDF localization ontologies but I'd be really surprised if there was not already an accepted one for noting that a given name can be used to refer to a particular URI in two different languages.
Note that you can actually do this sort of ontology definition for any kind of object/URI data that might be semantically equivalent for your use case, not just localization. You do, however, have to pay some attention to the circumstances that define semantic uniqueness in your problem domain.
Language datatypes and semsets
Hi,
Well, there are many ways to think about this problem, and how it can be resolved. In many serialization languages (such as XML and Turtle), you can specify a language datatype for a Literal. This means, for example, that you can describe one resource (with one URI), with multiple times the same predicate, but with different datatypes. Here is a N3 example of this:
a bibo:Book ;
dcterms:title "My Cat"@en ;
dcterms:title "Mon Chat"@fr .
With such a resource, an application can select the language of the strings, from the description of a resource, it wants to use. So, if the UI language preferences of the user is French, then your application would display the french title of this resource.
Here is how language datatypes works for:
However, you can play with this stuff, and come-up with different ways to describe and cluster language related Literals. Another exmaple is with the UMBEL subject concepts structure. We choose to create what we call a "semset" to cluster semantically linked terms (synonymy, etc.) for given subject concepts. Each of these "semantic set" were described for a single language. So you could have multiple semset, with different languages, for the same subject concept.
Perform a search for the keyword "semset" in this documentation page:
Also take a look at this schema for a quick look for what I mean:
I hope this will help you a little bit to understand some ways to archive your aims. Please ask any question you could have since this can be confusing if you don't know about all the terms, concepts and technologies I talked about above.
Thanks!
Take care,
Fred