Tip: Creating a Button in Arbortext Digital Media Publisher

Here’s a snippet from the PTC Express newsletter. You never know how well something will get saved and archived, so we’ve reproduced it here. Generally, we post code to the Adepters Code Archive. However, this article went out from the PTC Express news letter and it’s getting some attention in places that don’t really understand the impact or how to present the information as the code that it is. So, we’ll join the club, improve the article, and continue adding value to the community at large.

Let us present:

Creating an Update Button in Arbortext Digital Media Publisher (DMP)

It’s a fairly straight-forward process to add a button to Arbortext Digital Media Publisher (DMP).  This is a gentle introduction to getting started with customizing DMP. In March, the Arbortext PTC/User group meeting was all about DMP. There’s some amazing things that you can do with it. The full application is customizable.

DMP is part of the Arbortext Publishing Engine.  If you don’t already know DMP, you should get to know it:  DMP assembles documents and multimedia files for publication. Out of the box, DMP provides capabilities for distributing updates to your digital media via the web.

This article describes how to create an update button that your customers can select and that will initiate a download all of the updated pages on your website and store them locally for later offline viewing.

Produced with DMP by PTC documentation staff

Arbortext Help Center is produced with DMP by PTC documentation staff

Creating the button that performs this functionality is not completely intuitive. Here’s what you need to do to create the “Update” button with DMP.

First: Configure the dmp.properties File

To make certain that the button will work properly once it is placed into the DMP image, set the following options in dmp.properties file to enable update pack generation:

# updateStatus: how the update should be proceeded. There are three possible values
#
# 0:  Disable update, no update is generated (but update button and
#     configuration is available in Consumer).
# 1:  Manual update: Consumer user can update content by clicking
#     the update button
# 2:  At launch: Consumer will check for update each time the application
#     is starting
# 3:  Auto update: Consumer will update at scheduled time. updateSchedule
#     property must be set.
#

updateStatus=0

# updateFrom: the version that the update is based on. The version must
#             be older than the version of the current project. This
#             property uses the same format as the "version" property
#             defined above, e.g. 1.0, 2.0.1, etc. It is an error if
#             the version is the same or newer than the current version.
#

updateFrom = 1.0

# updateUrl
# The url pointing to the folder that contains update
# manifest file. It can be a remote URL or local directory.
#
# For a remote URL, it should always starts with "http" or "https".
# For a local directory, if a relative path is specified, it is relative
# to $CONSUMER_INSTALL_DIR/project/WEB-INF. For example, if updateUrl is
# set to "../_updateFolder", it indicates
#
# $CONSUMER_INSTALL_DIR/project/_updateFolder
#

updateUrl = updatepack

# updateConfigurable
#
# Whether Consumer user is able to configure update properties.
#
# true: show update configuration page in Consumer
# false: don’t show configuration page
#
# Note: update configuration page will not show even if this value is set
#       to true if
#       1. Consumer is not installed, or
#       2. Web deployment and the request is not from localhost
#

updateConfigurable = true

# updateSchedule
# The schedule to run update. This property value is required only if
# updateStatus is set to "3". The updateSchedule has the format of
# [UpdateType]:[DayOfMonth]:[DayOfWeek]:[HourOfDay]
# UpdateType: d (daily), w (weekly), m (monthly)
# DayOfMonth: 1-31
# DayOfWeek: 1-7
# HourOfDay: 0-23
#
# For example, to run update at 3am every day, the updateSchedule should
# look like: updateSchedule = d:0:0:2
# To run update at 3am every Friday: updateSchedule=w:0:5:2
# To run update at 3am the fifth day of each month at 3am:
# updateSchedule=m:5:0:2

updateSchedule=w:0:1:0

Second: Check other properties in the dmp.properties File

Make certain the following property values do not change between the base release and all updates. Changes to these values will cause updates not be properly recognized.

  • companyName
  • projectId
  • projectName
  • outputroot

Third: Create the Button

To create an “Update” button in DMP, follow these steps:

  1. Create a new “Welcome” page by opening up your text editor and placing the following template code at the top:
    <?xml version="1.0" encoding="UTF-8"?>
    <jsp:root xmlns:jsp="http://java.sun.com/JSP/Page" version="2.0"
              xmlns:c="http://java.sun.com/jsp/jstl/core"
              xmlns:fmt="http://java.sun.com/jsp/jstl/fmt"
              xmlns:atidmc="http://www.arbortext.com/namespace/dmc/consumer">
       <jsp:output doctype-root-element="html"
                doctype-public="-//W3C//DTD HTML 4.01 Transitional//EN"
                doctype-system="" />
       <jsp:directive.page language="java" errorPage="error.jspx"
                contentType="text/html; charset=UTF-8" />
       <atidmc:layout var="layout" />
       <html>
          <head>
             <title>Cerify Automated Verification and Checking System</title>
          </head>
          <link rel="Stylesheet" type="text/css" media="all"
                href="${layout.template}/css/dmc.css"></link>
          <body>
          <div id="config">
    
  2. Under the <div> tag, place the content you want displayed to your users as the first page of your DMP image. For example:
    <p>The DMP Help Center itself is an application of DMP. You can search
    the documentation using the search controls on the upper-left side of
    the window. The Help Center also provides an index to the HTML and PDF
    documentation. (To view the PDF documentation, you must have Adobe
    Acrobat Reader installed and correctly configured on your system.).</p>
    
  3. Directly under this new content, add the following code:
    <form method="get"
          name="update"
          id="update"
          accept-charset="utf-8"
          action="../_update"
          enctype="application/x-www-form-urlencoded"
          target="_parent">
       <input type="submit" name="update" value="update"/>
    </form>
    
  4. Remember to keep your tags balanced and make sure you close the code with the following:
          </div>
        </body>
      </html>
    </jsp:root>
    
  5. Save this file as:
    <DMP_INSTALL_DIR>\templates\simple\yourcompany.jspx
    
    Note: If working with frames, choose the frame directory.
    
  6. Open the template.xml file.
    <DMP_INSTALL_DIR>\templates\simple\template.xml
    

    Note: If working with frames, choose the frame directory.

  7. Change the Page type=”Intro” to the following:
    <Page type="INTRO">
    <Url locale="*" href="yourcompany.jspx" />
    
  8. Run the dmp.bat file. You should see your button displayed. When you click this button, DMP will check for updates.
    see the results

    see the results

    You should see that the content shows “current” because an update pack has not yet been generated.

  9. Create and deploy the updates pack.Click the update button again. You will notice a series of steps being performed by your image followed with a completion status.Your content is now up-to-date. Practice adjusting the duration of the updates by opening the dmp.properties and setting the updateSchedule to different codes. The default code is:
    updateSchedule=w:0:1:0

    Setting the update to Schedule as described above will set the update to run on the fifth day of each month at 3am.

    The update button will work in both standalone mode and Web application mode.

Leave a Comment

Documentation, Medical Devices, and the FDA

This month the implementation date for MDD directive (2007/47/EC) comes due. There are a number of issues that require action by manufacturers (changes to the Essential Requirements, clearer requirements for clinical evaluation, changes to the QA of third parties) and the Notified Bodies ( higher requirements for auditing Technical Files).

After seeing how well positioned Medtronic is, we started wondering how well the other device manufacturers were doing. Interestingly enough, none of them have really started the discussion about the benefits of dynamic information delivery in their business.

I might have expected it. The first step is always: let’s meet the requirements and be done with it. But when translation costs are $50/page when they could be less than $5/page, it makes me wonder when the life sciences companies are going to really join the discussion.

We had a customer in the manufacturing space — not life sciences — and their translation vendor offered them a steep discount if they got out of FrameMaker. Their translation costs went from $20,000 to $6,000.  Just getting out of proprietary systems and into a standard XML publishing system got their costs down by 2/3.  (Reuse is the second driver of cost reduction.)

Is there something about this I’m missing? Medical Devices have a huge margin, why wouldn’t any medical device manufacturer want to maximize it as much as they could while improving their odds against failing an FDA audit due to product information development processes?

Leave a Comment

The Benefit Content Reuse Brings to Business

Recently, I was privileged to talk with a customer that implemented Arbortext in 1999: Greg Johnson at Medtronic. Greg heads up what his executives have told him is “the most successful project Medtronic had ever done.” We’ve already talked about how dynamic information delivery systems can really drive down translation costs. This time we’re talking about what reuse brings to the table.

It’s important to remember that this is the value that Medtronic has come to after 10 years of investment in the dynamic information delivery system. They continued to develop it over time and to focus on the things that drive those numbers down.

What drives it down?

According to Greg, it’s reuse. Their reuse is at 90%. Their writers are reusing written, translated, validated translations that they can prove are untouched and reused as is.  In their system, they can certify, based on the validity of the system, that they are using exactly the same content. They haven’t touched it; there are no changes: they haven’t created a revision that triggers other processes and other costs.

They’ve seen the translation savings numbers trend downward for for years. However, even if you’re investing more for the authoring side, you still see the win in each language. You still see it even if you’re only producing documentation in English. You still get the win because you’re still reusing modules rather than rewriting, validating, and producing large amounts of content.

At Medtronic, just on the authoring side, the data is equally impressive:

* Before: the first manual for a new model would see 95k new words.
* After: new models have 55K new words; all the rest of the content comes from reusable modules.

Writers and management collaborate to plan documentation for new models taking care to look ahead to other models, so they keep getting win after win for follow-on products.

Today, Medtronic has over 100 models, with variations on features and things that are all over in terms of price points.  Greg’s team can crank out the manuals for new models right and left. All the features have been netted out to all 100 models and beyond.

Over the last 7 years, they’ve been tracking what it would have cost if they hadn’t had a dynamic information delivery system. They’re keeping a running total. It’s a long process to see the return on the up front costs, but the return is utterly dependent on the scope of the problem.

Greg doesn’t sugar coat it. He admits that it’s a painful process, a long fight, but there are awesome returns. “Reuse is king,” he says, “and you should push for it; don’t start on authoring side thinking you will band-aid in localization later, understand up front, partner with localization partners to do this right.”

See previous article: Dynamic information delivery systems reduce translation costs

Leave a Comment

APP 9.1 M160 Released

The M160 release of APP 9.1 is now available for download from the support site.

The release notes say this:

  • Fixed internal memory corruption and possible pointer error when using a nested table prescan (SPR 1901310)
  • Fixed internal memory corruption and possible pointer error when using <?tbwref> within a nested table (SPR 1901310)
  • Fixed issue where either <?tpfitbr> or autoleading caused the last line of a para to overflow and then widows and orphans were being ignored. (SPR 1865826)
  • Fixed output of rule information causing errors when reloading.(SPR 1954941)
  • Fixed handling of <?tbwmode=2> tables splitting horizontally and then overflowing when nested.(SPR 1954968)
  • Fixed incorrect vertical justification of a stream caused by the presence of alignment in a different stream on the page. (SPR 1857460)
  • Fixed issue so accolades correctly ignore the value of <?tpxbrk>. (SPR 1907764)
  • Fixed crash in colour dialogue when colour name is longer than 40 characters. (SPR 1913425)
  • Fixed pointer error when using a footer within a table that is nested within a table that also contains a footer. (SPR 1936268)
  • Fixed cursor positioning in very wide edit bar. (SPR 1917906)
  • Fixed problems saving OpenType fonts to a bundle. (SPR 1919464)
  • Fixed problem with <?bk> on end of word at end of line. (SPR 1907456)
  • Fixed problem with multiple ligature table changes in a word at end of line. (SPR 1954907)

Leave a Comment

Dynamic information delivery systems reduce translation costs

Recently, I was privileged to talk with a customer that implemented Arbortext in 1999: Greg Johnson at Medtronic. Greg heads up what his executives have told him is “the most successful project Medtronic had ever done.”

Greg was responsible for bringing a dynamic information delivery system into Medtronic.  When you talk to him, he’ll say that “you don’t want to do how/what we did. It’s 10 yrs later. But I want to encourage you. There are vast savings and vast reductions in cycle time and vast improvements to do in this field, if you do it smart, build your vision, and go be passionate about it.”

He says that believing the stories is hard, but he’s the first to tell you not to be faint of heart. “There are a lot of people finding their own way and finding their own wins.” He wants more companies to join the conversation. “Spend a day, tour, spend time with management teams. See the exotic things [that other people have done]. They will encourage you along the way. Keep slogging ahead, and you can get there.”

Greg knows that talking with others can really informed the decisions you make.  He shared with me some of the amazing results they’ve seen the last 10 years.

Here are the trends they’re seeing:

  • increasing product complexity
  • increasing # languages
  • increasing volume of documentation
  • increasing product overlap
  • shorter product life cycle

They’ve seen these trends the last 10 years and he doesn’t see these trends changing. In the face of these trends, his group has shown dramatic changes and savings in a very visible project.

All the divisions at Medtronic use the same internal translation center based in the Netherlands. About 7 years ago, the director there hit on a way to collect and track cost data across all the projects that come through. In the last 7 hears, he has done it the same way every time. The data is broken down by business unit, then by content translated within a business unit. He’s got inside and outside real world data on what it costs, per page, to generate these results.

Medtronic is now publishing this as a trend line internally. The data is so staggeringly better within the dynamic information delivery system when they compare it to other BUs that are using traditional publishing tools.

Here are the stats.

The average cost per page to translate a 200 word page (including QA and everything):

- Other BUs: $47
- Their BU, groups not using the system: $38
- Their BU, using the system: $5

Over the last 7 years all the trends are downward but the 10:1 cost reduction is monumental. $47 can trend down, but $5 will trend down, and it’s a lot harder for $47 to catch $5.

This is the kind of cost savings and time-to-market driver that cuts across industries and geographies.  They’re global drivers.

Next: The benefits that reuse brings.

Leave a Comment

Podcast posted: Chris Western, tformat

The latest PubWright Podcast has been posted to here and on iTunes here.

This week’s podcast features Chris Western from tformat. tformat is a PTC partner focused on training and services for the Arbortext Advanced Print Publisher (APP) (formerly known as 3B2).  Chris was hired at Advent, the original developers of 3B2 as a writer to document the product and it’s usage. In his tenure, he not only developed the product documentation but training materials as well. Chris is a specialist in in training on APP (3B2)

Leave a Comment

Arbortext Bootcamps Starting Up

In a tough market, you need to stay ahead the pack. The best way to do that is to make sure your skills are in demand. One of the highest demanded skills in the publications arena is Arbortext. We are offering this one day session for you to learn what it takes to create DITA structured documents using the leading industry tool: Arbortext Editor.

As far as I know, no one who has experience with Arbortext is out of work today. Companies are looking far and wide for people with Arbortext in their skills toolbox. At least one southern California company is hiring as many as they can get their hands on.

But you’ve got to know the tool. You’ve got to know the technology. In this economy, they aren’t willing to train or let you learn on the job.

We’re in the business of Arbortext and we are dedicated to continuing to grow skills in the community. We have a pageful of community projects to which every one of us here at Single-Sourcing Solutions dedicates our time. We blog and we podcast in the hopes of getting a lot of that Arbortext tribal information out of the heads of the experts and into the hands of people learning the tools.

Our latest idea to help foster skill development is the: Arbortext Bootcamp.

For a nominal fee, we’re offering a one-day professional development seminar[1]: Arbortext and DITA.

Here’s the URL: http://single-sourcing.com/events/

Here are the quick and dirty details:

Location:
PTC
2665 N 1st Street, San Jose, CA 95134Date & Duration:
Two dates!: April 17, 2010 and September 18, 2010
Registration: 8:00 am, lecture 8:30 am – 4:00 pm

Cost:

  1. Seminar Only: $150.00
  2. Copy of the Software: $350.00 (60% discount!)
  3. Copy of JoAnn Hackos’ book: $54.00

Prerequisites: Basic understanding of XML or SGML

DITA and Arbortext

Registration is online


[1] This idea was inspired by the Professional Development Seminar series done by the San Francisco Bay Area Chapter of the ACM, of which Liz Fraley, our founder, has been a Council Member since 1999 and is a past Chair of this chapter and a Chair or Member of two other ACM chapters in the United States.

Leave a Comment

Green Your Product Information

Greening your product – what about your product information?

We see it all the time and I’m sure you do as well. Companies are on the move with initiatives to “green” their operations and their products. It’s not just the big fortune 500 companies either, the push for green is being driven—and even led—by the small to medium business (SMB) sector.

By now, almost every company has adopted a recycle program. Many implement telecommuting or ride sharing programs to reduce their carbon footprint. They are packaging products in containers that are made, at least in part, from post consumer recycled material. They are reexamining their raw materials to develop surfaces that provide less wind resistance, are more compact, are made from less hazardous materials.  They’re creating innovative designs that use less power or regenerate their own.  These eco-friendly practices are touching every part of the product development process. Just yesterday, I saw that Coca Cola is turning to bioplastics for their packaging of consumer goods and UPS is introducing carbon-neutral shipping.

But what about the product information development and delivery?

Your product information is your potential customer’s first glimpse of who you are. Product documentation can be a cost center or a revenue generator. It can improve your customer service and your speed to market which equals higher customer retention and increased sales.

And it’s an area where every company can make an immediate impact on green initiatives that often gets overlooked. Done right, it can even make your company more environmentally friendly.

Here are five steps to help you green your product information:

  1. Examine your product information’s “raw materials”. Create your product information in non-proprietary XML. Using XML will ensure that your product information is developed in a way to make it ready for leading edge technological delivery methods rather than the old print (“not green”) methods. Better still, the information will always be accessible and not locked away in old, unsupported, proprietary formats so there is no need to worry about keeping a legacy data system around.
  2. Move to 21st century  technology: Associativity.  Modern tools allow you to start the product information design earlier in the process of product design. You can rapidly respond to design changes and automate the incorporation of that information.  It gives you the edge in staying on top of changes that happen with the product from concept through to final release. We call this “associativity”. With associativity, when a design change happens, all of the corresponding product information is alerted for updates. You can eliminate the worry that everyone is “in the loop” when the inter-dependencies are tied together which, in turn, reduces waste. Use tools that allow for associatively associativity to all phases of development.
  3. Design outside of the print box. These days, there are so many advancements in electronic tools, you need to design product information that can be accessed and searched electronically. Hand held mobile electronic devices are taking the field by storm. These devices allow for even the most remote customer or field person to get the right information at the right time. Interactive Electronic Technical Manuals (IETM) or On-Line Help files are an excellent way for you to make certain your end users and customers get detailed up to date product information at their finger tips without ever having to hit the print button.
  4. Pictures are worth a thousand words. It’s true! Use of detailed technical illustrations can replace lengthy text and do a much better job of demonstrating a product for use or for service. It also bridges the language barrier and can drastically minimize the need for translating words and phrases. Better still, are illustrations that allow for hot spotting content.
  5. Use tools that work well out of the box and provide end to end solutions.I will never forget my first auto repair shop in high school. I had a great teacher who’s first words of wisdom he imparted to us was “use the right tool for the job!” Well, he more like shouted them at us as we eagerly attacked his car to “fix” it. How is this a “green” initiative? The wisdom of Mr. Ziegler’s advice is very true when you are looking at ways to build efficiencies and streamline for optimization. We see people trying to struggle with Frankensteining a solution together for information design and delivery, never taking into account the heavy drain on resources to get the different products to work together.

At Single-Sourcing Solutions, we help companies improve their design and delivery of product information. We stand behind the Arbortext suite of products because they are the only out of the box end to end solution that allows you to create information using XML and deliver the information to the end user in whatever format they require, seamlessly.

To date we have not had a customer come to us with the main business driver of “greening” the product information, but perhaps someday we will. For now, it’s an added bonus for the other main reasons people choose Arbortext.

Leave a Comment

Mathcad Engage Virtual User Conference

Register now for Mathcad Engage Virtual User Conference, the first online conference for the Mathcad community to be held on Tuesday, March 16th, 2010, from 1pm-5pm EST time and learn the latest news and future about Mathcad, the unique engineering calculations software.

Here are few highlights about the agenda:

Mathcad Vision and Product Roadmap - Add this Webcast to my Calendar
Mark A. Walker, Director Product Management, Mathcad, PTC
This session will focus on the vision of the Mathcad product. You’ll get to hear about the trends we’re seeing in the marketplace and how they are translated into the overall product strategy and roadmap for Mathcad.

Mathcad 15.0 and Prime 1.0 Preview Overview and Demo - Add this Webcast to my Calendar
Jakov Kucan, Director Software Development, Mathcad, PTC
This session will focus on two upcoming releases of Mathcad, and will include an in-depth look at the functionalities and capabilities of these specific new versions, as we move Mathcad into the next decade.

During this half day event you’ll be able to attend webcasts, chat with Mathcad product experts, network with your peers, download Mathcad resources and more. Make sure also to step by the exhibition hall and visit PTC and partner booths to win great prizes!

For more details, visit http://events.unisfair.com/rt/ptc2010~mathcad.

Leave a Comment

PTC Announces Discontinued Linux/Solaris Support

As of the next major release of Arbortext Publishing Engine, the 6.0 release, PTC is planning to support the Windows platform only.

PTC Will Discontinue Arbortext Publishing Engine Support on the Linux and Solaris Operating Systems with the Release of Arbortext Publishing Engine 6.­0

Description

Having reviewed customer product downloads and technical support submissions over the past four years, PTC has seen low adoption of Arbortext Publishing Engine running on non-Windows platforms. As a result, PTC is planning to support Windows only with the 6.0 release of Arbortext Publishing Engine. In addition, PTC has no plans to introduce support for Solaris on x86 platforms.

Arbortext Publishing Engine 5.4, including all of its maintenance releases, will continue to be supported on Windows, Solaris, and Linux platforms per the Arbortext 5.4 Software Compatibility Matrix.

Resolution

We recognize that discontinuing support for Arbortext Publishing Engine on the Linux and Solaris platforms may be disruptive to some of our customers who plan to upgrade to future releases. Therefore, PTC is committed to providing an acceptable migration path to all Arbortext Publishing Engine customers currently running on the Linux or Solaris platform.

Additional Information

For more detailed information, see the formal announcement letter that PTC sent to customers regarding platform support for Arbortext Publishing Engine 6.0.

For further information or assistance planning your migration, please contact us.

Leave a Comment