       (pr/add-statement my-repo triple)
       (catch java.lang.IllegalArgumentException e
         (throw (Exception.
-                (str "Problem loading triple: " (print-str triple) " from row: " (-> triple meta :row)) e)))))
+                (str "Problem loading triple: " (print-str triple) " from row: " (-> triple meta ::row)) e)))))
   my-repo)
 
 (def prefixer ontutils/prefixer)

   [grafter.rdf.ontologies.sdmx-measure]
   [grafter.rdf.ontologies.sdmx-attribute]
   [grafter.rdf.ontologies.sdmx-concept])
  (:require [clojure.java.io :as io])
  (:require [grafter.rdf.protocols :as pr])
  (:require [grafter.rdf.sesame :as ses])
  (:import [grafter.rdf.protocols Triple Quad]
           [grafter.rdf.sesame ISesameRDFConverter])
  (:import [org.openrdf.model Statement Value Resource Literal URI BNode ValueFactory]

  (reduce conj triple-template
          (mapcat vector hash-map)))

(defn- canonicalise-column-names [ds]
  (tab/make-dataset (map name (tab/column-names ds)) ds))

(defmacro graph-fn
  "Takes FIXME followed by a series of graph or triplify forms and concatenates them
  all together."
  [[row-bindings] & forms]
  {:pre [(or (symbol? row-bindings) (map? row-bindings)
             (vector? row-bindings))]}

  `(fn graphify-dataset [ds#]
     (mapcat (fn graphify-row [row#]
               (let [~row-bindings row#]
                 (->> (concat ~@forms)
                      (map (fn [triple#]
                             (with-meta triple# {::row row#}))))))
             (:rows ds#))))


(defn load-triples [my-repo triple-seq]
  (doseq [triple triple-seq]
