in reply to Re: OpenOffice, XML and templates
in thread OpenOffice, XML and templates

I'm afraid I don't know TT well enough, so may be that there is a way to do it, but I can't see it.

As I see it, the problem arises when you want to cut (or replicate) a block. Say you have the following fragment:

<document> ... <para>paragraph #1</para> <para>paragraph #2</para> <para>paragraph #3</para> ... </document>

If you want to programmatically cut away the second paragraph you have to surround it with TT commands, but this breaks XML integrity and, worse, it is not editable from OO writer.

But if you put the command inside the <para> tag you can delete the text but end up with an empty paragraph.

What I would need is a template language allowing a sort of look-ahead and look-behind (perhaps look-around is the right term?) so I can tell "remove this block and all the surrounding <para> tag". I don't know if TT, or another template processor, can do this.

Rule One: "Do not act incautiously when confronting a little bald wrinkly smiling man."

Replies are listed 'Best First'.
Re^3: OpenOffice, XML and templates
by Corion (Patriarch) on Jun 30, 2009 at 08:36 UTC

    Maybe you want Petal then - it embeds its templating language into the XML making up the document, so you can eliminate whole elements and their children. I never found it too pleasing, as it's only suitable for well-formed XML documents, but that might be a plus in your situation. The theoretical advantage is that you can edit the "sample" content within the templates and OOo will still output the attributes that make up the (Pe)Tal language. I haven't tried this in practice though.

    Back when I had to do templates of Word documents, I channelled most data through Microsoft Office Document Properties, but the templates didn't have a need for fancy tables with a variable amount of rows.

    I assume you've looked at using LaTeX to produce your output already - it's quite powerful but I'm not aware of whether the WYSIWYG editors have improved, as I'm content with the plain text editing.

      Yes, Petal is another possibility. The only problem is that it embeds the commands in tag's attributes, so it is still well formed XML but I can't edit the commands from within OO editor. :(

      This requires the person creating the template to open the ODT file, extract the XML part, edit it and repack... This procedure is certainly possible but requires an operator much more skilled than the ones for which my project is designed. And this is why I decided to avoid LaTeX that would be the obvious choice if only I could redesign the brains of my users

      Rule One: "Do not act incautiously when confronting a little bald wrinkly smiling man."