   ([kv] (make-kv (first kv) (second kv))))
 
 (defn dkey
+  {:doc "Returns the key part of a KV or MapEntry."
+   :added "0.1.0"}
   [elt]
   (if (instance? KV elt)
     (let [^KV kv elt]

                        (assert (instance? transform View$AsSingleton) "Default values can only be set for Singleton views")
                        (if v
                          (.withDefaultValue transform v)
                          transform))}}))

(defn view
  ([{:keys [type]
     :or {type :singleton}
     :as options}

   ptransform schema))

(defn apply-transform
  "apply the PTransform to the given Pcoll applying options according to schema."
  [pcoll ^PTransform transform schema
   {:keys [coder coll-name] :as options}]
  (let [nam (some-> options (:name) (name))
