Frage

mit Im ein Problem mit RDF. Ich habe ein paar Tripel definiert als:

<User rdf:about="#T">
 <hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string">T</hasName>
 <hasFavourite rdf:resource="#x"/>
 <hasFavourite rdf:resource="#y"/>
</User>

Im zum hinzufügen wollen (Benutzer, hasFavourite, x) und (Benutzer, hasFavourite, y) verdreifacht, wie ich mit ihnen eine ganze Zahl zuordnen müssen. Ich bin ein bisschen unsicher, wie eine ganze Zahl zu einem dreifachen hinzuzufügen. Ich bin sicher, das muss einfach sein, aber im Kopf nur um RDF bekommt so dass jede Hilfe sehr geschätzt wird.

Danke Ally

War es hilfreich?

Lösung

Also, wenn ich die Frage und Ihren Kommentar zu dajobe der Post zu lesen richtig mögen Sie wahrscheinlich so etwas wie diese (wieder in Turtle Notation, da es so viel besser lesbar ist):

@base <http://example.org/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix : <> .

:T
    :hasFavourite :fave1, :fave2 ;
    :hasName "T" ;
    a :User .

:fave1 a :Favourite ;
       :band :x ;
       :playCount 10 .

:fave2 a :Favourite ;
       :band :y ;
       :playCount 4 .

:x a :Band ;
   :hasName "Band 1" .

:y a :Band ;
   :hasName "Band 2" .

So können Sie so spielen zählt für jeden Nutzer Favoriten halten einzeln und jede Band kann durch die Schaffung neuer Favoriten als Favorit von verschiedenen Benutzern gewählt werden, je nach Bedarf.

ich natürlich völlig falsch natürlich sein könnte und dies nichts sein kann, wie das, was Sie eigentlich wollen!

Andere Tipps

Ich bin mir nicht ganz klar, was Sie hier zu modellieren; dass der Benutzer Ressource Tripel mit ganzzahligen Werten oder X und Y Ressourcen haben ganzzahlige Werte. Ich werde die letztere übernehmen, da es komplexer ist.

<?xml version="1.0" encoding="utf-8"?>
<rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
   xmlns="http://example.org/ns#">
<User rdf:about="#T">
 <hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string">T</hasName>
 <hasFavourite rdf:resource="#x"/>
 <hasFavourite rdf:resource="#y"/>
</User>
 <hasFavourite rdf:about="#x">
   <integerThatMeansSomething rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">10</integerThatMeansSomething>
 </hasFavourite>
 <hasFavourite rdf:about="#y">
   <integerThatMeansSomething rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">20</integerThatMeansSomething>
 </hasFavourite>
</rdf:RDF>

Das ist etwas leichter in Turtle zu lesen: (umgerechnet über rapper -q -o turtle foo.rdf 'http://example.org/ns#' von meiner Raptor Software)

@base <http://example.org/ns#> .
@prefix rdf: <http://www.w3.org/1999/02/22-rdf-syntax-ns#> .
@prefix : <> .

:T
    :hasFavourite :x, :y ;
    :hasName "T"^^<http://www.w3.org/2001/XMLSchema#string> ;
    a :User .

:x
    :integerThatMeansSomething 10 ;
    a :hasFavourite .

:y
    :integerThatMeansSomething 20 ;
    a :hasFavourite .

Disclaimer: Ich bearbeiten RDF / XML, erfinden Schildkröte und schrieb die Software über

Reading oben wie: „T ein Mitglied ist, hat zwei Favoriten x und y und ein String Namen X ein Favorit ist und eine Integer-Eigenschaft mit dem Wert 10.“ usw. für Y.

Wenn es der erste war, der RDF / XML ist einfacher:

<User rdf:about="#T">
 <hasName rdf:datatype="http://www.w3.org/2001/XMLSchema#string">T</hasName>
 <hasFavourite rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">10</hasFavourite>
 <hasFavourite rdf:datatype="http://www.w3.org/2001/XMLSchema#integer">20</hasFavourite>
</User>
Lizenziert unter: CC-BY-SA mit Zuschreibung
Nicht verbunden mit StackOverflow
scroll top