Merge WebHelp

Post here questions and problems related to oXygen frameworks/document types.
balisi
Posts: 5
Joined: Wed Jan 09, 2013 5:56 pm

Merge WebHelp

Post by balisi » Wed May 08, 2013 12:04 am

I'm using Oxygen Author 14.2. I'm wondering if there is a way to merge WebHelp output from several DITA maps so that they all appear in one TOC, similar to how in CHM output you can create a master help file to merge child CHMs. Anyone have any recommendations?

Thanks.

sorin_ristache
Posts: 4144
Joined: Fri Mar 28, 2003 2:12 pm

Re: Merge WebHelp

Post by sorin_ristache » Wed May 08, 2013 11:44 am

Hi Erik,

No, merging two WebHelp output sets is not possible. You have to merge the source DITA XML maps before running the WebHelp transformation and after that run the WebHelp transformation in Oxygen on the merged map. The merged map can be something simple like:

Code: Select all

<map>
<title>DITA Topic Map</title>
<topicref href="map_1.ditamap" format="ditamap"/>
<topicref href="map_2.ditamap" format="ditamap"/>
</map>

Regards,
Sorin

balisi
Posts: 5
Joined: Wed Jan 09, 2013 5:56 pm

Re: Merge WebHelp

Post by balisi » Wed May 08, 2013 3:01 pm

Thanks for the reply Sorin. Unfortunately I can't combine the DITA maps because there are topics that are used in multiple maps but that have different conditional settings (ditaval files) applied to them. So I need to build map A with ditaval set 1 then build map B with ditaval set 2, then combine the output from the two into one WebHelp.

sorin_ristache
Posts: 4144
Joined: Fri Mar 28, 2003 2:12 pm

Re: Merge WebHelp

Post by sorin_ristache » Wed May 08, 2013 3:12 pm

Hi Erik,

Why don't you apply ditaval 3 = ditaval 1 + ditaval 2 to the merged DITA map 3 = map 1 + map2 before the transformation ? I suppose ditaval 1 intersected with ditaval 2 yields the empty set (otherwise merging the map 1 with map 2, before or after the transformation, wouldn't make much sense), so ditaval 1 would have no effect on the topicrefs from map 2, as would ditaval 2 on map 1, essentially yielding the same result as merging the results of the transformation.


Just a thought,
Sorin

balisi
Posts: 5
Joined: Wed Jan 09, 2013 5:56 pm

Re: Merge WebHelp

Post by balisi » Tue May 14, 2013 4:15 pm

Sorin - I don't think that will work for my situation. Let me try and put it another way.

Let's say I have two maps that look like this:

Code: Select all


Map 1:
<map>
<title>Installation For Windows</title>
<topicref href="installation.dita"/>
</map>

Map 2:
<map>
<title>Installation for Linux</title>
<topicref href="installation.dita"/>
</map>
I have two ditaval files:

windows.ditaval
linux.ditaval

I want to produce a Windows and a Linux version of installation.dita and include both of those in my WebHelp.

I have not been able to figure out a way to do this, yet it seems like it should be possible. I can't imagine that this is that unusual of a reuse case.

Any further suggestions appreciated.

Thanks,
Erik

sorin_ristache
Posts: 4144
Joined: Fri Mar 28, 2003 2:12 pm

Re: Merge WebHelp

Post by sorin_ristache » Tue May 14, 2013 5:02 pm

balisi wrote:I have two ditaval files:

windows.ditaval
linux.ditaval

I want to produce a Windows and a Linux version of installation.dita and include both of those in my WebHelp.
You can have both versions in the same set of Webhelp output files by combining windows.ditaval and linux.ditaval to a single ditaval file, for example windows-and-linux.ditaval, and setting this new ditaval file in the Webhelp transformation. It should be a single transformation because combining the result table of contents from two different transforms is not straightforward. It can be done manually (probably automatically too, but it was not done before) but it takes some work. This is why I suggest one and the same Webhelp transform, with a tweaked ditaval set on the transform.


Regards,
Sorin

balisi
Posts: 5
Joined: Wed Jan 09, 2013 5:56 pm

Re: Merge WebHelp

Post by balisi » Tue May 14, 2013 5:12 pm

Sorin -- how do I combine ditaval values if they contain contradictory settings? For example, if windows.ditaval contains:

Code: Select all

<prop att="platform" val="windows" action="include"/>
<prop att="platform" val="linux" action="exclude"/>
While linux.ditaval contains:

Code: Select all

<prop att="platform" val="windows" action="exclude"/>
<prop att="platform" val="linux" action="include"/>
This to me seems like it cannot be combined into a single ditaval file.

Thanks,
Erik

sorin_ristache
Posts: 4144
Joined: Fri Mar 28, 2003 2:12 pm

Re: Merge WebHelp

Post by sorin_ristache » Tue May 14, 2013 5:28 pm

Correct, they cannot be combined. In this case (contradictory conditions in the ditaval files) I don't understand why two profiles that exclude each other should be combined and presented to the user in the browser as one set of Webhelp files. Does it make sense to combine such different sets of Webhelp files?

If your goal is to include the entire content in the output (both Windows specific content and Linux specific content) you can just run the Webhelp transform once on any map of the two maps (if the two maps include the same set of topic files) without setting a ditaval file. In this case the entire content will be included in the output, without filtering any profile.


Regards,
Sorin

balisi
Posts: 5
Joined: Wed Jan 09, 2013 5:56 pm

Re: Merge WebHelp

Post by balisi » Tue May 14, 2013 7:05 pm

The example I provided was greatly simplified form our actual situation. Without going into too much detail, in our case it does make sense to include different versions of the same topic in one WebHelp. It's a case where a set of topics can be built into about 50 versions of the information. If we were to show all conditions, each topic would become unwieldy. But by building different versions, each topic is compact and gives the user just the information they need for a particular situation.

Thanks for the feedback,
Erik

sorin_ristache
Posts: 4144
Joined: Fri Mar 28, 2003 2:12 pm

Re: Merge WebHelp

Post by sorin_ristache » Wed May 15, 2013 10:11 am

Hello,

I think the DITA profiling was designed for extracting only one profile at a (transformation) time, so trying to workaround this design may be at least unwieldy.

Maybe the content from a topic that is now split between two different profiles of the DITA XML sources and that needs to be included in the same set of Webhelp output files (installation.dita in your case) can be extracted as a common content that is included by conref in two different topics (for example installation-windows.dita and installation-linux.dita), so that both instances of that content can be included in the same profile. Of course some differences will exist between the two instances of re-using the common content, and these differences will stay in the topics where the common content is conref-ed (installation-windows.dita and installation-linux.dita).


I hope this helps,
Sorin

Post Reply