Sono un principiante di Datomic e sto ancora cercando di capire come è stato costruito il sistema. In particolare, non capisco quale ruolo: db.part/db riproduce come sembra essere necessario ogni volta che viene installato uno schema. Qualcuno potrebbe far luce su cosa significa tutto questo?Che cosa significano tutti i campi per db.part/db?
(require '[datomic.api :as d]) (def uri "datomic:mem://sample") (d/create-database uri) (def conn (d/connect uri)) (pprint (seq (d/entity dbval :db.part/db))) ;; => ;; ([:db/doc "Name of the system partition. The system partition includes the core of datomic, as well as user schemas: type definitions, attribute definitions, partition definitions, and data function definitions."] ;; [:db.install/function #{:db.fn/cas :db.fn/retractEntity}] ;; [:db.install/attribute ;; #{:db/noHistory :db.install/partition :db/cardinality ;; :db.install/attribute :db/index :db/unique :db/fulltext ;; :db/txInstant :db/lang :db/doc :db.install/valueType :db/code ;; :db/isComponent :db/fn :db.install/function :db/valueType :db/ident ;; :fressian/tag}] ;; [:db.install/valueType ;; #{:db.type/uuid :db.type/bigint :db.type/uri :db.type/ref ;; :db.type/keyword :db.type/bytes :db.type/string :db.type/instant ;; :db.type/fn :db.type/long :db.type/bigdec :db.type/boolean ;; :db.type/double :db.type/float}] ;; [:db.install/partition #{:db.part/db}] ;; [:db/ident :db.part/db])