Title: Open Geospatial Consortium Catalogue Services
1Open Geospatial Consortium Catalogue Services
- History and activities
- Douglas Nebert, FGDC
2Overview
- Inception of Catalogue Services V1.0
- Geospatial Profile Implementation
- Catalogue Interoperability Profile (CIP)
- CORBA Implementation
- Catalogue Services 2.0 Concepts
- Protocol Bindings and Profiles
- Interest in Web Services
3OGC Implementation Specs
- Abstract Specification Topic documents called
for the specification of interfaces for discovery
of geospatial resources - Request For Proposals published to assess
industry interest in catalog services - Responses guided primarily through sponsored
integrators and interests
4Objectives of Catalog Services
- To define interfaces to support the discovery of
and handles to geospatial information (feature
collections, datasets) and services. - To integrate with or complement existing
technologies and OGC specifications wherever
possible
5Catalog-based architecture
Client
Description (Metadata)
Resource
6Catalog Services Version 1.0
- Response to standardization interests from the
(vector) geospatial, earth observation, and
defense communities for interoperable search
across distributed catalogues - Published in 1999 as an OGC Specification
- One abstract model (UML) and three Implementation
Profile sections
7Search abstraction
- Catalogue services were designed around an
abstract query model defined by the ISO23950/ANSI
Z39.50 standard - Well-known fields are identified for
cross-catalogue search (e.g. title) that are
independent of native document structure - Well-known response messages include Brief,
Summary, and Full designations - Format of response syntax was also defined, e.g.
XML, text, HTML
8Query Language Premise
- Common Query Language predicate language (e.g.
WHERE clause) that can be transformable to/from
CQL without loss - Z39.50 RPN query (Type-101)
- OGC Filter language (POST)
- OGC Common Query Language (GET)
9Version 1.0 design
- Implementation Profiles in the specification
- CORBA
- OLE/COM, OLEDB
- Z39.50
- Interoperability bridges were demonstrated at the
OGC Southampton meeting in 1999 to pass search
between CORBA and Z39.50
10Catalog Services Response
Fine UML Model
Coarse UML Model
CORBA
OLEDB
CORBA
WWW/ Z39.50
Normative
Informative
Catalog Services Specification 1.0 passed August
1999
11Details
- Coarse-grain model is more message-oriented,
supportive of and mapped to key Z39.50 concepts,
ideal for general solutions, Relatively simple. - Fine-grain model is more object-oriented (many
objects), asynchronous, ideal for enterprise
solutions. Very complex. - Both approaches session based with a balloon
proviso for Stateless capabilities
12Features
- A catalog can reference data or services through
indexed, structured metadata - Multiple query languages supported
- Common Query Language (CQL) is described using
BNF as a reasonable subset of the SQL WHERE
statement against abstract target fields - Capabilities function intended to share service
details (like explain) - Element set concept preserved (Brief, Full)
- Response format preserved (XML, HTML, etc)
13Packages in Catalog
Catalog Service
Discovery
Management
Access (Order)
required
optional
optional
Discovery is the most common set of
functions supported by the specification,
management and access/order are not mandatory.
Details exist in CIP, for example, for order
functionality
14Version 1.0 Profiles
- Community-defined profiles were agreed-upon,
generally outside of OGC, for specific contexts
and payloads - Geospatial Profile GEO
- Catalogue Interoperability Profile (CIP)
- CORBA Profile (part of specification)
- Identify the context of application, special
metadata requirements, and more rigorous
opportunity for conformance testing
15Version 1.0 Profiles
- Z39.50 Geospatial Profile GEO designed to
provide search facility against heterogeneous
metadata formats (400 catalogues) - Z39.50 Catalog Interoperability Profile (CIP)
developed through CEOS members for earth
observation catalogues (10 catalogues) - CORBA Profile implemented by Geodan in the
Netherlands (5 catalogues) - OLEDB Profile never commercially implemented
16Evolving Interests
- Original Web Mapping Testbed identified a need
for a simpler HTTP-based interface for catalogs
to parallel GET-style request/response pairs of
emerging Web Services Model - Multiple services in testbed also showed a
requirement for a services metadata model and
service registry as a catalog implementation - Interest in elaborating optional management and
access interfaces within Catalog Services spec
17Issues with WMT approach
- HTTP approach well-liked, simple
- Crawler method to populate services catalog also
popular - Services registry used model tuned to discovery
of WMS layers, not clear if adaptable to other
services - Approach not consistent with emerging Web Service
Registries (UDDI, ebXML) - Poor description of data (layers), no links to
data metadata
18Stateful/Stateless
- Message-based request-response model is
preferred by many for all types of Web Services
inside and outside of OGC. Also referred to as
stateless. - Stateless and stateful (session) approaches for
catalogs can be used equally well for data and
for services - Invocation can be styled after the GET approach
of WMS and the POST approach of WFS following
19Catalogue Services 2.0
- Implementation profiles removed from
specification - Abstract model plus Protocol Binding chapters to
describe specific implementation context - Application Profile documents now required to
provide selection of Protocol Binding, specific
use context, restricted/extended operations, and
metadata schema(s) used in response
20Catalogue Service Protocol Bindings
- CORBA Binding carrying forward previous
capabilities - Z39.50 Binding specifies three implementation
environments - Search and Retrieval Web, SRW (SOAP)
- Search and Retrieval URL, SRU (Get)
- Z39.50 over TCP/IP (traditional)
- HTTP Protocol Binding using GET POST, known as
Catalogue Service for the Web, CS-W
21CS-W over HTTP
- CS-W is the primary Web/HTTP environment for
stateless access to a catalogue - Two draft Application Profiles have been created
for CS-W - ebRIM Registry Information Model Profile
- ISO19115/19119 Profile
22CS-W profiles
- Profile services should interoperate by
- Adopting basic interfaces (getCapabilities,
describeRecordType, getRecord) - Supporting neutral query entry points (e.g.
title creator - Support GET and POST methods
- Respond with common Brief record as XML
23ISO19115/19119 App Profile
- Manages two metadata resource types
- ISO 19115 Data descriptions
- ISO 19119 Service descriptions
- All properties in metadata may be searchable
- Assertions can be traversed that define data and
service associations - Originated in NRW Germany SDI and in deployment
testing in various parts of Europe - Permits SOAP access, WSDL declaration
- Recommended for Implementation Specification
status, November 2005
24ebXML Registry Information Model Application
Profile
- General purpose registry that can be applied to
describe data, services, schemas, documents, etc. - Adopts ebXML RIM metadata model for query on
small set of common properties - Objects being described are extrinsic objects
and are not fully queryable - May reference service instance WSDL
- Recommended for Implementation Specification
status, November 2005
25Alternatives
- Formal ebRIM provides SQL and SOAP interfaces and
free implementation outside OGC - SRU/SRW deployed in the library community on
Dublin Core-style metadata and library catalogues - UDDI well-suited to discovery of services, but
not to specific content