Configuring the XML builder

The XML builder operates from XML data based on the XMLBuilderDiagram XML Schema Definition file. This XML data can come from input files that are specified at the diagram generations/updates, but they can also be automatically generated in memory using an external component. The content of the diagram generated from the same XML data can then be different depending on the properties that have been configured on the XML properties page.

The steps below focus on the configuration of the XML Builder Properties page.

The first time the XML Builder Properties page displays, the Builder Properties dialog box opens as follows:

XML Builder Property page default state
The XML Builder Property Page dialog is organized into four sections:

Steps:
  1. If the XML data input from which the schematic diagrams content will be generated are automatically built by an external component, type the ProgID of the COM class that will be used to generate this XML data in the Generate box.

    The ProgID is the string composed of the project name and the class name of the coclass.

    CautionCaution:

    The specified class must implement the ISchematicXMLGenerate interface of the esriSchematicUI.olb component.

    NoteNote:

    When this Generate parameter is not specified, users must browse to and select the desired input XML file at the beginning of the diagram generation.

  2. If the XML data input on which the schematic diagrams content will be updated is automatically built by an external component, type the ProgID of the COM class that will be used to update this XML data in the Update box.

    The ProgID is the string composed of the project name and the class name of the coclass.

    CautionCaution:

    The specified class must implement the ISchematicXMLUpdate interface of the esriSchematicUI.olb component.

    NoteNote:

    When this Update parameter is not specified, users must browse to and select the desired input XML file at the beginning of the diagram update.

  3. Check Initialize links vertices on the Geometry options section if you want the XML builder to build schematic diagrams in which the schematic links will display with vertices when the Vertices items exist in the input XML data.

    When this box is unchecked (default state), schematic links will be drawn as straight lines between the endpoints even if the Vertices items exist in the input XML data.

    CautionCaution:

    Some schematic layout algorithms execute from the real orientation of the segments in the diagram—for example, Geo - Partial Overlapping Links, Relative Main Line. If you plan to execute such algorithms on your diagram content, you need to check the Initialize links vertices to get good results.

  4. Check Simplify lines if you want the XML builder to automatically simplify the schematic link shapes when the Vertices items in the input XML data come with a very large number of vertices. Then, configure how this simplification must be done:
    1. Specify the Maximum allowable offset under which vertices can be eliminated.
    2. Select the offset unit in the drop-down list at the right.
      NoteNote:
      • The Simplify lines check box is enabled only when Initialize links vertices is checked.
      • The Maximum allowable offset text box and the offset unit drop-down list at its right is enabled only when Simplify lines is checked.

    The Schematics lines simplification applies the same Douglas-Peucker algorithm implemented for the Simplify Line geoprocessing tool when it is configured to work with the Point remove operator. This simplification removes extraneous bends and small intrusions and extrusions on a schematic link without destroying its essential shape. It keeps critical points that depict the essential shape of a schematic line and removes all other points.

    NoteNote:

    Schematics lines simplification is generally not necessary for the XML builder since you control the Vertices items in the input XML data you use for your diagrams generation/update.

  5. Check Automatic schematic feature class creation on the Miscellaneous section if you want the XML builder to automatically create a schematic feature class for managing the different SchematicFeatureClass items found in the input XML data when such a schematic feature class doesn't already exist for the schematic diagram template.

    When this check box is unchecked (default state), no new schematic feature class is created when the XML builder operates. For example, if in the input XML data there are SchematicFeatureClass items whose value is Stations, and there is no schematic feature class for the schematic diagram template to manage these SchematicFeatureClass items, no schematic features will be included in the generated diagram for these XML items.

    NoteNote:

    Checking this check box also allows the XML builder to automatically create PropertySet attributes when PropertySetProperty items are detected in the input XML data for any LinkFeature or NodeFeature item managed by a schematic feature class, and those attributes don't already exist for that schematic feature class. If it is unchecked and PropertySetProperty items are detected without the related PropertySet attributes, this information will be ignored.

  6. If the FeatureClassName items in the input XML data don't match the names of the schematic feature classes associated with the diagram template, you must specify correspondence rules in the Schematic feature class mapping section.

    If you want all FeatureClassName items whose value is FeatureClassNameN_InXMLFile in the input XML file to automatically match the schematic feature class associated with the schematic diagram template whose name is SchematicFeatureClassNameN_ForSchDiagTemp, you must specify the Schematic feature class mapping section as follows:

    FeatureClassNameN_InXMLFile=SchematicFeatureClassNameN_ForSchDiagTemp
    
    When there are different FeatureClassName items in the input XML file for which you want to specify the associated schematic feature class name, you must specify a mapping rule per line as in the following example:
    FeatureClassName1_InXMLFile=SchematicFeatureClassName1_ForSchDiagTemp
    FeatureClassName2_InXMLFile=SchematicFeatureClassName2_ForSchDiagTemp
    FeatureClassNameN_InXMLFile=SchematicFeatureClassNameN_ForSchDiagTemp
    

    A script can also be set in this section to dispatch items in the input XML data that are all related to a particular FeatureClassNameK_InXMLFile FeatureClass item into several SchematicFeatureClassNameN_ForSchDiagTemp schematic feature classes. For example, when specifying the following script:

    Stations=StationsFeeder1 (Feeder="1")
    Stations=StationsFeeder2 (Feeder="2")
    Stations=StationsFeeder3 (Feeder="3")
    
    The StationsFeeder1, StationsFeeder2, and StationsFeeder3 schematic feature classes will be automatically used for the Stations FeatureClass XML items where the Feeder PropertySetProperty value is 1, 2, or 3, respectively.

Related Topics

3/5/2014