Being able to read .SHX (shapefile index) that often accompany a shapefile is useful for two reasons :
1) Currently when the JDBC driver runs an SQL request with a condition it go through the Shapefile and the DBase III file sequentially, from the start to the end. It costs a lot.
Reading the shapefile index open a way to :
- first read DBase III content for matching records,
- then do direct access to the shapefile features and return them.
2) If a shapefile is provided with a .SHX file and that we become able to INSERT or DELETE records on it, we are expected to update this index file.