Date   

profile problems

Aaron Mehl
 

Hi all, 
I am new to the group, and Dita.
I am documenting KMyMoney and have two similar tasks.
One is creating a checking account and the other is creating a savings account.
The text is nearly the same. I need to make the words checking and savings conditional.
I need a way to also make the screen captures conditional.
That said, and I hope done, I need to know how to generate the two task when publishing/transforming the xml to xhtml and pdf.

I have seen docs provided by my editor (Oxygen) and some videos, but I still can't seem to make heads or tails out of profiling.
This is a draft the Dita task file.

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE task PUBLIC "-//OASIS//DTD DITA Task//EN" "task.dtd">
<task id="creatingacheckingaccount">
    <title>Creating a <keyword>Checking</keyword> Account</title>
    <shortdesc>A <keyword>Checking</keyword> account in KMyMoney contains the same information as the same account in
        your bank. </shortdesc>
    <taskbody>
        <context>You just created an institution.<p>To create a <keyword>checking</keyword> account in the
                instituion:</p></context>
        <steps>
            <step>
                <cmd>Choose <uicontrol>Accounts</uicontrol> in the <uicontrol>View
                        Selector</uicontrol>pane</cmd>
                <stepresult>The institution you created is listed in the <uicontrol>Account
                        View</uicontrol>pane.</stepresult>
            </step>
            <step>
                <cmd>Click on the <uicontrol>New Account</uicontrol>icon on the
                        <uicontrol>toolbar</uicontrol>.</cmd>
                <stepresult>The <uicontrol>New Account </uicontrol>wizard appears.</stepresult>
            </step>
            <step>
                <cmd>Choose your instituiton from the dropdown list.</cmd>
            </step>
            <step>
                <cmd>Enter your account number.</cmd>
            </step>
            <step>
                <cmd>Click <uicontrol>Next</uicontrol>.</cmd>
                <stepresult>The Account window appears.</stepresult>
            </step>
        </steps>
    </taskbody>
</task>


Thanks
Aaron


Using DITA with contextual help #CCMS #mixed-content

cnunn@...
 

Does anyone know of a contextual help application (such as WalkMe) that allows for integration of DITA topics?


Re: New DITA-OT 3.6 release available for download! #DITA-OT

Radu Coravu
 

Hi Chris,

Thanks for sharing your obtained publishing times.

Using DITA OT 3.6 with "store-type=memory" I did not find any significant improvement running on Mac OS but I did find a big improvement when running on Windows (for the Oxygen Users Manual which is about 2000 topics published to HTML 5 I had a decrease in publishing times from 236 to approx 177 seconds).

So even if you have a fast SSD storage device (and I have one both on Mac and on Windows) it depends on how fast the operating system accesses files, maybe on Windows the Windows Defender might also slow down things when working with the local disk.

For "parallel=true" I did not find any significant speed improvement on either Mac or Windows, so probably similar to your 5% improvement.

Regards,

Radu

Radu Coravu
Oxygen XML Editor
On 12/29/20 22:31, Chris Papademetrious wrote:

Wow, this is quite an impressive release!

I compared this release against the 3.5.4 release by running an html5 transformation on 89 books in our deliverable set.

  • With default options, this release is consistently almost twice as fast (1.9X).
  • The -Dstore-type=memory option made no appreciable difference, probably because I'm running on a fast local disk. This option is likely meant for running on a shared NFS volume over a network.
  • The -Dparallel=true option yielded an additional 5% runtime improvement; I confess I was hoping for more!

Here are the results of the linux time command on a transformation with/without -Dparallel=true:

% time ./dita-ot-3.6/bin/dita -i dita-digital/dita/icvrefman.ditamap -f html5 -o oo
177.620u 10.915s 1:48.15 174.3%
% time ./dita-ot-3.6/bin/dita -i dita-digital/dita/icvrefman.ditamap -f html5 -o oo -Dparallel=true
242.156u 12.990s 1:26.75 294.1%

There was definitely more parallel processing going on (green), but the decrease in wall clock time was less dramatic (yellow)

But heck, with default improvements like this, who needs more?

 - Chris

  


Re: New DITA-OT 3.6 release available for download! #DITA-OT

Chris Papademetrious
 

Wow, this is quite an impressive release!

I compared this release against the 3.5.4 release by running an html5 transformation on 89 books in our deliverable set.

  • With default options, this release is consistently almost twice as fast (1.9X).
  • The -Dstore-type=memory option made no appreciable difference, probably because I'm running on a fast local disk. This option is likely meant for running on a shared NFS volume over a network.
  • The -Dparallel=true option yielded an additional 5% runtime improvement; I confess I was hoping for more!

Here are the results of the linux time command on a transformation with/without -Dparallel=true:

% time ./dita-ot-3.6/bin/dita -i dita-digital/dita/icvrefman.ditamap -f html5 -o oo
177.620u 10.915s 1:48.15 174.3%
% time ./dita-ot-3.6/bin/dita -i dita-digital/dita/icvrefman.ditamap -f html5 -o oo -Dparallel=true
242.156u 12.990s 1:26.75 294.1%

There was definitely more parallel processing going on (green), but the decrease in wall clock time was less dramatic (yellow)

But heck, with default improvements like this, who needs more?

 - Chris


Re: Create ZIPs of output

Aliza Merzel
 

Hi,

 

You can create your own transtype, which calls (for example) html5 or pdf and afterwards has a target that zips up the output.

 

<target name="create.zip">
       
<zip file="${output.dir}/bundle.zip">
           
<zipfileset dir="${output.dir}">
               
<include name=”*.*"/>
           
</zipfileset>

       
</zip>
   
</target>

 

 

Aliza

 

 

Aliza Merzel

Senior Developer and XML Specialist

Phone: +972 8-976-0323

Email: alizam@...

 

Connect with us:  twitter.png   linked-in.png  youtube.png

 

Logo-for-email-signatures - smaller

 

From: main@dita-users.groups.io [mailto:main@dita-users.groups.io] On Behalf Of Nicholas Mucks via groups.io
Sent: Monday, December 28, 2020 8:16 PM
To: dita-users@groups.io
Subject: [dita-users] Create ZIPs of output

 

Hello!

 

Has anyone created zip outputs from DITA-OT plugins? I’d like to create X number of zip files of a normalized DITA package based on a runtime parameter value. I’m currently doing this in a script after the DITA-OT, but it would be cool to bake this logic into the transform.

 

Thanks for any suggestions!

 

Take care,

- Nick

 

Sent from mobile


Create ZIPs of output

Nicholas Mucks
 

Hello!

Has anyone created zip outputs from DITA-OT plugins? I’d like to create X number of zip files of a normalized DITA package based on a runtime parameter value. I’m currently doing this in a script after the DITA-OT, but it would be cool to bake this logic into the transform.

Thanks for any suggestions!

Take care,
- Nick

Sent from mobile


Where is the best place to suppress <draftintro> in the preprocessing pipeline?

Chris Papademetrious
 

Hi everyone,

I would like to exclude the <draftintro> bookmap element by default (but include it when args.draft==yes).

Looking at

https://www.dita-ot.org/dev/extension-points/plugin-extension-points-xslt-import.html
https://www.dita-ot.org/dev/reference/preprocessing.html

what's the best preprocessing XSLT extension point to do this? This exclusion seems most akin to profiling, but I don't see an explicit XSLT extension point for profiling, and I'm also not sure if map profiling happens earlier than topic profiling.

Thanks!

 - Chris


New DITA-OT 3.6 release available for download! #DITA-OT

Robert D Anderson
 

I'm happy to announce that DITA-OT version 3.6 is now available for download at https://www.dita-ot.org!

Highlights of the new release include:
* Performance enhancements including new options for parallel and in-memory processing
* Support for change bars in PDF output using FOP
* Updated preview copies of the next DITA standard, version 2.0

For details on these and other features and fixes, please see the release notes:
https://www.dita-ot.org/3.6/release-notes/index.html

Many thanks to all of the contributors, to this and to past releases!

Robert Anderson


Re: conref and filtering

Shane Taylor
 

If you haven't tried this already, I've found that one solution to resolving conrefs differently in branch processing is to use conkeyref and define the conref source file key in the branch. There are some branch filtering gotchas, so we have set a few best practices that help us avoid them:
  1. Set a keyscope on the branch.
  2. Set the branch processing-role to resource-only.
  3. Define both a different resource and keyscope suffix (or prefix) for each branch condition.
  4. Include a "null" ditavalref to ensure the base/unfiltered topics are not output.
  5. Define keys for every topic in the branch.
  6. Include symbols topics from which you want to conref in the branch.
  7. Use conkeyref to conref the filtered elements.
  8. Include the topics you want to output—and typically to create the TOC for—via keyref.
For example:

    <topicref href="lms-integration.dita" keys="lms-integration" keyscope="lms" processing-role="resource-only">
        <ditavalref href="filters/lms/blackboard.ditaval">
            <ditavalmeta>
                <navtitle>Blackboard</navtitle>
                <dvrResourceSuffix>-bb</dvrResourceSuffix>
                <dvrKeyscopeSuffix>-bb</dvrKeyscopeSuffix>
            </ditavalmeta>
        </ditavalref>
        <ditavalref href="filters/lms/canvas.ditaval">
            <ditavalmeta>
                <navtitle>Canvas</navtitle>
                <dvrResourceSuffix>-canvas</dvrResourceSuffix>
                <dvrKeyscopeSuffix>-canvas</dvrKeyscopeSuffix>
            </ditavalmeta>
        </ditavalref>
        <ditavalref href="filters/lms/brightspace.ditaval">
            <ditavalmeta>
                <navtitle>Brightspace</navtitle>
                <dvrResourceSuffix>-brightspace</dvrResourceSuffix>
                <dvrKeyscopeSuffix>-brightspace</dvrKeyscopeSuffix>
            </ditavalmeta>
        </ditavalref>
        <!-- etc -->
        <ditavalref><!-- null --></ditavalref>

        <mapref href="symbols-lms.ditamap"><!-- LMS names --></mapref>
        <topicref href="symbols-lms.dita" processing-role="resource-only" keys="symbols-lms"/>
        <topicref href="lms-create-or-link-a-course.dita" keys="create-or-link-a-course">
            <topicref href="lms-create-new-course.dita" keys="create-new-mt-course"/>
            <topicref href="lms-copy-course.dita" keys="lms-copy-course"/>
            <topicref href="lms-link-to-an-existing-course.dita" keys="link-to-an-existing-course"/>
        </topicref>
        <!-- etc -->
    </topicref>
   
    <topicref keyref="lms-bb.create-or-link-a-course">
        <topicref keyref="lms-bb.create-new-mt-course"/>
        <!-- etc -->
    </topicref>

   
Replace your conref with:
    <section conkeyref="symbols-lms/sectionid"/>

With this pattern, we're able to achieve consistent results. It's complicated to be sure, but for cases appropriate for branch processing, is still more efficient than any other method we've found. In the use case I've excerpted, we reuse a couple dozen topics across 5 different learning platforms and 5 LMSs, so some topics are reused 25 times! The most common gotcha to look out for is not to inadvertently define a key in the root scope, preventing it being redefined in the scoped branch.

I hope this helps.

On Mon, Dec 21, 2020, 4:27 PM Stuart Norton via groups.io <snorton=juniper.net@groups.io> wrote:

Reece, thanks for sharing these links – sorry my Google-fu failed me, these are very helpful.

 

Stuart

 

 

Juniper Business Use Only

From: main@dita-users.groups.io <main@dita-users.groups.io> On Behalf Of r.roggen
Sent: Monday, December 21, 2020 7:54 AM
To: main@dita-users.groups.io
Subject: Re: [dita-users] conref and filtering

 

[External Email. Be cautious of content]

 

Branch filtering occurs in a different pre-processing stage than the args.filter-based processing. That may explain some of the discrepancies you'll see. When I'm tackling an issue with filters and conrefs or conkeyrefs myself, I usually go back and read these:


I've run into challenges like yours, and usually the solution (not ideal, but a solution) was to find a way to profile the source element rather than an element within the target. In your example, that might mean including <section> in the source topic and conref'ing in the <p> elements instead. There are many ways to address this, though, depending on your authoring environment and your reuse requirements.

Reece

Reece, thanks for sharing these links –


Re: conref and filtering

Stuart Norton <snorton@...>
 

Reece, thanks for sharing these links – sorry my Google-fu failed me, these are very helpful.

 

Stuart

 

 

Juniper Business Use Only

From: main@dita-users.groups.io <main@dita-users.groups.io> On Behalf Of r.roggen
Sent: Monday, December 21, 2020 7:54 AM
To: main@dita-users.groups.io
Subject: Re: [dita-users] conref and filtering

 

[External Email. Be cautious of content]

 

Branch filtering occurs in a different pre-processing stage than the args.filter-based processing. That may explain some of the discrepancies you'll see. When I'm tackling an issue with filters and conrefs or conkeyrefs myself, I usually go back and read these:


I've run into challenges like yours, and usually the solution (not ideal, but a solution) was to find a way to profile the source element rather than an element within the target. In your example, that might mean including <section> in the source topic and conref'ing in the <p> elements instead. There are many ways to address this, though, depending on your authoring environment and your reuse requirements.

Reece

Reece, thanks for sharing these links –


Re: conref and filtering

r.roggen
 

Branch filtering occurs in a different pre-processing stage than the args.filter-based processing. That may explain some of the discrepancies you'll see. When I'm tackling an issue with filters and conrefs or conkeyrefs myself, I usually go back and read these:


I've run into challenges like yours, and usually the solution (not ideal, but a solution) was to find a way to profile the source element rather than an element within the target. In your example, that might mean including <section> in the source topic and conref'ing in the <p> elements instead. There are many ways to address this, though, depending on your authoring environment and your reuse requirements.

Reece


Re: PDF2 to HTML5: reference book

Raymond Bissonnette
 

Hi Pablo,

I guess you mean Leigh White, who wrote Dita for Print!

I haven't found anything like this resource for HTML plugins.

As Jano wrote, CSS and JavaScript information is easily findable on the web.

But if you're looking for plugin tutorials and samples, the OT documentation and Robert Anderson's Meta DITA pages are the best I found.

Checkout the short tutorials on this page.

Happy reading,
Raymond




From: main@dita-users.groups.io <main@dita-users.groups.io> on behalf of pablo gg <pablo.gomez@...>
Sent: December 11, 2020 04:44
To: main@dita-users.groups.io <main@dita-users.groups.io>
Subject: [dita-users] PDF2 to HTML5: reference book
 

Hi all,

 

I have been working (and still am) working with DITA-OT for PDF using the PDF2 plugin. For mastering (?) the plugin structure and capabilities I have based a lot on the fantastic book Dita for Print by Leigh Davis. Beside of other resources, this has been crucial.

 

I am beginning now with a journey around HTML and I wondered whether there is any HTML-biased book that might be my side companion book.

 

Thanks for the help,

Pablo Gomez


Re: conref and filtering

Stuart Norton <snorton@...>
 

Thanks for your response Christine. I tried it but that's not working for me; whether I used the product attribute in the conref or the section itself, the content inside the conref is not filtered.

 

I also tried setting filter-stage = "late" but I was surprised to see that it had no effect in the content inside the conref was still not filtered (using a modified oxygen DITA OT HTML 5 transform).

 

What worked better was specifying the filter file on the DITA command line using args.filter, instead of inside the map. If I specify args.fiter to indicate the DITA valve file from the command line, instead of using a ditavalref from inside the map, it works as I expected: the material inside the conref with the unmatched product attribute is filtered out, even if I only specify the product attribute on the paragraphs and not the section or topic.

 

Of course, specifying one filter on the command line doesn't help us do with branch filtering, where we want different sections of the ditamap to be filtered differently.

 

It basically looks to me like branch filtering is not designed to handle conditions inside conrefs. Am I missing something?

 

Stuart

 

 

Juniper Business Use Only

From: main@dita-users.groups.io <main@dita-users.groups.io> On Behalf Of stinakab via groups.io
Sent: Tuesday, December 15, 2020 1:30 AM
To: main@dita-users.groups.io
Subject: Re: [dita-users] conref and filtering

 

[External Email. Be cautious of content]

 

Hi Stuart,

First of all, I would say that since the conref element only references that section (the section is not in the topic for real), it is not possible for the transformation to identify which parts should be filtered or not, especially if that section has no product attribute.
So maybe you could try the following:
For referencing, create product-related sections, not one section that contains only product-related <p> elements.
Example:
<section id="section_amd_sfj_znb" product="shown-product hidden-product">
   <title>Shared section</title>
   <p product="shown-product">I want to show this paragraph</p>
   <p product="hidden-product">I want to hide this paragraph</p>
  </section>
It worked for me to conref this product-related section. If this doesn't work for you, you could also add a product attribute to the conref element, just in case. Our ditaval files are just like yours.

Best,
Christina


[ann] Oxygen DITA References View add-on version 2.0.0 is now available! #Oxygen

alin_belu@...
 

Hello, 
 
We are happy to announce that version 2.0.0 of our Oxygen DITA References View add-on is now available in the Oxygen XML default add-on repository!  
 
The new version of the add-on is free and compatible with any Oxygen XML Editor/Author/Developer version 23.0 and newer.
 
Version 2.0.0 of the Oxygen DITA References View add-on comes with these useful new improvements: 
* The addition of a new tab where incoming references are presented for the current DITA topic. 
* Added support for translating the view's user interface in English, German, French, Japanese, and Dutch. 
* Various small bugs were fixed. 
 
To install the add-on, follow these instructions: 
1. In Oxygen, go to Help->Install new add-ons to open an add-on selection dialog box. 
2. Enter or paste https://raw.githubusercontent.com/oxygenxml/oxygen-dita-outgoing-references-view/master/build/addon.xml in the Show add-ons from field. 
3. Select the DITA Outgoing References View add-on and click Next. 
4. Read the end-user license agreement. Then select the I accept all terms of the end-user license agreement option and click Finish. 
5. Restart the application. 
 
For more information, see the details for the Oxygen DITA References View add-on on GitHub: 
https://github.com/oxygenxml/oxygen-dita-references-view 
 
We hope you will find this add-on useful and as always, any feedback is welcomed! 
 
Best regards, 
Alin 
--
Alin Belu
Oxygen XML Editor


[Ann] Oxygen "DITA References" add-on release

Radu Coravu
 

Hi everyone,

We just released version 2.0 of the Oxygen XML "DITA References" add-on which now allows you to see for an opened DITA topic both Outgoing and Incoming references. The incoming references mode is available only for Oxygen XML Editor version 23.

The add-on can be installed from our regular add-on update site:

https://www.oxygenxml.com/doc/versions/23.0/ug-editor/topics/add-ons.html

I hope you will find this free add-on useful for your work and any feedback is as usual welcomed.

Regards,

Radu

Radu Coravu
Oxygen XML Editor


Re: conref and filtering

stinakab
 

Hi Stuart,

First of all, I would say that since the conref element only references that section (the section is not in the topic for real), it is not possible for the transformation to identify which parts should be filtered or not, especially if that section has no product attribute.
So maybe you could try the following:
For referencing, create product-related sections, not one section that contains only product-related <p> elements.
Example:
<section id="section_amd_sfj_znb" product="shown-product hidden-product">
   <title>Shared section</title>
   <p product="shown-product">I want to show this paragraph</p>
   <p product="hidden-product">I want to hide this paragraph</p>
  </section>
It worked for me to conref this product-related section. If this doesn't work for you, you could also add a product attribute to the conref element, just in case. Our ditaval files are just like yours.

Best,
Christina


[ann][webinar] Using Trauma-Informed Design to Support Equity in Essential Needs Panel from MSU #Room42 Dec 16th @ 8:30 AM Pacific/US #room42

Liz Fraley
 


Title: Using Trauma-Informed Design to Support Equity in Essential Needs

When: Wednesday, Dec 16th @ 8:30 AM Pacific/US

Register: https://bit.ly/r42-msu-panel

Description:

Ben Lauren, Stuart Blythe, Shannon Kelly, and Kaitlyn Nguyen from Michigan State University will be In The Room!

When professional and technical writing scholars join together with scholars from user experience design, they develop projects like the SEEN (Supporting Equity in Essential Needs) project at Michigan State University. SEEN is an institutional and organizational change project designed to improve the university's responsiveness to students’ essential needs.

Join this interdisciplinary group of academics from MSU -- Ben Lauren, Stuart Blythe, Shannon Kelly, and Kaitlyn Nguyen -- who have developed trauma-informed approaches to research and design practice. Learn how practitioners in the field can benefit from working within trauma-informed frameworks.


About the Panelists:

Ben Lauren is a songwriter, scholar, and Associate Professor at Michigan State University in the Department of Writing, Rhetoric, and American Cultures. Most recently his work has focused on institutional and social change. His first book Communicating Project Management was published by Routledge’s ATTW series.

Stuart Blythe is an Associate Professor in the Department of Writing, Rhetoric, and American Cultures at Michigan State University. He teaches a range of courses in the undergraduate program in professional and public writing as well as the graduate program in rhetoric and writing.

Shannon Kelly is a doctoral student at Michigan State University in the Department of Writing, Rhetoric, and American Cultures. Most recently, her work is focused on institutional change with trauma-informed methods and relationality. As a former assistant writing-program-director, she is also excited about curriculum design and the role of mentorship in how learners learn to teach.

Kaitlyn Nguyen is an undergraduate studying Experience Architecture at Michigan State University. Kaitlyn works as a Design Researcher for the MSU Essential Needs portal and a User Interface/User Experience Intern for the MSU Content Studio. She is currently researching how design impacts user interaction and response to products.



-:-

The Room 42 is brought to you by Single-Sourcing Solutions. Learn more: http://room42.single-sourcing.com


Register: https://bit.ly/r42-msu-panel


conref and filtering

Stuart Norton <snorton@...>
 

Dear DITA folks,

 

Our team has run into a behavior that we found surprising and it looks like it is going to cause us big headaches. It seems that if you use a conref, and the conref includes filtered material (@props), the filters are ignored.  It looks like the ditaval filtering stage happens before conrefs are included, so any filters in the conrefs are ignored…?

 

Does anyone using conref and ditaval filtering have some suggestions about how we can more effectively use conrefs that contain filtered material?

 

I'm attaching a zip with some sample files that demonstrate the issue:

  • map.dita includes concept.dita and filter.ditaval
  • filter.ditaval hides all products other than product = "shown-product"
  • concept.dita conrefs a section in snippets.dita
  • both concept.dita and the conrefed section contain a paragraph with product = "hidden-product"
  • in concept.dita, the paragraph is hidden; in the conrefed section it is shown.

Our expectation was that both concept.dita and the conrefed section would have the same content shown and hidden.

 

Thanks in advance for your advice!

 

Stuart

 


Juniper Business Use Only


Re: DITA to Markdown

Radu Coravu
 

Hi Chris,

About (1), it's already registered as an issue, there is a parameter controlling this though:

https://github.com/jelovirt/org.lwdita/issues/65

About (2) have you tried to enable Oxygen's "fix.external.refs" parameter in the transformation scenario? It may help with such cases.

Regards,

Radu

Radu Coravu
Oxygen XML Editor
On 11.12.2020 17:34, despopoulos_chriss via groups.io wrote:

Hi all... 

I want to send some sets of DITA topics to a system that displays markdown.  So I would like to transform a book to Markdown.  Has anybody else done this?  I know it's kind of backward -- the usual flow is to incorporate MD in your DITA book so you can take collaborations from other departments/people.  But we are doing what we are doing...

Using oXygen, I can add a Markdown scenario and a GitBook scenario.  I presume these are ultimately coming from the DITA OT.  These seem to have two oddities.
  1. The resulting MD files have a .html extension
    This will get to be a pain as we scale up.  Anybody know of some way to change the file extension?
  2. The map MUST be above or with the topics in the file tree
    AFAIK, this is preferred, but not required in the spec.  Not a biggie, but it seems to fail pretty silently, with a soft warning about hierarchy, and then it just doesn't generate the topic files.  Took me a while to figure that one out...

Anyway, we'll see if we can make this workflow work out...  Thanks in advance for any ideas.

  


[ann][webinar] Custom Business Rules for DITA Projects (December 16) #Oxygen

alin_belu@...
 

Hello, 
 
On December 16, you are invited to a great learning experience with the “Custom Business Rules for DITA Projects” live webinar! 
 
Schematron and Schematron QuickFix (SQF) languages can be used to improve efficiency and quality when editing DITA documents. With their use, you can define actions that will add complex structures in your documents (missing table cells, list conversions, IDs, and more) and state integrity requirements to help you add content more easily and without making mistakes. 
 
This indispensable webinar presented by Octavian Nadolu, software architect at Syncro Soft, will be your step-by-step guide to getting started as soon as possible with Schematron and Schematron Quick Fixes. During this live event, you will go over topics, such as: 
* Creating business rules with Schematron to avoid the common issues when editing documents. 
* Defining SQF actions to correct the Schematron imposed rules. 
* Configuring and applying specific Schematron rules on DITA projects. 
 
This is a free event and you can register at http://www.oxygenxml.com/evs2020-16.html 
 
Also, make sure to check the full list of our upcoming events: https://www.oxygenxml.com/events_programme.html 
 
Best regards,
Alin
--
Alin Belu
Oxygen XML Editor

541 - 560 of 46441