Next in thread → Next in month →

Re: [office-collab] Shortest path analogy?

From
Svante Schubert <>
Date
2013-08-27T12:38:48+00:00
ID
Thread
Re: [office-collab] Shortest path analogy?
Interesting view. I believe you raised some interesting points,
    although I do have a different view on validation. I would follow
    the optimistic approach.

    

    In the following I will compare the valid/well-formed problem of
    operations with the one with ODF XML..

    

    Am 21.08.2013 16:57, schrieb Patrick Durusau:

    Greetings!

      

      I was thinking about change tracking while working in Carol's
      garden

      this morning. ;-)

      

      Is there a similarity to the shortest path problem in graphs?

      

      That is for some change X, the first question I have to answer is:

      

      Is that a valid path _expression_ for the state of the document as I

      know it?

    
    

    You might take the optimistic approach and assume it is valid,
    similar as we assume that XML is valid/well-formed.

    

      If not, then I have to go backwards through changes until I find a

      point where the path _expression_ is valid.

    
    I am uncertain if we have a guaranteed way to fix it, similar as we
    do not have if we have not valid/well-formed XML. 

    We might have heuristics, but not a fool proof way to guarantee to
    fix every problem that might occur. 

    

    

      Thinking of Oliver's case where someone deletes the "third"
      paragraph

      while I have made a change to what I know as the "fourth"
      paragraph.

      The deletion (assuming only 4 paragraphs) throws off my path

      _expression_ to the 4th paragraph.

    
    The position argument of an operation is related to the position at
    the time the operation was triggered.

    Imagine you want to add text to the fourth paragraph and afterwards
    Oliver wants to delete the third paragraph.

    Olivers operation would be added. If the sequence would be executed
    as western writing top down, it would read like:

    

    'add text /4/1 "hello World"'

    'delete paragraph /3'

    

    BUT if you now want to change the order of the above two operations.
    As you want to let the deletion of the paragraph happen before of
    the text insertion, the parameter would be adapted due to OT. The
    former 4th paragraph would fill the gap of the deleted third and
    would itself become the third:

    

    'delete paragraph /3'

    'add text /3/1 "hello World"'

      

    

    But I should already know the other changes,
      in order. Yes?

      

    
    Does above the text answer your question?

    All of which is to say I think we need some
      simplifying assumptions

      about change tracking for collaboration:

      

      For collaboration change tracking (asynchronous change tracking),
      the

      collaboration attribute (new attribute) is set to true.

      

      The state of the document attribute (new attribute) has a hash
      value

      for the document that represents its state at the time the

      collaboration attribute has been set to true.

      

      Once set to true, the collaboration attribute cannot be changed to

      false. That is all changes we track are tracked from that point.

      

      Non-collaboration change tracking is also tracked by operations
      but

      can be turned on and off.

      

      It puts a greater burden on collaboration change tracking
      applications

      but then they are asking for a greater feature and should bear the

      cost of using it.

      

      Non-collaboration change tracking uses the same operations
      mechanism

      but isn't troubled by coordination with others.

      

      Does that help?

    
    The problem is that if we load and save ODF XML with two
    applications, we would likely have different XML and different
    signature.

    We can have normalized operations as well, like those compressed
    operations of a document that would be triggered when reading a
    document (no redundancy, e.g. no delete & in document order).

    

    Nevertheless we need to have common starting points that we would
    identify via signatures. Like we have to be certain that we all
    started from the same template document.

    

    Best regards,

    Svante

    

      Hope everyone is having a great week!

      

      Patrick

    
    >

      >
      ---------------------------------------------------------------------

      > To unsubscribe from this mail list, you must leave the OASIS
      TC that 

      > generates this mail.  Follow this link to all your TCs in
      OASIS at:

      > https://www.oasis-open.org/apps/org/workgroup/portal/my_workgroups.php
      

      >
Next in thread → Next in month →