Service Registry 3.1 User's Guide

Chapter 2 Searching the Registry

The Search and Explore tabs in the menu area allow you to search the Registry.

Using the Search Tab

Click the Search tab. The Search form opens. The form contains a Select Predefined Query combo box. It also contains a description of the selected query and three buttons:

The remaining contents of the form depend on which query you select. The default query is Basic Query.

The next few sections describe how to use these components.

Selecting a Query

The Select Predefined Query combo box contains the items shown in Table 2–1.

Table 2–1 Predefined Queries

Query Name 

Search Purpose 

Basic Query 

The default generic query, which allows you to search by object type, name, description, and classification 

Basic Query - Case Sensitive 

Case-sensitive version of Basic Query 

FindAllMyObjects 

Finds all objects owned (published) by the user who makes the query. May take a long time if the user owns many objects 

GetCallersUser 

Finds the User object for the user who makes the query

WSDL Discovery Query 

Finds Web Services Description Language (WSDL) documents 

WSDL Binding Discovery Query 

Finds abstract service interfaces protocol bindings described as WSDL Binding definitions 

WSDL Port Discovery Query 

Finds implementations of service interfaces described as WSDL Port definitions 

WSDL PortType Discovery Query 

Finds abstract service interfaces described as WSDL PortType definitions 

WSDL Service Discovery Query 

Finds web services described as WSDL Service definitions 

The default selection is Basic Query. The search form for Basic Query and Basic Query — Case Sensitive contains the following components:

You can specify any or all of these criteria in a single search. The following sections describe how to perform basic queries:

Use the FindAllMyObjects query to search for all the objects that you have published. The query results list all the objects you own except for AuditableEvent objects, which should not be edited or deleted.

Use the GetCallersUser query to view or modify data for the user you created when you registered.

See Performing WSDL Queries for information on using the WSDL queries.

Searching by Object Type

The simplest search is by object type only.

The default choice in the Object Type combo box is RegistryObject, which finds all objects in the Registry. To narrow the search, change the object type.

The ClassificationNode choice lists concepts within classification schemes. ClassificationNode is a synonym for Concept.

Table 2–2 describes the object types available in the Registry.

Table 2–2 Service Registry Object Types

Object Type 

Description 

AdhocQuery

Represents an ad hoc query expressed in a query syntax. AdhocQuery objects are used for discovery of registry objects. AdhocQuery objects are similar in purpose to the concept of stored procedures in relational databases. For example, the predefined queries in the Search panel are all AdhocQuery objects.

Association

Defines a relationship between two objects. 

AuditableEvent

Provides a record of a change to an object. A collection of AuditableEvent objects constitutes an object's audit trail.

Classification

Classifies an object by using a ClassificationScheme.

ClassificationNode

Represents a taxonomy element that has a structural relationship with other elements in an internal ClassificationScheme. Also called a Concept.

ClassificationScheme

Represents a taxonomy used to classify objects. In an internal ClassificationScheme, all taxonomy elements are defined in the registry as Concept instances. In an external ClassificationScheme, the values are not defined in the registry as Concept instances but instead are referenced by their String representations.

ExternalIdentifier

Provides additional information about an object by using String values within an identification scheme (an external ClassificationScheme). Examples of identification schemes are DUNS numbers and Social Security numbers.

ExternalLink

Provides a URI for content that resides outside the registry. 

ExtrinsicObject

Provides metadata that describes submitted content whose type is not intrinsically known to the registry and that therefore must be described by means of additional attributes, such as MIME type. 

Federation

Represents an affiliated group of registries. 

Notification

Represents a notification from the registry regarding an event that matches a Subscription.

Organization

Provides information about an organization. May have a parent, and may have one or more child organizations. Always has a User object as a primary contact, and may offer Service objects.

Person, User

Provides information about persons and registered users within the registry. User objects are affiliated with Organization objects.

Registry

Represents a registry. 

RegistryPackage

Represents a logical grouping of any number of registry objects. 

Service

Provides information on a service. May contain one or more ServiceBinding objects.

ServiceBinding

Represents technical information on how to access a service. 

SpecificationLink

Provides the linkage between a ServiceBinding and a technical specification that describes how to use the service by using the ServiceBinding.

Subscription

Defines a User's interest in certain types of AuditableEvent. A User creates a Subscription in order to receive notification of certain types of events.

ProcedureTo Search by Object Type

  1. Choose an object type from the Object Type combo box.

  2. Click the Search button, or place the cursor in the Name or Description text field and press Return.

    The search returns all objects of the specified type. You can narrow the search by specifying a name, description, status, or classification.

Searching by Name and Description

You can search for objects by name, by description, or by both.

ProcedureTo Search by Name or Description

  1. Type a string in the Name or Description field.

    By default, the search looks for a name or description that matches the entire string that you typed. You can use wildcards to find a range of objects.

    The wildcard characters are percent (%) and underscore (_).

    The percent wildcard matches multiple characters:

    • Type %off% to return names or descriptions that contain the string off, such as Coffee.

    • Type nor% to return names or descriptions that start with Nor or nor, such as North and northern.

    • Type %ica to return names or descriptions that end with ica, such as America.

    The underscore wildcard matches a single character. For example, the search string _us_ would match objects named Aus1 and Bus3.

  2. Click the Search button or press Return.

Searching by Status

An object in the Registry can have one of four statuses:

The default status of an object in the Registry is Submitted. An object can be approved or deprecated by a Registry administrator or by the owner of the object. An ExtrinsicObject has the status Withdrawn if its repository item has been removed.

ProcedureTo Search by Status

  1. Choose a status from the Status combo box.

  2. Click the Search button, or place the cursor in the Name or Description text field and press Return.

    The search returns all objects that have the specified status. You can narrow the search by specifying an object type, name, description, or classification.

Searching by Classification

Classification objects classify or categorize objects in the registry by using unique concepts (ClassificationNode objects) that define valid values within a classification scheme. The classification scheme is the parent in a tree hierarchy that contains generations of child concepts. Table 2–3 describes the classification schemes provided by the Registry specifications, which are called canonical classification schemes. Many of the terms in this table are defined in the Registry specifications.

Table 2–3 Canonical Classification Schemes

Classification Scheme Name 

Usage 

Description or Purpose 

AssociationType

Frequently 

Defines the types of associations between registry objects. Used as the value of the associationType attribute of an Association instance to describe the nature of the association.

ContentManagementService

Rarely 

Defines the types of content management services. Used in the configuration of a content management service, such as a validation or cataloging service. 

DataType

Frequently 

Defines the data types for object attributes. Used as the value of the slotType attribute of a Slot instance to describe the data type of the Slot value.

DeletionScopeType

Occasionally 

Defines the values for the deletionScope attribute of the RemoveObjectsRequest protocol message.

EmailType

Rarely 

Defines the types of email addresses. 

ErrorHandlingModel

Rarely 

Defines the types of error handling models for content management services. 

ErrorSeverityType

Rarely 

Defines the different error severity types encountered by the Registry while processing protocol messages. 

EventType

Occasionally 

Defines the types of events that can occur in a registry. 

InvocationModel

Rarely 

Defines the different ways that a content management service can be invoked by the Registry. 

NodeType

Occasionally 

Defines the different ways in which a ClassificationScheme can assign the value of the code attribute for its ClassificationNode (Concept) objects.

NotificationOptionType

Rarely 

Defines the different ways in which a client can be notified by the registry of an event within a Subscription.

ObjectType

Occasionally 

Defines the different types of RegistryObject a registry may support.

PhoneType

Rarely 

Defines the types of telephone numbers. 

QueryLanguage

Rarely 

Defines the query languages supported by the Registry. 

ResponseStatusType

Rarely 

Defines the different types of status for a RegistryResponse.

StatusType

Occasionally 

Defines the different types of status for a RegistryObject.

SubjectGroup

Rarely 

Defines the groups that a user can belong to for access control purposes. 

SubjectRole

Rarely 

Defines the roles that can be assigned to a user for access control purposes. 

The primary purpose of the canonical classification schemes is not to classify objects but to provide enumerated types for object attributes. The Registry also contains a number of non-canonical classification schemes, and you can create your own.

ProcedureTo Search by Classification

  1. Click the Select Classification Node button.

    The Classification Node Selector window appears.

  2. Click the folder icon for the classification scheme you want to use.

    The number in parentheses after each entry indicates how many concepts (ClassificationNode objects) the parent contains.

  3. Expand concept nodes beneath the classification scheme until you find the leaf node by which you want to search. A leaf node is a node with no concepts beneath it.

  4. Select the leaf node.

  5. Click Close in the Classification Node Selector window.

    The ID of the concept you chose appears in a Value text field.

  6. Click the Search button, or place the cursor in the Name or Description text field and press Return.

Performing WSDL Queries

The Search panel contains predefined queries that allow you to search for WSDL files using different search criteria:

This section describes how to perform these searches. For all the searches, you can specify as many or as few of the search criteria as you wish.

ProcedureTo Perform a WSDL Discovery Query

  1. Choose WSDL Discovery Query from the Select Predefined Query combo box.

    A search form appears.

  2. Type values in the Name and/or Description fields.

  3. Select a value from the Status combo box.

  4. Type a value in the Target Namespace field.

  5. Click Search or press Return.

ProcedureTo Perform A WSDL Binding Discovery Query

  1. Choose WSDL Binding Discovery Query from the Select Predefined Query combo box.

    A search form appears.

  2. Type values in the Binding Name and/or Binding Description fields.

  3. Select a value from the Binding Status combo box.

  4. Type a value in the Binding Target Namespace field.

  5. Select a value from the Binding Protocol Type combo box.

  6. Select a value from the Binding Transport Type combo box.

  7. Select a value from the SOAP Binding Style combo box.

  8. Optionally, select the Consider PortType checkbox. If you If you select this checkbox:

    1. Type values in the PortType Name and/or PortType Description fields.

    2. Select a value from the PortType Status combo box.

    3. Type a value in the PortType Target Namespace field.

  9. Click Search or press Return.

ProcedureTo Perform a WSDL Port Discovery Query

  1. Choose WSDL Port Discovery Query from the Select Predefined Query combo box.

    A search form appears.

  2. Type values in the Port Name and/or Port Description fields.

  3. Select a value from the Port Status combo box.

  4. Type a value in the Port Target Namespace field.

  5. Type a value in the Port Endpoint field.

  6. Optionally, select the Consider Binding checkbox. If you select this checkbox:

    1. Type values in the Binding Name and/or Binding Description fields.

    2. Select a value from the Binding Status combo box.

    3. Type a value in the Binding Target Namespace field.

    4. Select a value from the Binding Protocol Type combo box.

    5. Select a value from the Binding Transport Type combo box.

    6. Select a value from the SOAP Binding Style combo box.

    7. Optionally, select the Consider PortType checkbox. If you select this checkbox:

      1. Type values in the PortType Name and/or PortType Description fields.

      2. Select a value from the PortType Status combo box.

      3. Type a value in the PortType Target Namespace field.

  7. Click Search or press Return.

ProcedureTo Perform a WSDL PortType Discovery Query

  1. Choose WSDL PortType Discovery Query from the Select Predefined Query combo box.

    A search form appears.

  2. Type values in the PortType Name and/or PortType Description fields.

  3. Select a value from the PortType Status combo box.

  4. Type a value in the PortType Target Namespace field.

  5. Click Search or press Return.

ProcedureTo Perform a WSDL Service Discovery Query

  1. Choose WSDL Service Discovery Query from the Select Predefined Query combo box.

    A search form appears.

  2. Type values in the Service Name and/or Service Description fields.

  3. Select a value from the Service Status combo box.

  4. Type a value in the Service Target Namespace field.

  5. Optionally, select the Consider Port checkbox. If you check this box:

    1. Type values in the Port Name and/or Port Description fields.

    2. Select a value from the Port Status combo box.

    3. Type a value in the Port Target Namespace field.

    4. Type a value in the Port Endpoint field.

    5. Optionally, select the Consider Binding checkbox. If you select this checkbox:

      1. Type values in the Binding Name and/or Binding Description fields.

      2. Select a value from the Binding Status combo box.

      3. Type a value in the Binding Target Namespace field.

      4. Select a value from the Binding Protocol Type combo box.

      5. Select a value from the Binding Transport Type combo box.

      6. Select a value from the SOAP Binding Style combo box.

      7. Optionally, select the Consider PortType checkbox. If you select this checkbox:

        1. Type values in the PortType Name and/or PortType Description fields.

        2. Select a value from the PortType Status combo box.

        3. Type a value in the PortType Target Namespace field.

  6. Click Search or press Return.

Next Steps

See To Find the WSDL Document for a Service for information on locating the WSDL file associated with the service you found.

ProcedureTo Find the WSDL Document for a Service

After you find a service, you ordinarily want to find the WSDL file associated with the service so that you can use it to create a client proxy to communicate with the service. To do so, follow these steps.

  1. Click the Details link for the Service object.

  2. Click the Associations tab.

    The Source Object column contains a link named WSDL.

  3. Click the WSDL link.

    A Details window appears.

  4. Click View Repository Item Content to view the WSDL file.

  5. Use your browser's Save As menu item to save the file to your local system.

Viewing Search Results

Objects found by a search appear in the Registry Objects area.

The Registry Objects area consists of the following:

For ExtrinsicObject objects, the display has two additional columns: Content Version and Content Version Comment. These columns apply to the repository item for the ExtrinsicObject.

For two kinds of objects, the Version and Version Comment columns are replaced by other content:

ProcedureTo Use the Bookmark Feature

The Bookmark feature of the user interface allows you to hold one or more objects in the Registry Objects area while you search for other objects. You can then create a relationship between two objects. See Creating Relationships Between Objects for details on how to perform this task.

  1. Click Search and execute a query.

  2. In the Registry Objects area, select the Pick checkbox for the object or objects that you want to hold there and click the Bookmark button.

    The objects appear in a Bookmarked Objects area above the search results.

  3. Execute another query.

Next Steps

When you have finished using a bookmarked object, select the Pick checkbox for the object and click the Remove Bookmark button. The object is removed from the Bookmarked Objects area. If it was the only object in the Bookmarked Objects area, the Bookmarked Objects area disappears.

Viewing Object Details

In the search results table, click the Details link for an object to open the Details area immediately below the Registry Objects area.

This section has a row of buttons and a row of tabs:

Table 2–4 Attribute Tabs in the Details Area

Tab Name 

Applies To 

Object-Type Detail

All objects (Object-Type is the object type name)

Slots 

All objects 

Classifications 

All objects 

External Identifiers 

All objects 

Associations 

All objects 

External Links 

All objects 

Audit Trail 

All objects 

Postal Addresses 

Organization, User

Telephone Numbers 

Organization, User

Email Addresses 

Organization, User

Users 

Organization

Organizations 

Organization

Service Bindings 

Service

Specification Links 

ServiceBinding

Concepts 

ClassificationScheme, ClassificationNode

Members 

RegistryPackage

Affected Objects 

AuditableEvent

Click a tab to find out if the object has any values for the attribute. If it does, click the Details link for the attribute value to open a browser window with the details for the attribute value.

The Associations tab produces a table with three links for each Association:

In the Source Object and Target Object columns, the type of the object whose associations you are viewing is shown in bold.

The Audit Trail tab does not produce a table with a Details link. Instead, this tab produces a table that contains the following information:

For most objects, the Details area fields are as follows:

For many objects, the fields are largely self-explanatory (the postal addresses for an Organization, for example). For some objects, the fields require some explanation. The following sections describe these fields.

Viewing Association Details

The Details area for an Association object contains the following additional fields:

Viewing Classification Scheme Details

The Details area for a ClassificationScheme object contains the following additional fields:

Viewing Extrinsic Object Details

The Details area for an ExtrinsicObject object contains the following additional fields:

Viewing External Link Details

The Details area for an ExternalLink object contains the following additional fields:

Using the Explore Tab

The Explore tab allows you to navigate through Registry and Repository content by using the metaphor of a hierarchy of file folders. The root folder, which is named registry, contains all Registry content.

ProcedureTo Use the Explore Tab

  1. Click the Explore link.

  2. Click the folder labeled registry. This folder contains two subfolders: userData, where all user content is placed, and ClassificationSchemes.

  3. Click a link to view the registry objects of that type. Click a folder or expand a node to view the object types at the next level.

ProcedureTo Explore the Classification Schemes

  1. Click the ClassificationSchemes folder to open the ClassificationSchemes tree hierarchy in the menu area.

  2. Click any link to view that classification scheme in the Registry Objects area.

  3. Click a classification scheme folder to see the Concepts beneath it.

    If the Concept icons are folders, they have subconcepts, and you can click the icons to expand them. If the Concept icons are files, they have no subconcepts.

    If the classification scheme folder is a file icon, the classification scheme does not have concepts that are viewable in the Explore area.

  4. Click a Concept link to view that concept in the Registry Objects area.

ProcedureTo Explore the UserData Folder

  1. Expand the userData node.

  2. Expand the RegistryObject node. Do not click the link unless you want to view all registry objects.

  3. Click a folder to view the registry objects of that type. Expand a node to view the object types at the next level.