Hi
The json tree source code inspires this example.
1. You have a map object with a "children" key.
2. This "children" key holds a list of items, which can also have other "children" keys.
3. This returns a list of all items where each child has an "attributes" key
Usage:
Snippet
The json tree source code inspires this example.
1. You have a map object with a "children" key.
2. This "children" key holds a list of items, which can also have other "children" keys.
3. This returns a list of all items where each child has an "attributes" key
Usage:
B4X:
Dim treeSchema As List
Dim tree As Map = CreateMap("children": ...)
treeSchema = ParseTree(tree)
Snippet
B4X:
Sub ParseTree(root As Map)
'does this contains children
If root.ContainsKey("children") Then
'get the children
Dim children As List = root.Get("children")
'loop through each child
For Each child As Map In children
'create a new record
Dim nitem As Map = CreateMap()
'get some prop
Dim tagName As String = child.GetDefault("tagName", "")
Dim parentID As String = root.GetDefault("id", "")
'update new record
nitem.Put("tagname", tagName)
nitem.Put("parent", parentID)
'does this child have attributes
If child.ContainsKey("attributes") = False Then Continue
'get the attributes
Dim attrs As Map = child.get("attributes")
For Each attr As String In attrs.Keys
Dim attrv As String = attrs.Get(attr)
nitem.Put(attr, attrv)
Next
treeSchema.Add(nitem)
ParseTree(child)
Next
End If
End Sub