Могу ли я смешивать свойства skos со свойствами rdfs для определения класса?

Чтобы указать rdfs:Class и организовать онтологию, я хочу использовать SKOS. В настоящее время я определяю свои классы, используя свойства RDFS:

:MyClass a rdfs:Class;
    rdfs:label "my label";
    rdfs:comment "this is a comment";
    .

Могу ли я определить :MyClass как skos:Concept со свойствами SKOS и параметрами RDFS? У меня было бы что-то вроде этого:

:MyClass a rdfs:Class;
    rdfs:subClassOf skos:Concept;
    rdfs:label "my label";
    skos:prefLabel "my label";
    rdfs:comment "this is a comment";
    skos:notes "this is a comment";
    .

У меня есть читал, что некоторые свойства RDFS могут быть сопоставлены со свойствами SKOS. Итак, есть ли интерес к этому синтаксису? RDFS и SKOS дают здесь одинаковую избыточную информацию?


person Thibaut Guirimand    schedule 25.02.2015    source источник


Ответы (1)


Могу ли я определить :MyClass как skos:Concept со свойствами SKOS и параметрами RDFS?

Одна из прелестей технологии Semantic Web заключается в том, что вы можете делать практически все, что захотите. RDF, Структура описания ресурсов занимается описанием ресурсов. На самом деле вы не столько определяете вещи, сколько описываете их, поскольку, в конце концов, кто-то может немного позже и сказать дополнительные вещи.

Теперь, что касается избыточной информации в описании, например:

 :MyClass a rdfs:Class;
    rdfs:subClassOf skos:Concept;
    rdfs:label "my label";
    skos:prefLabel "my label";
    rdfs:comment "this is a comment";
    skos:notes "this is a comment" .

Ничего особенного в этом нет, хотя, как вы говорите, в некоторых случаях это несколько избыточно. Что вы могли бы сделать, если бы захотели, так это объявить свои собственные свойства, которые являются подсвойствами как свойств RDFS, так и свойств SKOS. Например, у вас может быть:

:myComment rdfs:subPropertyOf rdfs:comment, skos:notes .
:myLabel rdfs:subPropertyOf rdfs:label, skos:label .

и тогда вы могли бы сказать

 :MyClass a rdfs:Class;
    rdfs:subClassOf skos:Concept;
    :myLabel "my label" ;
    :myComment "this is a comment" .

Конечно, если вы не используете причину или предполагаемый потребитель не использует причину, то они не будут знать, что "мой ярлык" и "это комментарий" являются Метки RDFS и SKOS и комментарии ресурса. Это действительно сводится к тому, как вы ожидаете, что эта информация будет использоваться. Вам действительно нужны и rdfs:label и skos:prefLabel? Или вы собираетесь использовать только один? Я бы предположил (и это мнение), что имеет смысл делать вещи упрощенными до тех пор, пока они вам не понадобятся.

Прочие примечания

Могу ли я определить :MyClass как skos:Concept со свойствами SKOS и параметрами RDFS? У меня было бы что-то вроде этого:

:MyClass a rdfs:Class;
    rdfs:subClassOf skos:Concept;

Обратите внимание, что вы не «определили :MyClass как skos:Concept», а скорее определили :MyClass как подкласс skos:Concept». В этом есть большая разница. Если :MyClass должен быть skos:Concept, вам нужно сказать:

:MyClass a rdfs:Class;
         a skos:Concept;

или еще короче:

:MyClass a rdfs:Class, skos:Concept;
person Joshua Taylor    schedule 25.02.2015