Skip to: Site menu | Main content

GeoTools

The Open Source Java GIS Toolkit

Validation Extension Print

Module Maintainer: Brent Owens
Status:
Email Help: Geotools-gt2-users@lists.sourceforge.net
Volunteer: geotools-devel@lists.sourceforge.net

Recent Development

For the 2.2.x branch the validation module has:

  • @completed goal@

Module Status

The validation module is stable.

IP Check

Brent Owens sent the following email to the list on April 17th, 2006

I have nearly completed the IP check on the validation module of Geotools.

All the headers have been verified and corrected. I have also received word from Paul Ramsey (Refractions Research) that all the code in the module has been given to the community.

Here is a list of files that had their headers changed (some had duplicate headers):

DefaultFeatureResults.java

DefaultFeatureValidation.java

DefaultIntegrityValidation.java

FeatureValidation.java

IntegrityValidation.java

PlugIn.java

Validation.java

ValidationBeanInfo.java

ValidationResults.java

Validator.java

TempFeatureResults.java

FeatureValidationTest.java

IntegrityValidationTest.java

RoadNetworkValidationResults.java

RoadValidationResults.java

UniqueFIDIntegrityValidation.java

ValidationPlugInTester.java

ValidationProcessorTest.java

GazetteerNameValidationBeanInfoTest.java

GazetteerNameValidationTest.java

NullZeroValidationTest.java

RangeFeatureValidationTest.java

XMLReaderTest.java

validation/relate/*

PlugInDTO.java

TestDTO.java

TestSuiteDTO.java

IsValidGeometryValidation.java

LineCoveredByPolygonValidation.java

LineNoSelfOverlappingValidation.java

LinesNotIntersectValidation.java

ArgHelper.java

ReaderUtils.java

ValidationException.java

WriterUtils.java

XMLReader.java



Brent Owens

(The Open Planning Project)

Pertti Tapola points out that the following files contain GPL copyright notices, often in addition to the GeoTool LGPL header. TO_RESOLVE - this can be removed as per Chris Holmes's statement.

ext\validation\src\org\geotools\validation\attributes\EqualityValidation.java

ext\validation\src\org\geotools\validation\attributes\NullZeroValidation.java

ext\validation\src\org\geotools\validation\attributes\RangeValidation.java

ext\validation\src\org\geotools\validation\attributes\UniqueFIDValidation.java

ext\validation\src\org\geotools\validation\attributes\UniquityValidation.java

ext\validation\src\org\geotools\validation\DefaultFeatureValidation.java

ext\validation\src\org\geotools\validation\DefaultIntegrityValidation.java

ext\validation\src\org\geotools\validation\dto\PlugInDTO.java

ext\validation\src\org\geotools\validation\dto\TestDTO.java

ext\validation\src\org\geotools\validation\dto\TestSuiteDTO.java

ext\validation\src\org\geotools\validation\FeatureValidation.java

ext\validation\src\org\geotools\validation\IntegrityValidation.java

ext\validation\src\org\geotools\validation\PlugIn.java

ext\validation\src\org\geotools\validation\relate\ContainsIntegrity.java

ext\validation\src\org\geotools\validation\relate\ContainsIntegrityBeanInfo.java

ext\validation\src\org\geotools\validation\relate\CrossesIntegrity.java

ext\validation\src\org\geotools\validation\relate\CrossesIntegrityBeanInfo.java

ext\validation\src\org\geotools\validation\relate\DisjointIntegrity.java

ext\validation\src\org\geotools\validation\relate\DisjointIntegrityBeanInfo.java

ext\validation\src\org\geotools\validation\relate\IntersectsIntegrity.java

ext\validation\src\org\geotools\validation\relate\IntersectsIntegrityBeanInfo.java

ext\validation\src\org\geotools\validation\relate\OverlapsIntegrity.java

ext\validation\src\org\geotools\validation\relate\OverlapsIntegrityBeanInfo.java

ext\validation\src\org\geotools\validation\relate\RelateIntegrity.java

ext\validation\src\org\geotools\validation\relate\RelateIntegrityBeanInfo.java

ext\validation\src\org\geotools\validation\relate\RelationIntegrity.java

ext\validation\src\org\geotools\validation\relate\RelationIntegrityBeanInfo.java

ext\validation\src\org\geotools\validation\relate\SpatialTestCase.java

ext\validation\src\org\geotools\validation\relate\TouchesIntegrity.java

ext\validation\src\org\geotools\validation\relate\TouchesIntegrityBeanInfo.java

ext\validation\src\org\geotools\validation\relate\WithinIntegrity.java

ext\validation\src\org\geotools\validation\relate\WithinIntegrityBeanInfo.java

ext\validation\src\org\geotools\validation\spatial\IsValidGeometryValidation.java

ext\validation\src\org\geotools\validation\spatial\LineCoveredByPolygonValidation.java

ext\validation\src\org\geotools\validation\spatial\LineNoSelfOverlappingValidation.java

ext\validation\src\org\geotools\validation\spatial\LinesNotIntersectValidation.java

ext\validation\src\org\geotools\validation\Validation.java

ext\validation\src\org\geotools\validation\ValidationBeanInfo.java

ext\validation\src\org\geotools\validation\ValidationResults.java

ext\validation\src\org\geotools\validation\Validator.java

ext\validation\src\org\geotools\validation\xml\ArgHelper.java

ext\validation\src\org\geotools\validation\xml\ReaderUtils.java

ext\validation\src\org\geotools\validation\xml\ValidationException.java

ext\validation\src\org\geotools\validation\xml\WriterUtils.java

ext\validation\src\org\geotools\validation\xml\XMLReader.java

ext\validation\test\org\geotools\validation\attributes\NullZeroValidationTest.java

ext\validation\test\org\geotools\validation\attributes\RangeFeatureValidationTest.java

ext\validation\test\org\geotools\validation\FeatureValidationTest.java

ext\validation\test\org\geotools\validation\IntegrityValidationTest.java

ext\validation\test\org\geotools\validation\relate\OverlapsIntegrityTest.java

ext\validation\test\org\geotools\validation\RoadNetworkValidationResults.java

ext\validation\test\org\geotools\validation\RoadValidationResults.java

ext\validation\test\org\geotools\validation\UniqueFIDIntegrityValidation.java

ext\validation\test\org\geotools\validation\ValidationPlugInTester.java

ext\validation\test\org\geotools\validation\ValidationProcessorTest.java

ext\validation\test\org\geotools\validation\xml\XMLReaderTest.java

Future Plans

The validation module depends on an the definition of a "typeRef" basically encoding a "datastoreId:::typeName" into a string for lookup into a Registry. The registery interface is provided by GeoServer (and also by uDig) as a way of letting integrity tests lookup a feature source to verification.

The is a bad idea for two reasons:

  • it is not strongly typed
  • it causes confusion with the namespace:typeName used during GML output

There are two solutions:

  • use the TypeName (extends Name) from GeoAPI, as provided for in 2.3 Feature Model development
  • use the Catalog System IGeoResource (an actual resource handle)

Both offer strong typing and avoid the possibility of confusion.

Outstanding Issues

Errors were reported by the JIRA trusted connection.

  • Unrecognized application: confluence:8447594
jira.codehaus.org (4 issues)
T Key Summary Assignee Reporter Pr Status Res Created Updated Due
Bug GEOT-583 ValidationProcessor.runFeatureTests() corrupts tests list Unassigned Paolo Rizzi Major Open UNRESOLVED Jun 14, 2005 Nov 15, 2006
Bug GEOT-1450 BBOXImpl.evaluate(Object feature) bug Unassigned Christophe Rousson Major Open UNRESOLVED Aug 22, 2007 Aug 22, 2007
Bug GEOT-672 PolygonNoGapsValidation needs to handle MultiPolygons Unassigned Cory Horner Minor Open UNRESOLVED Aug 24, 2005 Aug 24, 2005
Sub-task GEOT-1894 extension/validation The origins of the test-data need vetting Unassigned Adrian Custer Minor Open UNRESOLVED Jul 04, 2008 Jul 10, 2008