OASIS Mailing List ArchivesView the OASIS mailing list archive below
or browse/search using MarkMail.

 


Help: OASIS Mailing Lists Help | MarkMail Help

office-collab message

[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]


Subject: Splitting a paragraph...


Hi,
  I'm working on adding ODT Change Tracking support to Abiword.

  One of the aspects which I'm noticing many times is what happens with
change tracking with "existing content" in the document. For testing I'm
starting with a blank document and revision=1, so consequently all of my
paragraphs bar one tend to be "split" types from the original with
splitids forming a linked list. 

  In 6.5.2 of DeltaXML-TC4/doc/odf-track-changes.odt are we talking
about the split of the paragraph happening during the same revision as
the paragraph was created? To be concrete, is the paragraph, its text
contents, and the splitting into two paragraphs all meant to have
occurred in ct1 in the below. If so, is there meant to be a difference
if the paragraph is created and populated in ct1 and then split in two
in ct2?

  As an example of this flowing on from revision=1, consider 6.5.2 of
DeltaXML-TC4/doc/odf-track-changes.odt where an existing two sentence
paragraph is split in two giving:

<text:p split:split01='sp1'>
This paragraph will be split into two.
</text:p>
<text:p delta:insertion-type='split' 
        delta:insertion-change-idref='ct1'
        delta:split-id='sp1'>
This will be in the second paragraph.
</text:p>

In my coding and testing, if one assumes the document to be created
starting at rev=1 with a blank new document, at first we get:

<text:p text:style-name="Normal"
        delta:insertion-type="insert-with-content" 
        delta:insertion-change-idref="1" >
This paragraph will be split into two. This will be in the second
paragraph.</text:p>

Then when we move to revision=2 and press return to split the paragraph
between the two sentences as shown below. I've used
inserted-text-start/end to indicate which revision the contents of the
second paragraph was input in. 

Another possibility I considered is perhaps this was meant to be
inferred... For example, if idref=22 for a "split" then the contents is
idref=21 unless explicitly specified in some other markup? Obviously in
this case idref 22 and 21 are real change tracking records which are
temporally adjacent.

<text:p text:style-name="Normal"  
        split:split01="split0"
        delta:insertion-type="insert-with-content" 
        delta:insertion-change-idref="1" >
This paragraph will be split into two. 
</text:p>
<text:p text:style-name="Normal"  
        delta:split-id="split0"  
        delta:insertion-type="split"  
        delta:insertion-change-idref="2" >
<delta:inserted-text-start delta:inserted-text-id="1" />
This will be in the second paragraph.
<delta:inserted-text-end delta:inserted-text-idref="1" />
</text:p>




[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]