Search found 58 matches

by mboudreau
Fri Apr 16, 2021 6:56 pm
Forum: SDK-API, Frameworks - Document Types
Topic: XSLTOperation to edit MathML
Replies: 4
Views: 324

Re: XSLTOperation to edit MathML

Hi Alex, Using a parameter worked. For XSLTOperation: externalParams: label=${ask('Enter label', generic)} And the script: <xsl:stylesheet xmlns:mml="http://www.w3.org/1998/Math/MathML" xmlns:oxy="http://www.oxygenxml.com/ns/author/xpath-extension-functions" xmlns:xsl="http://www.w3.org/1999/XSL/Tra...
by mboudreau
Fri Apr 16, 2021 4:43 pm
Forum: SDK-API, Frameworks - Document Types
Topic: XSLTOperation to edit MathML
Replies: 4
Views: 324

Re: XSLTOperation to edit MathML

Hi Alex, The ${ask} editor variable isn't working as you describe. When my template includes this: <mml:mtext>${ask('Enter label', generic)}</mml:mtext> I get exactly the same content in the output. No dialog box appears asking for the value, and the string "${ask('Enter label', generic)}" appears i...
by mboudreau
Fri Apr 16, 2021 4:25 am
Forum: SDK-API, Frameworks - Document Types
Topic: XSLTOperation to edit MathML
Replies: 4
Views: 324

XSLTOperation to edit MathML

I'm creating an Author action to add a label to a MathML element. Following the models at https://www.oxygenxml.com/doc/versions/23.0/ug-editor/topics/dg-default-author-operations.html, my transformation script looks like this: <?xml version="1.0" encoding="UTF-8"?> <xsl:stylesheet xmlns:mml="http:/...
by mboudreau
Tue Mar 30, 2021 6:32 pm
Forum: XSLT and FOP
Topic: Empty xmlns attribute in XSLT output
Replies: 4
Views: 344

Re: Empty xmlns attribute in XSLT output

Thanks, Radu. This clarifies things a lot. I didn't realize that having a default namespace on the stylesheet applied that to the output of the conversion. I'm using Oxygen version 23.0, which I see now requires <html xmlns="http://www.w3.org/1999/xhtml"> for XHTML files but only <html> for HTML fil...
by mboudreau
Mon Mar 29, 2021 11:59 pm
Forum: XSLT and FOP
Topic: Empty xmlns attribute in XSLT output
Replies: 4
Views: 344

Re: Empty xmlns attribute in XSLT output

Hi Radu, Before I dump a lot of files on you, perhaps I can focus my question a little better. When my JATS-to-HTML stylesheet begins like this: <xsl:stylesheet version="2.0" xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xmlns:mml="http://www.w3.org/1998/Math/MathML"...
by mboudreau
Mon Mar 29, 2021 1:17 am
Forum: XSLT and FOP
Topic: Empty xmlns attribute in XSLT output
Replies: 4
Views: 344

Empty xmlns attribute in XSLT output

I have an XSLT conversion that is resulting in elements with xmlns="" for reasons I don't understand. I don't think this is the result of an Oxygen bug, but more likely I have an incomplete understanding of how Oxygen (or the Saxon processor) handles namespaces. The conversion giving the unexpected ...
by mboudreau
Fri Mar 05, 2021 12:17 am
Forum: XSLT and FOP
Topic: Framework conflict
Replies: 10
Views: 1879

Re: Framework conflict

Hi Radu, I think I've finally got it. For the framework (UCP JATS 1.2) associated with the DTD that we customized (JATS Journal Publishing 1.2, "blue"), I changed all the public identifiers in the catalog file and in the DTD component files to include the string "UCP", and I changed all the correspo...
by mboudreau
Thu Mar 04, 2021 5:40 am
Forum: XSLT and FOP
Topic: Framework conflict
Replies: 10
Views: 1879

Re: Framework conflict

Another thought has occurred to me. Am I right in assuming that if one of the two frameworks used a DTD that was contained in a single file, no catalog file would be necessary and there would be no conflict?
by mboudreau
Wed Mar 03, 2021 11:42 pm
Forum: XSLT and FOP
Topic: Framework conflict
Replies: 10
Views: 1879

Re: Framework conflict

You can probably change the public IDs just in one of those frameworks.
I tried this, but the conflict persists. I then tried changing the names of all the DTD component files (adding an extra filename extension), and still no luck.
by mboudreau
Tue Mar 02, 2021 7:47 pm
Forum: XSLT and FOP
Topic: Framework conflict
Replies: 10
Views: 1879

Re: Framework conflict

Hello again! I neglected to pursue this issue before the pandemic, but it's come up again, this time in a more annoying way. I have two new frameworks that are apparently in conflict, for document types that I need to convert from one to the other, so temporarily disabling one or the other of the fr...
by mboudreau
Wed May 27, 2020 12:11 am
Forum: Common Problems
Topic: "Additional libraries present" error on starting 22.1
Replies: 7
Views: 987

Re: "Additional libraries present" error on starting 22.1

Hi Radu,

Yes, if I go back to the configuration that worked with 21.1 and move "libraries.list" from the lib directory, the MySQL connection is made and the transformation works.

I do prefer your solution #1 though, since it makes sharing the framework or upgrading to a new version a bit easier.
by mboudreau
Fri May 22, 2020 5:42 pm
Forum: Common Problems
Topic: "Additional libraries present" error on starting 22.1
Replies: 7
Views: 987

Re: "Additional libraries present" error on starting 22.1

Hi Radu, The transformation doesn't work because the script is set up to terminate if the MySQL connection cannot be made. Here is my minimal version of the transformation (I hope it's not too long). This works under Oxygen 21.1 with the JAR file in OxygenHome/lib, and does not work under Oxygen 22....
by mboudreau
Thu May 21, 2020 9:29 pm
Forum: Common Problems
Topic: "Additional libraries present" error on starting 22.1
Replies: 7
Views: 987

Re: "Additional libraries present" error on starting 22.1

Hi Radu, Thanks for your reply. I tried to set up your option 1, moving the JAR file into the framework folder, but on running the transformation that connects to MySQL, I now get a different error message: The script cannot be executed: Failed to load JDBC driver org.gjt.mm.mysq.Driver In the frame...
by mboudreau
Wed May 20, 2020 5:22 pm
Forum: Common Problems
Topic: "Additional libraries present" error on starting 22.1
Replies: 7
Views: 987

"Additional libraries present" error on starting 22.1

I downloaded and installed Oxygen 22.1 today. However, after adding the file mysql-connector-java-5.1.42-bin.jar to the libraries folder (we use this for an XSLT transform that consults a MySQL database), I get this error message on startup: There are additional libraries present in the application ...
by mboudreau
Sat Dec 14, 2019 1:51 am
Forum: SDK-API, Frameworks - Document Types
Topic: Require user to confirm global changes
Replies: 1
Views: 526

Require user to confirm global changes

I have created a pair of Actions for editing a journal article: Convert CURRENT underline element to italic Convert ALL underline elements to italic If the user chooses the "Convert ALL" action, I'd like to present a confirmation dialog that warns this is a global action that cannot be undone. Is th...
by mboudreau
Sat Dec 14, 2019 1:48 am
Forum: SDK-API, Frameworks - Document Types
Topic: Action to search and replace in Author mode
Replies: 1
Views: 570

Action to search and replace in Author mode

Is it possible to create Actions that find and replace text throughout an entire document in Author mode? For example, changing multiple spaces to a single space. I know this is easy to do using the Find dialog, but I'd like to be able to assign frequently used replace-all operations to a toolbar bu...
by mboudreau
Wed Dec 11, 2019 12:21 am
Forum: SDK-API, Frameworks - Document Types
Topic: Custom menu of options for InsertFragmentOperation
Replies: 16
Views: 2872

Re: Custom menu of options for InsertFragmentOperation

Ah, those quotes! I've gotten tripped up on that before. Since I want to choose the <journal> element from subject_headings.xml based on the content of /article/front/journal-meta/journal-id[@journal-id-type="publisher-id"] in the file being edited, I expanded the example to this: <article-categorie...
by mboudreau
Mon Dec 09, 2019 11:47 pm
Forum: SDK-API, Frameworks - Document Types
Topic: Custom menu of options for InsertFragmentOperation
Replies: 16
Views: 2872

Re: Custom menu of options for InsertFragmentOperation

Hm. Stumped again. With this file: <?xml version="1.0"?> <subject-headings> <journal id="AJS"> 'AJS Article':'AJS Article'; 'AJS Editorial':'AJS Editorial'; 'AJS Review':'AJS Review' </journal> <journal id="BBL"> 'BBL Article':'BBL Article'; 'BBL Editorial':'BBL Editorial'; 'BBL Review':'BBL Review'...
by mboudreau
Fri Dec 06, 2019 11:07 pm
Forum: SDK-API, Frameworks - Document Types
Topic: Custom menu of options for InsertFragmentOperation
Replies: 16
Views: 2872

Re: Custom menu of options for InsertFragmentOperation

Thanks, Sorin! This is what finally works: ${ask('Choose or type a subject heading:', editable_combobox, (${xpath_eval( if ( doc-available(concat('${framework}/resources/subjects_', /article/front/journal-meta/journal-id[@journal-id-type="publisher-id"], '.xml')) ) then string(doc(concat('${framewor...
by mboudreau
Thu Dec 05, 2019 10:52 pm
Forum: SDK-API, Frameworks - Document Types
Topic: Custom menu of options for InsertFragmentOperation
Replies: 16
Views: 2872

Re: Custom menu of options for InsertFragmentOperation

Hi Sorin, I'm trying your suggestion of using the "doc" function. I started with a very simple version just to see if Oxygen could locate the file: ${ask('Select subject heading', combobox, (${xpath_eval( if ( doc-available(${framework}/resources/subject_headings.txt) ) then "'A':'A';'B':'B';'C':'C'...
by mboudreau
Thu Dec 05, 2019 12:14 am
Forum: SDK-API, Frameworks - Document Types
Topic: Custom menu of options for InsertFragmentOperation
Replies: 16
Views: 2872

Re: Custom menu of options for InsertFragmentOperation

One more follow-up. As I noted previously, this works: ${ask('Choose one', combobox, (${xpath_eval(if (matches(/article/front/journal-meta/journal-id[@journal-id-type="publisher-id"]/text(), 'Journal A', 'i')) then "'A':'A';'B':'B';'C':'C'" else "'D':'D';'E':'E';'F':'F'")}) )} And when I worked prev...
by mboudreau
Wed Dec 04, 2019 8:34 pm
Forum: SDK-API, Frameworks - Document Types
Topic: Custom menu of options for InsertFragmentOperation
Replies: 16
Views: 2872

Re: Custom menu of options for InsertFragmentOperation

I finally worked out the syntax for the ${ask()} with an embedded ${xpath_eval()}: ${ask('Choose one', combobox, (${xpath_eval(if (matches(/article/front/journal-meta/journal-id[@journal-id-type="publisher-id"]/text(), 'Journal A', 'i')) then "'A':'A';'B':'B';'C':'C'" else "'D':'D';'E':'E';'F':'F'")...
by mboudreau
Wed Dec 04, 2019 12:25 am
Forum: SDK-API, Frameworks - Document Types
Topic: Custom menu of options for InsertFragmentOperation
Replies: 16
Views: 2872

Re: Custom menu of options for InsertFragmentOperation

I'm trying to implement the middle option, using ${ask()} and ${xpath_eval()}. I can get this work as the fragment to be inserted: <article-categories> <subj-group> <subject>${ask('Choose one', combobox, ('Article':'Article'; 'Book Review':'Book Review'; 'Editorial':'Editorial'))}</subject> </subj-g...
by mboudreau
Wed Nov 27, 2019 5:57 am
Forum: SDK-API, Frameworks - Document Types
Topic: Custom menu of options for InsertFragmentOperation
Replies: 16
Views: 2872

Re: Custom menu of options for InsertFragmentOperation

To follow up, I've figured out how to style the inserted element to display a menu of choices: article-categories subj-group subject:before { content:"Subject: " oxy_combobox( edit, '#text', values, 'Research Article, Brief Report, Obituary', fontInherit, true); } article-categories subj-group subje...
by mboudreau
Tue Nov 26, 2019 12:28 am
Forum: SDK-API, Frameworks - Document Types
Topic: Custom menu of options for InsertFragmentOperation
Replies: 16
Views: 2872

Custom menu of options for InsertFragmentOperation

I'm creating a framework author action to add a subject heading to a document when it's missing. E.g., /article/front/article-meta/article-categories/subj-group/subject At the moment, however, my action only adds this fragment with the placeholder "My Heading" as the text content of <subject>. What ...
by mboudreau
Mon Nov 04, 2019 5:18 am
Forum: XSLT and FOP
Topic: Framework conflict
Replies: 10
Views: 1879

Re: Framework conflict

Is there any way to avoid this? If I needed to convert an instance of one DTD into an instance of the other DTD, and I couldn't have both frameworks active at the same time, I'd be stuck.
by mboudreau
Mon Oct 28, 2019 10:26 pm
Forum: XSLT and FOP
Topic: Framework conflict
Replies: 10
Views: 1879

Framework conflict

I appear to have a conflict between two frameworks I set up, and I don't know how to troubleshoot this. I have a framework I've been using without problems for over a year, which is configured as follows: Framework: "Journal Publishing 3.0" Association rules - Public ID: -//NLM//DTD Journal Publishi...
by mboudreau
Thu Oct 24, 2019 2:33 am
Forum: XSLT and FOP
Topic: Can I save the DOCTYPE declaration to a variable?
Replies: 1
Views: 637

Can I save the DOCTYPE declaration to a variable?

I'd like to write a single XSL transformation that can process instances of different (but similar) doctypes. I also want to include the input doctype declaration in the output, so I can't write specific values into an <xsl:output> element. Is there a way to capture the content of the doctype declar...
by mboudreau
Thu Jun 07, 2018 5:31 pm
Forum: XSLT and FOP
Topic: Variable definition not processed when variable isn't output
Replies: 4
Views: 2514

Re: Variable definition not processed when variable isn't output

Removing the <xsl:otherwise> element doesn't help.

However, it appears that "string($volume) = ''" and "not(string($volume))" both work as a test for the undefined variable.