Output formats

The Apollo Catalog offers several encoding formats - or representations in REST speak - for the catalog resources. All these formats are accessible using the REST endpoints. The ebXML formats is also accessible when using the CSW endpoint.

Using profiles

Apollo encoding supports the notion of profiles, i.e. th ability to request views that contain a certain subset of the data.
Main profiles are full, summary, brief. The full profile is the default one when asking for a resource by id, while the brief profile is the default one when retrieving multiple resources. The profile can be explicitly requested by using the profile parameter in REST queries, as described in the REST section.

HTML

The HTML format is a convenient way to obtain a view on the resources that is directly viewable and browsable in web browsers.
The Content section of this catalog web interface is actually the HTML representation of the main REST endpoint of the catalog. Using this catalog web interface actually leverages the REST endpoints and filtering attributes described in the REST section.

JSON

The JSON encoding is mostly a one-to-one mapping of the core catalog model into JSON. JSON types are named after their Java counterparts, i.e. with qualified class names such as com.erdas.rsp.babel.model.CatalogItem
Any REST query can produces JSON-encoded results by appending the .json extension to it, e.g. /content/catalog/items.json.

JSON Model

The JSON model is itself exposed as a set of resources, under the REST path /content/catalog/mappings, using this URL pattern :

/content/catalog/mappings/{class name}/{profile}
As a consequence, the description of the JSON model can be browsed in the catalog web interface, e.g. the CatalogItem description. The whole model can be browsed either by browsing through the HTML representation, or by double clicking a subnode of the "Catalog Objects" tree in Advanced Search panel on the left.

JSON Profiles

When using the JSON encoding, usage of profiles is a major mean of optimization and performance tuning, as it allows to retrieve partial views of objects adapted to the usecase. When performance is at stake, retrieving only the minimal set of data is important.

The set of available profiles is displayed at the top right of the JSON model description page of any resource type, e.g. /content/catalog/mappings/com.erdas.rsp.babel.model.CatalogItem.
Clicking on a profile will bring the description of the model subset retrieved by that profile.

JSON Reflection

As explained above, the JSON model is exposed itself as a set of REST resources. As a direct consequence, the JSON object model is also available encoded itself in JSON by appending the .json extension, thereby allowing reflection.

For instance, the model description of the full JSON encoding for OgcService can be fetched at
/content/catalog/mappings/com.erdas.rsp.babel.model.ows.OgcWebService/full.json

KML

GeoRSS

Text

ebXML