Hi,

Another person here who would like to be able to use OpenOffice with version control tools like subversion (without requiring strict file locking as we do at present). I thought it would not be a big deal to do the following:

Write python script to unzip .odt file and pretty-print the xml components (so that they are multi-line and suitable for feeding to "diff" and the like). Store all odt documents as directories rather than individual files. To edit, re-zip (and de-prettify), edit and then unzip again. Then store the directory tree rather than the zipped .odt file in our version control system. Most of this can be automated.

(I realize this proposed "solution" would not work for the average user: I am working with XML savvy developers who would not balk at dealing with the odd merge conflict by delving into the XML and fixing it by hand. For what it's worth Visual Studio project files are stored as pretty XML and while I don't recall ever having to deal with a merge conflict on any of them, it wouldn't be a big deal if we did.)

Sadly this does not work.

Certainly it is possible to go between unzipped, prettified form and .odt file form without any damage to the document. (The XML format appears to have no need for newline characters, which is good.)

Unfortunately the effect of making a one word change to the text of a document is to change the content.xml component in many different places (some cross-referencing tags by the look of it). Small changes made independently to two copies of a document immediately cause conflicts when one attempts to merge them.. widespread conflicts which would be an utter waste of time to attempt to fix by hand.

I've noted some discussion in other threads about FlatXMLFilter. Does that have a different approach to serializing the content which would not suffer from this kind of problem?

So anyway, I'd be keen to hear from anyone who has gotten any further with this sort of thing.

Cheers,
Oliver Goodman

[I work for a company which is implementing an ebXML based message handling system.
We use OpenOffice on multiple platforms for most of our documentation.]

---------------------------------------------------------------------
To unsubscribe, e-mail: [EMAIL PROTECTED]
For additional commands, e-mail: [EMAIL PROTECTED]

Reply via email to