This document "http://www.waveprotocol.org/draft-protocol-specs/draft-protocol-spec" describes the federation protocol. At the bottom is the ProtocolBuffers specification used be wave. This document describes operational transformation: http://www.waveprotocol.org/whitepapers/operational-transform Operational Transformation (OT) is the algorithm used in wave to manage concurrency control. For each set of concurrent edits (series of operations on a document), there has to be a valid operational transformation. If the content where a simple text document containing XML and the only operations where insert/delete/replace, then there would exist sets of concurrent operations for which there is no valid OT that preserves valid XML. For this reason, Google uses a more complex set of operations (inspired by XML) that can support full OT. In other words for any set of concurrent wave document operations, there is a valid OT that preserves structure and will not fail due to a unresolvable conflict.
Some robots choose to store information in a wavelet document in the form of base64 or hex encoded binary data. Doing so makes Java/Python object serialization/deserialization easy, but means that the robot will have to replace the entire contents of the document with each update. Thus it's not the most efficient use of wave. --~--~---------~--~----~------------~-------~--~----~ You received this message because you are subscribed to the Google Groups "Wave Protocol" group. To post to this group, send email to [email protected] To unsubscribe from this group, send email to [email protected] For more options, visit this group at http://groups.google.com/group/wave-protocol?hl=en -~----------~----~----~----~------~----~------~--~---
