Uploaded image for project: 'Help-Desk'
  1. Help-Desk
  2. HELP-14968

[fiware-stackoverflow] Store structured context values for attributes using FIWARE Orion Context Broker and CYGNUS MongoDB Sink?

    Details

      Description

      Created question in FIWARE Q/A platform on 02-11-2018 at 19:11
      Please, ANSWER this question AT https://stackoverflow.com/questions/53124128/store-structured-context-values-for-attributes-using-fiware-orion-context-broker

      Question:
      Store structured context values for attributes using FIWARE Orion Context Broker and CYGNUS MongoDB Sink?

      Description:
      Background

      I'm using the following Generic Enablers in a specific application that I am building over FIWARE:

      Orion Context Broker
      CYGNUS NGSI
      STH-Comet

      Also, I'm using MongoDB database, in order to persist all raw historical data received by Cygnus. To do so, I've configured a MongoDB Sink in CYGNUS, as indicated here.

      Then I have a context entity, for which some attributes has structured values, instead of simple types like string. For example: a collection or a dictionary.

      Fortunately this is possible!! Check the Orion's official documentation for details.

      Apart from simple values such as 22.5 or "yellow", you can use complex structures as attribute values. In particular, an attribute can be set to a vector or to a key-value map (usually referred to as an "object") at creation/update time. These values are retrieved at query and notification time

      The Problem

      I was able to correctly define the value of these attributes through creation/update operations in Orion Context Broker but when these values are stored in my STH-Comet database they are stored as an "escaped" string (see the detailed example below).

      {
      "_id" : ObjectId("5bdb611d9aa6ab00017e8c82"),
      "recvTime" : ISODate("2018-11-01T20:25:01.640Z"),
      "entityId" : "foo",
      "entityType" : "foo",
      "attrName" : "bar",
      "attrType" : "T",
      "attrValue" : "[

      {\"nested_attr1\":\"v1\"}

      ,

      {\"nested_attr2\":\"v2\"}

      ]"
      }

      Question

      So my question is, what did I do wrong? Maybe I missed some detail within my configuration?

      Thank you in advance

        Activity

        Hide
        backlogmanager Backlog Manager added a comment -

        2018-11-07 18:05|CREATED monitor | # answers= 0, accepted answer= False

        Show
        backlogmanager Backlog Manager added a comment - 2018-11-07 18:05|CREATED monitor | # answers= 0, accepted answer= False
        Show
        andres.munoza Andres Muñoz added a comment - Duplicated question HELP-14931 . I will close and continue the thread at https://stackoverflow.com/questions/53124128/store-structured-context-values-for-attributes-using-fiware-orion-context-broker

          People

          • Assignee:
            andres.munoza Andres Muñoz
            Reporter:
            backlogmanager Backlog Manager
          • Votes:
            0 Vote for this issue
            Watchers:
            2 Start watching this issue

            Dates

            • Created:
              Updated:
              Resolved: