Catalogs are used for dependency resolution, as well as to install optional software. Dependency resolution occurs when an RPM bundle has requirements that are not already met or when dependent RPMs in the catalog are automatically installed.