Symbian3/SDK/Source/GUID-ED342E6B-A4A3-576B-8934-7E7C049837F0.dita
author Dominic Pinkman <dominic.pinkman@nokia.com>
Tue, 20 Jul 2010 12:00:49 +0100
changeset 13 48780e181b38
parent 0 89d6a7a84779
permissions -rw-r--r--
Week 28 contribution of SDK documentation content. See release notes for details. Fixes bugs Bug 1897 and Bug 1522.

<?xml version="1.0" encoding="utf-8"?>
<!-- Copyright (c) 2007-2010 Nokia Corporation and/or its subsidiary(-ies) All rights reserved. -->
<!-- This component and the accompanying materials are made available under the terms of the License 
"Eclipse Public License v1.0" which accompanies this distribution, 
and is available at the URL "http://www.eclipse.org/legal/epl-v10.html". -->
<!-- Initial Contributors:
    Nokia Corporation - initial contribution.
Contributors: 
-->
<!DOCTYPE concept
  PUBLIC "-//OASIS//DTD DITA Concept//EN" "concept.dtd">
<concept xml:lang="en" id="GUID-ED342E6B-A4A3-576B-8934-7E7C049837F0"><title>Service records and attributes</title><prolog><metadata><keywords/></metadata></prolog><conbody><p>The Bluetooth SDP Database contains entries for service records, one entry for each service registered to the database. Each of these entries contains information about that service in the form of service attributes. We will briefly discuss these concepts below. </p> <section><title>Service Records</title> <p>All information about a service that is maintained by an SDP database is contained within a single service record. A service record consists entirely of a list of service attributes. </p> <p>To understand services and attributes, you should read the Service Discovery Protocol specification, available at <xref scope="external" href="http://www.bluetooth.com/Bluetooth/Learn/Technology/Specifications/">http://www.bluetooth.com/Bluetooth/Learn/Technology/Specifications/</xref>. This page provides a few of the main points to get you started. </p> <p><b>UUID Values</b> </p> <p>In a service record, classes are specified using <i>Universally Unique Identifier</i> (UUID) numbers. The current predefined values for class IDs and attribute IDs are in the <xref scope="external" href="http://www.bluetooth.org/assigned-numbers/service_discovery.php">Service Discovery Protocol Assigned Numbers</xref> listing from the Bluetooth SIG. </p> </section> <section><title>Attributes</title> <p>Each attribute has an ID, a type, and a value. The types, and some attribute IDs, are predefined: for example, the URL for the icon to show for a service must always have attribute ID value 12 (UUID 0x000C). Complex attributes can be formed through lists of attributes; such lists can themselves contain lists of attributes. </p> <p><b>The service class attribute </b> </p> <p>A key attribute is the service class, Bluetooth ID ServiceClassIDList (UUID 0x0001): each service is an instance of a service class, which provides an initial indicator of the capabilities of the service, and defines what other attributes, including their types and semantics, must or can appear in the service record. </p> <p>A single application may provide multiple services. These different services should have different service records. Additionally, each service record can have many service classes listed in it. These service classes must be in a subclasses/superclasses of each other, and must be ordered most derived to least derived in the list. For example, the service might have a class entry that indicates it provides printing services; and another class entry that indicates that it provides Postscript printing (and consequently has extra attributes relating to this). </p> </section> <section><title>Where next?</title> <p>The complete set of Service Discovery Database tutorials are shown below: </p> <ol id="GUID-6A937BEB-CE35-519C-8262-8EA749AAE549"><li id="GUID-E1B75B16-1F2A-531E-BF3A-D81DBBE8E921"><p> <xref href="GUID-B75BD3DE-9C2E-5429-B55B-891462B92795.dita">Connecting to the service discovery database</xref>  </p> </li> <li id="GUID-417B1796-2248-53B6-AD97-289D3C16C50C"><p> <xref href="GUID-E2A2FA2A-5D9A-56FE-B7E5-69CCBC656BB9.dita">Handling SDP attributes</xref>  </p> </li> <li id="GUID-B3EBB4DC-2C55-5799-9479-3114C0DC5354"><p> <xref href="GUID-2373A158-C18A-51B5-BE9A-6B8F7FC63A35.dita">Registering Services</xref>  </p> </li> <li id="GUID-A3BFE8E3-2654-5885-8ABA-BD6345D6422D"><p> <xref href="GUID-33210C48-3198-51BC-9970-8B29F711A8E2.dita">Setting service record attributes</xref>  </p> </li> </ol> <p>Also refer to the <xref href="GUID-E5893C4A-024A-53A7-805F-68989382DC3F.dita">Bluetooth Service Discovery Database overview</xref> and the <xref href="GUID-8451102A-8E68-5C86-9E40-D53183E32261.dita">Bluetooth SDP Overview</xref> for additional background information. </p> </section> </conbody></concept>