Information technology – Open Connectivity Foundation (OCF) Specification — Part 14: OCF resource to BLE mapping specification

This document provides detailed mapping information between BLE (Bluetooth Low Energy) and OCF defined Resources.

Technologies de l'information — Specification de la Fondation pour la connectivité ouverte (Fondation OCF) — Partie 14: Spécification du mapping entre ressources OCF et BLE

General Information

Status
Published
Publication Date
17-Oct-2021
Current Stage
6060 - International Standard published
Start Date
18-Oct-2021
Due Date
16-May-2022
Completion Date
18-Oct-2021
Ref Project
Standard
ISO/IEC 30118-14:2021 - Information technology – Open Connectivity Foundation (OCF) Specification — Part 14: OCF resource to BLE mapping specification Released:10/18/2021
English language
48 pages
sale 15% off
Preview
sale 15% off
Preview

Standards Content (Sample)


INTERNATIONAL ISO/IEC
STANDARD 30118-14
First edition
2021-10
Information technology — Open
Connectivity Foundation (OCF)
Specification —
Part 14:
OCF resource to BLE mapping
specification
Technologies de l'information — Specification de la Fondation pour la
connectivité ouverte (Fondation OCF) —
Partie 14: Spécification du mapping entre ressources OCF et BLE
Reference number
© ISO/IEC 2021
© ISO/IEC 2021
All rights reserved. Unless otherwise specified, or required in the context of its implementation, no part of this publication may
be reproduced or utilized otherwise in any form or by any means, electronic or mechanical, including photocopying, or posting on
the internet or an intranet, without prior written permission. Permission can be requested from either ISO at the address below
or ISO’s member body in the country of the requester.
ISO copyright office
CP 401 • Ch. de Blandonnet 8
CH-1214 Vernier, Geneva
Phone: +41 22 749 01 11
Email: copyright@iso.org
Website: www.iso.org
Published in Switzerland
ii
© ISO/IEC 2021 – All rights reserved

Contents Page
Foreword . v
Introduction . vi
1 Scope . 1
2 Normative references . 1
3 Terms, definitions, symbols and abbreviated terms . 2
3.1 Terms and definitions . 2
3.2 Symbols and abbreviated terms . 2
4 Document conventions and organization . 2
4.1 Conventions . 2
4.2 Notation . 2
5 Theory of operation . 3
5.1 Interworking approach . 3
5.2 Mapping syntax . 3
6 BLE translation . 4
6.1 Operational scenarios . 4
6.1.1 Introduction . 4
6.1.2 Use case for BLE bridging . 5
6.2 Requirements specific to BLE bridging function . 5
6.2.1 General . 5
6.2.2 Requirements specific to BLE . 6
6.2.3 Exposing BLE GATT servers to OCF clients . 6
7 Device type mapping . 17
7.1 Introduction . 17
7.2 BLE Profile to OCF device types . 17
8 BLE profile to resource equivalence . 18
8.1 Introduction . 18
8.2 BLE services to OCF resources . 18
9 Detailed mappings . 19
9.1 Introduction . 19
9.2 Blood pressure mapping . 19
9.2.1 Derived model . 19
9.2.2 Property definition . 19
9.2.3 Derived model definition . 21
9.3 Glucose measurement mapping. 24
9.3.1 Derived model . 24
9.3.2 Property definition . 24
9.3.3 Derived model definition . 28
9.4 Health thermometer mapping . 33
9.4.1 Derived model . 33
9.4.2 Property definition . 33
9.4.3 Derived model definition . 34
9.5 Weight scale mapping . 36
9.5.1 Derived model . 36
9.5.2 Property definition . 36
9.5.3 Derived model definition . 39
© ISO/IEC 2021 – All rights reserved iii

Annex A (Informative) BLE GATT based data model . 43
A.1 BLE GATT based data model & GATT features . 43
A.1.1 Introduction . 43
A.1.2 Profile dependency . 43
A.1.3 Configurations and roles . 43
A.1.4 GATT profile hierarchy . 44
Annex B (Informative) Supporting atomic measurement operation in BLE . 47
B.1 Atomic measurement resource type in OCF . 47
B.2 Case 1. One characteristic covers all properties of an atomic measurement
resource type . 47
B.3 Case 2. multiple characteristics cover all properties of an atomic
measurement resource type . 48

iv © ISO/IEC 2021 – All rights reserved

Foreword
ISO (the International Organization for Standardization) and IEC (the International Electrotechnical
Commission) form the specialized system for worldwide standardization. National bodies that are members of
ISO or IEC participate in the development of International Standards through technical committees established
by the respective organization to deal with particular fields of technical activity. ISO and IEC technical
committees collaborate in fields of mutual interest. Other international organizations, governmental and non-
governmental, in liaison with ISO and IEC, also take part in the work.
The procedures used to develop this document and those intended for its further maintenance are described in
the ISO/IEC Directives, Part 1. In particular, the different approval criteria needed for the different types of
document should be noted (see www.iso.org/directives or www.iec.ch/members_experts/refdocs).
Attention is drawn to the possibility that some of the elements of this document may be the subject of patent
rights. ISO and IEC shall not be held responsible for identifying any or all such patent rights. Details of any
patent rights identified during the development of the document will be in the Introduction and/or on the ISO list
of patent declarations received (see www.iso.org/patents) or the IEC list of patent declarations received
(see patents.iec.ch).
Any trade name used in this document is information given for the convenience of users and does not constitute
an endorsement.
For an explanation of the voluntary nature of standards, the meaning of ISO specific terms and expressions
related to conformity assessment, as well as information about ISO's adherence to the World Trade
Organization (WTO) principles in the Technical Barriers to Trade (TBT), see  www.iso.org/iso/foreword.html. In
the IEC, see www.iec.ch/understanding-standards.
This document was prepared by the Open Connectivity Foundation (OCF) (as OCF Resource to BLE Mapping,
version 2.2.0) and drafted in accordance with its editorial rules. It was adopted, under the JTC 1 PAS procedure,
by Joint Technical Committee ISO/IEC JTC 1, Information technology.
A list of all parts in the ISO/IEC 30118 series can be found on the ISO and IEC websites.
Any feedback or questions on this document should be directed to the user’s national standards body. A
complete listing of these bodies can be found at www.iso.org/members.html and www.iec.ch/national-
committees.
© ISO/IEC 2021 – All rights reserved v

Introduction
This document, and all the other parts associated with this document, were developed in response to
worldwide demand for smart home focused Internet of Things (IoT) devices, such as appliances, door
locks, security cameras, sensors, and actuators; these to be modelled and securely controlled, locally
and remotely, over an IP network.
While some inter-device communication existed, no universal language had been developed for the
IoT. Device makers instead had to choose between disparate frameworks, limiting their market share,
or developing across multiple ecosystems, increasing their costs. The burden then falls on end users
to determine whether the products they want are compatible with the ecosystem they bought into, or
find ways to integrate their devices into their network, and try to solve interoperability issues on their
own.
In addition to the smart home, IoT deployments in commercial environments are hampered by a lack
of security. This issue can be avoided by having a secure IoT communication framework, which this
standard solves.
The goal of these documents is then to connect the next 25 billion devices for the IoT, providing secure
and reliable device discovery and connectivity across multiple OSs and platforms. There are multiple
proposals and forums driving different approaches, but no single solution addresses the majority of
key requirements. This document and the associated parts enable industry consolidation around a
common, secure, interoperable approach.
ISO/IEC 30118 consists of eighteen parts, under the general title Information technology — Open
Connectivity Foundation (OCF) Specification. The parts fall into logical groupings as described herein:
– Core framework
– Part 1: Core Specification
– Part 2: Security Specification
– Part 13: Onboarding Tool Specification
– Bridging framework and bridges
– Part 3: Bridging Specification
– Part 6: Resource to Alljoyn Interface Mapping Specification
– Part 8: OCF Resource to oneM2M Resource Mapping Specification
– Part 14: OCF Resource to BLE Mapping Specification
– Part 15: OCF Resource to EnOcean Mapping Specification
– Part 16: OCF Resource to UPlus Mapping Specification
– Part 17: OCF Resource to Zigbee Cluster Mapping Specification
– Part 18: OCF Resource to Z-Wave Mapping Specification
– Resource and Device models
– Part 4: Resource Type Specification
– Part 5: Device Specification
vi © ISO/IEC 2021 – All rights reserved

– Core framework extensions
– Part 7: Wi-Fi Easy Setup Specification
– Part 9: Core Optional Specification
– OCF Cloud
– Part 10: Cloud API for Cloud Services Specification
– Part 11: Device to Cloud Services Specification
– Part 12: Cloud Security Specification

© ISO/IEC 2021 – All rights reserved vii

INTERNATIONAL STANDARD ISO/IEC 30118-14:2021(E)

Information technology — Open Connectivity
Foundation (OCF) Specification —
Part 14:
OCF resource to BLE mapping specification
1 Scope
This document provides detailed mapping information between BLE (Bluetooth Low Energy) and OCF
defined Resources.
2 Normative references
The following documents are referred to in the text in such a way that some or all of their content
constitutes requirements of this document. For dated references, only the edition cited applies. For
undated references, the latest edition of the referenced document (including any amendments) applies.
Adopted Bluetooth Profiles, Services, Protocols and Transports
https://www.bluetooth.com/specifications/adopted-specifications
Bluetooth Core Specification 4.0
https://www.bluetooth.com/specifications/bluetooth-core-specification
ISO/IEC 30118-1 Information technology -- Open Connectivity Foundation (OCF) Specification -- Part 1:
Core specification
https://www.iso.org/standard/53238.html
Latest version available at: https://openconnectivity.org/specs/OCF_Core_Specification.pdf
ISO/IEC 30118-2 Information technology – Open Connectivity Foundation (OCF) Specification – Part 2:
Security specification
https://www.iso.org/standard/74239.html
Latest version available at: https://openconnectivity.org/specs/OCF_Security_Specification.pdf
ISO/IEC 30118-3 Information technology – Open Connectivity Foundation (OCF) Specification – Part 3:
Bridging specification
https://www.iso.org/standard/74240.html
Latest version available at: https://openconnectivity.org/specs/OCF_Bridging_Specification.pdf
ISO/IEC 30118-4 Information technology – Open Connectivity Foundation (OCF) Specification – Part 4:
Resource Type specification
https://www.iso.org/standard/74241.html
Latest version available at: https://openconnectivity.org/specs/OCF_Resource_Type_Specification.pdf
ISO/IEC 30118-5 Information technology – Open Connectivity Foundation (OCF) Specification – Part 5:
Device specification
https://www.iso.org/standard/79389.html
Latest version available at: https://openconnectivity.org/specs/OCF_Device_Specification.pdf
© ISO/IEC 2021 – All rights reserved 1

Derived Models for Interoperability between IoT Ecosystems, Stevens & Merriam, March 2016
https://www.iab.org/wp-content/IAB-uploads/2016/03/OCF-Derived-Models-for-Interoperability-
Between-IoT-Ecosystems_v2-examples.pdf
IETF RFC 4122, A Universally Unique IDentifier (UUID) URN Namespace, July 2005
https://www.rfc-editor.org/info/rfc4122
3 Terms, definitions, symbols and abbreviated terms
3.1 Terms and definitions
For the purposes of this document, the terms and definitions given in ISO/IEC 30118-1,
ISO/IEC 30118-2, and ISO/IEC 30118-3 and the following apply.
ISO and IEC maintain terminological databases for use in standardization at the following addresses:
– ISO Online browsing platform: available at https://www.iso.org/obp
– IEC Electropedia: available at http://www.electropedia.org/
3.1.1
GATT-based profile
BLE profile using procedures and operating models provided by GATT profile
3.2 Symbols and abbreviated terms
ATT  Attribute protocol
GAP  Generic Access Profile
GATT  Generic Attribute profile
4 Document conventions and organization
4.1 Conventions
In this document a number of terms, conditions, mechanisms, sequences, parameters, events, states,
or similar terms are printed with the first letter of each word in uppercase and the rest lowercase (e.g.,
Network Architecture). Any lowercase uses of these words have the normal technical English meaning.
In this document, to be consistent with the IETF usages for RESTful operations, the RESTful operation
words CRUDN, CREATE, RETRIVE, UPDATE, DELETE, and NOTIFY will have all letters capitalized.
Any lowercase uses of these words have the normal technical English meaning.
4.2 Notation
In this document, features are described as required, recommended, allowed or DEPRECATED as
follows:
Required (or shall or mandatory).
These basic features shall be implemented to comply with the Mapping Specification. The phrases
"shall not", and "PROHIBITED" indicate behavior that is prohibited, i.e. that if performed means the
implementation is not in compliance.
2 © ISO/IEC 2021 – All rights reserved

Recommended (or should).
These features add functionality supported by the Mapping Specification and should be
implemented. Recommended features take advantage of the capabilities the Mapping Specification,
usually without imposing major increase of complexity. Notice that for compliance testing, if a
recommended feature is implemented, it shall meet the specified requirements to be in compliance
with these guidelines. Some recommended features could become requirements in the future. The
phrase "should not" indicates behavior that is permitted but not recommended.
Allowed (or allowed).
These features are neither required nor recommended by the Mapping Specification, but if the
feature is implemented, it shall meet the specified requirements to be in compliance with these
guidelines.
Conditionally allowed (CA)
The definition or behaviour depends on a condition. If the specified condition is met, then the
definition or behaviour is allowed, otherwise it is not allowed.
Conditionally required (CR)
The definition or behaviour depends on a condition. If the specified condition is met, then the
definition or behaviour is required. Otherwise the definition or behaviour is allowed as default
unless specifically defined as not allowed.
DEPRECATED
Although these features are still described in this document, they should not be implemented except
for backward compatibility. The occurrence of a deprecated feature during operation of an
implementation compliant with the current document has no effect on the implementation’s
operation and does not produce any error conditions. Backward compatibility may require that a
feature is implemented and functions as specified but it shall never be used by implementations
compliant with this document.
Strings that are to be taken literally are enclosed in "double quotes".
Words that are emphasized are printed in italic.
5 Theory of operation
5.1 Interworking approach
The interworking between the BLE defined services/characteristics model and OCF defined Resources
is modelled using the derived model syntax described in Derived Models for Interoperability between
IoT Ecosystems.
5.2 Mapping syntax
Within the defined syntax for derived modelling used by this document there are two blocks that define
the actual Property-Property equivalence or mapping. These blocks are identified by the keywords
"x-to-ocf" and "x-from-ocf". Derived Models for Interoperability between IoT Ecosystems does not
define a rigid syntax for these blocks; they are free form string arrays that contain pseudo-coded
mapping logic.
In this document, Python (version >= 3.0) syntax is used to describe translation rules.
The JSON skeleton shows typical translation block used in the derived models.
© ISO/IEC 2021 – All rights reserved 3

"" : {
"type": "object",
"properties": {
"" : {
"x-ocf-conversion" : {
"x-ocf-alias": "",
"x-to-ocf": [
...
...
],
"x-from-ocf": [
"N/A"
]
}
}
}
}
– : this is fully qualified name of a BLE Service (e.g.
"org.bluetooth.characteristic.blood_pressure_measurement")
: a Characteristic value is byte stream which is composed
of multiple value fields. “A value field in BLE Characteristic value” is a description for one of them.
– : an OCF Resource type which is corresponding to this BLE
Service.
– “N/A”: in BLE Bridging, most of the BLE devices are read only. So there is no specific value to be
written to the BLE devices from OCF Devices. Therefore, nothing is described in “x-from-ocf”
translation clause. “N/A” is used to describe this case.
6 BLE translation
6.1 Operational scenarios
6.1.1 Introduction
The overall goal is to make Bridged BLE GATT Servers appear to OCF Clients as if they were native
OCF Servers in the local network or cloud environment.
“Deep translation” between specific BLE Profile and OCF Device is specified in clause 9. Figure 1
shows an overview of the BLE Bridge Platform and its general topology. The BLE Bridging Function
supports Asymmetric bridging. It exposes BLE GATT Servers to OCF Clients. Each Bridged BLE GATT
Server shall be represented as a Virtual OCF Server.
4 © ISO/IEC 2021 – All rights reserved

BLE Bridging
Function
OCF-BLE Bridge
Platform
Bridge
Virtual
Virtual Bridged
OCF Bridged
OCF BLE
OCF BLE GATT
Protocol Protocol
Client BLE GATT
Server Server
Client
Figure 1 – OCF-BLE Bridge Platform Components
6.1.2 Use case for BLE bridging
Figure 2 shows a use case for an OCF Client and BLE GATT Server. An OCF Client on a smartphone
reads a BLE thermometer device through an OCF-BLE Bridge Platform. Any connectivity that OCF
supports is used for communications between the OCF Client and the OCF-BLE Bridge Platform. The
OCF Client can communicate with OCF-BLE Bridge Platform through OCF Cloud.
Any connectivity that
BLE >= 4.0
OCF supports
Cloud
OCF devices BLE devices
OCF ↔ BLE
(client) (server)
Bridge Platform
Figure 2 – BLE Bridging use case in real life
6.2 Requirements specific to BLE bridging function
6.2.1 General
OCF-BLE Bridge Platform shall satisfy clause 5.2 General Requirements of ISO/IEC 30118-3.
A BLE Bridging Function supports asymmetric bridging. It exposes BLE GATT server to OCF Clients
only. Therefore, it shall play a BLE GATT client role. (This is a requirement so that users can expect
that a certified OCF Bridge Platform will be able to talk to any BLE GATT server device, without the
user having to buy some other device.).
© ISO/IEC 2021 – All rights reserved 5

6.2.2 Requirements specific to BLE
The version of Bluetooth SIG core specification that this document refers to is 4.0 or higher (see
Bluetooth Core Specification 4.0). Bluetooth BR/EDR is not included in the scope of this document.
6.2.3 Exposing BLE GATT servers to OCF clients
6.2.3.1 General
The requirements in this clause apply when using algorithmic translation, and by default apply to deep
translation unless the relevant requirements for such deep translation specifies otherwise.
Basic translation rule between BLE Service/Characteristic model and OCF Resource model is
described in Table 1.
Table 1 – Translation rule between BLE and OCF data model
From BLE mapping To OCF mapping
count count
GATT-based profile n OCF Device 1
Service 1 OCF Resource n
Characteristic 1 OCF Resource Property n
Characteristic Descriptor 1 OCF Notification on/off option 1
One or more BLE GATT-based profiles should be mapped to one Virtual OCF Server (e.g. Health
Thermometer profile (HTP) is mapped to Body Thermometer Device ("oic.d.body.thermometer")). A
BLE Service should be mapped to one or more OCF Resources (e.g. Health Thermometer Service is
mapped to Temperature ("oic.r.body.temperature") and Body Location for temperature
("oic.r.body.location.temperature")). Each Characteristic of BLE Service should be mapped to one or
more Properties of OCF Resource (if there is no BLE Characteristic corresponding to an OCF Property,
default value should be used). Table 2 is a translation example of this rule. Figure 3 provides an
illustration of this rule.
GATT-based
OCF
Resource
Service
Property
Characteristic
Characteristic Property
Service Resource
Characteristic
Property
Characteristic
Property
Service
Resource
Characteristic
Property
Characteristic
Property
: :
: :
Figure 3 – Translation mapping rule illustration
6 © ISO/IEC 2021 – All rights reserved

Table 2 – BLE to OCF translation example (Blood Pressure Device)
BLE OCF
BLE Profile  Blood Pressure Profile (BLP) Blood Pressure Monitor Device
OCF Device
("oic.d.bloodpressuremonitor")
BLE Service  Blood Pressure Measurement Service Blood Pressure
OCF Resource
("org.bluetooth.service.blood_pressure") ("oic.r.blood.pressure")
Pulse Rate
("oic.r.pulserate")
Device Information Service Device ("oic.wk.d")
("org.bluetooth.service.device_information") Platform ("oic.wk.p")
BLE Blood Pressure Measurement "oic.r.blood.pressure.systolic"
Characteristic 
("org.bluetooth.characteristic.blood_pressure_measurement") "oic.r.blood.pressure.diastolic"
OCF Resource
Property
"oic.r.blood.pressure.map"
"oic.r.blood.pressure.units"
"oic.r.pulserate.pulserate"
Figure 4 shows an example for 1:N mapping between BLE Characteristic and OCF Properties. In this
case, multiple fields in “Blood Pressure Measurement Service” are mapped into the Properties of OCF
Resources ("oic.r.pulserate", "oic.r.blood.pressure").
LSB
MSB
oic.r.pulserate
oic.r.blood.pressure
Figure 4 – An example for 1:N mapping between BLE Characteristic and OCF Properties
6.2.3.2 Translation for well-defined set
6.2.3.2.1 General
If a BLE Profile is in a well-defined set, translation should be done as follows. Table 3 is the list of BLE
GATT-based Profiles which have corresponding OCF Resources as of now.
© ISO/IEC 2021 – All rights reserved 7

Table 3 – BLE GATT-based Profile – OCF Resource mapping
OCF Resource
BLE
GATT-
Atomic
BLE Service OCF Device Type
based
Measurement Resource Type
Profile
Resource Type
"oic.r. "oic.r.blood.pressure"
Blood Pressure
bloodpressure
Service
Blood "oic.r.pulserate"
monitor-am"
Pressure "oic.d.bloodpressuremonitor"
Device "oic.wk.d"
Profile
Information
"oic.wk.p"
Service
"oic.r.glucose"
"oic.r.glucose.carb"
"oic.r.glucose.exercise"
"oic.r.glucose.hba1c"
"oic.r.glucose.health"
Glucose "oic.r.glucosem
Service eter-am"
"oic.r.glucose.meal"
Glucose
"oic.d.glucosemeter"
"oic.r.glucose.medicatio
Profile
n"
"oic.r.glucose.sampleloc
ation"
"oic.r.glucose.tester"
Device "oic.wk.d"
Information
"oic.wk.p"
Service
"oic.r.temperature"
Health
"oic.r.bodyther
Thermometer
"oic.r.body.location.temp
mometer-am"
Health
Service
erature"
Thermome "oic.d.bodythermometer"
ter Profile
Device "oic.wk.d"
Information
"oic.wk.p"
Service
"oic.r.weight"
"oic.r.bmi"
"oic.r.height"
Weight Scale "oic.r.bodyscale
"oic.r.body.fat"
Service -am"
Weight
"oic.r.body.water"
Scale "oic.d.bodyscale"
Profile
"oic.r.body.slm"
"oic.r.body.ffm"
Device "oic.wk.d"
Information
"oic.wk.p"
Service
6.2.3.2.2 URI for virtual OCF resource
This clause describes how the URI for a Virtual OCF Resource is derived.
Case 1: a BLE Service is mapped to an OCF Resource:
– /, (e.g. BLE Service “Fitness Machine
(org.bluetooth.service.fitness_machine)”: /fitness_machine)
8 © ISO/IEC 2021 – All rights reserved

Case 2: a BLE Service is mapped to multiple OCF Resources. If corresponding multiple OCF
Resources are grouped by Collection (or Atomic Measurement Collection), URI should be as follows:
– URI for Collection Resource: / (e.g. BLE
Service "Health Thermometer (org.bluetooth. service.health_thermometer)": /health_thermometer)
– URI for each OCF Resource link: / without prefix "oic.r"> (e.g. /temperature for "oic.r.temperature", /body.location.temperature for
"oic.r.body.location.temperature")
If corresponding multiple OCF Resources are not grouped by Collection, URI should be as follows:
– URI for each OCF Resource: // Resource Type value of corresponding Resource without prefix "oic.r">
Table 4 provides an example applying the rules defined in this clause.
Table 4 – URI mapping example
BLE OCF
URI Health Thermometer Service /health_thermometer
(for Atomic Collection Resource)
("org.bluetooth.service.health_thermometer")
/temperature
(for "oic.r.temperature")
/body.location.temperature
(for "oic.r.body.location.temperature")
6.2.3.2.3 Common properties of resource type
Resource Type (“rt”, Mandatory): value of “rt” in corresponding OCF Resource specified in
ISO/IEC 30118-4.
Interface (“if”, Mandatory): value of “if” in corresponding OCF Resource specified in ISO/IEC 30118-4.
6.2.3.2.4 Platform resource (“rt” of "oic.wk.p")
Platform ID (“pi”, Mandatory): since BLE device does not provide a mandatory unique “name” (or id)
which can be used to generate name-based UUID described in IETF RFC 4122 clause 4.3, randomly-
generated UUID described in IETF RFC 4122 clause 4.4 should be used for Platform ID.
Manufacturer Name (“mnmn”, Mandatory): if Device Information Service is implemented
“manufacturer_name_string” Characteristic should be used, or “ by unknown” should
be used as default value ( is a Characteristic of GAP).
6.2.3.2.5 Device resource (“rt” of "oic.wk.d")
Spec Version (“icv”, Mandatory): Spec version of ISO/IEC 30118-1 that the Bridging Function
implements should be used.
Device UUID (“di”, Mandatory): as specified in ISO/IEC 30118-2, the value of the “di” Property of OCF
Devices (including Virtual OCF Devices) shall be established as part of On-boarding of that Virtual
OCF Device.
Data Model Version (“dmv”, Mandatory): spec version of the vertical specification this device data
model is implemented to should be used. Syntax is “.major.minor”.
© ISO/IEC 2021 – All rights reserved 9

Protocol Independent ID (“piid”, Mandatory): randomly-generated UUID described in IETF RFC 4122
clause 4.4 should be used for "piid".
6.2.3.3 Exposing a BLE GATT server as a virtual OCF server
Table 5 shows how OCF Device Properties as specified in ISO/IEC 30118-1, should be derived,
typically from fields specified in BLE Device Information Service (Spec Type:
"org.bluetooth.service.device_information", Service ID: 0x180A) and Generic Access Service (Spec
Type: "org.bluetooth.service.generic_access", Service ID: 0x1800).
Table 5 – "oic.wk.d" Resource Type definition
To OCF OCF OCF Description OCF From BLE BLE BLE
Property Propert Mandatory Device Description Mandatory
title y name ? Service ?
Characteristi
c value
(Device) "n" Human friendly name Y Device Name Y
Name For example, “Bob’s (Generic
Thermostat” Access)
Spec "icv" Spec version of Y (none) Bridging
Version ISO/IEC 30118-1 this Function
Device is implemented should return
to, The syntax is its own value
"core.major.minor”]
Device UUID "di" Unique identifier for Y (none) Use as defined
Device. This value shall in
be as defined in ISO/IEC 30118
ISO/IEC 30118-2 for -2
Device UUID.
Protocol- "piid" Unique identifier for OCF Y (none) (none)
Independent Device (UUID).
ID
Randomly-generated
UUID described in
IETF RFC 4122 clause
4.4 should be used for
piid
Data Model "dmv" Spec version(s) of the Y (none) (none)
Version vertical specifications
this Device data model is
implemented to. The
syntax is a comma
separated list of
".major.minor”]
. is the name
of the vertical (e.g. sh
for Smart Home)
Localized "ld" Detailed description of N (none) (none)
Descriptions the Device, in one or
more languages. This
Property is an array of
objects where each
object has a "language"
field and a "value" field
containing the Device
description in the
indicated language.
10 © ISO/IEC 2021 – All rights reserved

To OCF OCF OCF Description OCF From BLE BLE BLE
Property Propert Mandatory Device Description Mandatory
title y name ? Service ?
Characteristi
c value
Software "sv" Version of the Device N Software This N
Version software. Revision characteristic
String (Device represents the
Information) software
revision for the
software within
the Device.
Manufacturer "dmn" Name of manufacturer of N Manufacturer This N
Name the Device, in one or Name String characteristic
more languages. This (Device represents the
Property is an array of Information) name of the
objects where each manufacturer
object has a "language" of the Device.
field and a "value" field
containing the
manufacturer name in
the indicated language.
Model "dmno" Model number as N Model Number This N
Number designated by String (Device characteristic
manufacturer. Information) represents the
model number
that is
assigned by
the Device
vendor.
Regarding configuration resource ("oic.wk.con"), it is not created on the Virtual OCF Server since that
information/interaction is not supported on BLE side.
Table 6 shows how platform Properties, as specified in ISO/IEC 30118-1, are derived, typically from
fields specified in BLE Device Information Service and Generic Access Service.
Table 6 – "oic.wk.p" Resource Type definition
To OCF OCF OCF OCF From BLE Device BLE BLE
Property title Property Description Mandatory? Service Description Mandatory?
name Characteristic value
Platform ID "pi" Unique Y (none) (none)
identifier for the
physical
platform
(UIUID); this
shall be a UUID
in accordance
with
IETF RFC 4122.
It is
recommended
that the UUID
be created
using the
random
generation
scheme
(version 4
UUID) specific
in the RFC.
© ISO/IEC 2021 – All rights reserved 11

To OCF OCF OCF OCF From BLE Device BLE BLE
Property title Property Description Mandatory? Service Description Mandatory?
name Characteristic value
Manufacturer "mnmn" Name of Y Manufacturer Name This N
Name manufacturer String (Device characteristic
(not to exceed Information). if Device represents the
16 characters) Information Service is name of the
not implemented manufacturer
“ by of the Device.
unknown” should be
used as default value
( is a
Characteristic of GAP)
Manufacturer "mnml" URL to N (none) (none)
Details Link manufacturer
(URL) (not to exceed
32 characters)
Model "mnmo" Model number N Model Number String This N
Number as designated (Device Information) characteristic
by manufacturer represents the
model number
that is
assigned by
the Device
vendor.
Date of "mndt" Manufacturing N (none) (none)
Manufacture date of Device
Platform "mnpv" Version of N Software Revision This N
Version platform – String (Device characteristic
string (defined Information) represents the
by software
manufacturer) revision for the
software within
the Device.
OS Version "mnos" Version of N (none) BLE device
platform usually has no
resident OS – OS.
string (defined
by
manufacturer)
Hardware "mnhw" Version of N Hardware Revision This N
Version platform String (Device characteristic
hardware Information) represents the
hardware
revision for the
hardware
within the
Device.
Firmware "mnfv" Version of N Firmware Revision This N
version Device firmware String (Device characteristic
Information) represents the
firmware
revision for the
firmware within
the Device.
Support URL "mnsl" URL that points N (none) (none)
to support
information
from
manufacturer
12 © ISO/IEC 2021 – All rights reserved

To OCF OCF OCF OCF From BLE Device BLE BLE
Property title Property Description Mandatory? Service Description Mandatory?
name Characteristic value
System Time "st" Reference time N (none) (none)
for the Device
Vendor ID "vid" Vendor defined N Manufacturer Name This N
string for the String (Device characteristic
platform. The Information) represents the
string is name of the
freeform and up manufacturer
to the vendor of the Device.
on what text to
populate it.
Table 7 shows how configurable OCF Platform Properties, as specified in Table 16 in ISO/IEC 30118-1,
should be derived as follows, if a BLE device does not implement Device Information Service,
"oic.wk.con.p" should not be created on the Virtual OCF Server.
Table 7 – "oic.wk.con.p" Resource Type definition
To OCF OCF OCF OCF From BLE Device BLE BLE
Property title Property Description Mandatory? Service Description Mandatory?
name Characteristic
value
Platform "mnpn" Platform N Manufacturer This
Names Identifier Name String characteristic
(Device represents the
Information) name of the
manufacturer of
the Device.
No BLE Service equivalence exist for factory reset or restart, so there is no Characteristics for
"oic.wk.mnt" Properties "Factory_Reset" and "Reboot", so mapping for "oic.wk.mnt" is omitted.
6.2.3.4 On-the-fly translation
If a BLE Profile is not in Table 3 (not belong to a well-defined set), a BLE Bridging Function does not
translate it (on-the-fly translation is not supported).
6.2.3.5 Protocol translation between BLE and OCF
Adopted Bluetooth Profiles, Services, Protocols and Transports describes not only
Service/Characteristic data model but also Features how to manipulate it. GATT Features define how
GATT-based data exchanges takes place. The GATT features are used when we translate OCF
CRUDN into BLE protocol and vice versa.
Table 8 shows translation rule between BLE GATT Feature and OCF CRUDN. When a BLE Bridging
Function receives CREATE/DELETE request from OCF Client, it shall return corresponding error (i.e.
4.xx or 5.xx) because there are no corresponding Features for them. If a BLE Bridging Function
receives RETRIEVE/UPDATE request from OCF Client, it shall translate it into Characteristic Value
Read/Characteristic Value Write respectively. NOTIFY request from OCF Client shall be translated into
Characteristic Descriptor Value Write, and Characteristic Value Notification/Indication from BLE GATT
Server shall be translated into NOTIFICATION response.
© ISO/IEC 2021 – All rights reserved 13

Table 8 – Protocol translation rule between BLE and OCF
BLE GATT Feature OCF CRUDN
N/A (Not Supported) CREATE
Characteristic Value Read RETRIEVE
Characteristic Value Write UPDATE
N/A (Not Supported) DELETE
Characteristic Descriptor Value Write NOTIFY request
Characteristic Value Notification/Indication NOTIFICATION response
6.2.3.6 Illustrative OCF to BLE translation flows
6.2.3.6.1 Initialization
Figure 5shows the initial pairing procedure.

Figure 5 – Initialization
6.2.3.6.2 Resource discovery
Figure 6 shows the resource discovery procedure.

Figure 6 – Resource Discovery
14 © ISO/IEC 2021 – All rights reserved

6.2.3.6.3 Create resource
Figure 7 illustrates Resource creation.

Figure 7 – Create Resource
6.2.3.6.4 Retrieve resource
Figure 8 illustrates Resource RETRIEVAL.

Figure 8 – Retrieve Resource
6.2.3.6.5 Update resource
Figure 9 illustrates Resource UPDATE.
© ISO/IEC 2021 – All rights reserved 15

Figure 9 – Update Resource
6.2.3.6.6 Delete resource
Figure 10 illustrates Resource DELETE. Note that this only applies to Resources that were created.

Figure 10 – Delete Resource
6.2.3.6.7 Set notification & send notification
Figure 11 illustrates the establishment and sending of a notification.
16 © ISO/IEC 2021 – All rights reserved

Figure 11 – Set Notification and send Notification
6.2.3.7 Error handling
If a BLE operation fails, the Bridging Function sends an appropriate OCF error response to the OCF
Client. it constructs an appropriate OCF error message (e.g., diagnostic payload if using CoAP) from
the BLE error name and error code (if any), using the form ": ", with the
taken from the ATT error code field and the taken from the ATT error
name, and the error code for the OCF network set to an appropriate value.
7 Device type mapping
7.1 Introduction
This clause contains the mappings to OCF Device Types.
7.2 BLE Profile to OCF device types
Table 9 captures the equivalency mapping between BLE Profile and OCF defined Device Types. The
minimum Resource sets for each OCF Device is provided in ISO/IEC 30118-5.
© ISO/IEC 2021 – All rights reserved 17

Table 9 – BLE Profile to OCF Device Type Mapping
BLE GATT- OCF Device Type
based Profile
Blood "oic.d.bloodpressuremonitor"
Pressure
Profile
Glucose "oic.d.glucosemeter"
Profile
Health "oic.d.bodythermometer"
Thermometer
Profile
Weight Scale "oic.d.bodyscale"
Profile
8 BLE profile to resource equivalence
8.1 Introduction
This clause lists the complete set of applicable BLE Profiles and provides the equivalent OCF Resource
Type(s) to which the BLE Profiles map.
8.2 BLE services to OCF resources
Table 10 captures the equivalency mapping between BLE Services and OCF defined Resource Types
(see ISO/IEC 30118-4). Detailed Property by Property mappings are provided in clause 9.
Table 10 – BLE Services to OCF Resource Type Mapping
BLE Service OCF Resource
Atomic Measurement Resource Type
Resource Type
Blood "oic.r. "oic.r.blood.pressure"
Pressure bloodpressuremonitor-
"oic.r.pulserate"
Service am"
Device "oic.wk.d"
Information
"oic.wk.p"
Service
Glucose "oic.r.glucosemeter-am" "oic.r.glucose"
Service
"oic.r.glucose.carb"
"oic.r.glucose.exercise"
"oic.r.glucose.hba1c"
"oic.r.glucose.health"
"oic.r.glucose.meal"
"oic.r.glucose.medication"
"oic.r.glucose.samplelocation"
"oic.r.gluco
...

Questions, Comments and Discussion

Ask us and Technical Secretary will try to provide an answer. You can facilitate discussion about the standard in here.

Loading comments...