# 22. Virtuoso Functions Guide - uddi_find_service

Chapter Contents | Prev | Next
Keyword Search:
www.openlinksw.com
docs.openlinksw.com
Book Home
Contents
Preface
Virtuoso Functions Guide
Administration
Aggregate Functions
Array Manipulation
BPEL APIs
Backup
Compression
Cursor
Date & Time Manipulation
Debug
Dictionary Manipulation
Encoding & Decoding
File Manipulation
Free Text
Hashing / Cryptographic
LDAP
Locale
Mail
Miscellaneous
Number
Remote SQL Data Source
Replication
SOAP
SQL
String
Transaction
Type Mapping
UDDI
uddi_delete_binding
uddi_delete_business
uddi_delete_service
uddi_delete_tmodel
uddi_discard_authtok...
uddi_find_binding
uddi_find_business
uddi_find_service
uddi_find_tmodel
uddi_get_authtoken
uddi_get_bindingdeta...
uddi_get_businessdet...
uddi_get_businessdet...
uddi_get_registeredi...
uddi_get_servicedeta...
uddi_get_tmodeldetai...
uddi_save_binding
uddi_save_business
uddi_save_service
uddi_save_tmodel
User Defined Types & The CLR
Virtuoso Java PL API
Virtuoso Server Extension Interface (VSEI)
Web Server & Internet
XML
XPATH & XQUERY
Functions Index

## uddi_find_service

Retrieves serviceList message matching search criteria
Syntax

    <uddi_find_service
      businessKey="uuid_key"
      generic="1.0"
      [ maxRows ="nn" ]
      xmlns="urn:uddi-org:api" >
    	[<findQualifiers/>]
    	<name/> | <categoryBag/> | <tModelBag/>
    </uddi_find_service>

Attributes & Children

The name, categoryBag, and tModelBag arguments are mutually exclusive.

maxRows – This optional integer value allows the requesting program to limit the number of results returned.
businessKey – This uuid_key is used to specify a particular BusinessEntity instance.
findQualifiers – This collection of findQualifier elements can be used to alter the default behavior of search functionality.
name – This string value represents a partial name. Any businessService data contained in the specified businessEntity with a matching partial name value gets returned.
categoryBag – This is a list of category references. The returned serviceList contains businessInfo structures matching all of the categories passed (logical AND).
tModelBag – This is a list of tModel uuid_key values that represent the technical fingerprint the server should locate within a bindingTemplate structure contained within any businessService contained by the businessEntity specified. If more than one tModel key is specified in this structure, only businessServices that contain bindingTemplate information that matches all of the tModel keys specified will be returned (logical AND).
Return Types

This function returns a serviceList on success. In the event that no matches were located for the specified criteria, the serviceList structure returned will contain an empty businessServices structure. This signifies zero matches.

In the event of a large number of matches, a UDDI-enabled server may truncate the result set. If this occurs, the serviceList will contain the truncated attribute with the value of this attribute set to true.

Searching using tModelBag will return serviceInfo structures for all qualifying businessService data, including matches due to hostingRedirector references. In other words, if the businessEntity whose businessKey is passed as an argument contains a bindingTemplate with a hostingRedirector value, and that value references a bindingTemplate that matches the tModel search requirements, then the serviceInfo for the businessService containing the hostingRedirector will be returned.

Errors

Error Code | Description
--- | ---
E_invalidKeyPassed | signifies that the uuid_key value passed did not match with any known businessKey or tModel key values. The error structure will signal which condition occurred first.
E_nameTooLong | signifies that the partial name value passed exceeds the maximum name length designated by the server.
E_tooManyOptions | signifies that more than one mutually exclusive argument was passed.
E_unsupported | signifies that one of the findQualifier values passed was invalid.