| <!DOCTYPE html> | 
 | <html> | 
 | <head> | 
 |     <meta charset="utf-8"> | 
 | <meta http-equiv="X-UA-Compatible" content="IE=edge"> | 
 | <meta name="viewport" content="width=device-width, initial-scale=1"> | 
 | <meta name="description" content=""> | 
 | <meta name="keywords" content="searchrql,  search, things-search, rql, query"> | 
 | <title>  Search functionality • Eclipse Ditto • a digital twin framework</title> | 
 |  | 
 | <link rel="stylesheet" href="css/syntax.css"> | 
 | <link rel="stylesheet" type="text/css" href="//cdnjs.cloudflare.com/ajax/libs/font-awesome/4.7.0/css/font-awesome.min.css" crossorigin="anonymous"> | 
 | <link rel="stylesheet" href="css/modern-business.css"> | 
 | <link rel="stylesheet" href="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/css/bootstrap.min.css" crossorigin="anonymous"> | 
 | <link rel="stylesheet" href="css/customstyles.css"> | 
 | <link rel="stylesheet" href="css/boxshadowproperties.css"> | 
 | <link rel="stylesheet" href="css/theme-ditto.css"> | 
 | <link rel="stylesheet" href="https://fonts.googleapis.com/css?family=Open+Sans:400,700|Source+Code+Pro:300,600|Titillium+Web:400,600,700"> | 
 |  | 
 | <script src="//cdnjs.cloudflare.com/ajax/libs/jquery/2.1.4/jquery.min.js" crossorigin="anonymous"></script> | 
 | <script src="//cdnjs.cloudflare.com/ajax/libs/twitter-bootstrap/3.3.7/js/bootstrap.min.js" crossorigin="anonymous"></script> | 
 | <script src="//cdnjs.cloudflare.com/ajax/libs/anchor-js/2.0.0/anchor.min.js" crossorigin="anonymous"></script> | 
 | <script src="js/toc.js"></script> | 
 | <script src="js/customscripts.js"></script> | 
 |  | 
 | <script type="application/ld+json"> | 
 | { | 
 |   "@context": "http://schema.org", | 
 |   "@type": "Organization", | 
 |   "url": "https://eclipse.org/ditto/", | 
 |   "logo": "https://eclipse.org/ditto/images/ditto.svg" | 
 | } | 
 | </script> | 
 |  | 
 | <link rel="icon" type="image/png" href="images/favicon-16x16.png" sizes="16x16"> | 
 | <link rel="icon" type="image/png" href="images/favicon-32x32.png" sizes="32x32"> | 
 | <link rel="icon" type="image/png" href="images/favicon-96x96.png" sizes="96x96"> | 
 |  | 
 | <link rel="alternate" type="application/rss+xml" title="Eclipse Ditto Blog" href="https://www.eclipse.org/ditto/feed.xml"> | 
 |  | 
 | <!-- Eclipse Foundation cookie consent: --> | 
 | <link rel="stylesheet" type="text/css" href="//www.eclipse.org/eclipse.org-common/themes/solstice/public/stylesheets/vendor/cookieconsent/cookieconsent.min.css" /> | 
 | <script src="//www.eclipse.org/eclipse.org-common/themes/solstice/public/javascript/vendor/cookieconsent/default.min.js"></script> | 
 |  | 
 |     <script> | 
 |         $(document).ready(function() { | 
 |             $("#tg-sb-link").click(function() { | 
 |                 $("#tg-sb-sidebar").toggle(); | 
 |                 $("#tg-sb-content").toggleClass('col-md-9'); | 
 |                 $("#tg-sb-content").toggleClass('col-md-12'); | 
 |                 $("#tg-sb-icon").toggleClass('fa-toggle-on'); | 
 |                 $("#tg-sb-icon").toggleClass('fa-toggle-off'); | 
 |             }); | 
 |         }); | 
 |     </script> | 
 | </head> | 
 |  | 
 |  | 
 | <script> | 
 |     (function(w,d,s,l,i){ | 
 |         w[l]=w[l]||[]; | 
 |         w[l].push({'gtm.start': | 
 |             new Date().getTime(),event:'gtm.js'}); | 
 |         var f=d.getElementsByTagName(s)[0], | 
 |             j=d.createElement(s), | 
 |             dl=l!='dataLayer'?'&l='+l:''; | 
 |         j.async=true; | 
 |         j.src='https://www.googletagmanager.com/gtm.js?id='+i+dl; | 
 |         f.parentNode.insertBefore(j,f); | 
 |     })(window,document,'script','dataLayer','GTM-5WLCZXC'); | 
 | </script> | 
 |  | 
 |  | 
 |  | 
 | <body> | 
 | <!-- Navigation --> | 
 | <nav class="navbar navbar-inverse navbar-fixed-top"> | 
 |     <div class="container topnavlinks"> | 
 |         <div class="navbar-header"> | 
 |             <button type="button" class="navbar-toggle" data-toggle="collapse" data-target="#bs-example-navbar-collapse-1"> | 
 |                 <span class="sr-only">Toggle navigation</span> | 
 |                 <span class="icon-bar"></span> | 
 |                 <span class="icon-bar"></span> | 
 |                 <span class="icon-bar"></span> | 
 |             </button> | 
 |             <a class="navbar-ditto-home" href="index.html"> <img src="images/ditto_allwhite_symbolonly.svg" class="ditto-navbar-symbol" alt="Home"> <img src="images/ditto_allwhite_textonly.svg" class="ditto-navbar-symbol-text" alt="Ditto"></a> | 
 |         </div> | 
 |         <div class="collapse navbar-collapse" id="bs-example-navbar-collapse-1"> | 
 |             <ul class="nav navbar-nav navbar-right"> | 
 |                 <!-- toggle sidebar button --> | 
 |                 <!--<li><a id="tg-sb-link" href="#"><i id="tg-sb-icon" class="fa fa-toggle-on"></i> Nav</a></li>--> | 
 |                 <!-- entries without drop-downs appear here --> | 
 |  | 
 |  | 
 |  | 
 |  | 
 |                  | 
 |                  | 
 |                  | 
 |                 <li><a href="blog.html">Blog</a></li> | 
 |                  | 
 |                  | 
 |                  | 
 |                 <li><a href="intro-overview.html">Documentation</a></li> | 
 |                  | 
 |                  | 
 |                  | 
 |                 <li><a href="http-api-doc.html">HTTP API</a></li> | 
 |                  | 
 |                  | 
 |                  | 
 |                 <li><a href="sandbox.html">Sandbox</a></li> | 
 |                  | 
 |                  | 
 |                  | 
 |                 <li><a href="https://github.com/eclipse/ditto" target="_blank">GitHub</a></li> | 
 |                  | 
 |                  | 
 |                  | 
 |                 <li><a href="https://github.com/eclipse/ditto-examples" target="_blank">GitHub examples</a></li> | 
 |                  | 
 |                  | 
 |                  | 
 |                 <!-- entries with drop-downs appear here --> | 
 |                 <!-- conditional logic to control which topnav appears for the audience defined in the configuration file.--> | 
 |                  | 
 |                  | 
 |                 <li class="dropdown"> | 
 |                     <a href="#" class="dropdown-toggle" data-toggle="dropdown">Links<b class="caret"></b></a> | 
 |                     <ul class="dropdown-menu"> | 
 |                          | 
 |                          | 
 |                         <li><a href="https://projects.eclipse.org/projects/iot.ditto" target="_blank">Eclipse Ditto Project</a></li> | 
 |                          | 
 |                          | 
 |                          | 
 |                         <li><a href="https://www.eclipse.org/forums/index.php/f/364/" target="_blank">Forum</a></li> | 
 |                          | 
 |                          | 
 |                          | 
 |                         <li><a href="https://ci.eclipse.org/ditto/" target="_blank">Jenkins</a></li> | 
 |                          | 
 |                          | 
 |                          | 
 |                         <li><a href="https://dev.eclipse.org/mhonarc/lists/ditto-dev/" target="_blank">Mailing list archives</a></li> | 
 |                          | 
 |                          | 
 |                          | 
 |                         <li><a href="https://gitter.im/eclipse/ditto" target="_blank">Gitter.im chat</a></li> | 
 |                          | 
 |                          | 
 |                     </ul> | 
 |                 </li> | 
 |                  | 
 |                  | 
 |                  | 
 |                 <!--comment out this block if you want to hide search--> | 
 |                 <li> | 
 |                     <!--start search--> | 
 |                     <div id="search-demo-container"> | 
 |                         <input type="text" id="search-input" placeholder="search..."> | 
 |                         <ul id="results-container"></ul> | 
 |                     </div> | 
 |                     <script src="//cdnjs.cloudflare.com/ajax/libs/simple-jekyll-search/0.0.9/jekyll-search.js" type="text/javascript"></script> | 
 |                     <script type="text/javascript"> | 
 |                             SimpleJekyllSearch.init({ | 
 |                                 searchInput: document.getElementById('search-input'), | 
 |                                 resultsContainer: document.getElementById('results-container'), | 
 |                                 dataSource: 'search.json', | 
 |                                 searchResultTemplate: '<li><a href="{url}" title="Search functionality">{title}</a></li>', | 
 |                                 noResultsText: 'No results found.', | 
 |                                 limit: 10, | 
 |                                 fuzzy: true, | 
 |                     }) | 
 |                     </script> | 
 |                     <!--end search--> | 
 |                 </li> | 
 |             </ul> | 
 |         </div> | 
 |     </div> | 
 |     <!-- /.container --> | 
 | </nav> | 
 |  | 
 | <!-- Page Content --> | 
 | <div class="container"> | 
 |   <div id="main"> | 
 |     <!-- Content Row --> | 
 |     <div class="row"> | 
 |          | 
 |          | 
 |             <!-- Sidebar Column --> | 
 |             <div class="col-md-3" id="tg-sb-sidebar"> | 
 |                  | 
 |  | 
 | <ul id="mysidebar" class="nav"> | 
 |   <li class="sidebarTitle"> | 
 |     <label for="docVersion">Eclipse Ditto  version:</label> | 
 |     <div class="select-wrapper"> | 
 |       <select id="docVersion" name="docVersion"> | 
 |          | 
 |         <option value="">development</option> | 
 |          | 
 |         <option value="1.0">1.0</option> | 
 |          | 
 |         <option value="1.1">1.1</option> | 
 |          | 
 |         <option value="1.2">1.2</option> | 
 |          | 
 |         <option value="1.3">1.3</option> | 
 |          | 
 |         <option value="1.4">1.4</option> | 
 |          | 
 |         <option value="1.5">1.5</option> | 
 |          | 
 |       </select> | 
 |     </div> | 
 |     <div id="dev-warning"> | 
 |       <div markdown="span" class="alert alert-warning" role="alert" style="font-size:0.6em"><i class="fa fa-warning"></i> <b>Important:</b> This documentation reflects the latest 'development'. You might want to choose a released version.</div> | 
 |     </div> | 
 |   </li> | 
 |    | 
 |    | 
 |    | 
 |      | 
 |         <li class="subfolders"> | 
 |           <a href="#"><span></span>Introduction</a> | 
 |           <ul> | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="intro-overview.html">Overview</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="intro-digitaltwins.html">Digital twins</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="intro-hello-world.html">Hello world</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |           </ul> | 
 |         </li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |         <li class="subfolders"> | 
 |           <a href="#"><span></span>Release Notes</a> | 
 |           <ul> | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_151.html">1.5.1</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_150.html">1.5.0</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_140.html">1.4.0</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_130.html">1.3.0</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_121.html">1.2.1</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_120.html">1.2.0</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_115.html">1.1.5</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_113.html">1.1.3</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_112.html">1.1.2</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_111.html">1.1.1</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_110.html">1.1.0</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_100.html">1.0.0</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_090.html">0.9.0</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="release_notes_080.html">0.8.0</a></li> | 
 |                | 
 |                | 
 |                | 
 |               <li class="subfolders"> | 
 |                   <a href="#"><span></span>Milestone releases</a> | 
 |                   <ul> | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_100-M2.html">1.0.0-M2</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_100-M1a.html">1.0.0-M1a</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_090-M2.html">0.9.0-M2</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_090-M1.html">0.9.0-M1</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_080-M3.html">0.8.0-M3</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_080-M2.html">0.8.0-M2</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_080-M1.html">0.8.0-M1</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_030-M2.html">0.3.0-M2</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_030-M1.html">0.3.0-M1</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_020-M1.html">0.2.0-M1</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_010-M3.html">0.1.0-M3</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="release_notes_010-M1.html">0.1.0-M1</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                   </ul> | 
 |               </li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |           </ul> | 
 |         </li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |         <li class="subfolders"> | 
 |           <a href="#"><span></span>Installation</a> | 
 |           <ul> | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="installation-building.html">Building Ditto</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="installation-running.html">Running Ditto</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="installation-operating.html">Operating Ditto</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |           </ul> | 
 |         </li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |         <li class="subfolders"> | 
 |           <a href="#"><span></span>Basic concepts</a> | 
 |           <ul> | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="basic-overview.html">Overview</a></li> | 
 |                | 
 |                | 
 |                | 
 |               <li class="subfolders"> | 
 |                   <a href="#"><span></span>Model entities</a> | 
 |                   <ul> | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="basic-thing.html">Thing</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="basic-acl.html">Access Control List (ACL)</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="basic-feature.html">Feature</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="basic-policy.html">Policy</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="basic-namespaces-and-names.html">Namespaces and Names</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="basic-metadata.html">Thing Metadata</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="basic-errors.html">Errors</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                   </ul> | 
 |               </li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="basic-auth.html">Authentication and Authorization</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="basic-messages.html">Messages</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="basic-signals.html">Signals</a></li> | 
 |                | 
 |                | 
 |                | 
 |               <li class="subfolders"> | 
 |                   <a href="#"><span></span>Signal types</a> | 
 |                   <ul> | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="basic-signals-command.html">Command</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="basic-signals-commandresponse.html">Command response</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="basic-signals-errorresponse.html">Error response</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="basic-signals-event.html">Event</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                   </ul> | 
 |               </li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="basic-apis.html">APIs</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="basic-connections.html">Connections</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="basic-placeholders.html">Placeholders</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="basic-changenotifications.html">Change notifications</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="basic-rql.html">RQL expressions</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="basic-enrichment.html">Signal enrichment</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li class="active"><a href="basic-search.html">Search</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="basic-acknowledgements.html">Acknowledgements / QoS</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |           </ul> | 
 |         </li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |         <li class="subfolders"> | 
 |           <a href="#"><span></span>Architecture</a> | 
 |           <ul> | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="architecture-overview.html">Overview</a></li> | 
 |                | 
 |                | 
 |                | 
 |               <li class="subfolders"> | 
 |                   <a href="#"><span></span>Services</a> | 
 |                   <ul> | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="architecture-services-policies.html">Policies</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="architecture-services-things.html">Things</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="architecture-services-things-search.html">Things-Search</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="architecture-services-connectivity.html">Connectivity</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="architecture-services-concierge.html">Concierge</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="architecture-services-gateway.html">Gateway</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                   </ul> | 
 |               </li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |           </ul> | 
 |         </li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |         <li class="subfolders"> | 
 |           <a href="#"><span></span>HTTP API</a> | 
 |           <ul> | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="httpapi-overview.html">Overview</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="httpapi-concepts.html">Concepts</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="httpapi-search.html">Search</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="httpapi-messages.html">Messages</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="httpapi-protocol-bindings-websocket.html">WebSocket protocol binding</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="httpapi-protocol-bindings-cloudevents.html">Cloud Events HTTP protocol binding</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="httpapi-sse.html">Server sent events</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |           </ul> | 
 |         </li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |         <li class="subfolders"> | 
 |           <a href="#"><span></span>Connectivity API</a> | 
 |           <ul> | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="connectivity-overview.html">Overview</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="connectivity-manage-connections.html">Manage connections</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="connectivity-protocol-bindings-amqp091.html">AMQP 0.9.1 protocol binding</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="connectivity-protocol-bindings-amqp10.html">AMQP 1.0 protocol binding</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="connectivity-protocol-bindings-mqtt.html">MQTT 3.1.1 protocol binding</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="connectivity-protocol-bindings-mqtt5.html">MQTT 5 protocol binding</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="connectivity-protocol-bindings-http.html">HTTP 1.1 protocol binding</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="connectivity-protocol-bindings-kafka2.html">Kafka 2.x protocol binding</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="connectivity-mapping.html">Payload mapping</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="connectivity-header-mapping.html">Header mapping</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="connectivity-tls-certificates.html">TLS certificates</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |           </ul> | 
 |         </li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |         <li class="subfolders"> | 
 |           <a href="#"><span></span>Client SDK</a> | 
 |           <ul> | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="client-sdk-overview.html">Overview</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="client-sdk-java.html">Java</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="client-sdk-javascript.html">JavaScript</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |           </ul> | 
 |         </li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |         <li class="subfolders"> | 
 |           <a href="#"><span></span>Ditto Protocol</a> | 
 |           <ul> | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="protocol-overview.html">Overview</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="protocol-twinlive.html">Twin/live channel</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="protocol-specification.html">Specification</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="protocol-specification-topic.html">Protocol topic</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="protocol-specification-things.html">Things group</a></li> | 
 |                | 
 |                | 
 |                | 
 |               <li class="subfolders"> | 
 |                   <a href="#"><span></span>→ commands/events</a> | 
 |                   <ul> | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-specification-things-create-or-modify.html">Create/Modify</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-specification-things-retrieve.html">Retrieve</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-specification-things-delete.html">Delete</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-specification-acks.html">Acknowledgements</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-specification-errors.html">Errors</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                   </ul> | 
 |               </li> | 
 |                | 
 |                | 
 |                | 
 |               <li class="subfolders"> | 
 |                   <a href="#"><span></span>→ search/messages</a> | 
 |                   <ul> | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-specification-things-search.html">Search</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-specification-things-messages.html">Messages</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                   </ul> | 
 |               </li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="protocol-specification-policies.html">Policies group</a></li> | 
 |                | 
 |                | 
 |                | 
 |               <li class="subfolders"> | 
 |                   <a href="#"><span></span>→ commands/events</a> | 
 |                   <ul> | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-specification-policies-create-or-modify.html">Create/Modify</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-specification-policies-retrieve.html">Retrieve</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-specification-policies-delete.html">Delete</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                   </ul> | 
 |               </li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="protocol-bindings.html">Bindings</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="protocol-examples.html">Examples</a></li> | 
 |                | 
 |                | 
 |                | 
 |               <li class="subfolders"> | 
 |                   <a href="#"><span></span>→ Things examples</a> | 
 |                   <ul> | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-creatething.html">Create a Thing</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-deletething.html">Delete a Thing</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifything.html">Modify a Thing</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrievething.html">Retrieve a Thing</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrievethings.html">Retrieve multiple Things</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifypolicyid.html">Modify the Policy ID of a Thing</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-createattributes.html">Create Attributes</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-deleteattributes.html">Delete Attributes</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifyattributes.html">Modify Attributes</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrieveattributes.html">Retrieve Attributes</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-createattribute.html">Create a single Attribute</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-deleteattribute.html">Delete a single Attribute</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifyattribute.html">Modify a single Attribute</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrieveattribute.html">Retrieve a single Attribute</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-createthingdefinition.html">Create a Definition</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-deletethingdefinition.html">Delete a Definition</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifythingdefinition.html">Modify a Definition</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrievethingdefinition.html">Retrieve a Definition</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-createfeatures.html">Create Features</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-deletefeatures.html">Delete Features</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifyfeatures.html">Modify Features</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrievefeatures.html">Retrieve Features</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-createfeature.html">Create a single Feature</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-deletefeature.html">Delete a single Feature</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifyfeature.html">Modify a single Feature</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrievefeature.html">Retrieve a single Feature</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-createdefinition.html">Create Feature Definition</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-deletedefinition.html">Delete Feature Definition</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifydefinition.html">Modify Feature Definition</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrievedefinition.html">Retrieve Feature Definition</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-createproperties.html">Create Feature Properties</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-deleteproperties.html">Delete Feature Properties</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifyproperties.html">Modify Feature Properties</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrieveproperties.html">Retrieve Feature Properties</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-createproperty.html">Create a single Property</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-deleteproperty.html">Delete a single Property</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifyproperty.html">Modify a single Property</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrieveproperty.html">Retrieve a single Property</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-createdesiredproperties.html">Create desired Feature Properties</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-deletedesiredproperties.html">Delete desired Feature Properties</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifydesiredproperties.html">Modify desired Feature Properties</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrievedesiredproperties.html">Retrieve desired Feature Properties</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-createdesiredproperty.html">Create a single desired Property</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-deletedesiredproperty.html">Delete a single desired Property</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-modifydesiredproperty.html">Modify a single desired Property</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-retrievedesiredproperty.html">Retrieve a single desired Property</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-errorresponses.html">Error responses</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                   </ul> | 
 |               </li> | 
 |                | 
 |                | 
 |                | 
 |               <li class="subfolders"> | 
 |                   <a href="#"><span></span>→ Policies examples</a> | 
 |                   <ul> | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-createpolicy.html">Create a Policy</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-deletepolicy.html">Delete a Policy</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-modifypolicy.html">Modify a Policy</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-retrievepolicy.html">Retrieve a Policy</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-modifypolicyentries.html">Modify entries</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-retrievepolicyentries.html">Retrieve entries</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-createpolicyentry.html">Create a single entry</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-deletepolicyentry.html">Delete a single entry</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-modifypolicyentry.html">Modify a single entry</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-retrievepolicyentry.html">Retrieve a single entry</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-modifysubjects.html">Modify subjects</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-retrievesubjects.html">Retrieve subjects</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-createsubject.html">Create a single subject</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-deletesubject.html">Delete a single subject</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-modifysubject.html">Modify a single subject</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-retrievesubject.html">Retrieve a single subject</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-modifyresources.html">Modify resources</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-retrieveresources.html">Retrieve resources</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-createresource.html">Create a single resource</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-deleteresource.html">Delete a single resource</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-modifyresource.html">Modify a single resource</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-retrieveresource.html">Retrieve a single resource</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                        | 
 |                       <li><a href="protocol-examples-policies-errorresponses.html">Error responses</a></li> | 
 |                        | 
 |                        | 
 |                        | 
 |                   </ul> | 
 |               </li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |                | 
 |               <li><a href="protocol-examples-search.html">→ Search examples</a></li> | 
 |                | 
 |                | 
 |                | 
 |                | 
 |           </ul> | 
 |         </li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |     <li><a href="sandbox.html">Sandbox</a></li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |     <li><a href="presentations.html">Presentations</a></li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |     <li><a href="glossary.html">Glossary</a></li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |     <li><a href="feedback.html">Feedback</a></li> | 
 |      | 
 |    | 
 |    | 
 |    | 
 |      | 
 |          <p class="external"> | 
 |              <a href="#" id="collapseAll">Collapse All</a> | <a href="#" id="expandAll">Expand All</a> | 
 |          </p> | 
 |      | 
 | </ul> | 
 |  | 
 | <!-- this highlights the active parent class in the sidebar. this is critical so that the parent expands when you're viewing a page. This must appear below the sidebar code above. Otherwise, if placed inside customscripts.js, the script runs before the sidebar code runs and the class never gets inserted.--> | 
 | <script>$("li.active").parents('li').toggleClass("active"); | 
 | </script> | 
 |  | 
 |             </div> | 
 |              | 
 |          | 
 |  | 
 |         <!-- Content Column --> | 
 |         <div class="col-md-9" id="tg-sb-content"> | 
 |             <div class="post-header"> | 
 |    <h1 class="post-title-main">Search functionality</h1> | 
 | </div> | 
 |  | 
 |  | 
 |  | 
 | <div class="post-content"> | 
 |  | 
 |     | 
 |  | 
 |      | 
 |      | 
 | <!-- this handles the automatic toc. use ## for subheads to auto-generate the on-page minitoc. if you use html tags, you must supply an ID for the heading element in order for it to appear in the minitoc. --> | 
 | <script> | 
 | $( document ).ready(function() { | 
 |   // Handler for .ready() called. | 
 |  | 
 | $('#toc').toc({ minimumHeaders: 0, listType: 'ul', showSpeed: 0, headers: 'h2,h3,h4' }); | 
 |  | 
 | /* this offset helps account for the space taken up by the floating toolbar. */ | 
 | $('#toc').on('click', 'a', function() { | 
 |   var target = $(this.getAttribute('href')) | 
 |     , scroll_target = target.offset().top | 
 |  | 
 |   $(window).scrollTop(scroll_target - 10); | 
 |   return false | 
 | }) | 
 |    | 
 | }); | 
 | </script> | 
 |  | 
 | <div id="toc"></div> | 
 |  | 
 |      | 
 |  | 
 |  | 
 |      | 
 |  | 
 |  | 
 |      | 
 |  | 
 |   <p>Ditto provides a search functionality as one of the services around its managed <strong>digital twins</strong>. | 
 | The functionality is available for the following APIs.</p> | 
 |  | 
 | <table> | 
 |   <thead> | 
 |     <tr> | 
 |       <th>API</th> | 
 |       <th>Access Method</th> | 
 |       <th>Characteristics</th> | 
 |     </tr> | 
 |   </thead> | 
 |   <tbody> | 
 |     <tr> | 
 |       <td><a href="httpapi-search.html">HTTP</a></td> | 
 |       <td>HTTP request-response</td> | 
 |       <td>Stateless</td> | 
 |     </tr> | 
 |     <tr> | 
 |       <td><a href="protocol-specification-things-search.html">Ditto protocol</a></td> | 
 |       <td><a href="httpapi-protocol-bindings-websocket.html">Websocket</a> and <a href="basic-connections.html">connections</a></td> | 
 |       <td><a href="https://reactive-streams.org">Reactive-streams</a> compatible</td> | 
 |     </tr> | 
 |     <tr> | 
 |       <td><a href="httpapi-sse.html#sse-api-searchthings">Server-sent events</a></td> | 
 |       <td><a href="https://html.spec.whatwg.org/multipage/server-sent-events.html">HTML5 server-sent events</a></td> | 
 |       <td>Streaming with resumption</td> | 
 |     </tr> | 
 |   </tbody> | 
 | </table> | 
 |  | 
 | <h2 id="search-index">Search index</h2> | 
 |  | 
 | <p>Ditto’s microservice <a href="architecture-services-things-search.html">things-search</a> automatically consumes all  | 
 | <a href="basic-signals-event.html">events</a> which are emitted for changes to <code class="highlighter-rouge">Things</code> and <code class="highlighter-rouge">Policies</code> and updates an for search  | 
 | optimized representation of the <code class="highlighter-rouge">Thing</code> data into its own database.</p> | 
 |  | 
 | <p>No custom indexes have to be defined as the structure in the database is “flattened” so that all data contained in  | 
 | <a href="basic-thing.html">Things</a> can be searched for efficiently.</p> | 
 |  | 
 | <h2 id="consistency">Consistency</h2> | 
 |  | 
 | <p>Ditto’s search index provides <strong>eventual consistency</strong>.</p> | 
 |  | 
 | <p>In order to reduce load to the database when processing updates in a high frequency, the search index is updated in  | 
 | small batches with a default interval of 1 second (configurable via environment variable  | 
 | <code class="highlighter-rouge">THINGS_SEARCH_UPDATER_STREAM_WRITE_INTERVAL</code>).</p> | 
 |  | 
 | <p>That means that when a thing is updated and the API (e.g. the HTTP endpoint) returns a success response, the search index | 
 | will not reflect that change in that instant. The change will most likely be reflected in the search index within | 
 | 1-2 seconds. In rare cases the duration until consistency is reached again might be higher.</p> | 
 |  | 
 | <h2 id="search-queries">Search queries</h2> | 
 |  | 
 | <p>Queries can be made via Ditto’s APIs (<a href="httpapi-search.html">HTTP</a> or  | 
 | <a href="protocol-specification-things-search.html">Ditto Protocol</a> e.g. via <a href="httpapi-protocol-bindings-websocket.html">WebSocket</a>).</p> | 
 |  | 
 | <p><strong>Example:</strong> Search for all things located in “living-room”, reorder the list to start with the lowest thing ID as the first element,  | 
 | and return the first 5 results:</p> | 
 | <div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>Filter:     eq(attributes/location,"living-room") | 
 | Sorting:    sort(+thingId) | 
 | Paging:     size(5),cursor(CURSOR_ID) | 
 | </code></pre></div></div> | 
 |  | 
 | <h2 id="search-count-queries">Search count queries</h2> | 
 |  | 
 | <p>The same syntax applies for search count queries - only the <a href="basic-rql.html#rql-sorting">sorting</a> and <a href="#rql-paging-deprecated">paging</a> makes no  | 
 | sense here, so there are not necessary to specify.</p> | 
 |  | 
 | <h2 id="namespaces">Namespaces</h2> | 
 |  | 
 | <p>The Search supports specifying in which <code class="highlighter-rouge">namespaces</code> it should be searched. This may significantly improve the search  | 
 | performance when many Things of different namespaces are managed in Ditto’s search index.</p> | 
 |  | 
 | <h2 id="rql">RQL</h2> | 
 |  | 
 | <p>In order to apply queries when searching, Ditto uses the <a href="basic-rql.html">RQL notation</a> which is also applied for other  | 
 | scenarios (e.g. filtering <a href="basic-changenotifications.html">notifications</a>).</p> | 
 |  | 
 | <h2 id="sorting-and-paging-options">Sorting and paging options</h2> | 
 |  | 
 | <p>The <a href="basic-rql.html#rql-sorting"><code class="highlighter-rouge">sort</code> option</a> governs the order of search results.</p> | 
 |  | 
 | <div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>sort(<+|-><property1>,<+|-><property2>,...) | 
 | </code></pre></div></div> | 
 |  | 
 | <p>If not given, search results are listed in the ascending order of thing IDs, namely <code class="highlighter-rouge">sort(+thingId)</code>.</p> | 
 |  | 
 | <p>The <code class="highlighter-rouge">size</code> option</p> | 
 | <div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>size(<count>) | 
 | </code></pre></div></div> | 
 | <p>limits the search results delivered in one HTTP response or one Ditto protocol message to <code class="highlighter-rouge"><count></code> items.</p> | 
 |  | 
 | <p>If the paging option is not explicitly specified a <strong>default value</strong> of <em>25</em> is used. The <strong>maximum</strong> allowed count is  | 
 | <em>200</em>.</p> | 
 |  | 
 | <div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>cursor(<cursor-id>) | 
 | </code></pre></div></div> | 
 | <p>Starts the search at the position of the cursor with ID <code class="highlighter-rouge"><cursor-id></code>. The cursor ID is obtained from the field  | 
 | <code class="highlighter-rouge">cursor</code> of a previous response and marks the <strong>position after the last entry</strong> of the previous search. A response  | 
 | includes no cursor if there are no more results.</p> | 
 |  | 
 | <p>If a request has a <code class="highlighter-rouge">cursor</code> option, then any included <code class="highlighter-rouge">filter</code> or <code class="highlighter-rouge">sort</code> option may not differ from the original request of the cursor. Otherwise, the request is rejected.</p> | 
 |  | 
 | <p><strong>Example - return ten items with a cursor</strong></p> | 
 | <div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>option=size(10),cursor(<cursor-from-previous-result>) | 
 | </code></pre></div></div> | 
 |  | 
 | <h2 id="rql-paging-deprecated">RQL paging (deprecated)</h2> | 
 |  | 
 | <div class="alert alert-info" role="alert"><i class="fa fa-info-circle"></i> <b>Note:</b> The limit option is deprecated, it may be removed in future releases. Use <a href="basic-search.html#sorting-and-paging-options">cursor-based  | 
 | paging</a> instead.</div> | 
 |  | 
 | <p>The RQL limiting part specifies which part (or “page”) should be returned of a large search result set.</p> | 
 |  | 
 | <div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>limit(<offset>,<count>) | 
 | </code></pre></div></div> | 
 |  | 
 | <p>Limits the search results to <code class="highlighter-rouge"><count></code> items, starting with the item at index <code class="highlighter-rouge"><offset></code>.</p> | 
 | <ul> | 
 |   <li>if the paging option is not explicitly specified, the <strong>default</strong> value <code class="highlighter-rouge">limit(0,25)</code> is used, i.e. the first <code class="highlighter-rouge">25</code> results are returned.</li> | 
 |   <li>the <strong>maximum</strong> allowed count is <code class="highlighter-rouge">200</code>.</li> | 
 | </ul> | 
 |  | 
 | <p><strong>Example - return the first ten items</strong></p> | 
 | <div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>limit(0,10) | 
 | </code></pre></div></div> | 
 |  | 
 | <p><strong>Example - return the items 11 to 20</strong></p> | 
 | <div class="highlighter-rouge"><div class="highlight"><pre class="highlight"><code>limit(10,10) | 
 | </code></pre></div></div> | 
 | <p>i.e. Return the next ten items (from index 11 to 20)</p> | 
 |  | 
 | <div class="alert alert-info" role="alert"><i class="fa fa-info-circle"></i> <b>Note:</b> We recommend <strong>not to use high offsets</strong> (e.g. higher than 10000) for paging | 
 |     because of potential performance degradations.</div> | 
 |  | 
 |  | 
 |  | 
 |     <div class="tags"> | 
 |          | 
 |         <b>Tags: </b> | 
 |          | 
 |          | 
 |          | 
 |         <a href="tag_search.html" class="btn btn-default navbar-btn cursorNorm" role="button">search</a> | 
 |          | 
 |          | 
 |          | 
 |         <a href="tag_rql.html" class="btn btn-default navbar-btn cursorNorm" role="button">rql</a> | 
 |          | 
 |          | 
 |          | 
 |     </div> | 
 |  | 
 | </div> | 
 |  | 
 | <hr class="shaded"/> | 
 |  | 
 | <footer> | 
 |             <div class="row"> | 
 |                 <div class="col-lg-12 footer"> | 
 |                     <div class="logo"> | 
 |                         <a href="https://eclipse.org"><img src="images/eclipse_foundation_logo.svg" alt="Eclipse logo"/></a> | 
 |                     </div> | 
 |                     <p class="notice"> | 
 |                         ©2021 Eclipse Ditto. | 
 |                          Site last generated: Apr 8, 2021 <br /> | 
 |                     </p> | 
 |                     <div class="quickLinks"> | 
 |                         <a href="https://www.eclipse.org/legal/privacy.php" target="_blank"> | 
 |                             > Privacy Policy | 
 |                         </a> | 
 |                         <a href="https://www.eclipse.org/legal/termsofuse.php" target="_blank"> | 
 |                             > Terms of Use | 
 |                         </a> | 
 |                         <a href="https://www.eclipse.org/legal/copyright.php" target="_blank"> | 
 |                             > Copyright Agent | 
 |                         </a> | 
 |                         <a href="https://www.eclipse.org/legal" target="_blank"> | 
 |                             > Legal | 
 |                         </a> | 
 |                         <a href="https://www.eclipse.org/legal/epl-2.0/" target="_blank"> | 
 |                             > License | 
 |                         </a> | 
 |                         <a href="https://eclipse.org/security" target="_blank"> | 
 |                             > Report a Vulnerability | 
 |                         </a> | 
 |                     </div> | 
 |                 </div> | 
 |             </div> | 
 | </footer> | 
 |  | 
 |  | 
 |         </div> | 
 |     <!-- /.row --> | 
 | </div> | 
 | <!-- /.container --> | 
 | </div> | 
 | <!-- /#main --> | 
 |     </div> | 
 |  | 
 | </body> | 
 | </html> |