say I had :user/name
and :user/gender
installed as datomic schema.
(pprint (d/q \'[:find ?ident :where
[?e :db/ident
You can use the Tupelo Datomic library to grab all EIDs for a given partition. Just use:
(ns xyz
(:require [tupelo.datomic :as td] ...
; Create a partition named :people (we could namespace it like :db.part/people if we wished)
(td/transact *conn*
(td/new-partition :people ))
; Find all EID's in the :people partition
(let [people-eids (td/partition-eids *conn* :people) ]
...)
More information can be found in the Datomic Mailing List. Enjoy!
I figured it out
(d/q '[:find ?ident :where
[?e :db/ident ?ident]
[_ :db.install/attribute ?e]
[(.toString ?ident) ?val]
[(.startsWith ?val ":user")]] (d/db *conn*))
;; => #{[:user/gender] [:user/firstName]}