Page 1 of 1

Filtering key definition map references doesn't work

Posted: Tue Apr 25, 2017 7:02 pm
by Frank Ralf
Hi,

I have a main map with two map references pointing to two different key definitions maps.

Code: Select all

<mapref href="user_key_definitions.ditamap"    audience="users"   processing-role="resource-only" />
<mapref href="support_key_definitions.ditamap" audience="support" processing-role="resource-only" />
Depending on the value of the @audience attribute I want to use only one of those key definitions for generating the output. However, this doesn't seem to work. The values of one of the maps always win, regardless of the filter settings in the corresponding DITAVAL file. Can it be that oXygen resolves the key definitions before applying the filter settings? Or am I missing something? Any pointers welcome.

Best regards,
Frank

Re: Filtering key definition map references doesn't work

Posted: Tue Apr 25, 2017 8:51 pm
by Radu
Hi Frank,

From what I tested with a small example, at least with DITA OT 2.x the filter stage comes before the stage which resolves keyrefs so what you are doing should work.
Could you try to start working on a minimal DITA project to reproduce the problem? If it works, then the problem lies somewhere else, maybe you have additional references to one of those submaps someplace else in the dita maps collection.

Regards,
Radu

Re: Filtering key definition map references doesn't work

Posted: Wed Apr 26, 2017 2:43 pm
by Frank Ralf
Hi Radu,

Thanks for looking into this. I will try with a stripped-down project and will also look for accidental unwanted references in the files.

Best regards,
Frank

Re: Filtering key definition map references doesn't work

Posted: Wed Apr 26, 2017 5:53 pm
by Frank Ralf
Hi Radu,

I've created a small sample project using standard DITA and everything works as expected. So the problem must be either with this specific project or with our custom oXygen framework. I will investigate further and report back.

Best regards,
Frank

BTW
I would have added the sample project to this post but unfortunately the forum doesn't allow attachments (yet).

Re: Filtering key definition map references doesn't work

Posted: Thu May 04, 2017 6:43 pm
by Frank Ralf
Just an update with some observations:

Everything works as expected when using the standard DITA profiling attribute @audience. The problem seems to be related to our own specialized profiling attribute derived from @props, according to Eliot Kimber's Attribute Specialization Tutorial. I will investigate further and report back.

Best regards,
Frank

oXygen 16.1 - DITA-OT 1.8.5

Re: Filtering key definition map references doesn't work

Posted: Wed Jan 17, 2018 4:53 pm
by Frank Ralf
I only now start looking into this issue again. I found some probably related issues on GitHub, most of them already long closed. Especially "Flagging does not work with specialized props attribute" seems to indicate that our issue could be due to our rather old DITA-OT version (oXygen 16.1, DITA-OT 1.8.5).

Best regards,
Frank

Re: Filtering key definition map references doesn't work

Posted: Wed Jan 17, 2018 7:49 pm
by Frank Ralf
I did some more testing. Filtering works with DITA-OT 1.8.5 when using the generic @props attribute but not with a specialized attribute derived from @props. Will investigate further.

Frank

Re: Filtering key definition map references doesn't work

Posted: Thu Jan 18, 2018 12:30 pm
by Radu
Hi Frank,

Thanks for the updates. Unfortunately probably there will be no more official DITA OT 1.8 builds fixing things.
Also in Oxygen 20 (March 2018) we will no longer ship Oxygen with DITA OT 1.8 and no longer actively support questions about it.

Regards,
Radu

Re: Filtering key definition map references doesn't work

Posted: Thu Jan 18, 2018 12:57 pm
by Frank Ralf
Hi Radu,

Actually, we are about to upgrade our framework to oXygen 19.1. So I suppose a lot of old issues will be fixed by that ;-)

Best regards,
Frank

Re: Filtering key definition map references doesn't work

Posted: Thu Jan 18, 2018 1:12 pm
by Radu
Hi Frank,

Oxygen 19.1 comes with both DITA OT 1.8 and 2.x, so it will still depend on which one you are using for publishing.

Regards,
Radu

Re: Filtering key definition map references doesn't work

Posted: Thu Jan 18, 2018 2:22 pm
by Frank Ralf
Hi Radu,

Thanks for the pointer. We plan to keep DITA-OT 1.8.5 in the first stage of the framework update to focus on the oXygen-related changes (for example, Author Actions) and do the DITA-OT upgrade as a second step.

Best regards,
Frank