#!/bin/env python print "==== Example 3 - do a \"triples\" query match on a fixed subject" import joseki import sys from joseki import JosekiRequest from rdflib.URIRef import URIRef from rdflib.Namespace import Namespace # A better name for the "wildcard" in a triple match ANY = None # Declare constants: better to use namespaces DC = Namespace("http://purl.org/dc/elements/1.1/") dcTitle = DC['title'] # The target model URL # This is the Joseki online demo modelURL = "http://jena.hpl.hp.com:2020/books" if len(sys.argv) > 1: modelURL = sys.argv[1] print "Data source =", modelURL book1 = URIRef("http://example.org/book/book1") book2 = URIRef("http://example.org/book/book2") book3 = URIRef("http://example.org/book/book3") book4 = URIRef("http://example.org/book/book4") book5 = URIRef("http://example.org/book/book5") # ---------------------------------------- print "Subject: ",book1 store = joseki.triples(modelURL, book1, None, None) for s, p, o in store.triples((ANY,ANY,ANY)): if str(s) == str(book1): print " ",p, "->", o else: print s, "->" ,p, "->", o