CASImpl has a method initCASIndexes.
This method is called by lots of test cases, and by the main routine of
doCreateCAS - it is supposed to set up the "built-in" indexes for the CAS.
It sets up 2 of these:
1) the "AnnotationIndex"
2) the "SofaIndex": an index over SofaFSs.
It seems to me that these are being set up in the "base" CAS.
Later, I see when a new View is created, it calls
new CASImpl(the baseCas, aSofa) - which calls
new FSIndexRepositoryImpl(this,
(FSIndexRepositoryImpl)cas.getBaseIndexRepository());
to set up the view's index repository.
That constructor seems to use the base CAS's indexes to set up
corresoponding indexes in the view. This has the effect that each view
has the built-in "SofaIndex" as well as "AnnotationIndex"
Should the base view only have a "SofaIndex" (and not an
"AnnotationIndex") and should the other views not have a "SofaIndex"?
-Marshall