Registered collections

It is possible to register a collection explicitly with the Saxon Configuration.

On Java, this is done using the method Configuration.registerCollection(); the equivalent on .NET is Processor.RegisterCollection(). When the URI provided to fn:collection() has been registered in this way, the CollectionFinder is not invoked.

On Java, the argument supplied to Configuration.registerCollection() is an object of type ResourceCollection, and you can either use one of the standard collection types (CatalogCollection, DirectoryCollection, JarCollection, etc), or you can implement your own.

On .NET, Processor.RegisterCollection() accepts an object of type IEnumerable<IResource>: you can implement your own kind of IEnumerable and your own kind of IResource, or you can use an existing implementation.