Prev | Current Page 221 | Next

Timothy J. Thompson, C Bala Kumar, and Paul Kline

"Bluetooth Application Programming with the Java APIs Essentials Edition"

Two of these attributes provide the
ServiceName and ServiceDescription in French. The third attribute, the
LanguageBaseAttributeIDList, describes the two languages used in this
service record and provides the information needed to differentiate the
English strings from the French strings.
To support use of multiple languages in service records, the Bluetooth
SDP uses a base-plus-offset scheme for all service attributes of type
string. In the service record shown in Table 7.10, the base for English
service attributes is 0x0100. The base for French service attributes is
0x0120. The SDP speci?¬?cation de?¬?nes the ServiceDescription as having
an offset of 0x0001. This means the attribute ID of the ServiceDescription
in English in this service record is given by the English base plus
offset; or
0x0100 + 0x0001 = 0x0101
The attribute ID of the ServiceDescription in French is given by the
French base plus offset, or
0x0120 + 0x0001 = 0x0121
ServiceName is de?¬?ned as having an offset of 0x0000, so the Service-
Name in English has attribute ID
0x0100 + 0x0000 = 0x0100
The ServiceName in French has attribute ID
0x0120 + 0x0000 = 0x0120
The LanguageBaseAttributeIDList contains the attribute ID base for each
language. LanguageBaseAttributeIDList is an optional service attribute.
However, if a service record were to use more than one language, it
would be very dif?¬?cult for applications to use the other languages without
knowing the attribute ID base value for the other languages.


Pages:
209 210 211 212 213 214 215 216 217 218 219 220 221 222 223 224 225 226 227 228 229 230 231 232 233