general DITAVAL exclude hides all elements in Author mode

Post here questions and problems related to editing and publishing DITA content.
Sano
Posts: 11
Joined: Mon Jan 19, 2015 11:11 am

general DITAVAL exclude hides all elements in Author mode

Post by Sano »

If I use a general exclude for all defined profiling attributes in a DITAVAL file like

Code: Select all

<prop action="exclude"/>
all DITA elements are hidden/excluded in oxygen author 17.1 (and previous for Win7, 64bit) regardless of whether an element contains an profiling attribute or not.
DITA-OT 1.8.5/2.x.x publishing works fine.
Radu
Posts: 9051
Joined: Fri Jul 09, 2004 5:18 pm

Re: general DITAVAL exclude hides all elements in Author mode

Post by Radu »

Hi,

Thanks for reporting this issue, your analysis is correct.
It looks like a bug in Oxygen, we'll look into this and try to fix it in the next Oxygen version (version 18, next year in Spring).

Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
jochemdevos
Posts: 22
Joined: Fri Feb 19, 2016 2:41 pm

Re: general DITAVAL exclude hides all elements in Author mode

Post by jochemdevos »

Hello,

Registered to the forums to second the issue from OP and follow up with the following question:

Is there a workaround to achieve the 'exclude element unless one or more profiling attribute encountered' that works with Oxygen Author 17?

My current solution is using DITAVAL for each specific condition set:

Code: Select all

<val>
<prop action="exclude"/>
<prop action="include" att="manualID" val="100"/>
</val>
(manualID is one of my custom profiling attributes. this ditaval produces the desired transformed output but is unreadable in oxygen XML author as described by OP)

Thanks and kind regards,

Jochem de Vos
Radu
Posts: 9051
Joined: Fri Jul 09, 2004 5:18 pm

Re: general DITAVAL exclude hides all elements in Author mode

Post by Radu »

Hi Jochem,

The issue is already fixed and it will be available in Oxygen 18 (April-May this year).
As a possible workaround, in your DITAVAL instead of:

Code: Select all

<prop action="exclude"/>
you would use explicit excludes for each of the profiling attributes that you are using in your project:

Code: Select all

    <prop action="exclude" att="manualID"/>
<prop action="exclude" att="otherProfAttr1"/>
<prop action="exclude" att="otherProfAttr2"/>
...................
Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
jochemdevos
Posts: 22
Joined: Fri Feb 19, 2016 2:41 pm

Re: general DITAVAL exclude hides all elements in Author mode

Post by jochemdevos »

Thanks Radu, that does indeed resolve the interface issue.

The problem I really was after turns out to be using semicolons (;) as seperator for profiling attributes, which doesnt play nice with multiple attributes. e.g. <ph variant="x;y"> doesnt produce the same as <ph variant="x y"> in the transformation.

Anyway, now I will keep using space as seperator and not use it in profiling attribute values. (eg possible <ph variant="foo_bar hello_world"> instead of <ph variant="foo bar;hello world").

Cheers
Radu
Posts: 9051
Joined: Fri Jul 09, 2004 5:18 pm

Re: general DITAVAL exclude hides all elements in Author mode

Post by Radu »

Hi,

The DITA specification states that the profiling attributes should be separated using spaces.
You must not change this if you want the publishing to work. So even if Oxygen as an editor will allow you in the Preferences->Editor / Edit modes / Author / Profiling/Conditional Text page to change attribute value separators for any framework, you must go with the separators which are supported by the specification.

Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
jochemdevos
Posts: 22
Joined: Fri Feb 19, 2016 2:41 pm

Re: general DITAVAL exclude hides all elements in Author mode

Post by jochemdevos »

Radu wrote:Hi,

The DITA specification states that the profiling attributes should be separated using spaces.
You must not change this if you want the publishing to work. So even if Oxygen as an editor will allow you in the Preferences->Editor / Edit modes / Author / Profiling/Conditional Text page to change attribute value separators for any framework, you must go with the separators which are supported by the specification.

Regards,
Radu
Thanks for the explanation :)

I assumed the profiling attributes seperators in OxygenXML were all supported by DITA. Thanks for clearing that up.
Sano
Posts: 11
Joined: Mon Jan 19, 2015 11:11 am

Re: general DITAVAL exclude hides all elements in Author mode

Post by Sano »

Additionally, if you have a '-' in your attribute value, oxygen author interprets it as a value separator
although

Code: Select all

Multiple values separated by = <space>
is set

DITAVAL:

Code: Select all

<prop action="include" att="props" val="24-24"/>
<prop action="exclude" att="props" val="24"/>

DITA-Topic;

Code: Select all

<p props="24">This text should not be displayed in Oxygen author but it does</p>
DITA-OT 1.8.5 publishing works fine.
Radu
Posts: 9051
Joined: Fri Jul 09, 2004 5:18 pm

Re: general DITAVAL exclude hides all elements in Author mode

Post by Radu »

Hi,

I cannot reproduce this behavior using Oxygen 17.1 standalone.
I created a DITAVAL file with your sample content, I created a topic with your sample paragraph, created a profiling condition set which uses the ditaval, applied the profiling condition set using the toolbar funnel-shaped action and the paragraph appeared faded out to me.

Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
Sano
Posts: 11
Joined: Mon Jan 19, 2015 11:11 am

Re: general DITAVAL exclude hides all elements in Author mode

Post by Sano »

Radu wrote:Hi,

I cannot reproduce this behavior using Oxygen 17.1 standalone.
I created a DITAVAL file with your sample content, I created a topic with your sample paragraph, created a profiling condition set which uses the ditaval, applied the profiling condition set using the toolbar funnel-shaped action and the paragraph appeared faded out to me.
Simple user error.
The problem was caused by a missing "general exclude statement" in the DITAVAL

Code: Select all

<prop action="exclude" att="props"/> 
for the specific attribute.

Thanks
Radu
Posts: 9051
Joined: Fri Jul 09, 2004 5:18 pm

Re: general DITAVAL exclude hides all elements in Author mode

Post by Radu »

Thanks for updating the thread.

Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
Post Reply