[Backlogmanager] [FIWARE-JIRA] (HELP-14931) [fiware-stackoverflow] How can you store structured context values for attributes in Fiware STH data store?

Veronika Vlnkova (JIRA) jira-help-desk at jira.fiware.org
Tue Nov 13 15:04:00 CET 2018


     [ https://jira.fiware.org/browse/HELP-14931?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Veronika Vlnkova reassigned HELP-14931:
---------------------------------------

    Assignee: Joaquín Salvachúa 

> [fiware-stackoverflow] How can you store structured context values for attributes in Fiware STH data store?
> -----------------------------------------------------------------------------------------------------------
>
>                 Key: HELP-14931
>                 URL: https://jira.fiware.org/browse/HELP-14931
>             Project: Help-Desk
>          Issue Type: Monitor
>          Components: FIWARE-TECH-HELP
>            Reporter: Backlog Manager
>            Assignee: Joaquín Salvachúa 
>              Labels: fiware, fiware-cygnus, fiware-orion, fiware-sth-comet
>
> Created question in FIWARE Q/A platform on 02-11-2018 at 19:11
> {color: red}Please, ANSWER this question AT{color} https://stackoverflow.com/questions/53124128/how-can-you-store-structured-context-values-for-attributes-in-fiware-sth-data-st
> +Question:+
> How can you store structured context values for attributes in Fiware STH data store?
> +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



--
This message was sent by Atlassian JIRA
(v6.4.1#64016)


More information about the Backlogmanager mailing list

You can get more information about our cookies and privacy policies clicking on the following links: Privacy policy   Cookies policy