Category Archives: Smallworld

Smallworld Data Validation with FME

Hello, I built an FME process to validate couple of error types in Smallworld database. The errors that need fixing are:

  • Lines that don’t connect (I had some cable network in my database).

 

Cable lines that don't connect.

 

  • Intersections, that should have an object marking the intersection (In this case I had joints in the cable intersections, but some were missing).

 

A joint is missing from an intersection.

 

I read the cable and joint data to FME, validate it, find errors and report back to Smallworld. FME transformers that are really handy in inspecting geometry errors are

  • Snapper
  • LengthCalculator
  • Tester
  • Intersector
  • ListElementCounter
  • PointOnPointOverlayer

There are lots of transformers which could be used too, but I found those ones suitable for this validation case.

Here’s what the result looks like in Smallworld:

 

The red flag indicates cables that don't connect, and the orange flag indicates a missing joint.

 

This process is quite handy to validate invalid geometries and missing features. Data is read to FME from Smallworld, validated, and written back to Smallworld with just one click. After that the user fixes the features. Of course FME could also do the fixing, but here FME is working as a validation and reporting tool.

Leave a comment

Filed under Smallworld