Push Content

Phil Bull <philbull at gmail.com>
Tue Apr 20 19:35:10 EDT 2010

Hi Shaun,

On Wed, 2010-04-14 at 13:09 -0500, Shaun McCance wrote:
> I was just reading about the conref push feature in DITA 1.2.
> This was suggested to me as something that might accomplish
> something similar to Mallard's reverse guide-linking.
> 
> http://dita.xml.org/resource/dita-12-feature-article-conref-push
[...]
> We have nothing like this in Mallard, though there have been
> vague what-ifs over the years. Here's a this-if:
> 
> Define some sort of info files for additional resources for
> a Mallard document. This would be useful for other features,
> like the dynamic glossaries we've talked about.
> 
> In these info files, you can put actions that will be applied
> to pages. We could have actions for replace, insert after,
> insert before, append to, and prepend to. Or whatever we find
> useful. Actions would declare a page and an XPointer, and then
> provide content to use.
[...]
> Is this a feature people are interested in pursuing? There
> is no reason this would have to live in the core spec. We
> could have an extension for Mallard actions.

If I've understood the purpose of this correctly, it sounds like it
could be useful, but I'm worried that it could lead to our Mallard files
getting complicated. The problem is, we'd need to decide in advance what
is potentially replaceable. If it's heavily used, we could end up in a
situation where *every* element has an ID attribute (and we'd need to
keep those IDs stable, for backwards compatibility, which sounds
nightmarish).

I also worry that distros would try to maintain all their modifications
to the Desktop Help as .info files, which wouldn't be as nice to write
with as standard Mallard pages. Maintaining the docs would be more
difficult, since we'd have people having to edit several files to change
one document, and they'd be editing text out of context, which could
compromise the content.

In a lot of cases, I suspect that simply patching or replacing files
would be a simpler solution, without any of the XSLT processing
overhead. Unless a tool to automatically create a .info file from a diff
was be written, perhaps.

That said, this feature could make Mallard attractive as a
single-sourcing solution.

Thanks,

Phil

-- 
Phil Bull
https://launchpad.net/~philbull