2017-02-22 3 views
0

Ich habe eine RDF-Datei in einem Virtuoso RDF Store hochgeladen. Die RDF enthält Messungen Sensor aus einer relationalen DB extrahiert, mit folgendem Format:SPARQL Zeitstempel bis heute

TIMESTAMP | DEVICE_ID | VALUE 
1454688000 | device_125 | 25.3 

RDF-Schnipsel:

<owl:NamedIndividual rdf:about="http://example.org#device_125"> 
    <rdf:type rdf:resource="http://example.org#device"/> 
    <ont1:hasValue rdf:datatype="http://www.w3.org/2001/XMLSchema#double">25.3<ont1:hasValue /> 
    <ont1:hasTimestamp rdf:datatype="http://www.w3.org/2001/XMLSchema#long">1454688000<ont1:hasTimestamp/> 
</owl:NamedIndividual> 

Zeitkonzepte in Zeitstempel sind, und ich würde gerne wissen, ob ich sie umwandeln kann zum dateTime-Format mit SPARQL-Funktionen.

Zum Beispiel mit diesem Zeitstempel: 1454688000, wandeln es in diesem Zeitpunkt (oder einem ähnlichen Format): Fri, 05 Feb 2016 14:00:00 GMT

ich weiß, dass SPARQL können Sie einige arithmetische Operationen zu tun, aber nicht sicher, ob dies getan werden kann.

Viele Dank im Voraus,

+1

Es ist nicht klar, wovon Sie ausgehen, daher ist es schwierig bis unmöglich, entsprechende Ratschläge zu geben. Können Sie uns ein vollständigeres Beispiel mit Beispieldaten zeigen? Turtle ist normalerweise das beste Format dafür. – TallTed

+0

@TallTed für mich, die Frage sieht folgendermaßen aus: Wie verwende ich SPARQL, um einen Zeitstempel (wahrscheinlich 'xsd: long') in einen Datumstyp (wahrscheinlich' xsd: dateTime') zu konvertieren. Der Rest sieht eher wie das Rendern von Datumswerten aus, was in SPARQL nicht existiert, aber jede clientseitige API kann dies tun. – AKSW

Antwort

1

Wenn ich richtig Ihren Ausgangspunkt und Ziel zu verstehen, sollten Sie in der Lage sein, so etwas zu tun, unter Verwendung von Standard SPARQL -

SELECT        ?deviceid 
     xsd:dateTime(?timestamp) AS ?eventtime 
            ?value 
WHERE 
    { ?deviceid ont1:hasTimestamp ?timestamp ; 
       ont1:hasValue  ?value 
    } 

Virtuoso hat andere Eigenschaften können hilfreich sein (einschließlich der Möglichkeit, von xsd:dateTime in formatierte xsd:string konvertieren), aber diese Schritt außerhalb der Standard-SPARQL.