Thank,

I think I have figured out everything except for my question #1, by debugging 
the code.  Still looking for an answer for that one.

I do have a new question.  It has been said that the conversation model 
(specifically the blip documents) are represented as "annotated" XML documents. 
 I haven't actually seen an example of a blip document with annotations.  Nor 
does it appear that the documents actually live anywhere as XML.  I see the 
object model of document floating around, and I see that they are serialized in 
a semi binary format to the delta file store, but I haven't actually seen them 
represented as annotated XML anywhere.

Mainly I am interested in seeing an example of a blip document represented as 
XML with annotations.  Does this exist anywhere?

~Michael

On Jan 7, 2012, at 10:57 PM, Alex North wrote:

> Hi Michael,
> 
> I've been intending to send you some good answers to these questions. I'm
> just struggling to carve out the time to drag up the memories and give you
> the info you need. But I still intend to! Hassle me, and feel free to send
> more questions as they come up.
> 
> On Wed, Dec 28, 2011 at 3:24 AM, Michael MacFadden <
> michael.macfad...@gmail.com> wrote:
> 
>> All,
>> 
>> I have been trying to dig in to the CC and OT concept in wave, so I can
>> start to work on that section of the code.  It seems like we have been
>> focusing on the UI and I want to make sure we have coverage in the CC
>> stack.  I have read all of the OT literature, so I am fairly well versed in
>> OT in general, but some of the specifics of the WaiB implementation are a
>> little fuzzy.
>> 
>> Right now I am working on understanding composition and how we infer the
>> servers path.  I have a few questions.
>> 
>> 1) In order to compose operations I assume they don't have to have the
>> same document width (how could they for successive inserts for example),
>> but I assume they would need to span the same line?  Is that right?  In
>> other words you wouldn't compose operations from one paragraph with
>> operations from another?  Is the desire to compose one of the driving
>> reasons for the retain operation?
>> 
>> 
>> 2) When we send out "first" operation over to the server and we are in a
>> holding pattern buffering client operations, are these operations always
>> composed together and then sent over as a single operation when we get the
>> ACK from the server.  It seems like we can only send one operation to the
>> server at a time, however the on line material implies that when we get and
>> ACK we send over ALL buffered operations.  This seems to be contradictory.
>> If we have buffered 4 operations, it seems like we can send all of them as
>> four individual operations.
>> 
>> 
>> 3) Is there a run down of how the CurrencyControl class does point #2
>> anywhere.  I see the unacknowledged, the inferredServerPath, and the
>> clientOperationsQueue objects and get a lose impression of how these are
>> managed  but any help with regard to incoming server operations while we
>> have an operation in flight would be appreciated.  Specifically what
>> transformations are performed on which object structures when we get a new
>> operation form there server, and where / when is composition happening.
>> 
>> 
>> 4) How exactly are the hashed versions designed?  There seems to be a
>> monotonic scalar version number and a hash?  I want to make sure I
>> understand how both are generated and how both are used.
>> 
>> 
>> If any of this is well documented, please let me know where I could find
>> it.  If it is not, I would volunteer to document this as I work through it.
>> Thanks in advance.
>> 
>> Michael

Reply via email to