Known Issues


DSL Tools Dec04 CTP


1. Installation and Startup


1.1. Unregistered class error when launching DSL Designer wizard.

When creating a DSL designer project in the experimental version (VSIP version) of Visual Studio 2005, this error message appears: ‘Class not registered. Looking for object with CLSID: {…}’. Sometimes users launch the experimental version accidentally, because the VSIP SDK installs a shortcut to this version on the desktop.

To resolve the issue

·        Use the non-VSIP version of Visual Studio 2005 when creating a designer.


1.2. Error about missing template after completing the DSL Designer wizard.

If you did not install Visual C++ when you installed Visual Studio 2005, you will get an error message when finishing the DSL Designer wizard that says, "The template specified cannot be found." DSL Tools currently use a Visual C++ project to produce the unmanaged satellite DLL that a VSIP package requires to store its menu items, toolbars and icons. 

To resolve the issue

·        Ensure that the Visual C++ option is selected when installing Visual Studio 2005 for use with the DSL tools.


1.3. DSL Tools are only available in English.

The DSL Tools are not localized yet and are only available in English. Future releases of the DSL Tools will support other languages.


2. Domain Model Designer


2.1. Generated code for domain model does not compile

In the December 2004 CTP release, the code generation might generate code that does not compile due to unstated and unchecked constraints on the domain model.

To resolve the issue

·         In a relationship between the root class of the domain model and a child class, the child role must have the same name as the root class.

·         In a relationship between the root class of the domain model and a child class, the maximum multiplicity of the child class must not be 1.


2.2 Undo in the Domain Model Designer

In the current version ‘Undo’ does not work reliably. 

2.3 Unused properties in the Properties window

A number of properties (such as those not mentioned in the walkthroughs) in the Properties window are not used in the current version and can be ignored. 

2.4 Non-binary relationships in domain models

Non-binary relationships do not work in this release.


·         Refactor the domain model and make non-binary relationships into binary relationships.

2.5 Serialization problems

Creating a domain model in which a class has more than one container will cause problems in the XML serialization of the model.


·         Refactor the domain model and do not use more than one container per class.


2.5 Zoom functionality is not accessible from toolbar or menu

In this release, the zoom functionality is not accessible from the toolbar or menu.


·         Press CTRL and use the mouse wheel to zoom, or

·         Press SHIFT-CTRL and left/right mouse key to zoom in/out.


2.6 Navigating to the definition of a class

Double-clicking to jump to a class definition does not expand the part of the diagram containing the definition.


·         Expand the diagram manually before navigating.


2.7 Cannot expand or collapse parts of the diagram

Sometimes the buttons to expand and collapse parts of the diagram are hard to use when the diagram is demagnified.

Work around

·         Zoom in before expanding or collapsing diagram elements.


2.8 Cannot drag value property on to a value property list

In the current version the value property list is not a valid target for dropping new value properties.


·         Drag new value properties and drop them on the class shape.


2.9. Domain Model Designer Toolbox is hidden

In some cases, the Domain Model Designer toolbox is hidden after installation. If the DSL Tools October 2004 CTP was installed, the wrong toolbox might be visible.

To resolve the issue

·         Right-click on the Toolbox.

·         Select Reset Toolbox.


2.10 Running Class Designer at the same time as the Domain Model Designer causes errors

Running the Class Designer at the same time as the Domain Model Designer will cause errors.


·         Do not open a Class Designer window in the same session as the Domain Model Designer.


3. Designer Definition File


3.1. Unused connector definitions cause code generation to fail

If a connector is not referenced by a connector map, the code generation will fail without explanation.

To resolve the issue

·         Ensure the connector maps reference valid connector definitions.


3.2. Toolbox with no defined connectors causes compilation errors

If no connectors are defined on the Toolbox, building the designer will cause compilation errors.

To resolve the issue

·         Ensure that at least one connector is defined on the Toolbox.


3.3. Defining zero or more than one connector type causes compilation errors

Defining zero or more than one connector type will cause connector.cs to not compile due to a misplacement of the closing brace of the namespace in the Connector.mdfddt file.


·         Correct the Designer\Diagram\Connector.mdfddt file manually. At the end of the file, replace this:






With this:







3.4. Roles referenced in the domain model cause code generation to fail if Property Generator is not set to True

The code generation will fail without explanation if the roles referenced in the .dd file do not have the property Property Generator set to true.

To resolve the issue

·         Set property ‘property generator’ to ‘true’ on all roles that are reference by the dd file.


3.5. Shape decorators not displaying

In this release, shape decorators without mapping are not displayed.

Work around

·         Define mapping for shape decorators.


3.6. Outside decorators

In this release, shape decorators with positions defined outside of the shape are not displayed.


3.7. Compilation errors when compiling ConnectorMouseActions.cs

The template, ConnectorMouseActions.mdfddt, has errors in “IsOkTargetInstance” that causes compilation errors for some valid models.


·         In this statement:

<%#sourceNamespace%>.<%#sourceType%> targetElement = modelElement as <%#sourceNamespace%>.<%#sourceType%>;

“source” should be replaced with “target” throughout.


3.8. Compilation errors when using bitmaps

In this release, using bitmaps for image shapes or icon decorators will cause compilation errors.


·         Use .emf (Enhanced Metafile) files instead of bitmaps.


3.9. Bounding box of image shape has wrong size

In some cases the bounding box of an image shape defined by an .emf (Enhanced Metafile) file has not the correct size.


3.10. No support for inheritance of shapes

In this release, shapes cannot inherit from other shapes. In addition, an inheritance relationships between domain-model classes does not have an impact in the behavior of shapes mapped to these classes. For example, the connection rules between shapes must list every valid combination and do not reflect any inheritance relationship among the underlying domain classes.


3.11. Designer code template files are location sensitive

Object model references in the DD file are not relative to the DD file’s location, but to the location of the template that is reading it. In consequence all “.mdfddt” files have to be at the same relative level in the directory structure.


·         Make sure that every code template file to build the designer is at the same relative level in the directory structure.