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: Re: [office-collab] Generic CT proposal text:p/text:h and ac:change


On Tue, 2011-03-29 at 11:59 +0100, Tristan Mitchell wrote:
> That's along the right lines. The remove-leaving-content and
> insert-around-content would have the same change transaction id as
> they happen at exactly the same time. The subsequent attribute change
> (change of para style) would be in a new change transaction as it is a
> separate change.

Excellent, so we are on the same page here for how things should
look :))


> 
> 
> I expect it's just a typo but the closing tag in the example after
> "What are the ground rules?" would be a text:p

yep. A little over zealous cut and paste from the original text:p ->
text:h from the generic proposal document.

> 
> 
> The final result would be something like this (my changes highlighted
> in bold):

An interesting observation, applications might track when a change takes
effect. For example, records like
ct1234 text:style-name Normal_1
ct1235 text:style-name foo
record that in given revisions then attributes are set to a given value.

and as the ODF+CT proposal says, the ac:change records the revision
where something is changed and the value *before* that change was
effective.
Thus the above immediate changes generate:
ct1235,modify,text:style-name,Normal_1
and the "foo" value is stored inline in the text:style-name attribute.

And the following four changes in immediate, ie, user sets style to foo
in ct12 while using the application:
ct12 text:style-name foo
ct13 text:style-name bar
ct14 text:style-name baz
ct15 text:style-name bob

gives on ODF+CT:

<text:p text:style-name="bob"
  ac:change001="ct12,insert,text:style-name"
  ac:change002="ct13,modify,text:style-name,foo"
  ac:change003="ct14,modify,text:style-name,bar"
  ac:change004="ct15,modify,text:style-name,baz"
...</text:p>

At ct12 you know style-name is inserted, and the value foo would be used
inline in text:style-name="foo". 

Just a little aside for those who are wishing to implement this in other
tools.

> 
> <delta:remove-leaving-content-start 
>       delta:removal-change-idref='ct1234' 
>       delta:end-element-idref='ee888'>
> 
>   <text:h text:style-name="Heading_20_1"  text:outline-level="1" />
> 
> </delta:remove-leaving-content-start>
> <text:p 
>  text:style-name="foo" 
>  ac:change001="ct1235,modify,text:style-name,Normal_1"
>  delta:insertion-type='insert-around-content' 
>  delta:insertion-change-idref='ct1234'>
> What are the ground rules?
> </text:p>
> <delta:remove-leaving-content-end delta:end-element-id='ee888'/>






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