MOBY-S Central Registry ("MOBY Central")

The MOBY Central registry allows registration of instances of MOBY-compliant services, as well as the data-object classes, service classes, and namespaces required by those services. A MOBY compliant service (registered as having the service protocol "moby")is one that uses only object/service classes defined in the MOBY Central registry, presents its service interface via SOAP, and registers this service interface in MOBY Central. In the coming months it will be expanded to allow the registration of non-MOBY SOAP services, as well as CGI services, but this will not affect the API described below for MOBY-SOAP services. The MOBY Registry is aware of both class and service-type ontologies, and is able to expand its reporting of valid service providers through the traversal of these ontologies.

MOBY Central Procedure Calls Overview

The following readonly procedure calls must be implemented by any instance of a MOBY Central registry:
findService Locate a service instance, matching various characteristics, such as the provider name, the kind of input expected by the service, the kind of output it provides, etc.
retrieveService Retrieve the definition for a service instance, as specified in WSDL format. This information is used by the client to compose queries.
retrieveResourceURLs Retrieve the URLs of all registered services.
retrieveServiceProviders Retrieve the names of all registered service providers. This allows you to see what sites are providing MOBY services (in the dozens).
retrieveServiceNames Retrieve the names of all registered services.
retrieveServiceTypes Retrieve the definitions and registration details of all registered service types.
retrieveObjectNames Retrieve the definitions and registration details of all registered object types.
retrieveObjectDefinition Retrieve the class definition, in the form of the full registration details for that class type.
retrieveNamespaces Retrieve a list of all registered namespaces
retrieveObjectSchema Retrieve an XML schema representation of a particular object class. This is currently not implemented since it appears to be impossible to represent MOBY Objects in XML Schema.
Relationships Retrieve a list of MOBY object classes having a specified relationship with the given class

The following procedure calls must be implemented by a MOBY Central registry that also allows write access:
registerObjectClass Register a new object class. This is useful if you want to add to MOBY's object ontology, by creating a new data type.
deregisterObjectClass Deregister a deprecated object class. If your object is no longer useful, you can remove it from the ontology with this procedure.
registerServiceType Register a new service type. MOBY's service ontology (we need a link) is pretty small (most services are of type 'Retrieval'). If you need to expand the ontology, this procedure does it.
deregisterServiceType Deregister a deprecated service type.
registerNamespace Register a new namespace. MOBY has a pretty large set of namespacesneeds a link
deregisterNamespace Deregister a deprecated namespace term
registerService Register a new service instance. You have a new service you'd like to share with the world. (There's a tutorial to show you how to do it with Perl.)
deregisterService Deregister a service instance. This function is targeted for deprecation, but currently still works.

The following procedure calls may be implemented in a MOBY Central registry:
DUMPneeds a link dump out the entire database
registerServiceWSDL register a service based on an input WSDL document