   (rollback [repo]
     (-> repo .rollback)))
 
-(defmacro with-transaction [repo & forms]
+(defmacro with-transaction
   "Wraps the given forms in a transaction on the supplied repository.
   Exceptions are rolled back on failure."
+  [repo & forms]
   `(try
     (pr/begin ~repo)
     (let [return# (do ~@forms)]

string and returns a lazy sequence of results.

It doesn't clear up properly in all cases, for example if the sequence
isn't fully consumed you may cause a resource leak.

TODO: reimplement with proper resource handling."
  (query-dataset [this sparql-string model])

  (update! [this sparql-string]))

  ([datadir indexes]
     (NativeStore. datadir indexes)))

(defn http-repo
  "Given a URL as a String return a Sesame HTTPRepository for e.g.
  interacting with the OpenRDF Workbench."
  [repo-url]
  (doto (HTTPRepository. repo-url)
    (.initialize)))

