As previously mentioned, the Bluetooth specification includes not just the core protocol specification, but also a second volume referred to as the Profiles specification.  The Bluetooth SIG made a conscious decision to make this second volume a part of the specification. This makes sense considering that one of the key features of Bluetooth technology is the emphasis on universal interoperability. Bluetooth devices from different manufacturers are expected to work seamlessly with each other. In order to facilitate this seamless interoperability, the Bluetooth specification provides usage models for the many different types of foreseen applications built around Bluetooth technology. These usage models are termed profiles in the specification. It should be noted that this part of the specification does not limit implementers to the profiles defined therein; it simply provides guidelines for using Bluetooth technology for different application types. Indeed, as more applications are devised for Bluetooth, it is inevitable that new usage models will be added to the profiles specification.
The Bluetooth profiles specification defines 13 different profiles (Figure 13.8), which are logically divided into two types. The first are fundamental profiles, which are essentially building-block profiles for the other type of profiles, the usage profiles. All usage profiles inherit from at least one of the fundamental profiles. The four fundamental profiles are (briefly) discussed in the following sections.
Figure 13.8: All thirteen profiles and their inheritance relationships are depicted. Each profile inherits from the profile that encloses it. The four fundamental profiles (GAP, SDAP, SPP, and GOEP) are not shaded.
The generic access profile (GAP) is the fundamental Bluetooth profile. All other profiles stem from GAP. GAP defines the key features necessary for Bluetooth devices to successfully establish a baseband link. The features defined in GAP are:
Conformance: Every Bluetooth device that does not support some other profile must at least conform to GAP. Essentially, this means that GAP specifies certain features that must be implemented in all Bluetooth devices.
Discovery procedures: The minimum set of procedures required for a Bluetooth device to discover another Bluetooth device.
Security procedures: Procedures required for using the different security levels.
Link management facilities: Facilities that ensure that Bluetooth devices can connect to each other.
In addition to these features, GAP defines also the mandatory and optional modes of operation for a Bluetooth device. Please refer to the specification for further information. Finally, GAP defines a standard set of terminology that is to be used with respect to user interfaces developed for Bluetooth devices. Defining standardized terminology ensures that users of the technology will recognize Bluetooth functionality across different user interface designs. 
The service discovery application profile describes, in general terms, how applications that use the SDP should be created, and how they should behave. Fundamentally, SDAP specifies which services an SDAP-based application should provide to its users. These services are defined as "service primitive abstractions," and four such primitives are defined:
ServiceBrowse: Used by a local device when conducting a general search for services available on a set of remote devices
ServiceSearch: Used by a local device when searching for a specific service type on a set of remote devices
EnumerateRemDev: Used by a local device to search for remote devices in its vicinity
TerminatePrimitive: Used to terminate the operations initiated by the other three primitives
The serial port profile is concerned with providing serial port emulation to two devices that want to utilize a Bluetooth link for serial communication. As can be expected, SPP uses the RFCOMM protocol for providing serial port emulation. The key feature of the SPP is that it outlines the procedures necessary for using the RFCOMM protocol to establish a serial link between two devices. The overarching goal of the SPP is to ensure transparency, i.e., an application using the emulated serial link should not be able to distinguish it from a physical serial link. By defining the SPP profile, the SIG has assured that legacy applications (that make use of serial communication links) will not have to be modified in order to use Bluetooth.
The generic object exchange profile is based on the object push/pull model, as defined in Infrared Data Association's (IrDA) OBEX layer. GOEP distinguishes between a client device and a server device. The client device is the device that initiates the object exchange operation by requesting the OBEX service from the server. The client either pushes a data object onto or pulls a data object off of the server device. The server device is the device that provides the client device with this push/pull object exchange service. Note that there is no correlation between master/slave (in the context of Bluetooth) on the one hand, and client/server in the context of OBEX on the other. In the simplest terms, GOEP defines the primitives that allow objects to be exchanged between a client and server. The two most important of these primitives are object push and object pull. An interesting side note regarding GOEP is that it was originally developed to provide Bluetooth devices with a synchronization capability, but during the course of development, it grew into the concept of IrDA interoperability. 
The remaining nine profiles are usage profiles. As stated earlier, these profiles inherit features from at least one of the four fundamental profiles. Although we will not discuss the usage profiles, they are listed below for reference:
File transfer (FTP)
Specification of the Bluetooth System - Core online, available at http://www.bluetooth.com.
Miller, B.A. and Bisdikian, C., Bluetooth Revealed: The Insider's Guide to an Open Specification for Global Wireless Communications, Prentice-Hall, Upper Saddle River, NJ, 2001.
Stallings, W., Wireless Communications and Networks, Prentice-Hall, Upper Saddle River, NJ, 2002.