XML Structure for Property and Property Group Definitions - Intergraph Smart 3D - Reference Data

Intergraph Smart 3D Drawings and Reports Reference Data

PPMProductFamily
3D Design and Visualization
PPMProduct
Intergraph Smart 3D
PPMCategory
Reference Data
Version_S3D
10.1(2014R1)

The Custom_DrawingLabelUIPropertiesCommon.xml schema file contains all property and property group definitions used for labels, north arrows, and matchlines. The Custom_DrawingDimensionUIPropertiesCommon.xml schema file contains all property and property group definitions used for dimensions. The syntax definitions allow for multiple different behaviors.

Each property definition exists inside of the <PROPERTY NAME="PropertyName">...</PROPERTY> node. PropertyName is the name that is specified in the module schema file as <PROPERTY>PropertyName.

In the same way, the <PROPERTY_GROUP NAME="PropertyGroupName">…</PROPERTY_GROUP> node section holds each property group definition. Here, PropertyGroupName is the name that is specified in the module schema file as <PROPERTY_GROUP>PropertyGroupName</PROPERTY_GROUP>.

Property group definitions support an additional attribute, MIN_OCCUR, shown in the example below.

<PROPERTY_GROUP NAME="PropertyGroupName" MIN_OCCUR="1">…</PROPERTY_GROUP>

In this example, the MIN_OCCUR attribute is defined as 1; therefore, all of the properties in the sample PropertyGroupName group must occur at least once in the rule manager property grid.

The structure of each property definition contained in a property group definition within the schema is identical to non-grouped property definitions. However, all properties within a property group are logically joined. Therefore, these properties must occur as a single unit in the rule manager. See the location_id_targetName property group definition example below.

<PROPERTY_GROUP NAME="location_id_targetName" MIN_OCCUR="1">
<PROPERTY NAME="location_id_targetName_id">
<XML_PATH>label/pointGeneratorSettings/pgModule
Settings/locations/location/@id</XML_PATH>
<DISPLAY>Location ID</DISPLAY>
<HELP_ID>170563</HELP_ID>
<CONTROL>
<TYPE>Dropdown</TYPE>
<POSSIBLE_VALUES>
<DATA_TYPE>Integer</DATA_TYPE>
<POPULATE>
<VALUE NAME="Top">7</VALUE>
<VALUE NAME="Bottom">8</VALUE>
<VALUE NAME="Middle">1</VALUE>
<DEFAULT>Middle</DEFAULT>
</POPULATE>
</POSSIBLE_VALUES>
</CONTROL>
</PROPERTY>
<PROPERTY NAME="location_id_targetName_targetName">
<XML_PATH>label/pointGeneratorSettings/
pgModuleSettings/locations/location/
@targetName</XML_PATH>
<DISPLAY>Location Target Name</DISPLAY>
<HELP_ID>170572</HELP_ID>
<CONTROL>
<TYPE>Dropdown</TYPE>
<POSSIBLE_VALUES>
<DATA_TYPE>String</DATA_TYPE>
<POPULATE>
<VALUE NAME="Web">
Profile_Web</VALUE>
<VALUE NAME="Flange">
Profile_Flange</VALUE>
<DEFAULT>Web</DEFAULT>
</POPULATE>
</POSSIBLE_VALUES>
</CONTROL>
</PROPERTY>
</PROPERTY_GROUP>

Each property in this property group is written as a value of an individual attribute of the <location> node. The software is not required to write the properties in property groups to the template as .xml attributes because these properties might also exist as node values in the template .xml file.

By convention, delivered property groups use the underscore (_) character. For example, a property group might define values that relate to the logical concept of location. The property group might further contain three properties named A, B, and C. In this case, the property group is named location_A_B_C.

By convention, the software creates a new name for each property within the group by joining the property group name with the property name. For example, the name for property A in the previous example is location_A_B_C_A.

  • You can give any unique name to property groups and properties that you define.

  • By convention, you can append a numeral to the end of each name to prevent conflict between almost identically named properties and property groups. For example, if you define two properties for editing color, the convention is to name the properties color1 and color2.

Many different .xml nodes, attributes, and special characters represent each piece of a property or property group schema definition. These nodes, attributes, and special characters are discussed in the following sections.

See Also

Label Rule Manager
Appendix: Annotation Rule Manager Customization