I was going to write a blog post about this, but then I realized that it would be better if I wrote documentation and linked to it.
https://algebraicjulia.github.io/Semagrams.jl/dev/docs.html
The main new content is at the end; the first section just gives context.