Validate Topology

Feature Description

Validate topology is used to check objects in point, line, and region datasets, as well as between different types of datasets, that do not conform to inspection rules, and save the check results to a simple dataset or CAD dataset.

This function supports geometric checks and attribute checks:

  • Geometric Check: Used to check geometric issues such as spatial relationships, nodes, boundaries, overlaps, and gaps.
  • Attribute Check: Used to check field value completeness, validity, consistency, and business logic issues.

Function Entry

  • Inspect Data Quality Tab > Topology Group > Validate Topology.

Operation Steps

  1. Click the Validate Topology button to open the Validate Topology dialog box.
  2. Use the Add button on the toolbar to add datasets to participate in the validate topology. Two methods are provided: Add a Rule and Batch Add:
    • Add a Rule: Adds one dataset at a time.
      • If the current rule list is empty, the first vector dataset in the first datasource of the current workspace is automatically added.
      • If there are already datasets to be checked in the current rule list, the last dataset in the list is added again.
    • Batch Add: Opens a selection dialog box, allowing you to select multiple datasets at once.
  3. The dataset list will display Dataset, Datasource, and Topology Rules information. Select a record row; you can switch the datasource and dataset to be checked in the drop-down menu. Read-only datasources do not support validate topology, and the program will automatically filter out read-only datasources in the current workspace.
    • Dataset: The dataset to be validated for topology.
    • Datasource: The datasource containing the dataset to be validated for topology.
    • Topology Rules: Displays the rules used for checking the dataset to be checked. When geometric check is selected, existing topology rules are displayed; when attribute check is selected, attribute check rules are displayed. For detailed rule descriptions, see Validate Topology Rules.
  4. After selecting a dataset row on the left, configure the following parameters on the right:
    • Check Method: Sets the check type for the current check record, including Geometric Check and Attribute Check. The default value is Geometric Check. After switching the check method, the system will re-filter the topology rules list and parameters based on the new check method.
    • Geometric Check Parameters: When the check method is Geometric Check, set the following parameters:
      • Topology Rules: Rules used for geometric topology validation. The system will automatically filter applicable rules based on the dataset type to be checked. For detailed rule descriptions, see Validate Topology Rules. When duplicate topology rules (same dataset, same rule) are set, a prompt will appear indicating that the rule already exists. For example: The "no identical points" topology rule for dataset "CityA_P" already exists.
      • Tolerances: Tolerance values used for geometric topology validation and topology preprocessing, such as distances between nodes. Different topology rules require different tolerances; it is recommended to use the default tolerance. The tolerance unit is consistent with the dataset unit. The default tolerance is related to the coordinate system of the dataset. For detailed descriptions, see Tolerance Description.
      • Filter Expression: You can filter participating objects using a filter expression, so that only objects meeting the conditions participate in the check.
      • Repair Topology Error: The system can automatically repair errors detected by some topology rules. After selecting a topology rule that can be automatically repaired, the "Repair Topology Error" item will change from gray to checkable. After checking this item, the dataset to be checked will be repaired simultaneously during topology validation.

        The topology rules that can be automatically repaired are shown in the table below:

        Topology Rules Repair Method
        No Pseudo Nodes in Line Convert pseudo nodes to nodes, i.e., merge the two lines connected by the pseudo node into one line.
        L/R Has No Redundant Vertex Delete redundant nodes on line or region boundaries.
        Line Not Overlap Line If a line object in the dataset to be checked overlaps with a line object in the reference dataset, delete the overlapping part of the line object in the dataset to be checked.
        No Self Overlap in Line Delete the self-overlapping part of a line object.
        No Overlap in Line Delete the overlapping part of one of the line objects.
        Vertex Distance > Tolerance Snap all nodes within the tolerance range together, i.e., merge them into one node.
        Vertices Must Match Add matching nodes on the line object.
        Vertex Exists at Line Intersect Add intersection points at the intersections of two line segments.
        No Overlap in Region Delete the overlapping part of one of the regions.
        No Identical Points Points with the same spatial location will randomly retain one.
    • Attribute Check Parameters: When the check method is Attribute Check, the topology rules drop-down list displays attribute check rules. After selecting different Validate Topology Rules, set the following parameters:
      • Non-Null Check: Check whether the specified field value is null.
        • Check Field: Select the fields to participate in the non-null check, supporting multiple selections. If any selected field is null, an attribute check error is generated.
        • Filter Expression: Set the record range to participate in the check. If empty, all records in the current dataset to be checked will be checked.
      • Enumeration Value Check: Check whether the specified field value belongs to a predefined set of enumeration values.
        • Check Field: Select the field to perform the enumeration value check.
        • Enumeration Value: Set the set of allowed field values. Supports selection from the drop-down list or manual input; multiple enumeration values are separated by a semicolon (;), for example: Road; Bridge; Tunnel.
        • Filter Expression: Set the record range to participate in the check. If empty, all records in the current dataset to be checked will be checked.
      • Unique Value Check: Check whether the specified field value is unique, used to identify duplicate records.
        • Check Field: Select the field to perform the uniqueness check. This rule only supports single-field checks.
        • Filter Expression: Set the record range to participate in the check. If empty, all records in the current dataset to be checked will be checked.
      • Length Check: Check whether the field value length meets the constraint conditions.
        • Check Field: Select a character field to perform the length check.
        • Length Comparison: Set the comparison relationship between the actual length of the field and the field length parameter, such as equals, greater than, no less than, less than, or no more than.
        • Field Length: Set the length value for comparison. The field length must be a positive integer, calculated by character length.
        • Filter Expression: Set the record range to participate in the check. If empty, all records in the current dataset to be checked will be checked.
      • Value Range Check: Check whether the field value falls within the set range.
        • Check Field: Select a numeric field to perform the value range check.
        • Min: Set the lower limit of the allowed range. At least one of the minimum and maximum values must be filled.
        • Max: Set the upper limit of the allowed range. When both the minimum and maximum values are filled, the minimum value cannot be greater than the maximum value.
        • Include Lower Bound: Set whether to include the minimum value during the check, used to express closed or open interval boundaries.
        • Include Upper Bound: Set whether to include the maximum value during the check, used to express closed or open interval boundaries.
        • Filter Expression: Set the record range to participate in the check. If empty, all records in the current dataset to be checked will be checked.
      • Field Relationship Check: Check whether the field values of two fields in the same record within the same dataset satisfy a specified comparison relationship.
        • Check Field 1: Select the first field to participate in the comparison.
        • Comparison Relationship: Set the comparison relationship between Check Field 1 and Check Field 2, such as equals, not equals, greater than, no less than, less than, or no more than.
        • Check Field 2: Select the second field to participate in the comparison. The types of the two check fields must be consistent or comparable.
        • Filter Expression: Set the record range to participate in the check. If empty, all records in the current dataset to be checked will be checked.
      • Association Consistency Check: Check the record association and attribute consistency between two datasets based on the association field.
        • Association Field: Select the field in the dataset to be checked for association matching.
        • Check Field: Select the field in the dataset to be checked to participate in field value consistency comparison. This parameter is required when performing a field value inconsistency check.
        • Filter Expression: Set the record range in the dataset to be checked that participates in the check. If empty, all records in the current dataset to be checked will be checked.
      • Geometric Properties Consistency Check: Check whether the property field value is consistent with the geometric area or geometric length of the object.
        • Check Field: Select a numeric field that stores area or length values.
        • Geometric Quantity Type: Set the geometric quantity participating in consistency judgment. Area data supports area check, and line data supports length check.
        • Allowable Error: Set the allowable error range between the property field value and the geometric calculation value. The allowable error must be no less than 0.
        • Filter Expression: Set the record range to participate in the check. If empty, all records in the current dataset to be checked will be checked.
      • Custom SQL Check: Express complex attribute check logic through SQL statements.
        • SQL Statement Input: Enter a query SQL statement. Each record in the SQL query result is considered a problematic record; if the query result is null, the check is considered passed.
  5. Set the reference data, including datasource and dataset information.
    • Datasource: The datasource of the reference dataset, defaulting to the datasource of the dataset to be checked.
    • Dataset: Select the reference dataset for the check. Depending on the topology rules, some geometric rules use two datasets for topology validation, such as "point must on line," which requires a line dataset as a reference dataset; other rules only check within one dataset, such as "no overlap in line," where only the dataset to be checked needs to be selected. In attribute checks, only the Association Consistency Check requires setting reference data.
    • Reference Association Field: This parameter is available when the check method is Attribute Check and the topology rule is Association Consistency Check. Used to select the field in the reference dataset that matches the association field of the dataset to be checked.
    • Reference Field: This parameter is available when the check method is Attribute Check and the topology rule is Association Consistency Check. Used to select the field in the reference dataset that participates in field value consistency comparison.
  6. Set the storage location and name of the result data.
    • Datasource: The datasource of the result dataset, defaulting to the datasource of the dataset to be checked.
    • Dataset: After selecting a check record in the list box, you can set the name of the result dataset here. The default name is TopoCheckResult. The result dataset type is related to the topology rules set for this record.
    • Save to the Same Dataset: If checked, all check results in the list box will be saved to the same dataset, and the dataset name is the name currently displayed in the result dataset. Geometric check results and attribute check results from the same batch can be saved to the same result dataset. If unchecked, you can set the result dataset name for each check record in the list box separately.
      • CAD Dataset: Checked by default, meaning the result is saved as a CAD dataset type.
      • Topology Dataset: If checked, the result is saved as a topology dataset type. This dataset must ensure that the source dataset, reference dataset, and result dataset are in the same datasource.
  7. Check the Auto Close When Finished check box. After the application completes the topology validation for all records in the list box, the Validate Topology dialog box will be automatically closed.
  8. Check the When Finished, Open the Error Checker check box. After completing the topology validation, the Error Inspector dialog box will be automatically opened.
Notes:
  • If there are self-intersecting region objects in the dataset to be checked, the No Gaps in Region rule check cannot be performed on that region. It is recommended to first perform the No Self-Overlap in Region rule check, or manually handle the self-intersecting region, and then perform the No Gaps in Region rule check.
  • Attribute checks require complete configuration of required parameters such as check fields, enumeration values, length, value range, comparison relationship, reference data, or SQL statements. If the parameters are incomplete or the types are incompatible, the check cannot be performed.
  • For value range check, at least one of the minimum or maximum values must be set; when both the minimum and maximum values are set, the minimum value cannot be greater than the maximum value.
  • The custom SQL check only supports query SQL statements. Each record in the SQL query result is considered a problematic record.

Related Topics

Topology Overview

Topology Preprocessing

Error Inspector

Topology Diagram