On May 6, 2020, at 6:30 AM, talk@webdna.us =wrote:Chris,Hi - this would be great. Just two things to =note:
- Will the code work for nested arrays?
- Will it allow for JSON that has colons - =or any character - in the node names?
My view would be that =the closer the WebDNA behaviour matches the behaviour of Javscript the =better.So =looking at this:https://stackoverflow.com/questions/2577172/how-to-get-json-obj=ects-value-if-its-name-contains-dotsFor the following =JSON;var mydata =3D ={"list": =[ =={"points.bean.pointsBase": == [= {"time": 2000, "caption":"caption text", duration: 5000}, == {"time": 6000, "caption":"caption text", duration: 3000} == ]=}] =}The time value in =the first item of the array is extracted using:I realise square brackets =have special significance in WebDNA, but you get =the idea.var smth =3D =mydata.list[0]["points.bean.pointsBase"][0].time;- =Tom---------------------------------------------------------This message is sent to you because you are subscribed tothe mailing list talk@webdna.usTo unsubscribe, E-mail to: talk-leave@webdna.usarchives: http://www.webdna.us/page.dna?numero=3D55Bug Reporting: support@webdna.usOn Wed, 6 May 2020 at 08:24, <talk@webdna.us> =wrote:Hello everyone!
With Josh (who is behind all the C++ code these last years), we spent =some time thinking about this. He made a proof of concept C++ app that =gives the below output when we feed it the JSON from Mike's post to the =mailing list. Is this useful? If this is acceptable, we can adapt the =code into the WebDNA source tree and have it store in the DB/table in =that format.
page=3D1
total_results=3D21
total_pages=3D1
results:1:popularity=3D1.936
results:1:vote_count=3D7
results:2:popularity=3D2.732
results:2:vote_count=3D23
results:3:popularity=3D12.088
results:3:vote_count=3D75
results:4:popularity=3D53.221
results:4:vote_count=3D5
results:5:popularity=3D7.001
results:5:vote_count=3D31
results:6:popularity=3D22.223
results:6:vote_count=3D88
Next version would have this fix built-in.
- chris
> On May 1, 2020, at 06:03, talk@webdna.us wrote:
>
> Hi Mike.
>
> Ah yes, I can see why you need to do it natively.
>
> Sorry, I am out of silver bullets now :(
>
>
> Kind regards
>
> Stuart Tremain
> Pharoah Lane Software
> AUSTRALIA
> webdna@plsoftware.com.au
>
>
>
>
>
>
>
>> On 1 May 2020, at 12:52, talk@webdna.us wrote:
>>
>> Stuart,
>>
>> I actually use this (Tom=E2=80=99s routine) as the basis of =what I=E2=80=99m doing now. The challenge I=E2=80=99m facing in my =current project is that the source JSON is quite large, and the specific =data I need is near the end of the data, nested in several layers of =arrays. The parsing time is around 90 seconds. I need to =speed that up.
>>
>>
>> Mike Davis
>>
>>> On Apr 30, 2020, at 5:04 PM, talk@webdna.us wrote:
>>>
>>> I am not sure if this is exactly what Tom wrote, but it is =what I am using.
>>>
>>>
>>> [!]------------------- Pass json as JSONRESULT =-----------------
>>> ------------------- Conversion table to strip non-breaking =spaces -----------------
>>> [/!][TABLE name=3DjsonClean&fields=3Dfrom,to]
>>> %C2
>>> %A0
>>> [/TABLE][!]
>>>
>>> ------------------- Conversion table to facilitate spliting =into key:value pairs -----------------
>>> [/!][TABLE name=3DjsonSplitConversions&fields=3Dfrom,to]<=br class=3D"">>>> | ~~~~
>>> \" ^^^^
>>> [/TABLE][!]
>>>
>>> ------------------- Convert back after spliting into =key:value pairs -----------------
>>> [/!][TABLE =name=3DjsonSplitConversionsBack&fields=3Dfrom,to]
>>> "
>>> ~~~~ |
>>> ^^^^ "
>>> [/TABLE][!]
>>>
>>> ------------------- pass one - run the conversions =-----------------
>>> [/!][TEXT]JSONRESULT=3D[CONVERTWORDS =table=3DjsonSplitConversions][convertchars =table=3DjsonClean][JSONRESULT][/convertchars][/CONVERTWORDS][/TEXT][!]
>>>
>>> ------------------- pass two - add bar to just before each =key:value pair -----------------
>>> [/!][TEXT]JSONRESULT=3D[GREP =search=3D("[^"]*"):&replace=3D|\1=3D][JSONRESULT][/GREP][/TEXT][!]
>>>
>>> ------------------- pass three - list out the key:value =pairs and assign them to text variables -----------------
>>> [/!][LISTWORDS =words=3D[url][JSONRESULT][/url]&delimiters=3D|{}][!]
>>> [/!][TEXT]THISVAL=3D[GREP =search=3D(,$)&replace=3D][GETCHARS =start=3D1&trim=3Dboth][CONVERTWORDS =table=3DjsonSplitConversionsBack][word][/CONVERTWORDS][/GETCHARS][/GREP][/=TEXT][!]
>>> [/!][HIDEIF [url][THISVAL][/url]=3D][!]
>>> = [/!][TEXT]JSON-[THISVAL][/TEXT][!]
>>> [/!][/HIDEIF][!]
>>> [/!][/LISTWORDS]
>>>
>>>
>>>
>>>
>>>
>>> Kind regards
>>>
>>> Stuart Tremain
>>> Pharoah Lane Software
>>> AUSTRALIA
>>> webdna@plsoftware.com.au
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>> On 1 May 2020, at 08:10, talk@webdna.us wrote:
>>>>
>>>> Hi Stuart,
>>>>
>>>> I appreciate your answer and have a similar kludge =(creative solution) for my application. I was actually hoping to =hear from Chris on this, in hopes that the underlying JSON parser he is =using can be passed dot notation in a similar way that Javascript uses =to parse JSON objects.
>>>>
>>>> Chris, are there any parameters we can send that are =not in the documentation?
>>>>
>>>>
>>>>
>>>> Thanks,
>>>> Mike Davis
>>>>
>>>>> On Apr 22, 2020, at 5:05 PM, talk@webdna.us wrote:
>>>>>
>>>>> Hi MD
>>>>>
>>>>> As we don=E2=80=99t know the email address of the =sender anymore it would be nice for us to know who we are addressing.
>>>>>
>>>>> The JSONStore tag is a little confusing and what is =also not well documented is that you can store the data in a table =eg:
>>>>>
>>>>>
>>>>> [JSONstore =table=3DTRANSACTION&fields=3Derror:type,error:message]
>>>>> [STRIPERESPONSE]
>>>>> [/JSONstore]
>>>>>
>>>>> Then search the table:
>>>>>
>>>>> [SEARCH =table=3DTRANSACTION&neERROR:TYPEdatarq=3D[BLANK]][!]
>>>>> [/!][FOUNDITEMS][!]
>>>>> = [/!][TEXT]ERROR-TYPE=3D[ERROR:TYPE][/TEXT][!]
>>>>> = [/!][TEXT]ERROR-MESSAGE=3D[ERROR:MESSAGE][/TEXT][!]
>>>>> [/!][/FOUNDITEMS][!]
>>>>> [/!][/SEARCH]
>>>>>
>>>>>
>>>>> What I found to be a useful exercise was to write =to my specified db and then open it and read the data to see what is =being done with it. JSONsStore will write the headers in a db
>>>>>
>>>>> [JSONstore db=3Dlogs/stripelog.db]
>>>>> [STRIPERESPONSE]
>>>>> [/JSONstore]
>>>>>
>>>>> As the data is often stored in an array you will =have to do a bit of manipulation on the found items.
>>>>>
>>>>> Here is a JSON function that may be useful to =you.
>>>>>
>>>>>
>>>>> =[!]----------------------------------------------------------------------<=br class=3D"">>>>>> FUNCTION Name: WC-JSONvalue
>>>>> + Description: Pull out a value from a =JSONobject
>>>>> + Input:
>>>>> JSONobject =3D =(the json to be parsed) - required
>>>>> JSONnode =3D (the =node that we want the value of) - required
>>>>> + usage: [WC-JSONvalue =JSONobject=3D[url]<the-json-object>[/url]&JSONnode=3D<the-jso=n-node>]
>>>>> +Note: This function MUST receive valid =JSONobject, make sure that there are no line breaks before beginning of =JSON, test your JSON validity here: https://jsonlint.com
>>>>> =----------------------------------------------------------------------
>>>>> [/!][function name=3DWC-JSONvalue][!]
>>>>> [/!][text]rRETURN=3D[/text][!]
>>>>> [/!][text]rJSONobject=3D[/text][!]
>>>>> [/!][text]rJSONnode=3Dnull[/text][!]
>>>>> [/!][showif =[url][params_string][/url]^JSONobject][text]rJSONobject=3D[JSONobject][/te=xt][/showif][!]
>>>>> [/!][showif =[url][params_string][/url]^JSONnode][text]rJSONnode=3D[JSONnode][/text][/s=howif][!]
>>>>> -------------------- Store the =JSONobject in a table --------------------
>>>>> [/!][JSONstore =table=3DJSONdata][rJSONobject][/jsonstore][!]
>>>>> -------------------- Search the =table --------------------
>>>>> [/!][SEARCH =table=3DJSONdata&ne[rJSONnode]data=3Dfind_all][!]
>>>>> = [/!][founditems][!]
>>>>> = = [/!][text]rRETURN=3D[interpret][[rJSONnode]][/interpret][/text][!]>>>>> = [/!][/founditems][!]
>>>>> [/!][/SEARCH][!]
>>>>> -------------------- Return the =value --------------------
>>>>> [/!][return][rRETURN][/return][!]
>>>>> [/!][/function]
>>>>>
>>>>> You man need to play around with the json object to =ensure that it is valid json, I found that PayPal json did not =validate.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Kind regards
>>>>>
>>>>> Stuart Tremain
>>>>> Pharoah Lane Software
>>>>> AUSTRALIA
>>>>> webdna@plsoftware.com.au
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> On 23 Apr 2020, at 06:45, talk@webdna.us wrote:
>>>>>>
>>>>>> Hi all,
>>>>>>
>>>>>> I=E2=80=99m looking at the docs for the =JSONStore context. It seems that either the context is lacking =functionality or the documentation is. I do not see a way to =access nested levels in the JSON, like can be done with XML using =path=3D0:1:2 for example. Seems like there should be a way to use =dot notation to get at nested data without storing each array in a temp =db, then reparsing each level with JSONStore into another temp db, =etc.
>>>>>>
>>>>>> For example: I want to iterate the data =sets in the =E2=80=9Cresults=E2=80=9D array into a database. I can =use JSONStore to populate a table with the fields: page, total_results, =total_pages and results. Then I can search that table and =run JSONStore on the results field using another database, but this gets =a bit complicated when working with some other data, in which I need to =access data that is 3 or 4 arrays deep.
>>>>>>
>>>>>> Anyone solved this puzzle in a more efficient =way yet?
>>>>>>
>>>>>> {
>>>>>> "page":1,
>>>>>> "total_results":21,
>>>>>> "total_pages":1,
>>>>>> "results=E2=80=9D:[
>>>>>> {
>>>>>> ="popularity":1.936,"vote_count=E2=80=9D:7
>>>>>> },
>>>>>> {
>>>>>> ="popularity=E2=80=9D:2.732,"vote_count=E2=80=9D:23
>>>>>> },
>>>>>> {
>>>>>> ="popularity=E2=80=9D:12.088,"vote_count=E2=80=9D:75
>>>>>> },
>>>>>> {
>>>>>> ="popularity=E2=80=9D:53.221,"vote_count=E2=80=9D:5
>>>>>> },
>>>>>> {
>>>>>> ="popularity=E2=80=9D:7.001,"vote_count=E2=80=9D:31
>>>>>> },
>>>>>> {
>>>>>> ="popularity=E2=80=9D:22.223,"vote_count=E2=80=9D:88
>>>>>> }
>>>>>> ]
>>>>>> }
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> =MD---------------------------------------------------------
=>>>>>> This message is sent to you because you are =subscribed to
>>>>>> the mailing list talk@webdna.us
>>>>>> To unsubscribe, E-mail to: talk-leave@webdna.us
>>>>>> archives: http://www.webdna.us/page.dna?numero=3D55
>>>>>> Bug Reporting: support@webdna.us
>>>>>
>>>>> =--------------------------------------------------------- This message =is sent to you because you are subscribed to the mailing list talk@webdna.us To unsubscribe, E-mail to: talk-leave@webdna.us archives: http://www.webdna.us/page.dna?numero=3D55= Bug Reporting: support@webdna.us
>>>>
>>>> =--------------------------------------------------------- This message =is sent to you because you are subscribed to the mailing list talk@webdna.us To unsubscribe, E-mail to: talk-leave@webdna.us archives: http://www.webdna.us/page.dna?numero=3D55= Bug Reporting: support@webdna.us
>>>
>>> --------------------------------------------------------- =This message is sent to you because you are subscribed to the mailing =list talk@webdna.us To unsubscribe, E-mail to: talk-leave@webdna.us archives: http://www.webdna.us/page.dna?numero=3D55= Bug Reporting: support@webdna.us
>>
>> --------------------------------------------------------- This =message is sent to you because you are subscribed to the mailing list talk@webdna.us To unsubscribe, E-mail to: talk-leave@webdna.us archives: http://www.webdna.us/page.dna?numero=3D55= Bug Reporting: support@webdna.us
>
> --------------------------------------------------------- This =message is sent to you because you are subscribed to the mailing list talk@webdna.us To unsubscribe, E-mail to: talk-leave@webdna.us archives: http://www.webdna.us/page.dna?numero=3D55= Bug Reporting: support@webdna.us
---------------------------------------------------------
This message is sent to you because you are subscribed to
the mailing list talk@webdna.us
To unsubscribe, E-mail to: talk-leave@webdna.us
archives: http://www.webdna.us/page.dna?numero=3D55
Bug Reporting: support@webdna.us
On May 6, 2020, at 6:30 AM, talk@webdna.us =wrote:Chris,Hi - this would be great. Just two things to =note:
- Will the code work for nested arrays?
- Will it allow for JSON that has colons - =or any character - in the node names?
My view would be that =the closer the WebDNA behaviour matches the behaviour of Javscript the =better.So =looking at this:https://stackoverflow.com/questions/2577172/how-to-get-json-obj=ects-value-if-its-name-contains-dotsFor the following =JSON;var mydata =3D ={"list": =[ =={"points.bean.pointsBase": == [= {"time": 2000, "caption":"caption text", duration: 5000}, == {"time": 6000, "caption":"caption text", duration: 3000} == ]=}] =}The time value in =the first item of the array is extracted using:I realise square brackets =have special significance in WebDNA, but you get =the idea.var smth =3D =mydata.list[0]["points.bean.pointsBase"][0].time;- =Tom---------------------------------------------------------This message is sent to you because you are subscribed tothe mailing list talk@webdna.usTo unsubscribe, E-mail to: talk-leave@webdna.usarchives: http://www.webdna.us/page.dna?numero=3D55Bug Reporting: support@webdna.usOn Wed, 6 May 2020 at 08:24, <talk@webdna.us> =wrote:Hello everyone!
With Josh (who is behind all the C++ code these last years), we spent =some time thinking about this. He made a proof of concept C++ app that =gives the below output when we feed it the JSON from Mike's post to the =mailing list. Is this useful? If this is acceptable, we can adapt the =code into the WebDNA source tree and have it store in the DB/table in =that format.
page=3D1
total_results=3D21
total_pages=3D1
results:1:popularity=3D1.936
results:1:vote_count=3D7
results:2:popularity=3D2.732
results:2:vote_count=3D23
results:3:popularity=3D12.088
results:3:vote_count=3D75
results:4:popularity=3D53.221
results:4:vote_count=3D5
results:5:popularity=3D7.001
results:5:vote_count=3D31
results:6:popularity=3D22.223
results:6:vote_count=3D88
Next version would have this fix built-in.
- chris
> On May 1, 2020, at 06:03, talk@webdna.us wrote:
>
> Hi Mike.
>
> Ah yes, I can see why you need to do it natively.
>
> Sorry, I am out of silver bullets now :(
>
>
> Kind regards
>
> Stuart Tremain
> Pharoah Lane Software
> AUSTRALIA
> webdna@plsoftware.com.au
>
>
>
>
>
>
>
>> On 1 May 2020, at 12:52, talk@webdna.us wrote:
>>
>> Stuart,
>>
>> I actually use this (Tom=E2=80=99s routine) as the basis of =what I=E2=80=99m doing now. The challenge I=E2=80=99m facing in my =current project is that the source JSON is quite large, and the specific =data I need is near the end of the data, nested in several layers of =arrays. The parsing time is around 90 seconds. I need to =speed that up.
>>
>>
>> Mike Davis
>>
>>> On Apr 30, 2020, at 5:04 PM, talk@webdna.us wrote:
>>>
>>> I am not sure if this is exactly what Tom wrote, but it is =what I am using.
>>>
>>>
>>> [!]------------------- Pass json as JSONRESULT =-----------------
>>> ------------------- Conversion table to strip non-breaking =spaces -----------------
>>> [/!][TABLE name=3DjsonClean&fields=3Dfrom,to]
>>> %C2
>>> %A0
>>> [/TABLE][!]
>>>
>>> ------------------- Conversion table to facilitate spliting =into key:value pairs -----------------
>>> [/!][TABLE name=3DjsonSplitConversions&fields=3Dfrom,to]<=br class=3D"">>>> | ~~~~
>>> \" ^^^^
>>> [/TABLE][!]
>>>
>>> ------------------- Convert back after spliting into =key:value pairs -----------------
>>> [/!][TABLE =name=3DjsonSplitConversionsBack&fields=3Dfrom,to]
>>> "
>>> ~~~~ |
>>> ^^^^ "
>>> [/TABLE][!]
>>>
>>> ------------------- pass one - run the conversions =-----------------
>>> [/!][text]JSONRESULT=3D[CONVERTWORDS =table=3DjsonSplitConversions][convertchars =table=3DjsonClean][JSONRESULT][/convertchars][/CONVERTWORDS][/TEXT][!]
>>>
>>> ------------------- pass two - add bar to just before each =key:value pair -----------------
>>> [/!][text]JSONRESULT=3D[GREP =search=3D("[^"]*"):&replace=3D|\1=3D][JSONRESULT][/GREP][/TEXT][!]
>>>
>>> ------------------- pass three - list out the key:value =pairs and assign them to text variables -----------------
>>> [/!][LISTWORDS =words=3D[url][JSONRESULT][/url]&delimiters=3D|{}][!]
>>> [/!][text]THISVAL=3D[GREP =search=3D(,$)&replace=3D][GETCHARS =start=3D1&trim=3Dboth][CONVERTWORDS =table=3DjsonSplitConversionsBack][word][/CONVERTWORDS][/GETCHARS][/GREP][/=TEXT][!]
>>> [/!][HIDEIF [url][THISVAL][/url]=3D][!]
>>> = [/!][text]JSON-[THISVAL][/TEXT][!]
>>> [/!][/HIDEIF][!]
>>> [/!][/LISTWORDS]
>>>
>>>
>>>
>>>
>>>
>>> Kind regards
>>>
>>> Stuart Tremain
>>> Pharoah Lane Software
>>> AUSTRALIA
>>> webdna@plsoftware.com.au
>>>
>>>
>>>
>>>
>>>
>>>
>>>
>>>> On 1 May 2020, at 08:10, talk@webdna.us wrote:
>>>>
>>>> Hi Stuart,
>>>>
>>>> I appreciate your answer and have a similar kludge =(creative solution) for my application. I was actually hoping to =hear from Chris on this, in hopes that the underlying JSON parser he is =using can be passed dot notation in a similar way that Javascript uses =to parse JSON objects.
>>>>
>>>> Chris, are there any parameters we can send that are =not in the documentation?
>>>>
>>>>
>>>>
>>>> Thanks,
>>>> Mike Davis
>>>>
>>>>> On Apr 22, 2020, at 5:05 PM, talk@webdna.us wrote:
>>>>>
>>>>> Hi MD
>>>>>
>>>>> As we don=E2=80=99t know the email address of the =sender anymore it would be nice for us to know who we are addressing.
>>>>>
>>>>> The JSONStore tag is a little confusing and what is =also not well documented is that you can store the data in a table =eg:
>>>>>
>>>>>
>>>>> [JSONstore =table=3DTRANSACTION&fields=3Derror:type,error:message]
>>>>> [STRIPERESPONSE]
>>>>> [/JSONstore]
>>>>>
>>>>> Then search the table:
>>>>>
>>>>> [SEARCH =table=3DTRANSACTION&neERROR:TYPEdatarq=3D[BLANK]][!]
>>>>> [/!][founditems][!]
>>>>> = [/!][text]ERROR-TYPE=3D[ERROR:TYPE][/TEXT][!]
>>>>> = [/!][text]ERROR-MESSAGE=3D[ERROR:MESSAGE][/TEXT][!]
>>>>> [/!][/FOUNDITEMS][!]
>>>>> [/!][/SEARCH]
>>>>>
>>>>>
>>>>> What I found to be a useful exercise was to write =to my specified db and then open it and read the data to see what is =being done with it. JSONsStore will write the headers in a db
>>>>>
>>>>> [JSONstore db=3Dlogs/stripelog.db]
>>>>> [STRIPERESPONSE]
>>>>> [/JSONstore]
>>>>>
>>>>> As the data is often stored in an array you will =have to do a bit of manipulation on the found items.
>>>>>
>>>>> Here is a JSON function that may be useful to =you.
>>>>>
>>>>>
>>>>> =[!]----------------------------------------------------------------------<=br class=3D"">>>>>> FUNCTION Name: WC-JSONvalue
>>>>> + Description: Pull out a value from a =JSONobject
>>>>> + Input:
>>>>> JSONobject =3D =(the json to be parsed) - required
>>>>> JSONnode =3D (the =node that we want the value of) - required
>>>>> + usage: [WC-JSONvalue =JSONobject=3D[url]<the-json-object>[/url]&JSONnode=3D<the-jso=n-node>]
>>>>> +Note: This function MUST receive valid =JSONobject, make sure that there are no line breaks before beginning of =JSON, test your JSON validity here: https://jsonlint.com
>>>>> =----------------------------------------------------------------------
>>>>> [/!][function name=3DWC-JSONvalue][!]
>>>>> [/!][text]rRETURN=3D[/text][!]
>>>>> [/!][text]rJSONobject=3D[/text][!]
>>>>> [/!][text]rJSONnode=3Dnull[/text][!]
>>>>> [/!][showif =[url][params_string][/url]^JSONobject][text]rJSONobject=3D[JSONobject][/te=xt][/showif][!]
>>>>> [/!][showif =[url][params_string][/url]^JSONnode][text]rJSONnode=3D[JSONnode][/text][/s=howif][!]
>>>>> -------------------- Store the =JSONobject in a table --------------------
>>>>> [/!][JSONstore =table=3DJSONdata][rJSONobject][/jsonstore][!]
>>>>> -------------------- Search the =table --------------------
>>>>> [/!][SEARCH =table=3DJSONdata&ne[rJSONnode]data=3Dfind_all][!]
>>>>> = [/!][founditems][!]
>>>>> = = [/!][text]rRETURN=3D[interpret][[rJSONnode]][/interpret][/text][!]>>>>> = [/!][/founditems][!]
>>>>> [/!][/SEARCH][!]
>>>>> -------------------- Return the =value --------------------
>>>>> [/!][return][rRETURN][/return][!]
>>>>> [/!][/function]
>>>>>
>>>>> You man need to play around with the json object to =ensure that it is valid json, I found that PayPal json did not =validate.
>>>>>
>>>>>
>>>>>
>>>>>
>>>>> Kind regards
>>>>>
>>>>> Stuart Tremain
>>>>> Pharoah Lane Software
>>>>> AUSTRALIA
>>>>> webdna@plsoftware.com.au
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>
>>>>>> On 23 Apr 2020, at 06:45, talk@webdna.us wrote:
>>>>>>
>>>>>> Hi all,
>>>>>>
>>>>>> I=E2=80=99m looking at the docs for the =JSONStore context. It seems that either the context is lacking =functionality or the documentation is. I do not see a way to =access nested levels in the JSON, like can be done with XML using =path=3D0:1:2 for example. Seems like there should be a way to use =dot notation to get at nested data without storing each array in a temp =db, then reparsing each level with JSONStore into another temp db, =etc.
>>>>>>
>>>>>> For example: I want to iterate the data =sets in the =E2=80=9Cresults=E2=80=9D array into a database. I can =use JSONStore to populate a table with the fields: page, total_results, =total_pages and results. Then I can search that table and =run JSONStore on the results field using another database, but this gets =a bit complicated when working with some other data, in which I need to =access data that is 3 or 4 arrays deep.
>>>>>>
>>>>>> Anyone solved this puzzle in a more efficient =way yet?
>>>>>>
>>>>>> {
>>>>>> "page":1,
>>>>>> "total_results":21,
>>>>>> "total_pages":1,
>>>>>> "results=E2=80=9D:[
>>>>>> {
>>>>>> ="popularity":1.936,"vote_count=E2=80=9D:7
>>>>>> },
>>>>>> {
>>>>>> ="popularity=E2=80=9D:2.732,"vote_count=E2=80=9D:23
>>>>>> },
>>>>>> {
>>>>>> ="popularity=E2=80=9D:12.088,"vote_count=E2=80=9D:75
>>>>>> },
>>>>>> {
>>>>>> ="popularity=E2=80=9D:53.221,"vote_count=E2=80=9D:5
>>>>>> },
>>>>>> {
>>>>>> ="popularity=E2=80=9D:7.001,"vote_count=E2=80=9D:31
>>>>>> },
>>>>>> {
>>>>>> ="popularity=E2=80=9D:22.223,"vote_count=E2=80=9D:88
>>>>>> }
>>>>>> ]
>>>>>> }
>>>>>>
>>>>>>
>>>>>>
>>>>>>
>>>>>> =MD---------------------------------------------------------
=>>>>>> This message is sent to you because you are =subscribed to
>>>>>> the mailing list talk@webdna.us
>>>>>> To unsubscribe, E-mail to: talk-leave@webdna.us
>>>>>> archives: http://www.webdna.us/page.dna?numero=3D55
>>>>>> Bug Reporting: support@webdna.us
>>>>>
>>>>> =--------------------------------------------------------- This message =is sent to you because you are subscribed to the mailing list talk@webdna.us To unsubscribe, E-mail to: talk-leave@webdna.us archives: http://www.webdna.us/page.dna?numero=3D55= Bug Reporting: support@webdna.us
>>>>
>>>> =--------------------------------------------------------- This message =is sent to you because you are subscribed to the mailing list talk@webdna.us To unsubscribe, E-mail to: talk-leave@webdna.us archives: http://www.webdna.us/page.dna?numero=3D55= Bug Reporting: support@webdna.us
>>>
>>> --------------------------------------------------------- =This message is sent to you because you are subscribed to the mailing =list talk@webdna.us To unsubscribe, E-mail to: talk-leave@webdna.us archives: http://www.webdna.us/page.dna?numero=3D55= Bug Reporting: support@webdna.us
>>
>> --------------------------------------------------------- This =message is sent to you because you are subscribed to the mailing list talk@webdna.us To unsubscribe, E-mail to: talk-leave@webdna.us archives: http://www.webdna.us/page.dna?numero=3D55= Bug Reporting: support@webdna.us
>
> --------------------------------------------------------- This =message is sent to you because you are subscribed to the mailing list talk@webdna.us To unsubscribe, E-mail to: talk-leave@webdna.us archives: http://www.webdna.us/page.dna?numero=3D55= Bug Reporting: support@webdna.us
---------------------------------------------------------
This message is sent to you because you are subscribed to
the mailing list talk@webdna.us
To unsubscribe, E-mail to: talk-leave@webdna.us
archives: http://www.webdna.us/page.dna?numero=3D55
Bug Reporting: support@webdna.us
DOWNLOAD WEBDNA NOW!
The WebDNA community talk-list is the best place to get some help: several hundred extremely proficient programmers with an excellent knowledge of WebDNA and an excellent spirit will deliver all the tips and tricks you can imagine...