Rational® Rose® Release Notes

Version 2003.06.00

UNIX/Linux


© 2003 Rational Software Corporation. All Rights Reserved.

Any reproduction or distribution of this work is expressly prohibited without the prior written consent of Rational.

Legal Notices Information


Scope

These Rational Rose release notes provide:

Updated versions of the release notes will periodically be posted on the World Wide Web. Please check the Rational Web site at http://www.rational.com/support/documentation/release/ to ensure that you are using the latest version of this document.

When you are ready to install Rational Rose, be sure to check the Web for the latest available downloads:

  1. From http://www.rational.com, click Support.
  2. Go to the Download Center and navigate to Rational Rose Upgrades and Patches.

Also remember to have the Rational Rose Installation Guide available to provide all the information you need to complete your installation.

Product Definition

Rational Rose helps customers design and develop software in an Internet-connected, global economy. As the Internet has grown to dominate both business and technology decisions, all organizations face a software development paradox. Traditionally, development organizations could choose between higher software quality or reduced time-to-market. In the new Internet economy, organizations have no choice: they must deliver higher quality software in less time. Rational Rose helps companies overcome the software paradox by unifying the communities that develop software with a common visual language that accelerates the creation of flexible applications with robust, resilient architectures.

Contents

What's New in This Release
Hardware/Software Information
Hardware Requirements
Software Requirements
General Install Information

Getting Started 
Core Rose and Rose Extensibility Interface
Rose C++ Add-In's and (ANSI C++, Rose C++)
Rose Ada Add-In
Rose Apex Add-In (Note:  Not Available on Linux)
Rose ClearCase  Add-In
Rose CORBA Add-In
Rose DDL Add-In
Rose Framework Add-In
Rose J Add-In
Rose Model Integrator Add-In
Rose Web Publisher Add-In
Rose XML DTD Add-In
Contacting Rational Technical Support

What's New in This Release

This release of Rational Rose includes these new features and enhancements:

IMPORTANT:  Once the CORBA Model is converted by Rose 2003, it is no longer compatible with previous versions of Rose.  It is important, upon upgrading to Rose 2003, no users perform work on this model in a previous version of Rose as this can cause model corruption.

 

Hardware/Software Information

System and Software Requirements

This section describes the system and software requirements for installing and running Rational Rose and its add-ins.

Hardware Requirements and Configurations

Table  1 contains the hardware requirements for installation and use of this product. Note that the recommended amount of memory is only the suggested minimum amount. Additional memory may improve performance. Your memory requirements will also be larger if you are constructing larger models.

Table 1 Hardware Requirements 

Hardware Item

Recommendation

For

Memory

512 + (32 * N) MB of RAM (where N is the number of users running Rose simultaneously on a given workstation)

Use

Server

A midrange UNIX/Linux server or client UNIX/Linux workstation (Sun servers: Sparc Station 20 and above)

Use

Client

An AIX (verision 4.3.2 or 4.3.3), Solaris, HP-UX, SGI IRIX (version 6.5.5 or 6.5.9), or Tru64 Unix (version 4.0f) workstation running the required operating system level as described in this section or in the following table under operating system software requirements. The UNIX/Linux workstation must be capable of displaying X Windows
or
a PC running eXceed version 6.1or higher to display X windows
or
for Rose on Linux x86, a PC running with Xfree and Xi Graphics X servers on Linux. It is recommended to use more than 256 colors in your graphics card/monitor configuration.

Use

Disk space

720 MB for loading release  + 1-3 MB for each Rose model

Installation, Use

CD-ROM

Mounted as a UNIX/Linux file system

Installation

Display

Color display

Use

Your hardware can be configured in various ways. For example:

This chapter describes the requirements for a single-user desktop workstation that you will use either stand-alone or with a file server that provides no support other than file service. The desktop workstation will run all Rose processes.

The alternative is to run all Rose processes on a remote compute server, redirecting the display to your local workstation or X-terminal. If the compute server is shared by several Rose users, it will need to be more powerful than a desktop workstation that supports only one Rose user.

Software Requirements

Table  2 contains the software requirements for installation and use of this product. Note that this is also only a suggested amount of swap space. Your requirements may be larger if you expect to construct very large models. If all of your models are small, you may need less than the amount shown here.

Table 2 Software Requirements

Software Item

Requirement

For

Operating system1


Solaris 2.6 (Kernel revision (Generic 105181-23) July 2000 or later), 7 (Kernel revision Generic October 1998 or later), 8 (Kernel revision Generic February 2000 or  later) and Solaris 9
HP-UX2 11.00, and 11.11 (11.i version 1.0 on PA-RISC platform)
 
Linux x86 Red Hat 6.2, 7.0, 7.1 and 7.2

Use

C++ Compiler #include files

Solaris SC 5.0
 

HP-UX 11.00:
     HP aC++B3910B A.03.31
     HP aC++B3910B X.03.27 Language Support Library


 
Linux x86 g++ 2.95.2

Analyzer

JDK, JFC, and J2EE

JDK 1.1.6
JFC 1.1 (swing classes for 1.1)
JDK 1.2 (based on 1.2.1)
J2SE 1.2 (based on 1.2.2)
J2SE 1.3
J2EE 1.2
or any of the major Java IDEs

Java 1.3.x required for Java Pattern feature.

 

Java

Rose J supports the following Java IDE's. Use the JDK appropriate to your IDE.3
- Forte for Java Internet Edition & 3.0(Solaris & Linux only)
- Forte for Java Community Edition 3.0(Solaris & Linux only)
Sun One Studio 3 and 4 Community and Enterprise Edition
- JBuilder 4.0, 5.0, 6.0, 7.0 and 8.0 Professional Edition (Solaris & Linux only)
- JBuilder 4.0, 5.0, 6.0, 7.0 and 8.0 Foundation Edition (Solaris & Linux only)

 

Port map daemon

Must be running

Installation, Use

TCP/IP

Must be running

Installation, Use

Host names

Must be configured

Installation, Use

Page/Swap space

512 + (50 * N) MB

Use

X Window System

Native X11R5 or X11R6 (except HP 10.20)
X news on Sun with OpenWindows 3

PC X server eXceed version 6.1 or higher
In addition, when running Rose for Linux x86, XFree and Xi Graphics X servers on Linux

Use

Window Manager

MWM (Motif Window Manager) version 1.2
vuewm on HP-UX
4dwm on SGI IRIX
dtwm (CDE (Desk Top) version 1.0)
olwm (Open Look Window Manager) on SUN is supported, but icons of Rose for UNIX/Linux may not integrate well with other icons on the screen
In addition to those listed above, Rose for Linux x86 will run with the Gnome desktop environment with the Enlightenment window manager and the KDE desktop environment with the KWM window manager.  All windows managers which comply with the ICCCM X protocol are supported.  It is recommended that you use more than 256 colors in your graphics card/monitor configuration.

The following Window Managers are not supported:

olvwm (olwm with virtual screens) Rose for UNIX/Linux will not remain on original virtual desktop, but rather will follow when other desktops selected.
twm (shipped with X11)
tvtwm (twm with virtual screens)
fwm
gwm
fvwm

Use

 

1 All platforms may not be available at this time. Contact technical support for availability information.

2 HP9000 Series 700.

3 See the Rose_IDE_Link_README file in the release for Rose UNIX/Linux IDE Link Integration setup information, prior to using the IDE Link integration.

General Install Information

As a precaution, always make back ups of any Rose model files that you will be accessing with this software.

Note: Rose 98i, 2000e, 2001,2001a, and 2002 for UNIX licenses are valid for this release. You will not need to utilize the startup licenses or obtain new permanent licenses if you are already utilizing Rose 98i, 2000e, 2001, or 2001a for UNIX licenses.

Pre-Installation Information

You may want to back up your Registry prior to running the installation program. Specifically, we recommend you make backups of the following files:

Note: There is no need to save .pty files that ship with Rose since these will be re-installed.

Note: There is no need to save .ebs or .ebx files that ship with Rose, since these will be re-installed.

Follow these steps to back up path maps:

  1. Run regedit and navigate to HKEY_CURRENT_USER\Software\Rational Software\Rose\Virtual Path Map
  2. Click Registry > Export Registry File...

Follow these steps to restore path maps:

  1. Run regedit and navigate to HKEY_CURRENT_USER\Software\Rational Software\Rose\Virtual Path Map
  2. Click Registry > Import Registry File... and import the file you exported

 

Hardware/Software Patch Requirements

Please see "Operating System Runtime and/or Patch Requirements" in the Installation Guide for system patch requirements.

When installing and running Rose for UNIX/Linux for the first time, you will be alerted if hardware or software patches are necessary.  If running on a Solaris or HP-UX server, Rose for UNIX/Linux will attempt to automatically determine if patches are necessary on your server and/or Solaris display, and will advise accordingly.

You may also run the following anytime to determine if your computer requires operating system patches to run Rose for UNIX/Linux.

cd rational_dir/releases/rose.I.J.K/bin

./check_rose_reqs sol2_server rose

Check that the DISPLAY environment variable is set to your display, and then:

cd rational_dir/releases/rose.I.J.K/bin

./check_rose_reqs sol2_client rose

cd rational_dir/releases/rose.I.J.K/bin

./check_rose_reqs hp_runtime rose

 

Configuring Window Manager So Pop-Up Windows Will Remain On Top of their Parent Windows

Configure your Window Manager such that pop-up windows will remain on top of their parent windows, in compliance with the Windows API. Under X11, Window Managers may implement different strategies for maintaining the Z-order of pop-up windows.

In order to keep pop-ups on top, if possible:

There is no specific configuration to keep pop-up (transient) windows on top. Pop-up windows are kept on top by default.

Depending on your system's configuration, the default behavior of dtwm may not keep pop-up (transient) windows on top of their owner.

For example, it may be that the window stacking behavior for dialogs is specific, such as "Dtwm*secondariesOnTop = False". In such a case, here are some possible solutions for keeping the pop-ups on top:

a Change Dtwm*secondariesOnTop to True in the system-wide dtwm configuration file. On Solaris, the dtwm configuration file is located at /usr/dt/app-defaults/C/Dtwm. On platforms other than Solaris, the path to the dtwm configuration file may be different.

b Add

Dtwm*secondariesOnTop: True

to your .Xdefaults file.

c Be more specific with the program name, and add, for example:

Dtwm*ssexp*secondariesOnTop: True

to your .Xdefaults file.
Note: The .Xdefaults file needs to be reloaded with:
xrdb ~/.Xdefaults

Add the following line to your .Xdefaults file:

OpenWindows.KeepTransientsAbove: True
 

Running Multi-threaded GUI Applications on Multi-processor Solaris 2.6 Computers

If Rose for UNIX/Linux hangs when running on a multi-processor Solaris 2.6 computer, verify that the Solaris 2.6 server and display (if applicable) includes the Sun Solaris XSun Patch 105633-32 or higher. This patch includes a fix for Sun Defect 4233280, Sun SO#3918581 (multi-threaded applications crash/hang on 2.6 multiprocessor computers). To check for this patch, run

showrev -p | grep 105633

on both the server running Rose and the display (if display Solaris 2.6).

When installing or running the application for the first time, Rose will advise if this patch is installed or required.

 

Displaying on Ultrabook, Using PGX Graphics Card

A CDE crash may occur when displaying Rose for UNIX/Linux on a Ultrabook using a PGX Graphics Card, if SUN Solaris patch 105362-26 is installed.

If using a PGX Graphics Card, we recommend that SUN Solaris patch 105362-20 be installed as this is the latest version tested and determined to be compatible with this release.

If you encounter the CDE crash, uninstall patch 105362-26 and if possible install "105362-20". If SUN Solaris patch "105362-20" is not installed, the following may occur:

If you uninstall patch 105362-26 and encounter any of the issues described above, contact Rational Technical Support if patch 105362-20 is not available.

 

Running Rose for UNIX/Linux on HP-UX 11.00 with HP-UX OS Patch PHSS_21493

Rose for UNIX/Linux requires HP-UX OS Patch PHSS_17327 (X/Motif 2.1 Dev Kit Mar99 Periodic Patch). This Patch requires PHSS_17326 (X/Motif2.1 Runtime Mar99 Periodic Patch). PHSS_17326 has been superseded by HP-UX OS Patch PHSS_23823.

It is important to use PHSS_23823 as Rose for UNIX/Linux will not start (display) if an earlier version of this patch is installed (i.e. PHSS_21493).

If it is necessary to have a Motif Xlib runtime patch prior to PHSS_23823 and you encounter this issue, refer to the following instructions to workaround this problem:

  1. Make sure your Rose process is no longer running. (Use ps to determine if the process is running, and "kill -TERM [pid]" if it is necessary to kill the process.)
  2. As the owner of these files,

cd rational_dir/releases/rose.I.J.K/install/patches/hppa_hpux/hp11

  1. cp libX11.3 rational_dir/releases/rose.I.J.K/hppa_hpux/hp11/lib/.
  2. chmod 555 rational_dir/releases/rose.I.J.K/hppa_hpux/hp11/lib/libX11.3
  3. Run rose_cleanup.
  4. Run rose.

 

MainWin Runtime Components

When Rose for UNIX/Linux runs for the first time, an $MWUSER_DIRECTORY directory is created which includes MainWin files and directories. Rose is created utilizing MainWin (developed by Mainsoft) and requires specific MainWin components to operate correctly. $MWUSER_DIRECTORY may be set to serve as the windows directory. For example, $MWUSER_DIRECTORY may be set to $HOME/.windows. If $MWUSER_DIRECTORY is not set, the default location will be $HOME/windows.

Within the $MWUSER_DIRECTORY directory, you will find the following type of files and directories:

mwfc-xxxx (where xxxx is dependent on the specific display used)

This file can be removed if it is suspected of interfering with font operations. If removed, it will be regenerated the next time Rose is invoked.

When Rose for UNIX/Linux is invoked by the user on the same X server, the application can quickly look up the font cache file and select the closest X font available.

The registry directory also includes rose_reg_check, an ascii file which includes the version of Rose for UNIX/Linux and it's associated add-ins. This file is created the first time a user runs Rose for UNIX/Linux.

A specific registry file may be utilized by setting the following environment variable:

setenv USE_MWREGISTRY /path/myregistry

During a Rose session, Rose for UNIX/Linux *.ini files may also be created in the user's "windows" directory. These files include Add-In specific settings.

Rational Rose for UNIX/Linux includes "mw" directory

Rational uses MainWin (by Mainsoft) to rehost Rose for UNIX/Linux platforms. Specific MainWin runtime components are included in Rose. Below is a description of the type of MainWin files included in Rose for UNIX/Linux under the rational_dir/rel*/rose*/mw directory.

 

Installing and Utilizing Fonts Compatible on Both PC and UNIX/Linux Displays

Rose for UNIX/Linux now includes the following release fonts which are compatible and may be used on both the PC and UNIX/Linux displays:

As it now is possible to display these same fonts on UNIX/Linux and the PC - models, etc. created on the PC (using these fonts) should display easily and accurately in Rose for UNIX/Linux on PC and UNIX/Linux displays. Furthermore, utilization of these fonts will provide the following additional enhancements:

Font files (in *.bdf - binary distributable files), are now included in the rational_dir/releases/rose.I.J.K/mw/fonts directory of your release. This directory also includes the following fonts* files:

A fontserver.cfg file is included in the rational_dir/releases/rose.I.J.K/mw directory. This file is used when starting the font server to provide the new fonts to the Rose application.

Making The Release Fonts Available on Your $DISPLAY

Prior to running Rose for UNIX/Linux for the first time, run rational_dir/releases/rose.I.J.K/bin/rose_cleanup. Upon starting Rose for UNIX/Linux, you will notice some new messages in relation to the availability of the new fonts. Rose will attempt to determine if the new fonts are available for your $DISPLAY, by running the new Rose for UNIX/Linux rose_fonts utility.

UNIX/Linux DISPLAY with visibility to Rose fonts

rose_fonts will make the fonts available to your DISPLAY by including the path to rational_dir/releases/rose.I.J.K/mw/fonts/ in your DISPLAY's font path.

DISPLAY other than UNIX/Linux (i.e. PC using eXceed) or UNIX/Linux DISPLAY without visibility to Rose fonts

In this case, fonts must be made available by using a font server and including the font server in the DISPLAY's font path.

rose_fonts will determine if a font server is providing access to the Rose fonts, as described below:

If Necessary To Configure Existing Font Server

If a font server is running on the Rose server and it is not already providing access to the Rose fonts, contact your System Administrator to perform this setup or refer to the man pages for xfs(1). The following advises how to configure an existing font server on SUN Solaris.

Note: Configuring an existing font server to provide access to the Rose fonts may produce less than optimal font results, based on the font paths included in the fontserver.cfg's catalogue setting. This is due to a potential Rose 2000e for UNIX/Linux font mapping issue that is currently under investigation. If you elect to continue with the following instructions, and you encounter poor font results please notify Rational Technical Support and remove the Rose font support from your fontserver.cfg file.

If you elect not to add the Rose font support (as described next) or elect to remove the Rose font support from an existing font server Rose will continue to operate correctly, however the font enhancements listed in Installing and Utilizing Fonts Compatible on Both PC and UNIX/Linux Displays will not be available and you may encounter the following defects:

Defect 10386
Defect 10387

Adding Rose fonts to Existing Font Server on SUN Solaris

To add Rose font support to an existing font server on SUN (it may be necessary to su to root to perform these actions):

A catalogue path may appear as:

/usr/openwin/lib/X11/fonts/F3bitmaps/,/usr/openwin/lib/X11/fonts/Type1/

Add the Rose font path, by prepending the path to the catalogue path.

For example:

rational_dir/releases/rose.I.J.K/mw/fonts/,/usr/openwin/lib/X11/fonts/F3bitmaps/,...

Do not include spaces. Each path is separated by a colon.

xset +fp tcp/<fontserver>:7100

and then

xset fp rehash

fslsfonts -server <fontserver>:7100 | grep -i mainwin

The font server must be the current host for it to restart the font server ("fs" or "xfs"). In many cases these x* utilities are located in /usr/openwin/bin.

Rose (upon starting) should indicate that the Rose fonts are now available.

Upon performing this setup, it will be important to update the fontserver.cfg file if Rose is uninstalled or moved to a different location (path changes).

Starting a Font Server

If a font server is not running (on the server running Rose), rose_fonts will start a font server if available on your system, if necessary. This is necessary if the DISPLAY is not a UNIX/Linux display, or if the display does not have direct visibility to the fonts provided in the Rose release.

X Font Commands Utilized by rose_fonts

The following commands are typically located in one of the following directories: /usr/openwin/bin, /usr/bin/X11, /usr/X11R6/bin, /usr/openwin/lib/X11, or /usr/openwin/include/X11.

To Start a Font Server

xfs -config rational_dir/releases/rose.I.J.K/mw/fontserver.cfg -port 7100

To Set the Font Path

xset +fp rational_dir/releases/rose.I.J.K/mw/fonts/ (direct path to fonts in release)

xset +fp tcp/$host:7100 (font server path)

To Determine if Rose Fonts Available

xlsfonts | grep -i mainwin

xlsfonts may hang if a font path includes a path to a font server which is not running. rose_fonts will not let xlsfonts run for longer than a specified period of time (typically 30 seconds), to safeguard against this event. If an xlsfonts hang occurs, rose_fonts will provide status with recommendations.

rose_fonts Overview

In summary, rose_fonts will provide the Rose fonts to your DISPLAY by either setting the font path to point to the fonts in the release (UNIX/Linux display with visibility to the fonts), or by setting the font path to a running font server if the font server is providing access to the Rose fonts. rose_fonts will use "xset" to set the font path, "xfs" to start a font server (if necessary) and "xlsfonts" to determine if the Rose fonts are available after the setup has been performed. If a font server is already running and does not already provide support for the Rose fonts, manual setup is necessary (i.e. see Adding Rose fonts to Existing Font Server on SUN Solaris ) to complete the Rose font setup. In this case, manual set up is required as it is often necessary to su to root to perform this action. rose_fonts will provide messages describing the current status each time Rose is started.

Contact Rational Technical Support if you should have any questions or encounter any difficulties accessing or utilizing the new Rose fonts.

If Rose Fonts Not Available

There may be occasions when the Rose fonts will not be available. rose_fonts will alert you if, when starting Rose, if the Rose fonts are not available. If this occurs, Rose will continue operate correctly, however the font enhancements listed in Installing and Utilizing Fonts Compatible on Both PC and UNIX/Linux Displays will not be available and you may encounter the following defects:

Defect 10386
Defect 10387

To Eliminate Output from "rose_fonts" When Running Rose

Each time that you start Rose, rose_fonts determines whether the Rose Fonts are available, attempting to make the fonts available when necessary. Each time Rose is started, rose_fonts displays messages advising current Rose Font status. In order to eliminate output from rose_fonts, set the following environment variable prior to running Rose.

setenv ROSE_NO_FONT_MSG 1

Setting this environment variable will allow rose_fonts to run, but will refrain from printing Rose Font status messages

 

Rose Documentation

The goal of all Rose technical documentation is to provide the most appropriate and usable product information possible so that our users can benefit fully from all of the features of Rose and its add-ins. To that end, Rose and its add-ins provide a complete, integrated online Help system, along with a set of supplemental printed manuals.

Rational Rose printed documentation has not been updated for this release. Please note that you can still order the previous version of printed documentation, most of which remains valid for this release. It is recommended that you are aware of any important changes to functionality or behavior.

Note   Printed documentation not provided with Beta Release.

Online and Printed Documentation

You may have noticed that the printed documentation set has changed recently. Several printed manuals have been eliminated because their content was exactly the same as that of the online Help. On the other hand, several newer books that provide important background or supplemental information are now available. In future releases, we hope to provide more of these value-added publications, while continuing to update our comprehensive online Help systems.

To print the complete online Help for Rose or any of its add-ins, you can easily do so from the Contents tab of the Help system:

  1. On the Rose Help menu, click Contents and Index.
  2. On the Contents tab, click the help book that contains the help you want to print.
    (For example, to choose the entire help for Rational Rose, click the Rational Rose help book; to choose the entire help for Rose J, click the book called Rose J .)
  3. Click Print.

All of the Help topics contained in the selected book (including those that are contained in sub-books of the selected Help book) will print in the order in which they appear in the table of contents.

Of course, you can still print single topics whenever you need to do so.

In addition to the Release Notes, the following manuals constitute the printed documentation available for Rose and its add-ins:

These manuals are also available in Portable Document Format (PDF) on the documentation CD that comes with all editions of Rational Rose. You can also download the PDF files from the Rational Web site, http://www.rational.com .

Getting Started

Consider the following guidelines as you plan to install or remove this version of Rational Rose.

Rose Add-in Guidelines

Core Rose and Rose Extensibility Interface

Core Rose Features and Enhancements

This release of Rational Rose includes these new features and enhancements:

Enhanced Pattern Content 

Users will have the ability to utilize Rose J Gang Of Four (GOF) patterns, as before. In addition, users may now access pattern content for additional languages - as described below. The user may apply a pattern through the context menu of a class or interface element defined in the tree browser or in the class diagram.

These GOF patterns are applied the same way you currently apply the Rose J GOF patterns, i.e.:

The participant Observer will show that it is bound to an existing model element (asterisk missing on its line).

All the other participants will be bound by default with classes named by adding the starting class qualified name to the (indexed) participant name. The asterisk at the right end of the participant row shows visually that it is not bound to an existing element in the model. If applied with these default names, the application will add these new elements in the model.

Select an existing element in the model for the remaining two SimpleParticipants (Subject and Client). If the type of the selected element does not match with the one declared in the XML file, the application will display a warning message.  You may select a new element with the right type or ignore the message. 

//Source file: C:\Test\ObserverApplied\ConcreteObserver1.java

package ObserverApplied;

public class ConcreteObserver1 implements Observer
{
private Subject subject;

/**
* @roseuid 3D7E719602A3
public ConcreteObserver1()
{

}

/**
* @roseuid 3D7E6FE90170
*/
public void update()
{
observerState = subject.getState();
}
}

Design Patterns Dialog Box Reference

The Design Patterns dialog box allows you to specify the participants for the selected design pattern. These are classes that will be added to your model, or classes that already exist in your model. The layout of the dialog box changes from design pattern to design pattern, displaying the participants of the selected design pattern only. The title of the dialog box matches the name of the design pattern you are applying.

Participants - The set of classes that make up this design pattern. Each class plays a role of a particular participant type. Each participant type labels a group of classes. Some groups contain only one class, others contain more. Initially, all groups contain names automatically generated by Rose. You can apply the design pattern using these names, and new classes with these names will be added to your model; or you can supply new ones. You can also substitute them with the names of classes that already exist in your model. If you do, Rose will not create new classes for you, but will use these classes instead.

Class Browser - Opens the Class Browser, from which you can select an existing class to use as a participant. This element appears when you double-click a participant class to edit its name. It is a gray button with three dots (an ellipsis).

Description - Displays design pattern information for the selected pattern. This includes an explanation of the kind of problem the design pattern solves, a brief overview of how it addresses the problem, descriptions of the participants that make up the design pattern, and a class diagram showing the pattern's structure.

Cancel - Discontinues the design pattern application process, and exits the Design Patterns dialog box.

The following elements appear in participant tables:

Add Participant Class - Adds a class to the selected participant table. It is a gray button with a small yellow starburst in the top left corner of a square.

Remove Participant Class - Removes the selected class from the participant table. It is a gray button with a red X.

Ability to Change Application Settings via new Visual MainWin Control Panel

Rose now includes a Control Panel, which will allow you to configure the following system settings:

Changes to the Display and Internet Options applets are stored in the current user portion of the registry. Changes to the Printers and Regional Settings are stored in either the current user and machine settings portions of the registry, depending on the parameters affected. If you need more details about where exactly specific parameters are stored, contact Rational Technical Support. Changes to the Date/Time affect the host computer directly, and are not stored in the registry.

To Run the Visual MainWin Control Panel
  1. cd rational_dir/releases/rose.I.J.K.bin
  2. Run "mwcontrol"

Setting the application display

Use the Display applet to configure the display appearance of Rose. Note that it does not affect your Unix desktop.

When you make changes using the Display applet, the changes only affect Rose sessions that you open after you have saved the Display changes. Rose sessions that were running when you changed the Display must be restarted for your changes to take effect.

Setting Internet options

Use the Internet Options applet to set MSHTML properties in applications that use MSHTML.

When you make changes using the Internet Options applet, applications running on the same machine are affected as soon as you save the changes. Applications running on other machines must be restarted for the changes to take effect.

Setting up printers

The Printers applet allows you to map a print request to a proper print command on your Unix host.

The Printers applet includes a default generic postscript printer command mapping that meets most printing needs. If you need to add other printer command mappings, the applet includes an Add Printer wizard, as described below.

Changes that you make using the Printers applet affect your Rose session running on the same machine as soon as you save the changes.

To add a printer using the Add Printer wizard

  1. Launch the Visual MainWin Control Panel:
  1. Double-click Printers. The Printers applet opens.
  2. Double-click Add New Printer in the Printers applet. The Add New Printer wizard starts.
  3. Click Next.
  4. Specify the Unix printer to which you want to print. A list of the printers defined on the Unix host appears at the bottom of the wizard. If the printer you want to add is in the list, select it. To add a printer that does not appear in the list, type the Unix name of the printer in the Unix printer text box.

Note:  The list of printers is extracted from the /etc/printcap file, which contains a list of all printers on the network to which your Unix host has access. The printcap file is used on all Unix platforms as the central location for specifying printers. It is configured and maintained by the system administrator.

  1. Click Next.
  2. The default print command for the selected printer appears in the Print command text box. Usually, the default command is the one you should use. You should not modify the command unless your system administrator instructs you to do so.
  3. Click Next.
  4. The Printer Name is used by the application when displaying available printers in the Print dialog. You may modify the default name if you wish.
  5. Click Next.
  6. Verify the information you specified in the Add Printer wizard is correct. If you are satisfied with the settings, click Finish. Otherwise, click Back to change the settings.  The printer you added now appears in the list of printers and will be available when printing from Rose (upon restarting Rose).

Setting date and time

You can use it to set your host computer's date and time, but you must have root privileges. If you have root privileges, changes that you make using the Date/Time applet take effect immediately on the host computer.


Ability to Easily Change Default Language

You may now change the default language, by right clicking on the bottom Rose window pane (which, currently displays the current default language).  A context menu will appear, with all language options.  Apply the new default language, by selecting one of the options presented in the context menu.

Core Rose and Extensibility Defects Fixed in This Release                         

Defect

Description

rose00085082

Problems experienced with copying and pasting in Sequence Diagrams.

RATLC00018205

Performance decline in Rose 2002, possibly related to presence of different model elements with the same name.

RATLC00040910

Dependency lines are no longer connected to the element's node after model reload.

RATLC00041364

Rose Printing, "Fit to Page" condenses diagram (incorrectly) to fit in upper left corner.

RATLC00047429

Unresolved adornments in the Activity Diagram may occur when manipulating an object which is inside a swimlane.

RATLC00047430

Sequence Diagrams grow dynamically when scrolling and/or when refreshed.

RATLC00052915

Unable to unload a *.cat file if there is no name to the swimlane.

RATLC00053008

Rose: model with linked files performances decrease by 250%.

RATLC 00053326

Activities resize when switching between diagrams.

RATLC 00054082

Model takes about 1.5 to 2 hours to load.

RATLC00054300

Sequence Diagram objects may move to the bottom of the diagram. This may occur when manipulating objects in the Class Diagram, and upon closing and opening Rose.

RATLC00054224

Printing layout does not retain.

RATLC00055021

Long lifelines appear on the Sequence Diagrams.

RATLC00055406

Deleting an object in Sequence Diagram may cause Rose to crash.

RATLC00211570

Role names on associations move when moving classes around or modifying the routing of an association. Workaround: The 'jump' behavior can be avoided by placing the role in the center of the line of association.

RATLC00212549

rose_exe can consume significant amount of CPU cycles.

RATLC00212638

Running a specific script from Rose, would cause Rose to crash.  This was due to the diagrams being opened by the script not being closed (only hidden), thereby causing a loss of resources.

RATLC00212708

Print Preview can cause Rose to hang.

RATLC00213086

Containment property (role) documentation changes not updated in online Help.
The possible values for the collectionValid values should be listed as:
* Unspecified = 0
* ByValue = 1
* ByReference = 2

RATLC00213098

Circular Object Link relationship can cause Rose to crash.

RATLC00213105

Rose crash may occur upon trying to correct a corrupted association to class (from the association dialog box ("Detail Tab -> Link element" field)).

RATLC00213136

Saved Sequence Diagram not displayed correctly – actors repositioning lower upon redisplaying the diagram.

RATLC00213238

Messages on Sequence Diagrams can be lost, when moving and manipulating messages on the diagram.

RATLC00213289

Crash may occur in Sequence Diagram upon selected nested more menu to select message.

RATLC00213295

Persistency is not shown in Rose, after reloading model.

RATLC00213310

Diagram reverts back to the 'original' diagram after having restructured it.

RATLC00213350

Rose may lose attribute or operation documentation after performing a copy and paste.

RATLC00213424

Invalid 'Unresolved Relation' warning messages may appear, as Rose is unable to resolve the transitions because they are in read-only controlled units.

RATLC00213447

Rose Online Help "SCRIPT_PATH"  information updated.

RATLC00213473

Documentation of Collection.Count corrected in Online Help.

RATLC 213484, 227924

Problems displaying original object stereotype, after performing copy and paste in Sequence Diagram.

RATLC00213497

When viewing attribute types, long qualified names may cause dialog to grow too long causing scroll bars to disappear.

RATLC00213501

When opening Rose (indicating a read-only model name on the command line) or after loading a read-only model file and then attempting to activate a new Add-In (that has an associated *.pty file) from the Add-In Manger, or when attempting to open a model via the ClearCase Explorer errors will be displayed indicating the model is read-only.

RATLC00214043

Crash occurs when closing multiple diagram windows using upper right hand corner X button.

RATLC00227839

Performing copy and paste of a sequence diagram may cause Rose to crash.

RATLC00227848

Slow model loading since moving from 2000e to 2002.

RATLC00227853

Sequence Diagrams dynamically grow too large to effectively access.

RATLC00229126

Printing and Web Publishing stereotypes for attributes and operations may be printed / displayed as black squares.

RATLC00231652

Absolute PATH is used for files in nested activities.

RATLC00231654

Rose may crash, after performing copy and paste in Use Case.

RATLC00238622

Application runs out of font handles.

RATLC00238626

Divide by zero crash when calculating edit control sizes based on font line height.  Crash may occur when loading *.cat file.

RATLC00238631

File Menu disappears after registering an out of proc server.

RATLC00238634

Modal dialog (refresh model) may disappear (Rose appears to hang).

RATLC00239944

Memory issue could cause crash when Web Publishing a large model.

RATLC00365249

Creating an EJB, can cause Rose to crash.

RATLC00366374

Unresolved (M) icons may occur when class diagram associations span controlled units.

Workarounds:

1.  Do a shallow delete (the DEL key) of the related class and then re-add the class to the diagram (i.e. by drag and drop) which will bring in the correct association; or

2.   Do a shallow delete (the DEL key) of the resolved association and then do a Query>Filter Relationships> OK.  This will re-add the correct association between the related classes.

RATLC00370128

Successive saves and reloads cause objects and messages in Sequence Diagram to reposition incorrectly upwards.

RATLC00444103

Successive saves and reloads causes note anchors to incorrectly shift in Sequence Diagrams.

Known Core Rose and Extensibility Defects

Defect

Description

rose0001859

Fonts change when sharing units with team members using different default fonts. Default font settings are currently stored with the model, and not with the .cat files. Items will only store font settings in a .cat file if the font is different from the default. As a result, text for model elements in units will be formatted, by default, according to the settings of the model. If one team member formats diagrams relying on a specific default color and font, that formatting will not be rendered for other team members with different default settings. Workaround: Explicitly format text using a font that is different than the default setting.

rose0003057

If you change the font size (through Tools > Options > Diagramtab) of a model element that is already on a diagram, the model element may not correctly resize. This happens frequently on activity and sequence diagrams. Workaround - You can clean up the diagram using the Edit > Refresh command.

rose0003093

It is not possible to drag the "History" icon from the browser to the diagram.

rose0003728

CDE window menu options do not appear when clicking in the top left hand corner menu of Rose. Workaround: Minimize Rose and right click on the icon. CDE options, such as "Occupy Workspace" will then appear.

rose0003861

Scroll bar in Language Properties dialog box may disappear. Workaround: If this occurs, clicking in the scroll bar area will cause the scroll bar to reappear.

rose0003877

Having a <return> character in the language properties Tools > Options "language tab" property fields can create a code generation problem. In addition, it is difficult to determine if a <return> character exists in language properties as it does not display.

rose0006397

CDE crash and technicolor affect when running on RDI Ultrabook if PGX graphics patch 105362-20 or higher installed. (May occur with previous PGX patches as well.)

rose0006924

REI: RoseModel.FindItems() does not find attributes or operations.

rose0007156

Encapsulated postscript file created by Rose which includes either multiple diagrams or diagram which exceeds one page size may print on one page creating distorted images.

rose0007871

Text within the brackets on messages are lost on all sequence diagrams when the Apply button is clicked after changing the Message Signature option.

rose0008718

The Fit to Page print feature will occasionally not leave enough space at the bottom of the page for the last element on a diagram. This happens when the diagram, as normally displayed, is just a little too large to fit on one page.

rose0008845

The Test Dialog option in the Dialog Editor is not supported in this version of Rose for UNIX/Linux. Selecting the F5 shortcut key or the Test Dialog Icon will have no affect.

rose0009168

Some custom stereotype icons added-in to previous versions of Rational Rose do not display correctly in Rose for UNIX/Linux.

rose0009229

To change the ROSE_CPP path map variable, you must first manually remove its entry from the registry. In the Windows Registry, this pathmap variable is located at two different locations:

  • HKEY_CURRENT_USER\Software\Rational Software\Rose\Virtual Path Map
  • HKEY_LOCAL_MACHINE\Software\Rational Software\Rose\Virtual Path Map

rose0009535

Collaboration diagram numbering is thrown off by deleting and undeleting a link message. Workaround: Turn Collaboration Numbering off and then on again to reset the numbering. (Select Tools > Options. Go to the Diagram tab and click Collaboration Numbering off. Click Apply. Click Collaboration Numbering back on and click Apply again.)

rose0010388

Arial font size not consistent. Certain icons with Arial font style does not display the correct font size. If 14pt Arial font size is selected, certain icons (i.e: usecase/business/interface) icons may display in 12pt size.

rose0010622

Print output may not appear the same as the screen display. This issue only occurs when printing from a UNIX/Linux display. This does not occur when printing from a PC display using Exceed.

rose0011133

Fit/Undo Fit in Window may result in undesirable layout. Undo Fit in Window may not result to its original display/layout.

rose0011416

Font scaling difficulties when using Rose fonts. Problem with scaling occurs when doing print preview.

rose00011800

You may encounter an unresolved model warning if there is a view of an item on a diagram, but the underlying item is not loaded or could not be found in the current model.

Items and relations are correctly displayed and reported by the Check Model command as unresolved references when the view to the item is in a diagram that is in the current model but the item resides in an unloaded package (controlled unit). The reference becomes resolved and the unresolved indicator is removed when the unit containing the item is loaded.The unresolved model warning occurs occasionally during model loading if the model was created using a previous version of Rose and that version of Rose allowed an invalid model to be created. Some known cases are:

Circular Generalize/Realize Relationship Combinations (allowable in Rose2000e but no longer valid ). Note that if you attempt to create a circular generalize/realize relationship combination, you will get an error and the relationship will not be created.Circular generalize/realize relationship combinations that exist in models files created with earlier versions of Rose are detected upon model load and one of the relationships involved in the circularity is left unresolved.

You may delete the unresolved view and then add new ones as appropriate. Running Tools > Check Model will provide in a list of unresolved views in the Rose Log. If the relationship has no view on a diagram in the model, then an Unresolved Relation warning is placed in the RoseLog. The warning is also generated by Tools -> Check Model .

To correct the unresolved relations:

  1. Load the model into Rose.
  2. Check the Log file for Unresolved Relation warnings.
  3. Open the Class Specification for the client class and click the Relations tab.
  4. Note that the unresolved relation (generalize or realize) is the one with the class name in brackets in the name column.
  5. Determine which classes are involved in the circularity.
  6. Delete the undesired relationship using the Class Specifications Relations tab.

Shared Objects - Shared activity diagram objects (allowed in Rose2000e, but no longer valid in this release). A shared object is an object that belongs to one state machine and has a view on an activity diagram belonging to another state machine. The drag and drop of the object is now disabled if the object does not belong to the same state machine as the diagram.In general, the unresolved object can be deleted from the diagram and a new object can be created on that diagram. The model does not lose integrity or validity because of this since an object is not actually a model element -- it does not define anything, and is only an instance of a class used for visualizing state or behavior.

rose00014249

A new Creates a Form class diagram toolbar is available, but you must manually add it to the toolbar.

rose00031538

On Solaris displays, double clicking on the top bar of the IEditor can cause the IEditor to disappear. This defect does not occur on other UNIX displays or on PC displays, running Exceed.

RATLC00213154

Classes with "Automatic resize" option turned on, are created too wide.

RATLC00213648

Rose may crash when switching to other applications while a model is being loaded.

RATLC00213677

Printed diagrams can differ from what is displayed on the user's screen. For example, some longer operations do not print completely.

If the text on the screen is:

provideWorkflowClosure(WorkItemClosureData) : void

the printout might only show:

provideWorkflowClosure(WorkItemClosureData) : v

RATLC00238431, 371412

Rose appends Virtual Path Map variable after drive letter if there are two equal folders on two drives

RATLC00239191

Rose may crash upon selecting New Model after undoing an Ojbject State deletion.

RATLC00239356

Unresolved transitions may be caused by copying and pasting Activity Diagrams containing decisions.

RATLC00239358

Unresolved ojbject flows may be caused by copying and pasting Activity Diagrams containing objects and object flows.

RATLC00239503

Do not apply Patterns under Use Case View.  When attempting to appliy GOF and Java Patterns under Use Case View Rose will hang.

RATLC00030462

Including ":" Within the package name of a controlled unit can cause Rose to crash. It is important not to use the ":" character within a package name.

RATLC00039739

Print Preview does not work consistently for all diagram types.

RATLC00039964

The Activity icon does not display the history graphical depiction on it.  It is also not possible to drag the "History" icon from the browser to the diagram.

RATLC00040814

Text within the brackets on messages is lost on all sequence diagrams when user clicks Apply after changing the Message Signature option.

RATLC00040908

The Fit to Page print feature will occasionally not leave enough space at the bottom of the page for the last element on a diagram.  This happens when the diagram, as normally displayed, is just a little too large to fit on one page.

RATLC00040964

Some custom stereotype icons added to previous versions of Rational Rose do not display correctly.

Workaround: Open the icon file (.wmf) in a graphics application that supports .wmf files. Set the color palette to Transparency .

RATLC00040969

To change the ROSE_CPP path map variable, you must first manually remove its entry from the registry. In the Windows Registry, this pathmap variable is located at two different locations:

  • HKEY_CURRENT_USER\Software\Rational Software\Rose\Virtual Path Map
  • HKEY_LOCAL_MACHINE\Software\Rational Software\Rose\Virtual Path Map

RATLC00042172

If a state or activity diagram contains a view of an element from another state or activity diagram/model, the Query > Expand command will not work for that element.

RATLC00042271

Deleting a package with a class attached to a read-only object in an activity diagram will cause Rose to crash

RATLC00042313

It is not possible to delete an unloaded controlled unit from a model.  To delete a unit from a model, first load that unit and then delete it.

RATLC0071347

Including ":" Within the package name of a controlled unit can cause Rose to crash. It is important not to use the ":" character within a package name.

RATLC00444954

A generalization and association may overlap each other, in diagram

RATLC00445804

Print Preview does not clearly represent activity diagram

 

Rose C++ Add-In's

Rose ANSI C++ Add-In

Rose ANSI C++ Enhancements Added in This Release

There are no new features or enhancements in this release of Rose

Rose ANSI C++ provides:

Rose ANSI C++ Defects Fixed in This Release

Defect

Description

RATLC00041185

No backups are made of changed files.   A new Module-Spec/Body property CreateBackupFiles, now controls the generation of backup files, but only when changes are detected.

The default is False. The file name is appended with a "~", and in the case of a 3 letter extension, the last character is replaced.

RATLC00041307

Dependency relationship not synchronized correctly.

Dependencies between ANSI C++ classes, stereotyped as #include, will cause generation of #include statement, as described in following scenarios:

Use Cases Supported

1. Create #include to header file

Create two classes (A and B). Draw a dependency from A to B. Set the stereotype to #include. Generate code. A.h will contain a #include of "B.h".

2. Create #include to an implementation file

The steps to be performed are the same as those above except that before code generation set the ANSI C++ property "BodyReferenceOnly" of the dependency to true. Now after code generation A.cpp will contain a #include of B.h.

3. Add a #include to a header file

Create two classes A and B. Generate code. Add a dependency from A to B. Set the stereotype of this dependency to #include. Generate code again. After code generation A.h will contain a #include of "B.h".

What is not supported:

Add a #include to an implementation file:

Defect RATLC00211772 states that #includes do not get added to implementation files when expected.

Remove #includes:

Removal of a #include dependency from the model will not remove the #include from the code.

Reverse engineer #includes:

#includes are from one source file to another. Because C++ classes can be split across many files and because multiple classes can occur in one source file it is not accurate to say that "class A includes class B".

RATLC00041805

Class Customization feature can generate two get or set operations for the same attribute, if the user invokes Class Customization twice, once generating Get by Reference and once generating Get.

RATLC00042531, 47423, 41795

Enhance the ability to generate Documentation (comments) during Code Generation, as well as Reverse Engineering and option to Synchronize (or not synchronize) Documentation (comments). See below, for further explanation and details**

RATLC0042653

Changing Inline property to true does not cause proper changes in code.

RATLC00047437

Reverse engineering /**/ comment containing blank lines may cause assertion error and crash.

RATLC00047392

Deletion of an attribute may cause bad updates when multiple declarators are in one declaration.

RATLC00049547

Incorrect source code generated when synchronize attribute declared on the same line.

RATLC00054406

Unable to get the ANSI C++ add-in in Rose to generate the classifier scope.

RATLC00211928

Create dummy containers for undefined classes on reverse engineer to avoid code loss.

RATLC00212576

Rose / ANSI C++ may hang upon reverse engineering a file that contains two enums, if at least one of the enums is a const enum.

RATLC00212912

Attributes declared on the same line, may go out of sync when round trip engineering.

RATLC00212994

Incorrect scope generated for nested ANSI C++ classes.

RATLC00213104

Changing the Output Directory (Tools>Options>C++-> Type: Project) after Code Generation will cause ANSI C++ Add-In inability to locate the source code.

RATLC00213170

Wrong initialization for static attribute in ANSI C++.

RATLC00213237

Performing code generation twice, may cause deleted class to again appear in code.

RATLC00213414

ANSI C++ reverses constructor with one abstract parameter declaration as reflexive aggregation.

RATLC00213538

Rose may crash upon converting Rose C++ to ANSI C++.

RATLC00229454

ANSI C++ converter crash on test model containing template instantiations.

RATC00233012

Allow choice of updating documentation during Reverse Engineering ANSI C++ code.

RATLC00365794

Static attribute is not updated in .cpp file after first time code generation.

RATLC00438920

Needs include without the relationship in ansi c++.

RATLC00438921

ANSI C++ Auto Synchronization mode generates wrong code.

**Documentation (comments) can be both generated and reverse engineered for all model elements.

Code Generation

Documentation is generated directly preceding the generated item and the items model Id. For example, the following code fragment shows generated documentation for two attributes within a class:

// The customer's date of birth.
//##ModelId=351ADC1EF002
CDate dob;
// The customer Id is used to record the
// unique Id given to each customer object
// in the system.
//##ModelId=351ADC1EF002
long custId;

The documentation text is converted into a comment block by generating single-line comments for each line of text. A space is automatically inserted between the single-line comment (//) and the start of the text. A line of documentation text may also begin explicitly with a comment delimiter, either a single-line (//) or multi-line (/*). The text is then generated as is in its entire form. This allows user-specific comments to be generated.

Reverse Engineering

Documentation can be reverse-engineered as well. Reverse engineering of documentation follows specific rules. From the code item's declaration, the code is traversed upward. A single optional blank line is allowed between the model Id comment tag and the end of the documentation comment block. If no model Id comment tag is found, a single optional blank line is allowed between the declaration and the end of the documentation comment block. The documentation comment block can use multiple single-line comments (//), multi-line (/*, */) comments, or a combination of both. However, only single-line comments (//) with a space will be converted to plain text. All other comments will appear as explicit comments in the documentation text. The comment block extends up until a blank line or another code declaration is reached.

Thus, to reverse engineer the documentation comment block, the code must be in the following format:

blank line or code
[ Comment Block
[ A single blank line ] ]
[ Model Id Tag ]
code declaration

The blank line will be preserved during synchronization; it can only be deleted in the source code.

Synchronization

The property CommentRules is used to control the synchronization of the UML documentation and the corresponding comment block in the source code. There are four choices available:

This supports full synchronization of comments in the model and source code. This is the default.

This setting will only generate comments into the source code, overwriting any comment section that differs with the documentation text.

This setting will only update the UML documentation for the associated entity, overwriting any text that differs from the comment.

This setting is used to turn off synchronization completely. This ensures that no updates will be performed on either the documentation or source code.

The property CommentRules can be set in the Properties dialog box under the ANSI C++ tab. Choose either the "Module Specification" or Module Body" type.

The property may also be set in the ANSI C++ specification of a component. Select the style tab and choose the appropriate setting under "Comments" in the "Round-Trip Engineering Options".

Prior Convention

Prior versions of the Rose ANSI C++ addin used a different style for generating comments in the source code. For example, the following code fragment shows generated documentation for two attributes within a class showing the old style:

//##ModelId=351ADC1EF002
//##Documentation
//## The customer's date of birth.
CDate dob;

//##ModelId=351ADC1EF002
//##Documentation
//## The customer Id is used to record the
//## unique Id given to each customer object
//## in the system.
long custId;

This style will be preserved, although no longer generated, as long as no model changes to the documentation text are made (if code generation synchronization is active). It is still possible to directly make any changes to the source code, and these can be synchronized with the model. However, should a change be required, stemming from a change in the model, then the old-style comment block will be rewritten to the new-style, and the comment block will be moved ahead of the model Id.

Known Rose ANSI C++ Defects

Defect

Description

RATLC00047641

Non inline operation bodies get generated in header file after round trip engineering.

RATLC00047676

Incorrect type qualification for exceptions generated with new Exceptions dialog.

RATLC00049391

Incorrect source code generated for attributes/parameters whose type is pointer/reference of enumeration/struct/union.

RATLC00049551

Incorrect source code generated in body file if operation's return type is a nested class.

RATLC00049794

Get by reference has return type of <type> & const.

RATLC00049796

No include and Forward Class Declaration, generated for association/generalization/dependency if the supplier class has CodeName.

RATLC00050181

Body file not synchronized during round trip engineering of template class.

RATLC00212596

ANSI C++ code generation -- need ability to generate all code to header file rather than to header and body file.

RATLC00212654

Forward Declaration/#include statement are not updated during subsequent code generation.

RATLC00368636

Rose ANSI C++ code generation does not generate class, enum and typedef in the correct order in the header file.

RATLC00600130

Friend class decl not removed from code during forward engineering.

 

Rose C++ Add-In

Rose C++ Features and Enhancements

Rose C++ Defects Fixed in This Release

Defect

Description

RATLC00042669

Setting "Forward Reference Only" on Parameterized class may cause Rose to crash.

RATLC0053166

Qualified name not used for nested C++ classes.

RATLC00054248

Forward engineering of a specific construct may cause the following Rose crash:

SYSTEM ERROR:  line xx, pc ..:  Cannot find property "GenerateInclude"  in property set "default_Role".

Known Rose C++ Defects in This Release

Defect

Description

RATLC 238885

Rose Analyzer may write associated files to the Rose Release Area location, while in use.


Rose Ada Add-In

The Rose Ada add-in allows you to produce Ada source code from the information contained in a Rose model.

The code generated for each selected model component is a function of that component's Specification and code generation properties, and the model's properties. These properties provide the language-specific information required to map your model to Ada code.

Rose Ada preserves user-supplied declarations and statements from one iteration to the next. You place such user-supplied code in protected code regions which are preserved whenever code is regenerated.

The Rose Ada code generator:

New Rose Ada Features and Enhancements

Rose Ada Problems and Limitations

The following list describes the known problems and limitations for this release of Rose Ada:

Rose Ada Defects Fixed in This Release

Defect

Description

rose00014965

Rose/Apex needlessly reports circularities among nested packages.

rose00016142

Private only visibility for cg of operations.

rose00029061

Rose/Ada does not support RUP component view mapping.

The following settings are now supported for the Apex properties ApexSubystem and ApexView:

ApexSubsystem: [/]{directory/}subsystem ApexView: {directory/}view

rose00031390

Parameter mode field using Rose/Ada

A new parameter property Mode, is used to specify the parameter mode.  It is no longer necessary to specify the mode in the type field.

RATLC00234488

The following error message could occur, upon generation Ada95 code (which, includes many operations):

Error:  Internal Error:  The error type is unknown, an old type error id is used.

RATLC00039909

Context menu for a package should have "Browse" as an option.

RATLC00040027

Browse on a package does nothing if Apex Add-In is disabled.

RATLC00040199

CG property required to specify controlled type visibility.

A new class property TypeControlVisibility, specifies whether to make the controlled extension visible in the public part.  The default is Private.

RATLC00040756

Unable to code generate Ada83 / Ada95 from a read only model.

RATLC00040821

Allow completely private types.

RATLC00040865

Ada95 creates new file even when selecting no.

RATLC00041000

Error when trying to browse spec/body.

RATLC00041082

Browses to wrong spec after class is assigned to a component.

RATLC00041232

Unable to select multiple components for code generation in browser.

RATLC00041586

Type definition in package body.

RATLC00041617

Request for Representation property for association roles.

RATLC00042019

Apex and Rose/Ada: problems with code regeneration and checked in units.

RATLC00042861

Unable to change browse information in read only *.cat file after code generation.

RATLC00043143

Cannot browse body from component view - package body.

RATLC00047509

Update to Add-In Manager, to include Rose Ada Add-In minor version update number.

RATLC00047852

Add capability to generate Class wide Access Discriminants.

The new attribute/has/role property AccessDiscriminantClassWide controls whether type is generate as Class.

RATLC00049240

Errors on code generation of overloaded operators (Unix only).

RATLC00053250

Rose Ada generates 'with' in the Package Spec when it could be in the Body.

RATLC00054636

Generation of generics in a package.

Supports subprogram generics only.  The stereotype of an instantiated class utility must be set to subprogram.  The class must also be assigned to a package spec component.  The Export Control field controls the location where the generic subprogram is declared.

RATLC00055342

Ada95 code generation of nested classes (level 3) raises a System Error.

RATLC00211903

Private constant not generated correctly.

ROSE00069859

Ability to specify a text file in the Copyright notice property.

A new property Declare, with the values (Before, After), can now be used to specify where the static declaration should be declared, either before or after the class type.

ROSE00073946

Suppress the generation of access procedures to public task entries of private task types (or any task type, for that matter).

ROSE00074511

Wrong signature generated in the Generic Subprogram Body.

ROSE00075639

Rose Ada: System Error: line 10811, pc 27607 Null Handle in request for property "inherits".

RATLC00212355

Ada 95 Browse Spec bring up the same code as Browse Body on Parameterized classes.

RATLC00212510

Subtype to be generated in private part.

RATLC00212616

Need Rose/Ada to maintain implementation declarations in body.

Export control or "class visibility" controls where the declaration is defined in the package spec/body.  TypeVisibility controls whether a public class is a private type.

A new class property

   IncompleteType (DoNotDeclare, NoDiscriminantPart, UnknownDiscriminantPart, KnownDiscriminantPart) is used to declare an incomplete type declaration.  The default is DoNotDeclare.

RATLC00212637

Unable to model a task that is completely private.

RATLC00212696

Generic subprogram instantiation for a class method.

Using the Export Control field on the instantiated class now controls the location where the instantiation is generated. The property CodeName is now supported.

RATLC00212878

Browse Body from a Class assigned to a "main Program" component doesnot work.

RATLC00214057

Ada can't generate missing directory during code gen.

 

Apex Add-In (Not Available for Linux)

The Apex Add-In of Rose for UNIX/Linux provides direct access to the Compile and Control commands in Apex. It also works with language add-ins for Rose, including Rose C++, Ada 95, and Ada 83 Add-Ins, to create Apex subsystems and views during the code generation from the model to the source files of the specified language.

The following information is also located in your Apex Add-In online documentation.

Apex Compile and Control Commands

The Compile and Control commands of Apex are directly accessible from Rose through the Tools > Apex menu. The Compile commands compile and link the source files, generated into Apex views via Apex Add-In, that correspond to the selected items in the diagram. The Control commands perform Apex source code control operations on the source files generated in the same way.

To use these commands, select Tools > Apex, and then select Compile or Control to get to the list of commands, respectively.

For the descriptions on these Apex commands, please consult the online help in the Apex windows.

Code Generation With Apex Add-In

In general, the code generation operation for a regular language Add-In is based on a directory structure where top-level packages, nested packages, and classes (or modules) are mapped, respectively, into directories, subdirectories, and source files in a hierarchical way. The operation can create such directories or subdirectories if they do not already exist, and then generate source files into these (sub)directories. This works with the regular source code control system and build management.

Apex has a different style of source code control and build management. An Apex project has a set of subsystems which contain the source files and subdirectories of source files for development. Each developer has his own views, one for each subsystem, which collectively reflect the source base the developer uses for the project. For this reason, Apex-style code generation is different from the regular style. From a Rose model, the top level packages will be mapped into subsystems and the associated views for the developers; the packages nested inside another package will be mapped into the subdirectories inside an Apex view, or a subdirectory already enclosed by a view; the classes (or modules) will be mapped into the source files inside the views or the subdirectories.

The Apex Add-In provides a mechanism for the user to select which of the two code generation styles to use. When the property CreateApexSubsystemAndView of the Apex tool set is set to "Yes", the code generation command for a language add-in will automatically create Apex subsystems and views for the top-level packages selected in the model, followed by the generation of subdirectories and source files into the views. If the property is not set to "Yes", the code generation command does the regular style of code generation.

The language add-ins that work with Apex Add-In include C++, Ada 95, and Ada 83.

Properties for Apex Add-In

Refer to the online documentation for a list of the properties used by the Apex Add-In for Apex-style code generation. Some are properties for the project, and the others for the subsystems in the model. The code generation command will use the combination of these properties when it needs to generate code into Apex subsystems and views.

All the properties except CreateApexSubsystemAndView will take effect only when the CreateApexSubsystemAndView property is set to "Yes" and when the selected item is a top-level package. When any of these properties are specified differently from their default value, the Directory property for the top-level package should remain as the default value.

Utilizing Apex Add-In on HP-UX

In order for Apex to generate subsystems correctly, it is necessary for "tmp-mnt" to be placed in the automount field of the Virtual Pathmap dialog box. The "/tmp-mnt" entry should be removed from the Virtual Pathmap dialog box when not using Apex.

Known Rose Apex Defects

Defect

Description

Rose0003853

CM commands do not show on the context menu for packages in the browser. When this occurs, you are unable to use Apex CM integration on a package that does not appear in the diagram. Workaround: Add the package to the diagram.


Rose ClearCase Add-In

Rose ClearCase Features and Enhancements

 

Note: Prior to using the Rose for UNIX/Linux ClearCase Add-In, it is necessary to review and follow the steps outlined in the README file. Please see the rational_dir/releases/rose.I.J.K/addins/clearcase/README file.

The ClearCase Add-In provides a tight integration between Rational Rose and the Rational ClearCase version control system. This add-in is intended as a replacement for the ClearCase capabilities provided through the previous Rose/ClearCase integration. This has and will continue to allow Rational to provide more ClearCase specific customization to this add-in.

When performing ClearCase actions on a unit in a Rose model, the ClearCase Add-In will now perform CM status checking on all ClearCase elements within the model. This provides an opportunity to perform the same ClearCase action on any element which applies. When the ClearCase dialog is displayed, you will have an opportunity to perform the selected ClearCase action on any or all of the ClearCase elements presented in the dialog. The CM status checking which is performed to provide this new capability can at times seem lengthy if working with a large model. In this case, you may elect not to utilize this feature by placing the following in either your $USER.reg (applies to single user) or the rational_dir/releases/rose.I.J.K/registry/rose.reg file (applies to anyone using the release):

[HKEY_LOCAL_MACHINE\SOFTWARE\Rational 
   /Software\Rose\AddIns\ClearCase\Custom Settings]
"ShowAll"="No" 

 

Rose ClearCase Add-in Defects Fixed in this Release 

Defect

Description

RATLC00053584

After being presented with check box, listing components available to perform specific ClearCase action on and selecting only a few components, subsequent requests to perform the ClearCase action could result in error "There are no files available for the selected operation".

RATLC00212948

Checkout Icon may not be updated correctly in Rose browser when using either full ClearCase or ClearCase Lt.

RATLC00213433

Registry setting "ShowAll=No" does not function correctly. 

RATLC00228252

Rose / ClearCase integration changed to utilize rmname rather than rmelem when user selects to Remove an Element from Source Control via the Rose menu options when performing ClearCase actions on Rose elements. The use of rmelem permanently removed the Rose object (requiring restoration of VOB backup, to recover file) while rmname includes ClearCase recovery options if user incorrectly chose this option. Note: The use of rmname requires the user be one of the following:

  • VOB owner
  • root (UNIX)
  • member of the ClearCase group (ClearCase on Windows)
  • Local administrator of the ClearCase LT server host (ClearCase LT on Windows)

RATLC00235769

ClearCase Checkin from Rose (via Rose / ClearCase integration) may not update icon in browser.

RATLC00235831

Using the Rose / ClearCase integration option to "Select All"  may cause ClearCase icons in the Rose browser not to be updated correctly.

Known Rose ClearCase Add-in Defects

Defect

Description

rose00016647

If a user has selected the Rose option of creating back up files but has not selected to create the back up files by copy, Rose may not detect when a newer version of a file has been made available from ClearCase. To project against this, make sure that the Update by Copy option has been selected.

 

Rose CORBA Add-In

Rose CORBA Features and Enhancements

The Rational Rose CORBA add-in allows you to forward engineer Rose model elements into CORBA-compliant IDL code and reverse engineer CORBA IDL code into a Rose model.

In support of the CORBA 2.3 Specification, Rose CORBA implements the use of value types. Value types allow you to pass objects by value rather than by reference, which is particularly useful when an object's primary purpose is to encapsulate data, or when you want to explicitly make a copy of an object. Two CORBA stereotypes make use of this enhancement:

This Release includes modifications to the CORBA Add-In actions involving attribute types, operation return types, operation parameter types, and operation exception types in Round Trip Engineering.

Existing CORBA Models will be converted (by this Release) to recognize and identify these changes, automatically during code generation when selected to be forward engineered and during reverse engineering.  There is now one more phase during code generation - the CORBA conversion process.  You may notice performance degradation when performing code generation on an existing CORBA model, the first time after installation of this Hot Fix, due to this additional conversion phase.

Note:   If the type cannot be resolved in the model (i.e. the type cannot be found in the model OR if more than one type class of the same name is found in the model), the type would not be set and warning will be logged.  The following would be the warning message format:

[Resolving corba type references:  Start ]

WARNING:  Class <fully qualified class name> - operation <operation name> - <item type> cannot be resolved - '<type string>' will be used.

WARNING:  Class <fully qualified class name> - attribute <attribute name> - type cannot be resolved - '<type string>' will be used.

[Resolving corba type references:  Finish ]

* <item type> could be "parameter type",  "return type",  "exception type".

If code generation is occurring on a read-only subunit OR read-only model, the conversion will NOT take place during code generation.  Hence, the type would not be set.  In this case you will need to make these units write-able for complete conversion.

IMPORTANT:  Once the CORBA Model is converted by Rose 2003 (as described above), it is no longer compatible with previous versions of Rose.  It is important, upon upgrading to Rose 2003, no users perform work on this model in a previous version of Rose as this can cause model corruption.

Rose CORBA Add-in Defects Fixed in this Release 

Defect

Description

RATLC00054223

CORBA Add-In does not recognize "#undef".

RATLC00212301

CORBA Add-In does not use Logical View structure for storing type references.

RATLC00212792

Modifiers are placed inside parameter type definition – no quidu saved.

RATLC00368093

Order of operations/types not correct in resulting CORBA/IDL generated code.

 

Known Rose CORBA Defects

The Rose CORBA online Help references the old Rose internal editor (R2Editor); however, Rose CORBA now uses the new internal Rose editor.

Defect

Description

RATLC00041558

Unable to suppress full PATH in #include in CORBA  code.

RATLC00234345

Unable to generate Value forward declarations.

DDL Add-In

The Data Definition Language (DDL) Add-In release note contains known problems and limitations as well as fixed defects since the last release.

The gap between object technology and relational databases is closed by providing a mapping interface to relational databases through generation of persistent classes to Structured Query Language (SQL) and Data Definition Language (DDL). 

 

Framework Add-In

The Framework Add-In provides a library of frameworks that can be used as templates when creating new models. There are no new features or enhancements for this version of the Framework Add-In.

 

Rose J Add-In

Rose J and J2EE Defects Fixed in This Release

Defect

Description

rose00072794

Java code can be deleted during code generation.

RATLC00018087

Parser errors can occur, when reverse engineering *.java file with nested "if"  without braces.

RATLC00018283

Parent package's *.sub and / or *.mdl file(s) need to be writeable to generate Rose J code.

Rose 2002 Release 2 included a new Rose J Code Generation requirement.  To successfully generate Rose J code - any associated *.sub file (if the *.cat files were controlled) and/or *.mdl file (if the *.cat files were not controlled) would have to be writeable.  If the necessary files were not writeable, an error message would be displayed and no Rose J code generation would not be performed.  This new requirement was added to Rose 2002 Release 2, in order to resolve:

RBU 72794 - Java code may be lost during code generation, after changing Component default or custom properties. 

In Rose 2003 the fix for RBU 72794 was re-engineered.

In Rose 2003, the user will be allowed to forward engineer a class when it's component is inside a read-only sub control unit.  In this case, a warning will be recorded in the Rose log to alert the user  there may be an issue, for example – the following type of information would be recorded in the Rose log:

1.       When a user forward engineers a class for the first time or renames a class with autosync on or changes the virtual path from the path map and forward engineers the class, the following information would appear in the Rose log:

11:20:17| WARNING:  File D:\DMDefect\RATLC18283\test.sub is read-only – cannot save mapping information for file $TEMP2\P1\c1.java to component Component View::P1::c1.

2.       When a user forward engineers an EJB for the first time or the stereotype is modified, the following warning would appear in the Rose log:

11:40:12| WARNING:  File D:\DMDefect\RATLC 18283\test.sub is read-only – component stereotype is not updated for Component View::P1::aaEJB.

3.       When a user forward engineers a class after modifying the CmIdentification or CopyrightNotice property from the property editor, the following warning will appear in the Rose log:

11:42:04| WARNING:  File D:\DMDefect\RATLC 18283\test.sub is read-only – the CmIdentification information is not updated for Component View::P1::c1.

11:42:04| WARNING:  File D:\DMDefect\RATLC 18283\test.sub is read-only – the CopyrightNotice information is not updated for Component View::P1::c1.

RATLC00027867

Multiple dependencies created between the bean and classes when generating an EJB.

RATLC00041965

EJB classes created as Default Language (should be assigned to Java).

RATLC00047451

Unable to add suffix Remote to the Component Name while creating a new EJB.

RATLC00052722

Rose 2002 mixes @link and @param when generating javadoc for non-EJB operations.

RATLC00054964

Creating an operation with more than two parameters causes Rose to create an operation with parameters in wrong order for Remote Interface Class.

RATLC00055880

Parser error may occur when reverse engineering code with a typecast.

RATLC00056912

Code may be removed from interclass when forward engineering.

RATLC00212420

Not loading all the units may cause Rose to crash during code generation.

RATLC00212864

User defined tags do not get refreshed for existing classes when default @tags were enabled previously.

RATLC00213022

Updated Rose J Online Help to include explicit setup instructions for Java code generation.

RATLC00213156

Selecting an Entity Bean class and setting it's persistent Property to true, causes the Bean Class to implement the Serializable interface.

RATLC00213199

Rose J operation body may be commented out when parameter exists in multiple packages.

RATLC00213222

Rose J unable to parse the reflection method properly while generating code.

RATLC00213747

Rose J parser does not recognize the class identifier used to access the outer class instance from a inner class method.

RATLC00213537

Javadoc comments for methods are improperly generated when performing code generation on an EJB.

RATLC00213635

Java RE & CG erroneously comments-out and moves some operations and code bodies to the end of the source file.

RATLC00213659

More than one Java throws clauses for operations cause an error resolving qualified name while reverse engineering.

RATLC00214007

Enhancement to include JDK 1.4 Framework.

RATLC00214056

CreateException and FinderException are not in model for EJB 2.0 CMP Local.

RATLC00214119

Rose – JBuilder 7 Integration – Blank entry in the ejbmodule tree when Reverse Engineering EJB.

RATLC00233010

Error may occur when Reverse Engineering java files with comment in "if / else" statement.

RATLC00365249

Creating an EJB may crash Rose.

RATLC00365313

Wrong file format reading EJB1.1 compliant ejb-jar.xml.

RATLC00365344

Unable to create CMP field.

RATLC00368252

For Interface classes, Rose J code generation deletes operations in the code, that are not in the model.

RATLC00368531

Generate Java code may produce invalid syntax errors.

RATLC00436230

Rose J parser error occurs when reverse engineering new InitialContext().

RATLC00440865

Code before Rose J reverse engineering not the same as code after forward engineering.

RATLC00441381

"Compilable" Java code gets removed or moved around during forward and reverse engineering.

 

Known Rose J and J2EE Defects

Defect

Description

rose00054342

VAJ 3.2 is no longer supported

rose00056595

In VisualAge persistence for a Container Managed EJB is recognized as Bean Managed.

RATLC00040971

Cannot Browse Source Code from C:\ (Root directory).

RATLC00040977

In Operation specification Window under Code tab the read only field is not grayed out.

RATLC00042697

Java Syntax Check on the J2SE1.3 Framework produces errors.

RATLC00211357

Carriage Return at the end of *.java file may produce a Parser Error.

RATLC00213636

Missing javadoc @param in the J2EE template (causes Warning in JBuilder).

RATLC00213654

JBuilder Integration:  Relationships between the second EJB components may be lost after reverse engineering more than one EJB modules.

RATLC00213731

JBuilder Integration:  Message-Driven Bean related classes may not get updated in Rose.

RATLC00213772

xxxLocal.java file in JBuilder is not updated when rename a ejb in Rose with autosync on.

RATLC00227846

EJB Deployment Descriptor "ejb-jar.xml" do not include "assembly-descriptor" information.

RATLC00229104

Rose J / CM Integration: Help buttons may not work correctly.

RATLC00238820

When using Rose / SunOne 4 integration - code may be generated to the original project assigned to the class, rather than a new project selected.

RATLC00239392

Autosync may stop functioning after deep-deleting a class. Workaround: Use Ctrl+G to manually perform code generation to restart Autosync.

RATLC00239503

Do not apply Patterns under Use Case View. When attempting to appliy GOF and Java Patterns under Use Case View Rose

RATLC00239705

When using the Forte IDE integration, the getservletInfo function is not updated.

RATLC00370940

Rose performance can be impacted when reverse engineering several classes with public final constants.

RATLC00371268

Parser error, when reverse engineering the following *.java code:

//--- http-Params
root.addContent(new Element("http-params")
//--- To
.addContent(new Element("To").setAttribute(new Attribute("value",this.from)))
//--- From
.addContent(new Element("From").setAttribute(new Attribute("value",this.to)))

RATLC00371334

Parser error may occur when reading *.java files stored on a UNIX/Linux share. Possibly misinterpretation of End-Of-Line terminator.

RATLC00444408

The following comments may cause a Rose J Parser Error:
Case 1:

public void no2() throws Exception, //comment causes parser error

ClassCastException {


}

Case 2:

public void no3() {

String s1 = "";

String s2

//comment causes parser error

= s1;

}

 

Rose Model Integrator Add-In

Rose Model Integrator Features and Enhancements

The Rose Model Integrator Add-In lets you compare model elements from up to seven contributor files, discover their differences, and merge them into the base model.

Model Integrator – Ability to Log Conflicts to a File

Overview

The "Log Conflicts to file" feature enables the user of the Model Integrator to generate a hardcopy of the elements in conflict when comparing a number of up to 7 models.

How To Create "Conflict" Output File from Model Integrator

  1. The user selects and loads contributors in the Model Integrator application.
  2. The user selects "Compare".

The model shows up in the Model Integrator with the first node with conflict selected and the property values for all the contributors displayed in the right section of the screen.  To log the conflicted items (of the entire model) to a file, select File->Log conflicts.  Note that this option is enabled ONLY if the application is in Compare mode.

  1. Once this option selected, you are prompted to enter the file name (in the Save As dialog box) where the items with conflicts (between contributors) should be logged, along with the values for each contributor.

Note:  The log file format may be text (*.log) or CSV (*.csv).  The CSV format enables you to open the file with Excel, which will provide a comprehensive layout.

Description of Model Integrator "Conflicts" Log File Output

The log file provides the user with the following information:

Rose Model Integrator Defects Fixed in this Release

Defect

Description

RATLC00054321

NULL disappears after merging mode with NULL.

RATLC213591

Merging *.cat files, using a base contributor may cause the Rose Model Integrator to crash with an access violation.

RATLC00228098

Relationships can be lost during merge activity.

RATLC00230575, RATLC00367538, RATLC00367566

RATLC 234656

Merging models with Rose Model Integrator can cause classes to appear more than once in the diagram.

RATLC00367538

Merging may cause duplication classes.

Rose Web Publisher Add-In

Rose Web Publisher Features and Enhancements

Rose Web Publisher allows you to publish Rational Rose models in HTML format. The Web Publisher Add-In exports your Rose model as HTML (including diagrams) so you can view them using a standard browser such as Netscape Communicator. The Web Publisher also produces meta tags for use by search engines.

There are no new features in this release of Rose Web Publisher.

Browser Data

In order for Netscape to find the correct Java jar files, you must have the browser on your PATH, or set the environment variable BROWSER_PATH to the absolute path of your browser.

The Web Publisher on UNIX supports only .jpg file format.

The Web Publisher has only been tested with Netscape versions 4.6 and 4.7*.

 

Rose Web Publisher Defects Fixed in This Release

Defect

Description

RATLC00214040, RATLC00365766

Hyperlinks to Activity icons in another package do not resolve in Web Published model.

RATLC00239944

Memory issue could cause crash when Web Publishing a large model.

RATLC00366254

Windows such as scroll bars and documentation may not appear in Internet Explorer, upon viewing a Web Published document.  This can be due to an incompatibility between SUN's JDK runtime Java Virtual Machine and Microsoft's Internet Explorer.

Workarounds (either option should work):

1.       Under IE | Tools | Internet Options | Advanced tab, uncheck "Use Java 2 v1.3.1_04 for <applet>(Requires restart)" option.  (Note: the JDK version might also be "v1.3.1_02".)

2.       Uninstall the JDK version which appears to present the problem (1.3.1_04, 1.3.1_02, etc.) and install JDK versions, such as 1.3.1, 1.4.0, etc.

RATLC00442505

Web model file created by WebPublisher does not include the argument information of the Parameterized class.

RATLC00443524

WebPublisher does not create links for diagrams under a class.

Known Rose Web Publisher Defects

Defect

Description

RATLC00018890

Rose may crash when Web Publishing a model if the following environment variables are not set, *and* csh unlimit has been run, prior to running Rose:

·         MWVISUAL_CLASS=TrueColor

·         MWVISUAL_DEPTH=24 Workaround: If this occurs, unsetenv MWVISUAL_CLASS and MWVISUAL_DEPTH prior to running Rose.

RATLC00039560

Web Publisher keeps two Internet Explorer windows open.

RATLC00213284

Error occurs when Web Publishing a model which includes many sub-packages.


Rose XML DTD Add-In

Rose XML DTD Features and Enhancements

The Rational Rose XML DTD Add-In provides visualization, modeling, and code generation to create XML document type definitions (DTD) for use in your application. You can reverse engineer an existing XML DTD to visualize a DTD's structure using a Rose class diagram. After modeling an XML DTD, you can use the Syntax Checker to validate your XML DTD. From the valid XML DTD model, you can generate code to create a new XML DTD.

In addition to reverse engineering an existing XML DTD, you can model a DTD using Rose class stereotypes for XML elements, element attributes, entities, and notations. By modeling an XML DTD, you can visualize the structure of the document to see which element definitions to change or remove. You can also share your XML DTD model with members of your development team to verify that you have captured the XML document requirements.

An XML DTD syntax checker finds errors in the XML DTD model, allowing you to make corrections before the DTD is implemented. Use the Generate Code feature to produce an XML DTD that you can test or implement in your environment.

To support mapping XML to UML, Rational Rose extends UML with stereotypes for XML elements, element attribute lists, entities, and notations. Stereotypes also represent XML operator symbols, sequence lists, choice lists, and element and element attribute multiplicity.

Contacting Rational Technical Support

If you have questions about installing, using, or maintaining this product, contact Rational Technical Support as follows:

Your Location

Telephone

Facsimile

E-mail

North America

(800) 433-5444 (toll free)
(408) 863-4000 - Cupertino, CA

(781) 676-2460 - Lexington, MA

support@rational.com

Europe, Middle East, Africa

+ 31 (0) 20 4546 200 - Netherlands

+31 (0) 20 4545 202 -  Netherlands

support@europe.rational.com

Asia Pacific

+61 2 9419 0111 - Australia

+61 2 9419 0123 - Australia

support@apac.rational.com

When you contact Rational Technical Support, please be prepared to supply the following information: