Implementation note

The MutableStore, MutableStoreDescriptionBuilder and MutableReferenceDescription builder objects require a schema name to be defined in their constructors.

This is to ensure that only relevant customisations defined in a configurator object are applied during the build process, even where two stores in separate schemas have the same name. The implementation details can lead to API method calls where a schema name is used both in the configurator addStore(String, IStoreDescription) call and in the nested configurator factory method call that produces an IStoreDescription object.

configurator.addStore(SCHEMA,
    configurator.storeBuilder(SCHEMA)
        .withStoreName(STORE)
        ...    
);