Customizing the metamodel > What you can do with USRPROPS/SAPROPS > Adding and modifying diagrams, symbols, and definitions
  
Adding and modifying diagrams, symbols, and definitions
System Architect provides three object types:
diagram
symbol
definition.
Each of these object types has a set of properties. With USRPROPS.TXT, you can:
create new diagram types, new symbol types, and new definition types.
change the properties of new or existing diagrams, symbols, or definitions
change the way that symbol types are displayed on a diagram: either by changing the displayable properties of the symbol, or by adding a new picture (metafile or bitmap) to represent the symbol.
Example
You might open a UML Class diagram, and draw symbols on the diagram workspace. To edit the properties of the diagram, right-click the diagram workspace, and then click Diagram Properties (a UML Class diagram has properties such as Description and Navigation Presentation Mode). Each symbol is associated with an underlying definition (a Class symbol has an underlying Class definition). Each definition has properties (a Class definition has properties such as Attributes and Methods, and so on). The symbol itself also has properties (if you open the definition of the class, the last tab is called Symbol (on this tab are properties of this particular symbol: in a class symbol’s case, for instance, there is a property called Hide Details). In summary, you are working with diagrams (that have properties), that have symbols drawn on them (that have properties), that have underlying definitions (that have properties). You are also working with definitions that are not represented by any symbol (that is, a class property such as an Attribute is itself a definition, that has properties such as Type and Access.)
A symbol has displayable properties: the class symbol’s name, stereotype, attributes, methods, and persistence properties are displayed on the rectangular symbol. You can change these displayable properties with USRPROPS.TXT: for example, you might decide to display the class generation file on each class symbol. You can also add a new bitmap, and then change USRPROPS.TXT, so that every time you draw a class, this new bitmap is drawn. The bitmap can be resized, and have the name of the symbol appear in the bitmap or outside it, as with any native System Architect symbol.
See also
What you can do with USRPROPS/SAPROPS