Hi Bob,

 

> This is to support those users who come from a desktop publishing tool background and are "bothered" by needing to open multiple tools to edit different object types and then inserting links from DITA topics to point to images and equations.

> So I want to associate SVGs with Inkscape (or perhaps some other tool) and MathML with MathFlow so that when users want to create an image or equation they simply select the appropriate action from the Insert menu and the proper tool is created and appropriate markup added to the DITA file. Alternatively, if they double-click on an already-rendered equation or image, the appropriate editor will launch.

 

Editing Equations:

If you are using MathFlow, your problems must be solved. Aren’t they?

 

Editing Non-SVG-Images

If you double click a graphic, it is opened by an external editor. This editor is the application, which is assigned to this file extension (at least on Windows).

 

Editing SVG-images

If you double click an svg, oXygen fragment editor is opened. I don’t know, if you can configure oXygen that referenced svgs are handled like jpg-graphics. Perhaps this could solve your problem if it’s possible.

@George: is it possible to change this behavior?

Let’s assume it’s possible:

- Assign Inkscape (or any other SVG Editor) to svg file extension.

- If an SVG is double clicked your SVG is opened in an external editor

 

Creating Equations/SVGs

So you need a solution/extension for creating a new graphic/equation:

- Implement and author extension with oXygen SDK

- This Extension

   - creates a rudimental SVG/MathML file

   - sets a link to your image-Element

   - opens the SVG/MathML file in your external edtior

If you provide a parameter for this author extension, where you can configure the XML string for the rudimental file, you have your “unified” solution.

 

Visio-Files

Saving SVG and VSD files out of Visio is not a job of oXygen or any oXygen extension. If you want to do such automation you have to extend Visio, to save an SVG automatically, when a VSD is saved.

Although Visio has an SVG import filter, it always creates a copy and doesn’t work on the original SVG file. So I think it’s not a good idea to open an SVG in Visio for editing.

 

But I can imaging following XML based workflow, as VISIO 2003-2010 supports an Visio XML file format VDX. So you have to enhance the workflow above and provide a rudimental VDX xml string, which is opened in VISIO.

Create a second, rudimental SVG file, too, which is referenced in your DITA topic.

Tell your users they have to save vdx and svg format or implement a plugin for MS Visio which does this automatically, when vdx is saved.

(Of course you can transform vdx to svg by XSLT, but this will be a hard work)

Editing this SVG means to open VDX file when SVG is referenced. So you have set a flag somewhere, your extensions knows it should go a specific way. (Perhaps another file extension or attribute?)

But take care: In Visio 2013 VDX is a zip container like pptx, docx a.s.o.

 

BTW:

Any SVG-Editor put’s its own stuff to the SVG (especially Visio). You will run into validation errors if you are using the embedding svg method. Don’t know if Batic has any problem with rendering this stuff in oXygen (referenced or embedded) or FOP.

So I think perhaps it would be a good idea, to think about and XSLT postprocess, which makes a native svg version 1.1 out of that stuff.

 

Hope this helps

Markus