4 Stimmen

REST und RDF, was ist die Darstellungsstrategie?

Ihr Triplestore enthält eine Vielzahl von Knoten, und Sie müssen diese Datenbank über eine REST-Schnittstelle zugänglich machen.

Nun, meine Lösung wäre, dass jeder benannte (nicht-anonyme) Knoten als Ressource exportiert wird, deren Darstellung ist:

  1. alle Tripel, die den Knoten als Subjekt haben
  2. alle Tripel, die den Knoten als Objekt haben
  3. alle angeschlossenen anonymen Knotenpunkte.

Bei Punkt 2 bin ich etwas zurückhaltend: Dies würde im Grunde genommen sowohl eingehende als auch ausgehende Dreiergruppen ergeben.

Was halten Sie von einer REST-Sytle-Darstellung eines rein RDF-orientierten Datenspeichers? Teilen Sie meinen Standpunkt oder nicht, und wenn nicht, was ist Ihre Meinung dazu?

2voto

laalto Punkte 143902

Das hängt davon ab, um welche Daten es sich handelt und was die Benutzer der Schnittstelle damit machen wollen. Diese Frage ist vergleichbar mit der Frage, was das SPARQL DESCRIBE-Abfrageformular zurückgeben sollte. (Es wird durch die Implementierung bestimmt.)

Für die Anwendungsfälle, die ich mit RDF-Daten hatte, würde ich mich für 1 und 3 entscheiden und eine leere Knotenschließung der Ressource erzeugen. Zusätzlich könnte man eine separate Schnittstelle für Fall 2 einrichten, die die eingehenden Bögen der Ressource zurückgibt.

1voto

Timo Westkämper Punkte 21086

Eine einfache Möglichkeit, einen RDF-Datensatz REST-übertragbar zu machen, ist die Verwendung von URLs für alle übertragbaren Elemente.

Wenn auf die URL zugegriffen wird, z. B. über HTTP GET, dann zeigt das Ergebnis die verbundenen Knoten (verbunden als Eigenschaften und/oder inverse Eigenschaften).

Formal könnte die zurückgegebene Darstellung eine Kurze eingeschränkte Beschreibung der Ressource.

0voto

DaniCE Punkte 2332

(Disclaimer: dies entspricht vielleicht nicht genau dem Inhalt Ihrer Frage, aber es entspricht dem Titel)

Ich denke, dass es sich bei dem Thema der Rest-Darstellung von RDF-Daten um ein allgemeines Problem der Umkehrung der Reihenfolge der Konzepte handelt. Für mich wäre es normal, eine Sammlung von Rest-Dokumenten mit RDF-Daten zu haben und eine RDF-Datenbank zur Indizierung und für globale Abfragen zu verwenden.

In dieser Situation können Sie Ihre Ressourcen so organisieren, wie Sie es wünschen.

Auch (wenn Sie vorgeben, den URI des Knotens als exportierte Ressource zu verwenden) wird Ihr Ansatz subtile Probleme bezüglich der Bedeutung Ihrer Ressourcen haben: die Restressourcen, die Sie hier vorschlagen, sind " Informationsquellen " und können dann keine abstrakten Ressourcen sein. Es wird einen Konflikt zwischen Information und Meta-Information geben.

Ich habe einen Artikel veröffentlicht aquí in dem diese Ansicht näher erläutert wird.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X