Listing Topology Rules Used (in user friendly format)

1805
4
Jump to solution
08-03-2017 02:02 PM
RebeccaStrauch__GISP
MVP Emeritus

I have an ArcSDE (SQL) database and Feature Dataset with multiple layers involved in a Topology, with about a dozen rules.  I've added a new FC and I'm now working on setting up and modifying the rules.

I know I can right-click the properties of the topology to see the rules, but I can't expand the properties box to see all three columns in full.  Saving the rules creates a binary (non-readable) .rul file.  I tried a select-all, copy/paste from the properties window but that does not work.

I know that a dozen rules isn't so much that I couldn't just right them down (which is what I willdo for now), but wondering if anyone has a tool or procedure for converting/viewing the .rul file as a a text file....or any other simple tool.

I figure this question with either be something simple I am missing, someone has a snazzy tool, or not work pursuing, but worth asking in case it's one of the first two. 

Thanks

0 Kudos
1 Solution

Accepted Solutions
KathrynCliftonGIS
New Contributor III

I was just trying to find an answer to the same question, and I found a way to create this by Topology.

So, do the following:

1) add the Topology to ArcMap
2) right-click the Topology in the Table of Contents and choose Properties
3) select the Errors tab and click Generate Summary
4) then click Export to File (this will export the results to a comma-delimited text file)

5) Open Excel and create a new file
6) click Data, and choose From Text
7) select the file and choose Import
😎 within the Text Import Wizard, indicate that the data is delimited by commas and has headers

This will create a nicely formatted Excel spreadsheet with all of the rules and how many errors and exceptions exist.

Kathryn Clifton, GISP, PLS

View solution in original post

4 Replies
RebeccaStrauch__GISP
MVP Emeritus

I will answer and close (unless someone finds an answer) with the answer that it isn't possible (feel free to prove me wrong).

But to summarize, I will include some tips and something that almost got me what I wanted....but really just proved it wasn't possible (maybe with ArcObjects, but I'm not going there).

import arcpy
import os
path = r"C:\ArcGIS\Default.gdb"

arcpy.env.workspace = path
gdb_objects = arcpy.ListDatasets(wild_card=None, feature_type='Feature')
print "Feature datasets are: " + str(gdb_objects) #only feature datasets are here
for obj in gdb_objects:
    fd_path = os.path.join(path,obj)
    arcpy.env.workspace = fd_path #get a new workspace pointed to the fd
    fd_objects = arcpy.ListDatasets(wild_card=None, feature_type='')

    for dataset in fd_objects: #iterate feature dataset objects
        desc_dataset = arcpy.Describe(dataset)
        if desc_dataset.datasetType == 'Topology': #finding out whether is topology
            print dataset

It gives the name of the topology, but no other info.  But with that, and pointing me to the properties (I'm including 10.3 links)

I could then list the feature classes that are in the topology

pathtoTopology = r'full path to topology'
descTopoFC = arcpy.Describe(pathtoTopology)
print("{0}".format(descTopoFC.featureClassNames))


However, I could not find anything that would print the FeatureClass, Rule, and 2nd-FeatureClass (if applicable) as shown in the properties. 

So, closing this thread.  If anyone finds anything, I would be interested, but not worth spending more time on it for me right now.

0 Kudos
PierreMasson
Occasional Contributor

I want to do the same, any ideas how to?

0 Kudos
KathrynCliftonGIS
New Contributor III

I was just trying to find an answer to the same question, and I found a way to create this by Topology.

So, do the following:

1) add the Topology to ArcMap
2) right-click the Topology in the Table of Contents and choose Properties
3) select the Errors tab and click Generate Summary
4) then click Export to File (this will export the results to a comma-delimited text file)

5) Open Excel and create a new file
6) click Data, and choose From Text
7) select the file and choose Import
😎 within the Text Import Wizard, indicate that the data is delimited by commas and has headers

This will create a nicely formatted Excel spreadsheet with all of the rules and how many errors and exceptions exist.

Kathryn Clifton, GISP, PLS
LisaDavidson
New Contributor II

This worked great! Exactly what i was trying to do, thank you!

0 Kudos