Running transformation scenario on Dita map fails because th

Post here questions and problems related to editing and publishing DITA content.
akuh
Posts: 10
Joined: Wed May 15, 2013 12:23 am

Running transformation scenario on Dita map fails because th

Post by akuh »

Hello,

I am using <oXygen/> XML Editor 14.2 build 2013051016.

Here is a short example to explain my problem.

I first create a concept topic (let us call it concept1.dita) of category 'DITA / topic-xsd'.
I fill it in a bit and then run a transformation scenario on it.
The topic gets suitably transformed. The result of the transformation is thus OK.

I now create a DITA map of category 'DITA Map / map-xsd'.
I then add concept1.dita to the DITA map and save the DITA map afterwards.

Running a transformation scenario on the DITA map gives the following error messages on concept1.dita:

[DOTJ030I] No 'class' attribute for was found for element '<concept>'. This generally indicates that your DTD or Schema was not developed properly according to the DITA specification.
[DOTJ030I] No 'class' attribute for was found for element '<title>'. This generally indicates that your DTD or Schema was not developed properly according to the DITA specification.

and so on for each other element in concept1.dita.

Moreover, as confirmed by the following error message, concept1.dita does not get transformed:

[DOTJ021W] File 'concept1.dita' will not generate output since it is invalid or all of its content has been filtered out by the ditaval file. Please check the file 'concept1.dita' and the ditaval file to see if this is the intended result.

Validation tests run on concept1.dita and on the DITA map say that these documents are valid.

Strangely enough, doing the same test with a concept of category 'DITA / topic' and a DITA map of category 'DITA Map / Map' works fine. That is, the concept gets suitably transformed in the two cases.

Strangely enough too, this problem was not present in <oXygen/> XML Editor 14.0 build 2012080717, which I was using before upgrading to version 14.2.
sorin_ristache
Posts: 4141
Joined: Fri Mar 28, 2003 2:12 pm

Re: Running transformation scenario on Dita map fails becaus

Post by sorin_ristache »

Hello,

This is caused by the XML parser which in the case of XML Schema does not add the default attributes to the parsed XML topics, that is the attributes that are declared only in the schema, not in the XML document itself. In case of DTD the default attributes are added to the parsed documents by the parser, including the class attribute. This is the difference which triggers the DITA-OT error messages in case of the XSD topics and maps. The problem is already fixed for version 15.0 which will be released in less than a month.

In version 14.2 I recommend using the DTD versions of the DITA topic and map for avoiding these errors. Also you can workaround the errors in Oxygen 14.2 by adding the class attribute explicitly in the XML topic file. I think the fastest manual way to do that is to edit the topic in Author mode, click on each element (topic, title, body, p, etc) and enter and exit editing mode on the class row in the Attributes view, without changing the value in the Value column. One automatic way would be to transform the topic with an XSLT stylesheet which adds the class attribute on each element.


Regards,
Sorin
Radu
Posts: 9057
Joined: Fri Jul 09, 2004 5:18 pm

Re: Running transformation scenario on Dita map fails becaus

Post by Radu »

Hi,

Please try to edit the transformation scenario and in the Parameters tab set the parameter args.grammar.cache to no.
Newer versions on the DITA Open Toolkit have this issue fixed:

https://github.com/dita-ot/dita-ot/pull/1401

From what I know the DITA OT which will come with Oxygen 15.0 will have the grammar caching disabled by default for schema-based topics.

Regards,
Radu
Radu Coravu
<oXygen/> XML Editor
http://www.oxygenxml.com
GHogarth
Posts: 26
Joined: Tue Aug 27, 2019 10:55 pm

Re: Running transformation scenario on Dita map fails because th

Post by GHogarth »

I still get this error with XML Editor 21.1, build 2019071807
It doesn't matter if args.grammar.cache is set to yes or no.
AFAIK, I have no filter conditions and no ditaval set. At least, I didn't set any.

Scenario: DITA Map HTML5
Engine name: DITA-OT

Error Message: Transformation failed. C:\Program Files\Oxygen XML Editor 21\frameworks\dita\DITA-OT3.x\plugins\org.dita.base\build_preprocess.xml:62: Failed to run pipeline: [DOTJ022F][FATAL] Failed to parse the input file 'file:/C:/Users/Grant/Projects/Proto-2/P2.opt' because all of its content has been filtered out. This will happen if the input file has filter conditions on the root element, and a ditaval excludes all content based on those conditions.
==========================
UPDATE: The problem was a single line in my CSS file: "display: table-header-group;"
Last edited by GHogarth on Fri Sep 13, 2019 9:15 pm, edited 1 time in total.
Radu
Posts: 9057
Joined: Fri Jul 09, 2004 5:18 pm

Re: Running transformation scenario on Dita map fails because th

Post by Radu »

Hi,

The publishing engine seems to try and publish a file called "P2.opt"? Is this by mistake or is your DITA Map actually named "P2.opt"?
In the DITA Maps Manager view there is a "Configure Transformation Scenarios" button. Are you using that button to configure and start the transformation or are you using the "Configure Transformation Scenarios" button from the main editing area toolbar?

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