Thanks, it was a typo. I'll fix it. The datahike project can be found at https://github.com/replikativ/datahike
Has anybody thought about a deeper integration of schema validation inside of datahike? Attaching clojure.spec to ref-types and having the transacter enforce that?
I'm refactoring the validation mechanism and I thought about that. It sounds similar to components but with validation.
I think it would help many people coming from the SQL world. They are so confused if you just have a 'ref', rather then a foreign key to a specific table. The cool thing is that you can make this checking ad-hoc or enforce it on the transaction. Both seem to have some value.
What does this actually validate at the moment? > The data validation happens on transaction level using `clojure.spec`.
For the Java API, are you aiming for something like what Datomic presented (but not released as far as I know) a JOOQ-like syntax?
@nickik datomic supports something similar to what you’re describing with attribute predicates and entity specs: https://docs.datomic.com/cloud/schema/schema-reference.html#attribute-predicates https://docs.datomic.com/cloud/schema/schema-reference.html#entity-specs You can use it for the common cases of required attributes, derived attributes, etc. But I have also used them for more sophisticated validation. For example, ensuring that cycles never form over a particular relation (ie enforcing a DAG structure). Perhaps datahike could mimic this API.
@cjsauer Nice. I didn't know this was part of Datomic. I will defiantly look into this. Thanks.