Overview of the Domain-Specific Language Tools User Interface
Updated: July 2008
When you first open a Domain-Specific Language Tools (DSL Tools) solution in Visual Studio, the user interface (UI) will resemble the following picture.
The following table explains how the parts of the UI are used.
Use the Toolbox to drag elements, relationships, and shapes to the diagram. When you define a domain-specific language, include a toolbox element for every element and relationship that you want users to be able to use.
The diagram displays the shapes and relationships that represent the model.
Use the DSL Explorer to set the properties of model elements and to manage features of the model that are not displayed on the diagram. For example, you can add toolbox items and switch on the validation process by using the DSL Explorer.
DSL Details window
The DSL Tools diagram is divided into two parts by a swimlane. The left side of the diagram shows the elements and relationships in the model. The right side shows how the model is to be displayed, and includes the shapes that are used to display the elements and the properties of the model diagram. The following picture shows the elements of the DSL Tools diagram.
The following table explains some of the elements of the diagram.
Instantiate domain classes to create elements in a domain-specific language. You can add a domain class by dragging the domain class item from the Toolbox to the diagram.
Instantiate domain relationships to specify relationships among domain classes in a domain-specific language. You can create an embedding relationship or a reference relationship by dragging the embedding or reference relationship item from the Toolbox to the diagram. A solid line indicates an embedding relationship, and a dashed line indicates a reference relationship.
Add swimlanes from the Toolbox. Swimlanes create horizontal or vertical lines on the diagram to represent different areas in a diagram.
Shapes specify how elements should be displayed in a domain-specific language. A domain class can be mapped to a specific geometry shape. The following shapes can represent domain classes:
You can also define and map a connector shape to a domain relationship.