Język reguł sieci semantycznej — Semantic Web Rule Language
Semantic Web Rule Language ( SWRL ) jest proponowany język dla Semantic Web , które mogą być używane do wyrażenia zasady, jak i logiki, łącząc OWL DL lub OWL Lite z podzbioru Rule Markup Language (sama podzbiorem Datalogu ).
Specyfikacja została przedłożona w maju 2004 do W3C przez National Research Council of Canada , Network Inference (odkąd została przejęta przez webMethods ) i Stanford University we współpracy ze Wspólną amerykańsko-europejską komisją ad hoc Agent Markup Language Committee. Specyfikacja została oparta na wcześniejszej propozycji języka reguł OWL.
SWRL ma pełną moc OWL DL, ale za cenę rozstrzygalności i praktycznych wdrożeń. Rozstrzygalność można jednak odzyskać, ograniczając formę dopuszczalnych zasad, zazwyczaj przez nałożenie odpowiedniego warunku bezpieczeństwa.
Reguły mają formę implikacji między poprzednikiem (ciało) a następnikiem (głowa). Zamierzone znaczenie można odczytywać jako: ilekroć warunki określone w poprzedniku są spełnione, to warunki określone w następniku również muszą być spełnione.
Przykład
Składnia czytelna dla człowieka
hasParent(?x1,?x2) ∧ hasBrother(?x2,?x3) ⇒ hasUncle(?x1,?x3)
Konkretna składnia XML
XML Beton Składnia jest kombinacją OWL Web Ontologia Języka XML Presentation Składnia z RuleML składni XML .
<ruleml:imp>
<ruleml:_rlab ruleml:href="#example1"/>
<ruleml:_body>
<swrlx:individualPropertyAtom swrlx:property="hasParent">
<ruleml:var>x1</ruleml:var>
<ruleml:var>x2</ruleml:var>
</swrlx:individualPropertyAtom>
<swrlx:individualPropertyAtom swrlx:property="hasBrother">
<ruleml:var>x2</ruleml:var>
<ruleml:var>x3</ruleml:var>
</swrlx:individualPropertyAtom>
</ruleml:_body>
<ruleml:_head>
<swrlx:individualPropertyAtom swrlx:property="hasUncle">
<ruleml:var>x1</ruleml:var>
<ruleml:var>x3</ruleml:var>
</swrlx:individualPropertyAtom>
</ruleml:_head>
</ruleml:imp>
Składnia betonu RDF
Łatwo jest zapewnić taką konkretną składnię RDF dla reguł, ale obecność zmiennych w regułach wykracza poza semantykę RDF. Tłumaczenie z konkretnej składni XML na RDF/XML może być łatwo wykonane przez rozszerzenie transformacji XSLT dla składni OWL XML Presentation.
Realizacje
Zastrzeżenie: Rozumujący nie popierają pełnej specyfikacji, ponieważ rozumowanie staje się nierozstrzygnięte. Mogą być trzy rodzaje podejścia:
- przetłumacz SWRL na logikę pierwszego rzędu (Hoolet) i zademonstruj zadania rozumowania za pomocą dowodzenia twierdzeń;
- przetłumacz OWL-DL na reguły i przekaż reguły do silnika łańcuchowego w przód (Bossam) (to podejście nie może objąć pełnej ekspresji OWL-DL z powodu wielu niezgodności między formalizmami Logiki Opisu i Reguły Horna)
- rozwiń istniejący system wnioskowania OWL-DL oparty na algorytmie tableaux (Pellet).
- Protégé 4.2 zawiera widok Reguły w swoich Widokach Ontologii, który obsługuje reguły SWRL.
- W przypadku starszych wersji Protégé SWRLTab jest rozszerzeniem obsługującym edycję i wykonywanie reguł SWRL. [1]
- R2ML (REWERSE Rule Markup Language) obsługuje SWRL. [2]
- Bossam , mechanizm reguł łączenia w przód obsługuje SWRL. [3]
- Hoolet , implementacja wnioskowania OWL-DL, która używa weryfikatora pierwszego rzędu obsługuje SWRL. [4]
- Pellet , open-source Java OWL DL Reasoner ma obsługę SWRL. [5]
- KAON2 to infrastruktura do zarządzania ontologiami OWL-DL, SWRL i F-Logic. [6]
- RacerPro , obsługuje przetwarzanie reguł w składni opartej na SWRL, tłumacząc je na reguły nRQL [7]
- RDFox to wysokowydajny, skalowalny wykres wiedzy w pamięci i silnik wnioskowania Datalog, który obsługuje SWRL. Opracowany przez Oxford Semantic Technologies. [8]
- Stardog to baza danych RDF lub triplestore, która przepisuje zapytania, aby odpowiedzieć na pytania za pomocą wnioskowania SWRL. [9]
| Bossam | Hoolet | Śrut | |
|---|---|---|---|
| Analizator SWRL/OWLX | tak | ? | ? |
| Analizator SWRL/RDF | tak | ? | tak |
| Wbudowane funkcje matematyczne | Częściowy | ? | tak |
| Wbudowane ciągi | Częściowy | ? | tak |
| Porównanie wbudowane | ? | ? | tak |
| Wbudowane wartości logiczne | ? | ? | tak |
| Wbudowana data, godzina i czas trwania | ? | ? | Nie |
| Wbudowane URI | ? | ? | tak |
| Listy wbudowane | ? | ? | Nie |
| Koncesjonowanie | Bezpłatne/zamknięte źródło | Bezpłatne/open-source | Bezpłatne/open-source |
Porównanie z programami opisującymi logikę
Opis Programy logiczne (DLP) to kolejna propozycja integracji reguł i OWL. W porównaniu z programami opisującymi, SWRL przyjmuje diametralnie przeciwne podejście do integracji. DLP jest skrzyżowaniem logiki Horna i OWL, podczas gdy SWRL jest (w przybliżeniu) ich połączeniem. W DLP język wynikowy jest bardzo dziwnie wyglądającą logiką opisu i ogólnie raczej niewyrażalnym językiem.
Zobacz też
- Opis Logika
- Język ontologii sieciowej — „OWL”
- Datalog (język zapytań i reguł)
- Sieć semantyczna
- Siatka semantyczna
- Ontologia (informatyka)
- Analiza biznesowa 2.0 (BI 2.0)
- Semantyczna Wiki
Bibliografia
Linki zewnętrzne
- SWRL: Semantic Web Rule Language łączący OWL i RuleML , zgłoszenie członka W3C 21 maja 2004
- Propozycja rozszerzenia SWRL w kierunku logiki pierwszego rzędu , zgłoszenie członka W3C 11 kwietnia 2005 r
- OWL Web Ontology Language Składnia prezentacji XML , nota W3C 11 czerwca 2003 r.