This is not about denotation. It's done in the first commit here (e9f9941816a139a2d983d84a75477836361561db) and everything works fine with it without changes.
In the last commits I try to use properties _only in edges_ (so that `with HasProperties` can be removed from `Vertex` type definition).