The location and identity of IP network services are expressed in the form of service Uniform Resource Locators (URL)s.
You can format a service URL in one of two ways:
where:
<concrete-srv-type> is a concrete service type, usually a standard Internet protocol name
<abstract-srv-type> is an abstract service type, such as printer, for example
<service-addr> identifies the location of a particular service and is either a host name or a dotted decimal IP address, followed optionally by a colon (:) and a port number
The primary purpose of the service-type part of the service URLs is to enable users and client applications to specify search criteria in their service requests. For example, a service request that specifies a service type of service:printer returns only printer services, whereas a service request that specifies a service type of service:printer:http returns only printer services that use the HTTP protocol. It is possible to further narrow the search using SLP scopes, and using specific search predicates, but the service type is the main method of specifying search criteria.
Some sample service URLs are:
service:http://myservice.mycompany.com:9080 service:printer:http://myprinter service:printer:lpr://myprinter.mycompany.com
An abstract service type (or a concrete service type, if no abstract type is specified) can contain an additional substring, separated by a period, to identify the naming authority associated with the service type. If no explicit naming authority is included in the service type, it is assumed to be IANA (Internet Assigned Numbers Authority). Some sample service types with a naming authority are:
service:ftp.experimental service:printer.mytype
Two service-type names that are identical, with the exception of their naming authority, are considered to be different and distinct service types. Therefore, by using explicit naming authority identifiers, you can define service types that are experimental, proprietary, or for private use. Using such a naming authority, you can ignore, create, or modify existing service attributes for the service type that are different than the standard attributes for that service type.