Чим відрізняється RDF від OWL? [зачинено]


191

Я намагаюся осягнути концепцію Semantic Web. Мені важко зрозуміти, у чому саме різниця між RDF та OWL. Чи OWL є розширенням RDF або ці дві абсолютно різні технології?


Я особисто знайшов цю слайд-колоду досить корисною і зрозумілою: slideshare.net/rlovinger/rdf-and-owl
dgorissen

Відповіді:


272

Семантична павутина буває шарами. Це короткий підсумок тих, які я думаю, що вас цікавлять.

Оновлення : Зверніть увагу, що RDFS використовується для визначення структури даних, а не OWL. OWL описує семантичні відносини, які звичайне програмування, наприклад, С-структура, не метушиться і наближається до теорії досліджень та наборів ШІ.

Трійки та URI

Subject - Predicate - Object

Вони описують один факт. Як правило, URI використовуються для предмета та предиката. Об'єкт є або іншим URI, або літералом, таким як число або рядок. Літерали можуть мати тип (який також є URI), і вони також можуть мати мову. Так, це означає, що трійки можуть мати до 5 біт даних!

Наприклад, трійка може описати той факт, що Чарльз є батьком Гарріса.

<http://example.com/person/harry> <http://familyontology.net/1.0#hasFather> <http://example.com/person/charles> .

Трійці - це нормалізація бази даних, яка доходить до логічної межі. Вони мають перевагу в тому, що ви можете завантажувати трійки з багатьох джерел в одну базу даних без перенастроювання.

RDF та RDFS

Наступний шар - RDF - Рамка опису ресурсів. RDF визначає деяку додаткову структуру до трійки. Найголовніше, що визначає RDF, - це предикат під назвою "rdf: type". Це використовується для того, щоб сказати, що речі певного типу. Усі використовують rdf: type, що робить його дуже корисним.

RDFS (схема RDF) визначає деякі класи, які представляють поняття предметів, об’єктів, предикатів тощо. Це означає, що ви можете почати робити заяви про класи речі та типи відносин. На самому простому рівні ви можете констатувати такі речі, як http://familyontology.net/1.0#hasFather - це стосунки між людиною та людиною. Це також дозволяє описати в читаному людиною тексті значення стосунків чи класу. Це схема. Він розповідає про юридичне використання різних класів та відносин. Він також використовується для позначення того, що клас або властивість є підтипом більш загального типу. Наприклад, "HumanParent" - це підклас "Person". "Любить" - це підклас "Знає".

Серіалізація RDF

RDF можна експортувати в декілька форматів файлів. Найпоширенішим є RDF + XML, але це має деякі недоліки.

N3 - це не-XML-формат, який легше читати, і є деякі підмножини (Turtle та N-Triples), які суворіші.

Важливо знати, що RDF - це спосіб роботи з трійками, а не формати файлів.

XSD

XSD - це простір імен, який здебільшого використовується для опису типів властивостей, таких як дати, цілі числа тощо. Зазвичай це спостерігається в даних RDF, що ідентифікують конкретний тип літералу. Він також використовується в XML-схемах, що є дещо іншим чайником риби.

OWL

OWL додає семантику до схеми. Це дозволяє уточнити набагато більше про властивості та класи. Він також виражається в трійках. Наприклад, це може вказувати, що "Якщо A єMarriedTo B", це означає "B isMarriedTo A". Або що якщо " C isAncestorOf D " і " D isAncestorOf E ", то " C isAncestorOf E"". Ще одна корисна річ, яку додає сова - це можливість сказати дві речі однакові, це дуже корисно для об’єднання даних, виражених в різних схемах. Ви можете сказати, що відносини "sired" в одній схемі - це сова: ті ж, що і "інші" в інших схемах. Ви також можете використовувати його, щоб сказати, що дві речі однакові, наприклад, "Елвіс Преслі" у Вікіпедії є той самий, що і на BBC.

Ви також можете використовувати OWL для висновку про неявні факти, наприклад " C isAncestorOf E ".


21
Ось зображення шарів семантичного веб: w3.org/2001/12/semweb-fin/swlevels.png Просто для довідки.
Тімо Весткампер

8
Однією з частин цього, що мені досі незрозуміло, є те, що між тим, що RDFS та OWL можуть виразити, є певне перекриття. Наприклад, сова: Клас може виглядати дуже схоже на rdfs: Class. (Наприклад, сутність типу сова: Клас часто є об'єктом декількох предикатів RDFS, таких як rdfs: comment і rdfs: subclassOf.) Я намагаюся зрозуміти, як OWL є шаром поверх RDFS, тому що коли мова йде про Визначаючи класи, це більше схоже на спосіб збагачення того, що ви могли зробити з RDFS.
Ян Гріффітс

Залежно від профілю OWL / OWL-2, який ви використовуєте, ви маєте "додаткову" здатність збагатити свою базу знань аксіомами DL (наприклад, обмеження властивостей, нерозбірливість та багато іншого).
Жубарб

4
@IanGriffiths: насправді під семантикою OWL2, сова: Клас та rdfs: Клас (а також ще кілька дивних пар) є еквівалентними: answer.semanticweb.com/questions/30954/…
Володимир Алексієв

... OWL, RDFS, XSD ... - це додаткові мови ... кожен грає роль в описі вашого домену, і всі приєднуються, щоб збагатити його ...
Sergio

82

Коротко:

  • RDF визначає, як писати речі
  • OWL визначає, що писати

Як писав попередній плакат, RDF - це специфікація, яка говорить про те, як визначити трійки.

Проблема полягає в тому, що RDF дозволяє вам визначити все, щоб ви могли скласти декларацію так:

| subject | predicate | object |
|---------|-----------|--------|
| Alex    | Eats      | Apples |
| Apples  | Eats      | Apples |
| Apples  | Apples    | Apples |

Ці трійки утворюють дійсні документи RDF.

Але, семантично, ви розумієте, що ці твердження неправильні, і RDF не може допомогти вам перевірити те, що ви написали.

Це неправдива онтологія.

Специфікація OWL визначає, що саме ви можете писати за допомогою RDF, щоб мати дійсну онтологію.

Онтології можуть мати кілька властивостей.

Ось чому OWL (версія 1) визначає кілька версій, як OWL DL, OWL Lite, OWL Full.


28
Але зауважте, що OWL не обмежує те, що ви можете помістити у свій магазин RDF - інформація схеми OWL використовується в основному для висновку, а не для забезпечення обмежень.
ДНК

32

RDF, RDFS та OWL - це засоби висловлювати все більш складну інформацію чи знання. Усі вони можуть бути серіалізовані в синтаксисі RDF / XML (або будь-який інший синтаксис серіалізації RDF, наприклад, Черепаха або N3).

Ці технології пов'язані між собою і повинні бути сумісними, але вони мають різний початок, тому, можливо, стосунки між ними складні для розуміння. Вибір того чи іншого залежить від того, наскільки складність потребує ситуація, яку ви моделюєте.

Підсумок експресивності

RDF : прямолінійне представлення, зосереджене на екземплярах та на відображенні їх типів ( rdf:type). Можна встановити власні властивості для зв’язку даних та створення трійки. Дані RDF запитуються за допомогою SPARQL. Приклад RDF, серіалізованого у черепахи:

@prefix : <http://www.example.org/> .
:john    rdf:type           :Man .
:john    :livesIn  "New-York" .
:livesIn    rdf:type    rdf:Property .

RDFS: Деякі ситуації не легко моделюються лише RDF, іноді цікаво представити більш складні відносини, наприклад, підкласи ( тип типу ). RDFS надає спеціальні засоби для подання таких випадків, з конструктами подобаються rdfs:subClassOf, rdfs:rangeабо rdfs:domain. В ідеалі раціоналіст може зрозуміти семантику RDFS та розширити кількість трійки на основі співвідношень: Наприклад, якщо у вас є трійки John a ManтаMan rdfs:subClassOf Human тоді ви повинні генерувати, а трійку John a Human. Зауважте, що це неможливо зробити лише з RDF. Дані RDFS запитуються за допомогою SPARQL. Приклад RDFS, серіалізованого у Turtle:

@prefix : <http://www.example.org/> .
:john    rdf:type           :Man .
:Man    rdfs:subClassOf    :Human .
:john    :livesIn  "New-York" .
:livesIn    rdf:type    rdf:Property .
# After reasoning
:john    rdf:type    :Human .

OWL: Найвищий рівень експресивності. Співвідношення між класами можна формально моделювати на основі логіки опису (математична теорія). OWL в значній мірі покладається на повторний сигнал, можна виразити складні конструкції, такі як ланцюгові властивості, наприклад, або обмеження між класами. OWL служить для побудови онтологій або схеми у верхній частині наборів даних RDF. Оскільки OWL може бути серіалізований як RDF / XML, теоретично можливо запитувати його через SPARQL, але набагато інтуїтивніше запитувати онтологію OWL за допомогою DL-запиту (як правило, це стандартний вираз класу OWL). Приклад конструкцій OWL, серіалізованих у Turtle.

@prefix : <http://www.example.org/> .
:livesIn    rdf:type    owl:DatatypeProperty .
:Human    rdf:type    owl:Class .
:Man   rdf:type    owl:Class .
:Man    rdfs:subClassOf    :Human .
:John    rdf:type    :Man . 
:John    rdf:type    owl:NamedIndividual .

2
Підклас не є "типом типу": це метаклас. "X a Y. Y a Z." відрізняється від "X a Y. Y subClassOf Z"
Володимир Алексієв

14

По-перше, як було зазначено раніше, сову можна серіалізувати в RDF.

По-друге, OWL додає онтологічну здатність до RDF (що само по собі забезпечує надзвичайно обмежену можливість формального представлення відомих знань), забезпечуючи апарат для визначення компонентів вашої трійки за допомогою формальної обчислюваної логіки опису першого порядку. Це те, що тут мають на увазі плакати, коли вони говорять про "смислове багатство".

По-третє, важливо усвідомити, що в OWL-Full (для OWL 1) rdfs: class та owl: class еквівалентні, а в OWL-DL, Owl: class - це підклас rdfs: class. Фактично це означає, що ви можете використовувати онтологію OWL як схему для RDF (формально не вимагаючи схеми).

Я сподіваюся, що це допоможе з’ясувати далі.


Дуже вдалий пост ... Я хочу зберегти RDF-трійки в Oracle 11g, чи можу я використовувати OWL як схему для моєї RDF?
Саад

10

Коли ви використовуєте термін RDF, вам слід розрізнити дві речі:

  1. Ви можете посилатися на RDF як на поняття :

    Спосіб опису речей / логіки / нічого, використовуючи колекції трійки.

    Приклад:

    «У Анни яблука». "Яблука здорові".

    Ви маєте дві трійки, які описують два ресурси "Анна" та "яблука". Концепція RDF (Resource Description Framework) полягає в тому, що ви можете описувати ресурси (що завгодно) за допомогою наборів усього 3 слова (терміни). На цьому рівні вам не байдуже, як ви зберігаєте інформацію, чи є у вас рядок з 3-х слів, або малюнок на стіні, або таблиця з 3 стовпцями тощо.

    На цьому концептуальному рівні важливим є лише те, що ви можете представляти все, що завгодно, використовуючи потрійні висловлювання.

  2. Ви можете посилатися на RDF як словниковий запас

    Лексика - це лише сукупність визначень термінів, що зберігаються у файлі чи десь. Ці визначені терміни мають на меті бути повторно використаними в інших описах, щоб люди могли легше та стандартніше описувати дані (ресурси).

    В Інтернеті ви можете знайти деякі стандартні словники, такі як:

    RDF ( https://www.w3.org/1999/02/22-rdf-syntax-ns )

    RDFS ( https://www.w3.org/2000/01/rdf-schema# )

    OWL ( https://www.w3.org/2002/07/owl )

    RDF-вокабаларність визначає терміни, які допомагають описати (на самому базовому рівні) людей / екземпляри класів. Приклад: rdf: type, rdf: Властивість.

    За допомогою rdf: type можна описати, що деякий ресурс є екземпляром класу:

     <http://foo.com/anna> rdf:type <http://foo.com/teacher> 
    

    Таким чином, словник RDF має терміни, які орієнтовані на основні описи екземплярів класу та деякі інші описи (наприклад, визначення потрійного висловлювання або визначення предиката ... загалом, речі, що відносяться до концепції RDF).

    У лексиці RDFS є термінові визначення, які допомагають описати класи та зв’язки між ними. Лексика RDFS не переймається випадками класів (осіб), як словник RDF. Приклад: властивість rdfs: subClassOf, яке можна використовувати для опису, що клас A є підкласом класу B.

    Словники RDF та RDFS залежать один від одного. RDF визначає його терміни, використовуючи RDFS, а RDFS використовує RDF для визначення власних термінів.

    Словники RDF / RDFS містять терміни, які можна використовувати для створення дуже основних описів ресурсів. Якщо ви хочете мати більш складні та точні описи, ви повинні використовувати словник OWL.

Словник OWL постачається з набором нових термінів, орієнтованих на більш детальні описи. Цей термін визначається за допомогою термінів із словників RDF / RDFS.

owl:ObjectProperty a rdfs:Class ;
                   rdfs:label "ObjectProperty" ;
                   rdfs:comment "The class of object properties." ;
                   rdfs:isDefinedBy <http://www.w3.org/2002/07/owl#> ;
                   rdfs:subClassOf rdf:Property .

owl:DatatypeProperty a rdfs:Class ;
                     rdfs:label "DatatypeProperty" ;
                     rdfs:comment "The class of data properties." ;
                     rdfs:isDefinedBy <http://www.w3.org/2002/07/owl#> ;
                     rdfs:subClassOf rdf:Property .

 owl:TransitiveProperty a rdfs:Class ;
                        rdfs:label "TransitiveProperty" ;
                        rdfs:comment "The class of transitive properties." ;
                        rdfs:isDefinedBy <http://www.w3.org/2002/07/owl#> ;
                        rdfs:subClassOf owl:ObjectProperty .

Як видно вище, словник OWL розширює поняття rdf: Властивість, створюючи нові типи властивостей, які є менш абстрактними та можуть надавати більш точні описи ресурсів.

Висновки:

  1. RDF - це поняття або спосіб опису ресурсів за допомогою наборів потрій.
  2. Потрійні файли RDF можуть зберігатися в різних форматах (XML / RDF, Turtle тощо)
  3. Концепція RDF є базовою моделлю всіх семантичних веб-технологій та структур (наприклад, словникових запасів).
  4. RDF також є словником, який поряд із словником RDFS надає набір термінів, які можуть бути використані для створення загальних / абстрактних описів ресурсів.
  5. OWL - це словниковий запас, побудований із словників RDF та RDFS, які надають нові терміни для створення більш детальних описів ресурсів.
  6. Всі семантичні лексики в Інтернеті (RDF, RDFS, OWL тощо) створені з дотриманням концепції RDF.
  7. І звичайно, словник OWL має за лаштунками всілякі складні логіки та концепції, які визначають мову веб-онтології. Лексика OWL - це лише спосіб використання всієї цієї логіки на практиці.

9

RDF - це спосіб визначити потрійний "предмет", "предикат", "значення" . Наприклад, якщо я хочу сказати,

"мене звуть П'єр"

Я б написав

<mail:me@where.com> <foaf:name> "Pierre"

Дивіться <foaf:name> ? вона є частиною онтології FOAF . Онтологія - це формальний спосіб описати властивості, класи даного предмета, а OWL - це (RDF) спосіб визначення онтології.

Для визначення класу, підкласу, поля тощо ви використовуєте C ++, Java тощо ...

class Person
{
    String email_as_id;
    String name;
}

RDF використовує OWL для визначення таких типів операторів.

Ще одне місце, щоб задати подібне запитання: http://www.semanticoverflow.com/


14
Не згоден із: "RDF використовує OWL для визначення такого роду операторів". RDF жодним чином не використовує OWL. Це навпаки: OWL використовує схему RDF, яка використовує RDF.
alexkr

@Stefano Де вони знаходять людей для бігу, це справжнє питання.
Паскаль Thivent

7

Я намагаюся осягнути концепцію Semantic Web. Мені важко зрозуміти, у чому саме різниця між RDF та OWL. Чи OWL є розширенням RDF або ці дві абсолютно різні технології?

Коротше кажучи, так, можна сказати, що OWL - це розширення RDF.

Більш детально, за допомогою RDF ви можете описати спрямований графік, визначивши трійки предмет-предикат-об'єкт. Суб'єкт і об’єкт - це вузли, присудок - це край, або іншими словами, предикат описує відношення між предметом і об'єктом. Наприклад:Tolkien :wrote :LordOfTheRings або:LordOfTheRings :author :Tolkienтощо ... Системи пов'язаних даних використовують ці трійки для опису графіків знань, і вони надають способи їх зберігання, запиту. Зараз це величезні системи, але ви можете використовувати RDF для менших проектів. Кожна програма має специфічну для домену мову (або всюдисущу мову за умовами DDD). Ви можете описати цю мову у своїй онтології / лексиці, так що ви можете описати доменну модель вашої програми за допомогою графіка, який ви зможете візуалізувати, показати її на бізнес-ppl, поговорити про бізнес-рішення на основі моделі та побудувати додаток зверху. того. Ви можете прив’язати vocab вашої програми до даних, які вона повертає, та до лексики, відомої пошуковими системами, наприклад мікроданих(наприклад, ви можете використовувати HTML з RDFA для цього), і тому пошукові системи можуть легко знаходити ваші програми, оскільки знання про те, що це робиться, буде оброблятися машиною. Так працює семантична веб. (Принаймні, так я собі уявляю.)

Тепер для опису об'єктно-орієнтованих програм вам потрібні типи, класи, властивості, екземпляри тощо ... За допомогою RDF ви можете описувати лише об'єкти. RDFS (схема RDF) допомагає описати класи, успадкування (на основі об'єктів ofc.), Але воно занадто широке. Для визначення обмежень (наприклад, одна дитина на кожну китайську родину) вам потрібен інший словник. OWL (мова онтології) виконує цю роботу. OWL - онтологія, яку ви можете використовувати для опису веб-додатків. Він інтегрує XSD simpleTypes.
Так само RDF -> RDFS -> OWL -> MyWebAppє наказ описати ваш веб-додаток більш конкретно.


Дякую - це здається дуже корисним. Я думаю, ви говорите (будь ласка, повідомте мене, якщо я це правильно зрозумів), що (1). RDF дозволяє вказати прямі зв’язки між об'єктами ( personA friendsWith personB), що (2) RDFS розширює це, надаючи можливість задавати зв'язки між object classes- тобто class Person <has 'friendsWith' relationship> Person. Це дозволяє потім фразу RDF з допомогою класу: A:typeof:person friendsWith B:<typeof:person>. І (3) OWL дозволяє вам задати обмеження відносин?
Зак Сміт,

тобто людина може мати максимум 4 "друзі з" зв'язками "?
Зак Сміт,

@ZachSmith Так.
inf3rno

Така гарна відповідь - дякую. Полегшує читання всього іншого на цій сторінці.
Зак Сміт

@ZachSmith yw.
inf3rno

7

RDFS дозволяє висловити зв'язки між речами, стандартизуючи їх у гнучкому, потрійному форматі, а потім надаючи словниковий запас ("ключові слова", такі як rdf:typeабо rdfs:subClassOf), які можна використовувати для вимови .

OWL схожий, але більший, кращий і гірший. OWL дозволяє говорити набагато більше про вашу модель даних, вона показує, як ефективно працювати з запитами до бази даних та автоматичними повторними переглядачами, а також дає корисні примітки для переведення ваших моделей даних у реальний світ.

1-а різниця: лексика

З відмінностей між RDFS та OWL, найважливішим є лише те, що OWL надає набагато більший словник, який ви можете використовувати, щоб сказати щось .

Наприклад, OWL включає в себе всі ваші старі друзі з RDFS , таких як rdfs:type, rdfs:domainі rdfs:subPropertyOf. Однак OWL також дає вам нових і кращих друзів! Наприклад, OWL дозволяє описати вам дані з точки зору встановлених операцій:

Example:Mother    owl:unionOf     (Example:Parent, Example:Woman)

Це дозволяє визначати еквівалентність у базі даних:

AcmeCompany:JohnSmith  owl:sameAs    PersonalDatabase:JohnQSmith

Це дозволяє обмежувати значення властивостей:

Example:MyState     owl:allValuesFrom     (State:NewYork, State:California, …)

насправді OWL пропонує стільки нового, складного словника, який можна використовувати при моделюванні даних та міркуванні, що отримує власний урок!

2-а різниця: жорсткість

Інша основна відмінність полягає в тому, що на відміну від RDFS, OWL не тільки говорить вам про те, як ви можете використовувати певний словник, але фактично розповідає, як ви не можете ним користуватися. На відміну від цього, RDFS дає вам все що завгодно, до якого ви можете додати майже будь-яку трійку, яку захочете.

Наприклад, в RDFS все, що вам здається, може бути примірником rdfs:Class. Ви можете вирішити сказати, що Бігль є, rdfs:Classа потім сказати, що Фідо є екземпляром Бігла :

Example: Beagle    rdf:Type    rdfs:Class

Example:Fido    rdf:Type    Example: Beagle

Далі ви можете вирішити, що хочете сказати речі про біглів, можливо, ви хочете сказати, що Бігль - це екземпляр собак, розведених в Англії :

Example:Beagle    rdf:Type    Example:BreedsBredInEngland

Example: BreedsBredInEngland    rdf:Type    rdfs:Class

Цікавим у цьому прикладі є те, що Example:Beagleвін використовується як класом, так і екземпляром . Бігль - клас, до якого входить Фідо , але сам Бігль є членом іншого класу: речі, розведені в Англії.

У RDFS все це цілком законно, тому що RDFS насправді не обмежує, які заяви ви можете, а не можете вставити. Для OWL, навпаки, або, принаймні, в деяких ароматах OWL, вищезазначені твердження насправді не є законними: вам просто не дозволяють говорити, що щось може бути і класом, і екземпляром.

Тоді це друга основна різниця між RDFS та OWL. RDFS дозволяє безкоштовно для всіх , що завгодно, у світі, наповненому Диким Заходом, Speak-Easies та Сальвадором Далі. Світ OWL накладає набагато більш жорстку структуру.

Третя різниця: Анотації, мета-метадані

Припустимо, ви провели останню годину, будуючи онтологію, яка описує ваш радіотехнічний бізнес. Під час обіду ваше завдання - побудувати онтологію для вашого виробництва годинників. Сьогодні після обіду, після приємної кави, ваш начальник зараз каже вам, що вам доведеться побудувати онтологію для вашого високоприбуткового годинникового бізнесу. Чи є спосіб легко використати ранкову роботу?

OWL робить такі речі дуже, дуже просто. Owl:Importє те , що ви будете використовувати в ситуації , в радіо-годинники, а також OWL дає багату різноманітність анотацій , таких як owl:versionInfo, owl:backwardsCompatibleWithіowl:deprecatedProperty , які можуть легко бути використані моделі даних зв'язати воєдино в обопільно єдине ціле.

На відміну від RDFS, OWL обов'язково задовольняє всі ваші потреби в метамета-даних щодо моделювання даних.

Висновок

OWL надає вам значно більший словник, з яким можна легко сказати все, що ви можете сказати про вашу модель даних. Це навіть дозволяє налаштувати те, що ви говорите, виходячи з обчислювальної реальності сучасних комп'ютерів та оптимізуючи для конкретних програм (наприклад, для пошукових запитів). Крім того, OWL дозволяє легко виражати зв’язки між різними онтологіями, використовуючи стандартну рамку анотацій .

Все це є перевагами порівняно з RDFS, і, як правило, вартує додаткових зусиль, необхідних для ознайомлення з ними.

Джерело: RDFS проти OWL


4

В об'єктній моделі WC3 документа, що представляє собою документ є абстрактною річ: елемент з текстом, коментарями, атрибутами та іншими елементами , вкладених в нього.

У семантичній павутині ми маємо справу з набором "трійки". Кожна трійка - це:

  • предмет, річ трійка є про , ід, первинний ключ бази даних - це URI; і
  • предикат, "дієслово", "властивість", "стовпець бази даних" - інший URI; і
  • об'єкт , атомарному значення або який - або URI.

OWL - це семантична павутина, як і схеми для об'єктної моделі документа W3C. Він документує, що означають різні URI, і вказує, як вони використовуються формально, що їх можна перевірити машиною. Семантична павутина може або не може бути дійсною щодо OWL, що застосовується до неї, подібно до того, як документ може бути, а може і не бути дійсним щодо схеми.

RDF - це семантична павутина, як XML - DOM - це серіалізація набору трійки.

Звичайно, RDF зазвичай серіалізовать XML - документів ... але важливо розуміти , що RDF це не те ж саме , як «XML серіалізациі в RDF».

Аналогічно, OWL може бути серіалізований за допомогою OWL / XML, або (вибачте з цього приводу) він може бути виражений як RDF, що сам по собі зазвичай серіалізується як XML.


3

Базовий семантичний веб-стек багато в чому пояснено вже в цій темі. Я хотів би зупинитися на початковому питанні та порівняти RDF з OWL.

  • OWL - це суперкомплект RDF & RDF-S (зверху)
  • OWL дозволяє ефективно працювати з RDF & RDF-S
  • OWL має деяку розширену лексику
    • класи та особи ("екземпляри")
    • властивості та типи даних ("предикати")
  • OWL необхідний для правильного міркування та умовиводу
  • OWL поставляється у трьох діалектах: література, логіка опису та повно

Використання OWL має важливе значення, щоб отримати більше сенсу (міркування та умовиводи), знаючи лише кілька фактів. Ця "динамічно створена" інформація може бути додатково використана для відповідних запитів, як у SPARQL.

Деякі приклади показують, що це насправді працює з OWL - вони були взяті з моєї розмови про основи семантичної мережі в TYPO3camp Майорка, Іспанія у 2015 році.

еквіваленти за правилами

Spaniard: Person and (inhabitantOf some SpanishCity)

Це означає, що a Spaniardповинен бути Person(і, таким чином, успадковує всі властивості в приналежної частини) і повинен жити принаймні в одному (або більше) SpanishCity.

значення властивостей

<Palma isPartOf Mallorca>
<Mallorca contains Palma>

Приклад показує результат застосування inverseOfдо властивостей isPartOfта contains.

  • обернена
  • симетричний
  • перехідний
  • нерозбірливий
  • ...

кардинальності властивостей

<:hasParent owl:cardinality “2“^^xsd:integer>

Це визначає, що кожен Thing(у цьому сценарії, швидше за все, а Human) має рівно двох батьків - кардинальність присвоюється hasParentвластивості.

  • мінімум
  • максимум
  • точний


2

Resource Description Framework (RDF) є потужним формальним мовою подання знань і фундаментальним стандарт Semantic Web. У ньому є власний словник, який визначає основні поняття та відносини (наприклад, rdf: тип відповідає співвідношенню isA) та модель даних, яка дозволяє машинно інтерпретувати висловлювання у вигляді предмета-предикату-об'єкта (ресурс-властивість-значення) трійки, що називаються RDF трійками, такими як картинки-зображення-книги. Розширення словникового запасу RDF з поняттями, необхідними для створення керованих словників та основних онтологій, називається RDF Schema або RDF Vocabulary Description Language (RDFS). RDFS дає змогу писати заяви про класи та ресурси та виражати таксономічні структури, наприклад, за допомогою взаємозв'язку надкласового та підкласового класів.

Складні області знань потребують більше можливостей, ніж доступні в RDFS, що призвело до впровадження OWL . OWL підтримує відносини між класами (союз, перехрестя, нерозбірливість, еквівалентність), обмеження кардинальності власності (мінімальне, максимальне, точне число, наприклад, у кожної людини є рівно один батько), багате введення властивостей, характеристик властивостей та спеціальних властивостей (перехідних, симетричний, функціональний, зворотний функціонал, наприклад, A ex: hasAncestor B і B ex: hasAncestor C означає, що A ex: hasAncestor C), визначаючи, що дана властивість є унікальним ключем для екземплярів певного класу, обмеження домену та діапазону за властивостями.

Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.