Regeln -Austauschformat

Das Regeln -Austauschformat (Rif) ist ein W3C -Empfehlung. RIF ist Teil der Infrastruktur für die Semantisches Web, zusammen mit (hauptsächlich) Sparql, RDF und EULE. Obwohl sie ursprünglich von vielen als "Regelnschicht" für das semantische Web vorgestellt wurden, basiert in Wirklichkeit das Design von RIF auf der Beobachtung, dass es viele "Regeln Sprachen" gibt, und was benötigt wird, besteht darin, Regeln zwischen ihnen auszutauschen.[1]

RIF enthält drei Dialekte, einen Kerndialekt, der in einen grundlegenden logischen Dialekt (Bld) und Produktionsregel -Dialekt (PRD) erweitert wird.[2]

Geschichte

Die RIF -Arbeitsgruppe wurde Ende 2005 gechartert. Zu ihren Zielen zog sich Mitglieder des Marktes für die Handelsregeln an. Die Arbeitsgruppe begann mit mehr als 50 Mitgliedern und zwei Stühlen aus der Industrie, Christian de Sainte Marie von, ILOG, und Chris Welty von IBM. Die Charta, um ein Austauschformat zu entwickeln zwischen vorhandenen Regelsystemen wurde im Frühjahr 2005 durch einen Workshop beeinflusst, in dem klar war, dass eine Regelsprache nicht den Bedürfnissen aller interessierten Parteien erfüllen würde Nash -Gleichgewicht[3]).

Rif wurde ein W3C -Empfehlung am 22. Juni 2010.[4]

Regeln und Regelsysteme

A Regel ist vielleicht eine der einfachsten Vorstellungen in der Informatik: Es ist ein if - dann konstruieren. Wenn eine Bedingung (der wenn Teil), der in einem Datensatz überprüft werden kann, wird die Schlussfolgerung (der dann Teil) verarbeitet. Etwas von seinen Wurzeln in abgeben LogikRegelsysteme verwenden einen Begriff von Prädikaten, die ein Datenobjekt oder Objekte enthalten oder nicht. Zum Beispiel könnte die Tatsache, dass zwei Personen verheiratet sind, mit Prädikaten als:

Verheiratet (Lisa, John) 

VERHEIRATET ist ein Prädikat, das gesagt werden kann halt zwischen Lisa und JOHN. Wenn Sie den Begriff der Variablen hinzufügen, könnte eine Regel so etwas sein wie:

WENN Verheiratet (? X,? Y) DANN Liebt (? X,? Y) 

Wir würden das für jedes Paar von X und? Y erwarten (z. Lisa und JOHN) für das die VERHEIRATET Prädikat hält ein Computersystem, das diese Regel verstehen könnte Liebt Das Prädikat galtet auch für dieses Paar.

Regeln sind eine einfache Möglichkeit, Wissen zu codieren und eine drastische Vereinfachung von Logik erster Ordnung, für die es relativ einfach ist, Inferenzmotoren zu implementieren, die die Bedingungen verarbeiten und die richtigen Schlussfolgerungen ziehen können. EIN Regelsystem ist eine Implementierung eines bestimmten Syntax und Semantik von Regeln, die den oben beschriebenen einfachen Begriff erweitern können, um einzuschließen Existenzielle Quantifizierung, disjunktion, logische Konjunktion, Negation, Funktionen, Nichtmonotizitätund viele andere Funktionen. Regelsysteme wurden seit Mitte der 1970er Jahre implementiert und untersucht und in den 1980er Jahren während der Höhe von sogenannten erheblichen Aufnahmen aufgenommen Expertensysteme.

Standard -RIF -Dialekte

Die Standard -RIF -Dialekte sind Kern, Bld und PRD. Diese Dialekte hängen von einer umfangreichen Liste von Datenatypen mit integrierten Funktionen und Prädikaten für diese Datentypen ab.

Die Beziehungen verschiedener RIF -Dialekte sind im folgenden Venn -Diagramm gezeigt.[5]

Dtb

Datatypen und integrierte Ins (DTB) Gibt eine Liste von Datentypen, integrierten Funktionen und integrierten Prädikaten an, die erwartet werden, dass sie von RIF-Dialekten unterstützt werden. Einige der Datenatypen sind angepasst XML -Schema Datentypen,[6] XPath Funktionen[7] und RDF: Klartextfunktionen.[8]

Kern

Der Kerndialekt umfasst eine gemeinsame Teilmenge des meisten Regeldialekts. RIF-Core ist eine Teilmenge von RIF-BLD und RIF-PRD.

Fld

Das Framework for Logic Dialekte (FLD) beschreibt Mechanismen zum Angeben der Syntax und der Semantik von Logik-RIF-Dialekten, einschließlich des RIF-BLD und des RIF-Core, jedoch nicht der RIF-PRD, die kein logikbasiertes RIF-Dialekt ist.

BLD

Der Basic Logic Dialekt (BLD) fügt Funktionen zum Kerndialekt hinzu, die nicht direkt verfügbar sind, z. B. Logikfunktionen, Gleichheit im damaligen Teil und Benannte Argumente. RIF Bld entspricht positive Daten, dh Logikprogramme ohne Funktionen oder Negationen.

RIF-BLD hat a Modell-theoretisch Semantik.

Das rahmen Die Syntax der RIF -Bld basiert auf F-Logic, aber Rif Bld hat das nicht Nicht-monotones Denken Merkmale von F-Logic.[9]

PRD

Der Produktionsregeln Dialekt (PRD) kann zum Modellieren verwendet werden Produktionsregeln. Merkmale, die sich insbesondere in PRD, aber nicht in der Bld befinden, umfassen die Negation und das Rückzug von Fakten (daher ist PRD nicht monoton). PRD -Regeln sind Ordnung abhängig, daher sind Strategien zur Konfliktlösung erforderlich, wenn mehrere Regeln abgefeuert werden können. Die PRD -Spezifikation definiert eine solche Auflösungsstrategie basierend auf Vorwärtsketten Argumentation.

RIF-PRD hat eine Betriebssemantik, während die Zustandsformeln auch eine modell-theoretische Semantik aufweisen.

Beispiel (Beispiel 1.2 in [10]))

Präfix (ex <http://example.com/2008/prd1#>) ( * Ex: Rule_1 *) Forall? Kunde? ] Extern (pred: numerisch-grasiver als (? Kaufasytd 5000))) dann tun (modifizieren (? Kunde [Ex: Status-"Gold"]))))

Nicht standardmäßige RIF-Dialekte

Es gibt mehrere andere RIF -Dialekte. Keiner von ihnen wird offiziell von W3C unterstützt und ist nicht Teil der RIF -Spezifikation.

Caspd

Der Kern -Antwort -Set -Programmierdialekt (CASPD)[11] basiert auf Antwort -Set -Programmierungdas heißt, deklarative Logikprogrammierung basierend auf der Antwort -Set -Semantik (Stabile Modellsemantik).

Beispiel:

Dokument (Präfix (ex <http://example.com/concepts#>) Gruppe (forall? (? S Ex: Math))) Forall?

URD

Der Dialekt der Unsicherheitsregel (URD)[12] unterstützt eine direkte Darstellung von ungewissem Wissen.

Beispiel:

Document (import (<http://example.org/fuzzy/MembersshipFunction>) Gruppe (forall? X? Y (billigflicht (? X? Y):- erschwinglichflight (? X? Y))/0.4 forall? X? Y? Y? (erschwinglichflight (? x? y)) / links_shoulder0k4k1k3k (? y))))

SEIDE

Rif-Silk[13] Kann verwendet werden, um zu modellieren Standardlogik. Es basiert auf deklarativen Logikprogrammierung mit dem Begründete Semantik. RIF-Silk enthält auch eine Reihe anderer Funktionen in ausgefeilteren deklarativen Logikprogrammiersprachen wie Seide.[14]

Beispiel

Document {prefix (foaf http://xmlns.com/foaf/0.1/) Präfix (Pub http://example.org/pub#) Präfix (Seide http: // tbd/sieide#) Gruppe {( * r1 * * ) Forall? *) Forall?

Siehe auch

Verweise

  1. ^ Kifer, Michael (2008). "Regelnaustauschformat: Das Framework". In: Web -Argumentation und Regelsysteme. Vorlesungsnotizen in Informatik
  2. ^ RIF -Übersicht
  3. ^ Welty, Chris (2009). "Regeln -Austauschformat"Eingeladene Präsentation zum NY Semantic Web Meetup.
  4. ^ RIF -Kerndialekt
  5. ^ RIF -Anwendungsfälle und Anforderungen
  6. ^ XML -Schema -Datentypen
  7. ^ XPath-Funktionen
  8. ^ RDF: Kliniteral: Ein Datentyp für RDF -Literale
  9. ^ M. Krötzsch (Oktober 2010). Beschreibung Logikregeln. IOS Press. p. 10. ISBN 978-1-61499-342-1.
  10. ^ RIF-PRD-Spezifikation
  11. ^ RIF Core Antwort -Set -Programmierdialekt
  12. ^ Zhao & Boley. Unsicherheitsbehandlung im Regelwechselformat: Von der Codierung zur Erweiterung. Im 4. Internationalen Workshop über Unsicherheitsbedenken für das Semantic Web (URSW), 2008.
  13. ^ RIF Seiden -Dialekt
  14. ^ Die Seidensprache, Benjamin Grosof, Michael Kifer, Mike Dean. Vulcan Inc., 2009.

Externe Links