ODN/PublicCatalog is the second module which encapsulates the functionality of data catalog. ODN/PublicCatalog holds metadata about each dataset, which is published by ODN. This data catalog is publicly visible, the primary users of this catalog are data consumers, who may browse/search the published datasets’ metadata; data consumer may also get a link to the dataset’s dump or API, so that they can consume the data in the dataset.
Every time a dataset is published by ODN/Publication module, it may be also published to the data catalog (module ODN/PublicCatalog). Data is being exported to ODN/PublicCatalog from ODN/InternalCatalog either automatically as new data is published by ODN/Publication module or manually on the request of data publisher/data administrator. The catalog in ODN/PublicCatalog module must contain reference to the Atom feeds, so that dumps of the datasets and the associated metadata may be downloaded; the catalog has to also provide a link to REST API and SPARQL endpoint associated with the dataset. Module ODN/PublicCatalog is internally using the same tool as ODN/InternalCatalog to ensure the core data catalog functionality, i.e. DKAN. PublicCatalog implements also REST API for datasets where data publisher chose to do so. This is sort of "not nice" from design perspective (as this mixes the sepration between ODN/Publication = data and ODN/PublicCatalog = metadata) but it is practical (it allows ODN to use REAST API features implemented in CKAN, avoiding duplicate implementation).
5.5.1. Interaction with other modules
This module is used by ODN/Management to create new record or adjust the existing record in ODN/PublicCatalog when the dataset is transformed by ODN/UnifiedViews and published by ODN/Publication module. The record in ODN/PublicCatalog is built based on the metadata in ODN/InternalCatalog and based on the information about the location of REST APIs, Atom feeds referring data dumps, etc., provided by ODN/Publication moduleODN/InternalCatalog is replicating datasets marked as public into this module.
As part of publication functionality, ODN/PublicCatalog may link to ODN/Storage (specifically to Virtuoso based SPARQWL endpoint GUI) - or ODN/Publication (links to file dumps served from ODN/Storage by Apache).