Описание SKOS
| Ломов П. А. |
SKOS (Simple Knowledge Organization System, простая система огранизации знаний) подмножество языка RDF используется для создания модели, выражающей базовую структуру и содержимое концептуальных схем, таких как тезаурусы, классификационные схемы, списки именованных объектов, таксономий и других подобных типов словарей. Как приложение RDF SKOS позволяет публиковать термины в веб среде, связывать их с информационными элементами, а также включать их в другие концептуальные схемы.
SCOS также предоставляет легковесный язык концептуального моделирования, и может быть использовав комбинации с более формальными языками, например OWL.
Основные элементы SKOS
Основными элементами SKOS являются:
- Концепт (Concept) - определяет идею, сущьность, объект предметной области;
- Семантическое отношение - соотносит два концепта друг с другом. SKOS определяет 2 типа семантических онтоошений: иерархические(Broader/Narrower, Шире/Уже) и неиерархические(Related, ассоциирован).
Концепт как правило содержит один из лейблов в своем определении:
prefLabel - предпочитаемый лейбл. Может быть только один на каждом языке;
ex:animals rdf:type skos:Concept;<br />
skos:prefLabel "animals"@en;<br />
skos:prefLabel "animaux"@fr.<br />
altLabel - альтернативный лейбл. Может быть использован, наряду с предпочитаемым, для задания сиснонима;
ex:animals rdf:type skos:Concept;<br />
skos:prefLabel "animals"@en;<br />
skos:altLabel "creatures"@en;<br />
skos:prefLabel "animaux"@fr;<br />
skos:altLabel "créatures"@fr.<br />
hiddenLabel - скрытый лейбл. Используется для задания доступной информации для обработки, но скрытой от вывода, например, для ошибочного варианта лейбла;
ex:dog rdf:type skos:Concept;<br />
skos:prefLabel "собака"@ru;<br />
skos:hiddenLabel "сабака"@ru;<br />
В целом иерархические отношения напоминают отношения subClass в OWL, но следует что они не обладают, в отличие от своего аналога в OWL свойством транзитивности. Также не обладает транзитивностью и ассоциативное свойство, хотя SKOS определяет его как симметричное. Для определения транзитивных свойств следует использовать конструкции skos:broaderTransitive и skos:narrowerTransitive, которые являются предками нетранзиивных аналогов.
Помимо основных элементов в SKOS определены различные описательные элементы:
Описание диапазона (ScopeNote) - информация о значении концепта, если он является органичением чего либо;
ex:microwaveFrequencies skos:scopeNote <br />
"Used for frequencies between 1GHz to 300Ghz"@en.<br />
Определение (Defenition) - полное определение концепта;
Пример (Example) - включает пример сущности, описываемой концептом;
Запись редактора (EditorialNote) - служебный комментарий автора словаря, тезауруса, описательной схемы;
Запись изменения (ChangeNote) - служебная запись об изменении данного концепта или его атрибутов;
SKOS позволяет также определять схемы концептов (Concept Scheme), которые являются воплощением некоего словаря или классификацонной схемы, в которые можно включать концепты. Для определения концептуальной схемы используется конструкция skos:ConceptScheme:
ex:animalThesaurus rdf:type skos:ConceptScheme;<br />
dct:title "Simple animal thesaurus";<br />
dct:creator ex:antoineIsaac.<br />
В примере выше также используются два определения из словаря Dublin Core. Концепты включаются в схему с помощью конструкции skos:inScheme property в объявлении концепта. Один концеп может быть в различных схемах. Для указания корневого концепта в словаре используется конструкция skos:hasTopConcept в определении схемы:
ex:animalThesaurus rdf:type skos:ConceptScheme;<br />
dct:title "Simple animal thesaurus";<br />
dct:creator ex:antoineIsaac;<br />
skos:hasTopConcept ex:mammals.<br />
<br />
ex:mammals rdf:type skos:Concept;<br />
skos:inScheme ex:animalThesaurus.<br />
<br />
ex:cows rdf:type skos:Concept;<br />
skos:broader ex:mammals;<br />
skos:inScheme ex:animalThesaurus.<br />
<br />
ex:fish rdf:type skos:Concept;<br />
skos:inScheme ex:animalThesaurus.<br />
SKOS позволяет также связывать концепты из различных схем используя следующие конструкций в определении концепта:
- exactMatch - концепт может быть заменен концептом, связанным с ним данным отношением;
- closeMatch - определение концепта очень похоже на определение концепта, связанного с ним данным отношением;
- broadMatch - аналогия отношения broader в отношении концепта из другой схемы;
- narrowMatch - аналогия отношения narrower в отношении концепта из другой схемы;
- relatedMatch - аналогия отношения related в отношении концепта из другой схемы.
Пример использования данных конструкций приведен ниже:
ex1:referenceAnimalScheme rdf:type skos:ConceptScheme;<br />
dct:title "Extensive list of animals"@en. <br />
ex1:animal rdf:type skos:Concept;<br />
skos:prefLabel "animal"@en;<br />
skos:inScheme ex1:referenceAnimalScheme.<br />
ex1:platypus rdf:type skos:Concept;<br />
skos:prefLabel "platypus"@en;<br />
skos:inScheme ex1:referenceAnimalScheme.<br />
<br />
ex2:eggSellerScheme rdf:type skos:ConceptScheme;<br />
dct:title "Obsessed egg-seller's vocabulary"@en. <br />
ex2:eggLayingAnimals rdf:type skos:Concept;<br />
skos:prefLabel "animals that lay eggs"@en;<br />
skos:inScheme ex2:eggSellerScheme.<br />
ex2:animals rdf:type skos:Concept;<br />
skos:prefLabel "animals"@en;<br />
skos:inScheme ex2:eggSellerScheme.<br />
ex2:eggs rdf:type skos:Concept;<br />
skos:prefLabel "eggs"@en;<br />
skos:inScheme ex2:eggSellerScheme.<br />
Следует отметить, что отношении OWL - owl:sameAs обладает другой семантикой нежели skos:exactMatch, поэтому не следует их отождествлять.
SKOS позволяет также заимствовать концепт из другой схемы и расширяего, используя следующий прием:
ex2:catScheme rdf:type skos:ConceptScheme;<br />
dct:title "The Complete Cat Thesaurus"@en. <br />
<br />
ex1:cats skos:inScheme ex2:catScheme.<br />
<br />
ex2:abyssinian rdf:type skos:Concept;<br />
skos:prefLabel "Abyssinian Cats"@en;<br />
skos:broader ex1:cats;<br />
skos:inScheme ex2:catScheme.<br />
<br />
ex2:siamese rdf:type skos:Concept;<br />
skos:prefLabel "Siamese Cats"@en;<br />
skos:broader ex1:cats;<br />
skos:inScheme ex2:catScheme.<br />
Однако в этом случает свойства cats из другой схемы не заимствуются. Конструкция owl:imports позволяет выполнить альтернативное подключение другой схемы для повторного использования, с некоторыми замечаниями:
ex2:catScheme owl:imports ex1:referenceAnimalScheme.<br />
В этом случае добавление концептов из ex1:referenceAnimalScheme. не происходит.
Можно также связывать концепты с ресурсами, используя элемент Dublic core - dct:subject:
ex1:platypus rdf:type skos:Cex1:platypus rdf:type skos:Concept;<br />
skos:prefLabel "platypus"@en.<br />
<http://en.wikipedia.org/wiki/Platypus> rdf:type foaf:Document;<br />
dct:subject ex1:platypus.<br />
В вышеприведенном примере обявляется концепт platypus, который затем связывается с ресурсом ти документ - <http://en.wikipedia.org/wiki/Platypus>
Расширения SKOS
SKOS позволяет определять коллекции терминов, неупорядоченные и упорядоченные с помощью конструкций: skos:Collection skos:member и skos:OrderedCollection skos:memberList:
Неупорядоченная коллекция:
ex:milk rdf:type skos:Concept;<br />
skos:prefLabel "milk"@en.<br />
ex:cowMilk rdf:type skos:Concept; <br />
skos:prefLabel "cow milk"@en;<br />
skos:broader ex:milk.<br />
ex:goatMilk rdf:type skos:Concept; <br />
skos:prefLabel "goat milk"@en;<br />
skos:broader ex:milk.<br />
ex:buffaloMilk rdf:type skos:Concept; <br />
skos:prefLabel "buffalo milk"@en;<br />
skos:broader ex:milk.<br />
<br />
_:b0 rdf:type skos:Collection;<br />
skos:prefLabel "milk by source animal"@en;<br />
skos:member ex:cowMilk;<br />
skos:member ex:goatMilk;<br />
skos:member ex:buffaloMilk.<br />
Упорядоченная коллекция:
ex:infants rdf:type skos:Concept; <br />
skos:prefLabel "infants"@en.<br />
ex:children rdf:type skos:Concept; <br />
skos:prefLabel "children"@en.<br />
ex:adults rdf:type skos:Concept; <br />
skos:prefLabel "adults"@en.<br />
<br />
_:b0 rdf:type skos:OrderedCollection;<br />
skos:prefLabel "people by age"@en;<br />
skos:memberList _:b1.<br />
_:b1 rdf:first ex:infants;<br />
rdf:rest _:b2.<br />
_:b2 rdf:first ex:children;<br />
rdf:rest _:b3.<br />
_:b3 rdf:first ex:adults;<br />
rdf:rest rdf:nil.<br />
SKOS позволяет расширять свои элементы, используя конструкции rdfs:subPropertyOf и rdfs:subClassOf для определения семантических особенностей новых терминов и определений:
ex:broaderGeneric rdfs:subPropertyOf skos:broader.<br />
ex:broaderPartitive rdfs:subPropertyOf skos:broader.<br />
ex:broaderInstantive rdfs:subPropertyOf skos:broader.<br />
Данная статья является "выжимкой" - SKOS Simple Knowledge Organization System Prime
| Уровень публикуемого материала | |
| Рекомендуемый уровень знаний читателя в предметной области : | |
|---|---|
| Публикация | |
| Тип публикации: | |
|---|---|
| Оригинал: | |