[Date Prev] | [Thread Prev] | [Thread Next] | [Date Next] -- [Date Index] | [Thread Index] | [List Home]
Subject: "Changes" to the XML file
Greetings! I have been replaying the conversations about "changes" to the ODF XML file.While I know we need to speak about "changes" to the XML file in order to know what to specify, in a very real sense, there are *never any changes* to the XML file.
That is to say that an application loads the XML file into its custom memory model and if the user inserts a paragraph after the "second" paragraph and before the "third" paragraph.
<text:p>p1</text:p> <text:p>p2</text:p> <--------------Insertion point for <text:p>new p</text:p> <text:p>p3</text:p>But that diagram is misleading because the application has no XML to track at that point.
It has: In memory: p1 p2 insertion point for new P p3It only has its own in memory structures and the method it has chosen to track changes to those structures.
When the XML file become relevant is when the application serializes the in memory structures out to an XML file and records the changes to it using ODF change tracking.
That is to say that the reading/consuming application loads the XML file into its memory structures and change tracking for those structures. The application then becomes responsible for any changes that impact the # of a component or its place in the document flow.
This is the simple XML change tracking case.Serialize all the changes that have been tracked as part of the file package for reassembly by the reading application.
All of the changing of numbers, etc., occur in the application and it is responsible for putting any accepted change where it should go. All we are responsible for it giving it the information necessary to start tracking that change when the file is loaded.
*****************The more complicated case is the one where less than the entire file is being interchanged.
But I know there are systems which have successfully tracked and interchanged changes with less than whole file updates so I am confident a solution can be devised for that case as well.
Hope everyone is looking forward to a great holiday season! Patrick -- Patrick Durusau email@example.com Technical Advisory Board, OASIS (TAB) Former Chair, V1 - US TAG to JTC 1/SC 34 Convener, JTC 1/SC 34/WG 3 (Topic Maps) Editor, OpenDocument Format TC (OASIS), Project Editor ISO/IEC 26300 Co-Editor, ISO/IEC 13250-1, 13250-5 (Topic Maps) Another Word For It (blog): http://tm.durusau.net Homepage: http://www.durusau.net Twitter: patrickDurusau