Specification of query syntax?

Anyone have a link to a specification, such as a BNF specification, for Logseq’s query syntax?

Simple queries are not formally specified AFAIK but advanced queries are documented in Datomic Queries and Rules | Datomic

Besides queries themselves, what is missing is an specification of the objects that may be queried, their relationships, properties, etc.

Yes, some documentation of the objects that can be queried would be great! I’m assuming this doesn’t exist at the moment? At least, I haven’t found it yet…

+1 for that.
Quite bad to try and figure out what you can query right now.

Here is the schema definition: logseq/schema.cljs at master · logseq/logseq · GitHub

Not documentation but quite useful anyway.

On this note, are the rules available in queries documented somewhere? Like “task”, “between” etc

Found the definitions in the source. This is actually quite helpful: rules seems to be a good place to start to write “semi-advanced” queries.
And it shows how to use different properties clearly.

1 Like