WebWorks ePublisher for converting documents to Confluence wiki

Over the past couple of weeks I’ve had the chance to experiment with WebWorks ePublisher, a set of tools that converts documents from Word, FrameMaker and DITA XML to a number of different output formats. One of those output formats is Confluence wiki. It’s been very interesting, so I thought I’d blog about it and see if anyone else wants to give it a go as well.

I started off knowing a bit about what ePublisher can do, having attended a WebEx demo. But I had never used it. This was such fun! Most of this blog post is going to look like a “how to” guide, because I’m hoping it will be useful to people who want to try this tool too.

A quick introduction to ePublisher

ePublisher is not a Confluence plugin. It is a set of standalone tools that can publish to Confluence as one of the output destinations. ePublisher allows you to transform content from Word, FrameMaker or PDF into a number of different output formats, including Confluence. It also provides a number of styling and design options for you to tailor the output documents.

These are the three components of ePublisher:

  • ePublisher Pro – Use this component to design your “stationery” i.e. the appearance of the documents that ePublisher will output.
  • ePublisher Express – Use this component to generate your documentation.
  • ePublisher AutoMap – Use this component to automate the documentation generation process, and to perform batch processing, scheduling, etc.

The Evaluator Guide is in the form of a video tutorial.

Requirements

Because I wanted to convert my documents to Confluence wiki, here’s what I needed:

  • Confluence version 2.10.2 or later. I’m using Confluence 3.0.
  • Confluence remote API and XML RPC API enabled.
  • The Content Formatting Macros plugin for Confluence, created and maintained by Adaptavist. This is a free plugin. You can install it directly from the Confluence administration console. (Instructions below.) The plugin is not officially supported by Atlassian, but is supported by Adaptavist.
  • If your input documents are in Word or FrameMaker format, then you will need Word or FrameMaker installed on your machine. Supported formats are:
    • Microsoft Word 2000 to Microsoft Word 2007.
    • Adobe FrameMaker 6.0 to Adobe FrameMaker 8.0. I don’t have FrameMaker, so I didn’t try this out.
    • DITA XML 1.0 and 1.1.
    • In addition, for DITA input documents you will need the Java Development Kit (JDK) 1.4.2 or later. I have Sun JDK 1.6. You need this for Confluence too, so if you’ve already got Confluence you’re cool.

Install ePublisher and Confluence

Download WebWorks ePublisher and install it. I was using a full version of ePublisher, complete with all three components. If you’re looking for a trial version, you can try out the ePublisher Express part of the product for free.

Download Confluence and install it. You can get a free 30-day trial licence or a free personal licence.

Set up additional requirements in Confluence

1) Install the Content Formatting Macros plugin into Confluence. Step by step: Open the Confluence ‘Browse’ menu and select ‘Confluence Admin’. Click ‘Plugin Repository’ in the left-hand panel. Find the ‘Content Formatting Macros’ and click ‘Install’. Wait a while for the process to complete. It will eventually say “Installed” in the table next to the macro name.

2) Enable the remote API in Confluence. Step by step: Click ‘General Configuration’ in the left-hand panel of the Administration console. Click ‘Edit’ and click the ‘ON’ radio button next to ‘Remote API (XML-RPC & SOAP)’. Save the change.

3) Create the Confluence space where you want to put your documents. I gave my space a key of ‘TESTEPUB’. Note that you must create the space in Confluence before you deploy content to it via ePublisher.

Here’s my space:

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

Use ePublisher Pro to design the styles and format for your output documents

You will start off with a template created in the original software for your input document(s). For example, if your input documents are in Word, then you will import your Word template into ePublisher. If you also have input documents in FrameMaker then you will need a FrameMaker template to import into ePublisher.

Hint: For a quick start, if you don’t have a Word template you can just use the Word document you want to convert as your template. That’s what I did.

You will import your template(s) and/or sample document(s) into ePublisher Pro. ePublisher Pro will analyse the styles in the imported documents and provide you with a list of styles. You will then map the styles to your requirements for your output documents.

1. Open ePublisher Pro and create a new project. When you create the project, you will also define the output target. Because I wanted to create Confluence wiki pages, I selected “Wiki – Confluence” as my target. (You can add other targets later too, via the “Manage Targets” menu option.)

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

2. Add your templates or sample documents to the new project. You can do this as part of the create-project procedure. Or you can do it afterwards, by clicking ‘Project’, ‘Add Document’.

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

3. ePublisher Pro will scan your documents and extract all the styles, putting them into your new project.

4. Now you can map the styles from the input documents to the styles you want for your output documents. In ePublisher Pro, click the ‘Style Designer’ icon in the top tool bar. (When you move your mouse over the tool bar icons, a prompt appears in the status bar at the bottom to tell you what the icons mean.)

5. You will see a list of the styles extracted from your input documents, categorised into groups like paragraph styles, character styles, table styles etc. You can also add new styles, by clicking the ‘New Style’ icon (a tick mark) in the styles toolbar.

For each style, there are two tabs: the ‘Properties’ tab and the ‘Options’ tab. This is where you can determine your output styles, and also things like page breaks via ‘Page Break Priority’ (e.g. start a new page for each heading level 1) and table of contents levels.

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

6. Save your style definitions by choosing ‘File’, ‘Save as Stationery’.

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

That’s the ePublisher Pro part of the process done, i.e. the design work that will often be done by specialised designers. Now you can put on your document publisher hat and start converting your documents.

Use ePublisher Express to convert your input documents to the chosen output format(s)

1) Start ePublisher Express.

2) Create a new Express project. When it prompts you for stationery, select the stationery that you created from your input document templates earlier.

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

3) Add your input documents. You can do this while creating the project, or later via ‘Project’, ‘Add Document’. I did it by dragging the documents from my Windows file explorer into the ePublisher Express window.

Hint: When dragging and dropping, you need to drop the documents directly into the folder in the Express ‘Document Manager’ panel, not just into the panel itself.

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

I added a number of Word documents, and also a DITA document just for fun. I used the DITA sample document from project Gutenbert: 20,000 Leagues Under the Sea by Jules Verne. I simply dragged the ‘ditamap’ file into my ePublisher Express project. Here’s the result:

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

4) Next I needed to tell ePublisher Express what output format I wanted. I did this by adding a ‘Deployment Target’. Step by step: Click the ‘Target Settings’ icon in the ePublisher Express toolbar, then click ‘Add deploy target’, then ‘Add’. Select ‘Wiki – Confluence’ then ‘Edit Configuration’. A popup dialogue now asks you for the location of your Confluence site and the space key. This is the wiki space where your documents will end up. I entered the URL of my Confluence wiki (http://localhost:8080) and my space key (TESTEPUB):

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

After adding the new deployment target, I selected the Confluence target in the ‘Deploy to’ field as well:

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

5) Now for the fun part! 🙂 I clicked the ‘Generate All’ icon in the ePublisher Express toolbar. Sure enough, the generation process started:

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

6) Antici… pation!Excitement! I kept flipping between my ePublisher window and my Confluence screen, to see the wiki pages appear.

Duh! This is where Sarah calls herself a “banana”.

ePublisher for converting documents to Confluence

I hadn’t realised that there’s another step required if you are publishing your content to a wiki. The generation process produces the output files, containing wiki markup, CSS and your text. Then you need to deploy the content to the wiki. I tried various configurations, then gave up and called WebWorks for support. That support WebEx session must be the shortest in history. 🙂

7) Deploy your content to the target — In ePublisher Express, click ‘Target’ then ‘Deploy’:

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

8) Yippee! My pages appeared in Confluence. If you leave all the design settings at their defaults, as I did, then you get a table of contents page and some neat navigation buttons at the top of every page. Here’s the automatically-generated table of contents page:

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

For my quick and dirty experiment, I exported some of the Crowd documentation pages from Confluence to Word, then pushed them through ePublisher to put them back into Confluence. Here’s one of the resulting pages back in Confluence:

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

And here’s a page from the Jules Verne DITA document, in the same Confluence space:

ePublisher for converting documents to Confluence

ePublisher for converting documents to Confluence

What happens when you update or comment on wiki pages?

After deploying my pages to Confluence, I updated a page in Confluence and also added a comment to the page. Then I redeployed the content from ePublisher.

When you deploy your content from ePublisher, it updates any existing pages with the content from the ePublisher source document. In effect, if you have updated the page in Confluence, your change will be overwritten by the ePublisher deployment. The page history retains every version of the page. The comments on the wiki page remain untouched. (This is as you would expect, because ePublisher uses the Confluence API to apply the updates.)

There is no “round trip” option available, i.e. you can’t update the pages in the wiki and then export the updates back to your source documents via ePublisher. The tool is intended for people who use Word, FrameMaker or DITA as their primary authoring environment, or people who want to convert their documents to wiki format permanently.

Conclusion

This was a rough-and-ready test, because I didn’t have time to set up my own templates or design stationery to make my output pretty. Even so, it was easy to push my Word and DITA documents through to Confluence and to produce a wiki documentation set that has a consistent format and navigation. Apart from my “banana” moment, the process was quick and painless.

I’d like to spend more time exploring the setup of the templates and of the stationery, to see how I can refine the output and tailor the Confluence pages to a specific style. Just examining the options available in ePublisher shows that it has a lot to offer in this respect. Alas, I don’t have time right now, and I wanted to blog about how far I’ve got without waiting til I do have time.

I’d also like to explore ePublisher AutoMap, which lets you automate the generation and deployment processes. This means that you can schedule batch jobs to tackle large volumes of documentation and to do the conversion on a regular basis.

I hope the above step-by-step guide through my experiment will be useful to anyone who wants to try ePublisher with Confluence. This tool will be very useful to people who have a large set of legacy documents that they want to convert to wiki format, or people who want to author their content outside the wiki on an ongoing basis, and convert it regularly to wiki as well as other formats. Single-sourcing of content is great for environments where different readers or customers need their documentation in different formats.

More information

WebWorks are holding a Round Up ’09 conference in Austin on 19-21 October. There’s sure to be lots of information there, about using and publishing to wikis, social documentation and other interesting stuff. Wish I could be there too!

Bill Arconati wrote a post on the Atlassian blog, describing the demo the WebWorks guys gave us, including a video of the session.

Let me know if you decide to give it a go, and whether the step-by-step guide above was useful. If you get further into the templates, stationery and AutoMap side of things before I do, I’d love to hear your experiences too.

ePublisher Pro – Use this component to design your “stationery” i.e. the appearance of the documents that ePublisher will output.

ePublisher Express – Use this component to generate your documentation.

ePublisher AutoMap – Use this component to automate the documentation generation process, and to perform batch processing, scheduling, etc.

I found the online help shipped with the product more useful than the online documentation. Start ePublisher Pro and click ‘Help” to open the local help system in your browser.

About Sarah Maddox

Technical writer, author and blogger in Sydney

Posted on 4 October 2009, in atlassian, Confluence, technical writing, wiki and tagged , , , , , , , , . Bookmark the permalink. 47 Comments.

  1. Thanks for this excellent review. I’m curious about how well ePublisher handles images. How well did they come over?

  2. Hallo Will
    It’s nice to hear from you. 🙂 The images came through just fine, from Word into the wiki. I didn’t have any images in the DITA file, so I don’t know how those would have worked.

    One thing I do notice is that the URL for each image is rendered on the wiki page immediately after the image. This is probably something I could tweak with a bit of formatting love in the ePublisher styling options. The images are added as attachments to the Confluence page, just as you’d do it if you were creating the page manually.

    ePublisher also creates a page called “images”, where it stores the navigation icons such as the “next” and “previous” buttons at the top of each page.

    Cheers
    Sarah

    • Thanks Sarah,

      I tried it out and I think the reason the URL is generating next to the image is because WebWorks is generating an image link in confluence that looks like this:

      !current page^current page.2.1.2.jpg|alt=http://example.com/image.jpg,…,!

      Notice how it is trying to put the image link in the alt attribute of the image.

      For some reason when the alt attribute for an image link in Confluence contains http:// or https://, it bleeds out into the page content like you were seeing. I saw the same thing. Seems like maybe Confluence is having a problem parsing the image link because of the URL in the alt= part of the statement.

  3. I’m guessing this would happen only in documents where the images originally came from the web (such as web pages saved as Word documents), since other documents wouldn’t have URLs for the images to put in the alt attribute.

  4. Good article. Even I am experimenting on Epublisher now….this article is helping me

  5. Hi Sarah,
    We have Confluence 3.1 and I downloaded the ePublisher 15-day trial, but they only give you the Express version, not the Pro, and they send you an email that the trial version is not fully functional. When you create a New Project, the dialog isn’t the same as the one you shown above with the Pro version where you can select an output. All you get is the Project name, Location, and Standalone stationery — there’s no Target Name or Format drop-down (where you select Confluence). I wanted to see if it could import RoboHelp, then output it to Confluence. So the trial won’t work. Hopefully someone has the Pro version so they can see if it will work to convert RoboHelp 7 to Confluence 3.1. The only problem I’m having with the Doc Import function in Confluence is that the internal hyperlinks don’t work — but I think that’s something RoboHelp is doing when it’s generating the Word 2003 doc.
    Thanks.
    Gina

    • Gina,

      I’m sorry the ePublisher trail didn’t meet your expectations. You can request both access to stationery which will allow you to publish to Confluence as well as access to ePublisher Pro. We generally limit access to Pro to ensure we aren’t overwhelming new users with too many options.

  6. Hi Sarah
    Thanks for the great article. I have one question, when you publish a document authored in word in Confluence using the ePublisher, does the ePublisher take care of the formatting errors of confluence such as
    – Maintains the look and feel of the tables in the word document as is (retains the cell merging)
    – Maintains the look and feel of the numbering within a table. (we author in word and post the word document to confluence) I noticed that in my word tables if I am using the numbering from word to give a unique number for each row, when I do an doc import in Confluence, it looses the numbering formatting and each row is numbered as 1

    Do let me know

    Regards
    Lumina

  7. Lumina,
    I know your question was meant for Sarah, but I just tested this with the ePublisher 2009.4 trial and Confluence 3.1. I created a very simple Word table and, indeed, all of the numberings are “1”. The same thing happens when I just use the Doc Import feature in Confluence. I hadn’t noticed that before, so thanks for pointing it out.
    Gina

  8. Hi Gina
    You are very welcome, here are other items that I have noted with formatting incase they are useful to you. However all being said and done I love confluence as a tool and it has very cool features. If they were to improve on these it would just add the “Awesome” factor to one’s experience with Confluence

    – Foot notes/End notes if added within a table breaks the table as confluence does not correctly interpret especially if they are embedded in a table Foot notes and end notes

    – Interprets the pipe character “|” as a table column as it is also a Wiki markup character to separate table columns. The writers need to refrain from using the Pipe character within a table otherwise their table formatting will break. Workaround is to use Upper case “I” instead of the pipe character for data presentation

    – Table within a table is a problem too

    – -Headings within documents that will form Page headings, need to ensure that the headings do not have special characters. Refrain from using special characters in headings that will form page headings within confluence. Confluence does not like special characters in page headings, and this will cause problems during document import

    Lumina

  9. Lumina,
    Thanks for bringing all these issues up. I found this issue: Autonumbering within a table is broken when used with Doc Import (http://jira.atlassian.com/browse/CONF-17055)

    Please log on and vote to have it fixed. I’m looking at some table plugins that might help.
    Gina

  10. Thanks Gina for the issue#, I will certainly vote on it. I listed the issues above hoping that Sarah can provide some guidance 🙂

    Look forward to your directions Sarah

  11. Hallo Lumina and Gina

    Thank you for all the information and research you’ve both put into these issues! I’m afraid my knowledge of WebWorks ePublisher isn’t deep enough to be able to answer the questions relating to format corrections when converting docs from Word to Confluence via ePublisher. I’ve emailed the ePublisher guys, hoping they may be able to answer your questions.

    Lumina, I’d just like to clarify one point: Is it true to say that the problems you’ve encountered are all with the native Confluence feature that imports a Word document into Confluence (i.e. the Confluence Office Connector) and that you haven’t yet tried ePublisher — so your question is, would ePublisher be able to solve these issues?

    Cheers
    Sarah

    • Thanks for giving us a heads up on these issues Sarah. I believe we can readily address the issues that have been identified. Sounds like we may simply have missed a few edge cases, such as incorrect escaping on the | character, nested tables, etc.

      • Hi Ben,
        Is there any way you could get the Confluence Documentation Theme to work when you export from ePublisher to Confluence? The left-hand navigation panel doesn’t populate. Our users prefer that to a table of contents on the home page with the navigation buttons, which are provided, I believe, by the Confluence “stationery” that ePublisher uses. I’m just using an ePublisher trial at the moment. Also, is there a way not to have the automatic outline numbering in the page titles? Can I modify that in the stationery?
        Thanks!
        Gina

      • Gina,

        I’m not seeing a “reply” link under your post, so I’ll just put this here.

        First, on the automatic outline numbering in the page titles. Yes, you can turn that off. The way you do it is to configured it in a design project in Pro, publish the Stationery, and then generate the project in Express with that Stationery. Users can publish straight from Pro, though we find the Stationery + Express workflow works well for groups who don’t want to train all of their end users on ePublisher Pro.

        Second, your question on the Confluence Documentation Theme. I’ve looked it over and it just seems to be a Confluence theme. I believe it can be applied to a space. If there are custom wiki macros which should be implement, it is possible to have ePublisher emit those during the publishing process. Are there any wiki markup changes that are required, from your perspective, to improve ePublisher’s wiki markup support for the Confluence Docuemntation Theme?

        Ben

  12. Ben,
    I’ve only been using Confluence 3.1 for a month, so I don’t know how to answer about wiki markup support for the Confluence Documentation Theme. I only know that we’ve applied the Documentation Theme to all of our spaces in the wiki. After exporting Word 2003 docs from ePublisher, the pages do not display in the left-hand navigation panel Documentation Theme for that space. I’m sending a link to our Confluence space to the sales rep, Christopher Ward, so he can forward it to you.
    Thanks!
    Gina

    • Hallo Ben and Gina
      Ben is right in saying that the Documentation Theme is simply a theme. There are no specific extra wiki markup elements that you need to be aware of. (The only extra macro supplied by the theme is the {spacejump} macro, and I’m sure you’re not using that. It’s for a specific use case. There’s a blog on ffeathers about it if you’re interested.)

      One possible reason why your pages do not appear in the left-hand navigation bar is this: The theme constructs that table of contents from all pages that are child pages of the space’s home page.

      Each space has a single page designated as the “Home” page. You can change that in the space administration section.

      If your documentation pages are at the same level as (i.e. siblings of) the space home page, they will not appear in the left-hand navigation bar.

      More background: The theme uses the {pagetree} macro to produce the table of contents on the left. This will not be affected by the import from ePublisher, because it’s done totally in Confluence. The {pagetree} macro allows you to choose the top page in the page tree. The Documentation Theme chooses the space home page as the top page.

      If this is the cause, then there are two ways to fix the problem. You can change the designated space home page, or you can drag and drop all your pages to make them children of the current home page.

      You can drag and drop pages in the “Pages” section of the space “Browse” screen.

      I hope that makes sense, and I hope it solves the problem. 🙂

      Ben, thanks for dropping by and answering all these questions. Awesome!

      Cheers
      Sarah

      • I can’t quite tell if this is related to what you’re talking about here, but I’m having trouble deploying pages ePublisher to a child page within a space in Confluence. I can successfully deploy to the space home page, but if I try to specify a child page in the ePublisher Target settings (e.g. “Manuals/UserGuide”), the “Test” button reports a connection error.

        Have you tried this, or do you have any thoughts?

        Neil

    • Neil,

      Yes, ePublisher does not presently allow you to deploy to a child page in Confluence at this time. Technically, you are deploying to a Confluence Space and then requesting that your pages have a particular parent page. ePublisher today does not yet offer an option for specifying that parent page.

      We intend to address this short-coming in ePublisher 2010 updates.

      Ben

      • Thanks very much, Ben. I’ll keep an eye out for that update.

        Neil

      • FYI: ePublisher 2010.1 was released on April 15, 2010. It includes an option to deploy pages under an existing Confluence page. So, you can now directly deploy your pages underneath your Home page and all will play nice with the documentation theme.

  13. Sarah,

    You’re right! Somehow the “Home” page was beneath some of the other pages, and there were no child pages directly under “Home”. So I just dragged the other pages into the “Home” page (via Browse > Pages, and now they all display in the left-hand navigation pane! Ben said I can also change the ePublisher stationery so that the page title numbering doesn’t display.

    Also, we are using the {spacejump}macro as you are in the Confluence help docs to manage separate release versions of the docs, and it works very well.

    Thanks very much for your help, and I will relay this info to Ben and our ePublisher sales rep.

    Gina

    • Sarah and Gina,

      Thanks for keeping this discussion public. Through it, I’ve learned that we probably need to improve ePublisher’s options for setting page hierarchies during deployment. That change would enable ePublisher sourced content to meshed better with the Confluence Documentation Theme.

      Of course, as Gina has found, manually moving the pages is also possible.

      Ben

  14. The release notes for the most recent ePublisher Pro update indicates there is now an option to designate a parent page when going to Confluence, but I have not found documentation on how to use that feature. Any ideas on where they put it?

    • Ethan,

      Go and edit your Confluence deployment configuration in the “Target Settings” dialog. There is a new option to specify a “Parent Page”.

      Ben

  15. I added a number of Word documents, and also a DITA document just for fun.
    _____________
    Mary

  16. Confluence 4 will break everything written here. Most of the older macros no longer work with Confluence 4, and if you run into problems, you can no longer use the “edit wiki” option as it no longer exists in Confluence 4.

    IF you can, don’t “upgrade” to Confluence 4, you’ll be very sorry you did.

    • Hallo there anonymous

      Yes, you are right that it is no longer possible to edit wiki markup in Confluence 4.0. The wiki has changed to a new storage format: XHTML. The editor has also undergone a complete rewrite. It is still possible to insert wiki markup, but once inserted it immediately converts to the new format.

      It sounds as if there were some problems during the conversion of your Confluence to the latest version. It’s best to contact Atlassian support for help with fixing that. All the native Confluence macros should either work or have been converted to a working format during the upgrade.

      I’ve sent a message to the WebWorks team to see if there’s any news about updating ePublisher to work with Confluence 4.0. It may be best to contact them directly for a quick response.

      Cheers, Sarah

    • I’ve had a reply from WebWorks. They are planning to look into Confluence 4.0 support in a future release.

  17. Has anyone had success simply importing a document into confluence 4.x? We really do not care about being able to edit it once its in there.

    Also,
    Where did the video go?

    Thanks,
    -Dewayne Lavelle

    • Dewayne,

      If you are inquiring about ePublisher uploading to Confluence 4.x, we are adding support for the deployment of Confluence 3.5 wiki mark up to Confluence 4.x server via their compatibility API in our upcoming 2011.4 release.

      Ben

  18. I have a problem with the trial version of ePublisher. It’s no possible setting confluence as final target Someone can help me??

    • You should be able to configure a deployment target via the Target Settings dialog.

      • I’m able to configure Target, but not for Confluence. There is a difference also for New Project WIzard.
        May be a configuration available only for PRO version??

      • Ah! Yes, you can contact your account rep to access stationery that supports Confluence. Deployment settings are configured per target. So, you have to have a Confluence target, then you can configure the project for Confluence deployment.

  19. I tried a trail version of WebWorks ePublisher Designer to publish DITA to Confluence. The output pages in Confluence have some problems:
    • The file name rather than the topic title is taken as the page title
    • Although the page hierarchy is kept, the parent pages are arranged in the alphabet order rather than the original order

    Any ideas why and how to fix it?

    • For your first issue, you can change how file names are assigned by modifying your Target Settings for the file naming convention. You likely want to use the $H; pattern (use the heading paragraph text).

      For the second issue, you would need to manually re-arrange the hierarchy. The present deployment client lacks the capability to automate that operation.

  1. Pingback: Alan Porter’s Weblog » ePublisher and Confluence – seeing the possibilities

  2. Pingback: ePublisher and Confluence – seeing the possibilities - WebWorks ePublisher

Leave a comment

This site uses Akismet to reduce spam. Learn how your comment data is processed.