Ah I stand corrected.
This is quite interesting, going to have to have a play around more myself later, I'm a bit confused over read and write but I think read represents a command used to read the state and could be used in conjunction with polling. The response is then "matched" and the datapoint's value set accordingly.
I like what this brings to the table and the way the design looks although I'm still a bit confused by the service side .