Как это можно выразить в RDFS

Впервые в жизни я пытаюсь разработать словарь RDFS. Интересно, как лучше всего сделать следующее в RDFS:

У меня есть вещь, которая называется "Имя". Имя может иметь свойство «язык». Этот язык может быть выражен как код ISO 693-3 или код ISO 693-5.

Вот тройка о том, что в греческом языке есть имя:

<http://example.org/name1> <http://example.org/vocab/language> "ell" .

Поиск по http://example.org/vocab/language может показать, что язык должен быть код ISO 639-3 или ISO 639-5 в виде rdf:comment.

Я нашел лексво-онтологию (http://lexvo.org/ontology), и думаю, было бы неплохо ею воспользоваться. Он описывает оба типа кодов ISO как owl:DatatypeProperty. Интересно, как я мог бы использовать его для улучшения примера и как выразить его в RDFS. Вот попытка сделать то же самое с помощью lexvo:

<http://example.org/name1> <http://lexvo.org/ontology#language>  <http://lexvo.org/id/iso639-3/ell> .

Или альтернатива ISO 639-5:

<http://example.org/name1> <http://lexvo.org/ontology#language>  <http://lexvo.org/id/iso639-5/grk> .

Есть ли смысл в RDF? Как я могу выразить в RDFS, что RDF должен выглядеть так?

Заранее спасибо, Франс


person user952460    schedule 07.06.2012    source источник


Ответы (2)


Я не уверен, что для этого даже требуется какая-либо RDFS

Литералы в RDF могут иметь языковые теги, которые, согласно спецификации RDF, должны совпадать с RFC 3066 который сам соответствует стандарту ISO 693

Так, например, я могу сказать следующее:

<http://example.org/Me> <http://xmlns.com/foaf/0.1/givenName> "Rob"@en-gb .
<http://example.org/Me> <http://xmlns.com/foaf/0.1/givenName> "Bob"@en-us .

И вы можете придумать гораздо лучшие примеры с именами, которые на самом деле различаются между языками, чего Роб на самом деле не делает, хотя я обнаружил, что американцы чаще называют вас Бобом, чем британцы :-)

person RobV    schedule 07.06.2012
comment
Спасибо. Хорошая идея использовать языковой тег. Но я не уверен, что это соответствует потребности. Мне нужно поддерживать ISO 693-3 или ISO-639-5. Это трехбуквенный код языка. Из чтения RFC 3066 я не мог понять, правильно ли что-то вроде этого: <http://example.org/Me> <http://xmlns.com/foaf/0.1/givenName> "Rob"@eng ., но использование "Rob"@enn определенно кажется неправильным, потому что enn (обозначающий язык engenni) находится в ISO 639-3, но не в ISO 639-2. RFC 3066, похоже, относится только к ISO 639-2. - person user952460; 05.07.2012

В чем именно ваша проблема? Вы хотите знать, как должны быть написаны и интерпретированы операторы RDF? Для начала я бы посоветовал ознакомиться с основой RDF. А вот отличный инструмент, который проверяет RDF и рисует графики на основе вашего словарного запаса: валидатор RDF. Наблюдение за графиком, когда вы пишете свой код, действительно помогает понять его правильно.

person toniedzwiedz    schedule 07.06.2012
comment
Да, похоже, что ОП нужно больше узнать о RDF. Primer, безусловно, хорошее место для начала. Если вы разрабатываете на Java, скачайте Sesame, это хороший API для работы. И возьмите протеже для создания вашей онтологии/словаря. - person Michael; 07.06.2012
comment
Jena также является аккуратной библиотекой. @ Майкл, я не знаю о Сезаме, но это кажется интересным. Я должен сам взглянуть на это. - person toniedzwiedz; 07.06.2012
comment
Извините за неясность проблемы. Думаю, я был слишком смущен. Я только что отредактировал исходный вопрос. - person user952460; 05.07.2012