Jump to content

Component: XML JSON Parser (Runtime Tools): Difference between revisions

From Flowcode Help
No edit summary
m Text replacement - "width="90%" style="background-color:#D8C9D8; color:#4B008D;"" to "width="90%" class="mtx-class-macrohead""
 
(3 intermediate revisions by the same user not shown)
Line 62: Line 62:


===AddObject===
===AddObject===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''AddObject'''
| width="90%" class="mtx-class-macrohead" | '''AddObject'''
|-
|-
| colspan="2" | Adds a tag at the selected location.  Use the GetRootHandle and runtime API Tree functions . Returns the handle of the new object. 
| colspan="2" | Adds a tag at the selected location.  Use the GetRootHandle and runtime API Tree functions . Returns the handle of the new object. 
Line 91: Line 91:


===BuildJSONString===
===BuildJSONString===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''BuildJSONString'''
| width="90%" class="mtx-class-macrohead" | '''BuildJSONString'''
|-
|-
| colspan="2" | Generate a JSON string based on the current objects inside the component. 
| colspan="2" | Generate a JSON string based on the current objects inside the component. 
Line 105: Line 105:


===BuildXMLString===
===BuildXMLString===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''BuildXMLString'''
| width="90%" class="mtx-class-macrohead" | '''BuildXMLString'''
|-
|-
| colspan="2" | Generate a XML string based on the current objects inside the component. 
| colspan="2" | Generate a XML string based on the current objects inside the component. 
Line 119: Line 119:


===ClearObjects===
===ClearObjects===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ClearObjects'''
| width="90%" class="mtx-class-macrohead" | '''ClearObjects'''
|-
|-
| colspan="2" | Deletes all object data ready for fresh input 
| colspan="2" | Deletes all object data ready for fresh input 
Line 133: Line 133:


===DeleteObject===
===DeleteObject===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DeleteObject'''
| width="90%" class="mtx-class-macrohead" | '''DeleteObject'''
|-
|-
| colspan="2" | Deletes a selected tag object. 
| colspan="2" | Deletes a selected tag object. 
Line 152: Line 152:


===FindNextObject===
===FindNextObject===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''FindNextObject'''
| width="90%" class="mtx-class-macrohead" | '''FindNextObject'''
|-
|-
| colspan="2" | Finds the next instance of an object following a GetObject* call. Returns the first matching path from the last search. Returns 0 if the path was not found. 
| colspan="2" | Finds the next instance of an object following a GetObject* call. Returns the first matching path from the last search. Returns 0 if the path was not found. 
Line 171: Line 171:


===FindNextObjectString===
===FindNextObjectString===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''FindNextObjectString'''
| width="90%" class="mtx-class-macrohead" | '''FindNextObjectString'''
|-
|-
| colspan="2" | Searches for and then collects the data string from the specified path. Returns the first matching path from the last search 
| colspan="2" | Searches for and then collects the data string from the specified path. Returns the first matching path from the last search 
Line 190: Line 190:


===FindObject===
===FindObject===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''FindObject'''
| width="90%" class="mtx-class-macrohead" | '''FindObject'''
|-
|-
| colspan="2" | Finds the first instance of an object. Returns the first matching path from the root. Returns 0 if the path was not found. 
| colspan="2" | Finds the first instance of an object. Returns the first matching path from the root. Returns 0 if the path was not found. 
Line 209: Line 209:


===FindObjectString===
===FindObjectString===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''FindObjectString'''
| width="90%" class="mtx-class-macrohead" | '''FindObjectString'''
|-
|-
| colspan="2" | Searches for and then collects the data string from the specified path. Returns the first matching path from the root. 
| colspan="2" | Searches for and then collects the data string from the specified path. Returns the first matching path from the root. 
Line 228: Line 228:


===GetObjectString===
===GetObjectString===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetObjectString'''
| width="90%" class="mtx-class-macrohead" | '''GetObjectString'''
|-
|-
| colspan="2" | Collects the data string from the specified object. 
| colspan="2" | Collects the data string from the specified object. 
Line 247: Line 247:


===GetObjectTag===
===GetObjectTag===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetObjectTag'''
| width="90%" class="mtx-class-macrohead" | '''GetObjectTag'''
|-
|-
| colspan="2" | Collects the tag string from the specified object. 
| colspan="2" | Collects the tag string from the specified object. 
Line 266: Line 266:


===GetRootHandle===
===GetRootHandle===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetRootHandle'''
| width="90%" class="mtx-class-macrohead" | '''GetRootHandle'''
|-
|-
| colspan="2" | Allows for user to step through the objects manually using the inbuilt runtime api calls. 
| colspan="2" | Allows for user to step through the objects manually using the inbuilt runtime api calls. 
Line 280: Line 280:


===ParseJSONDataString===
===ParseJSONDataString===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ParseJSONDataString'''
| width="90%" class="mtx-class-macrohead" | '''ParseJSONDataString'''
|-
|-
| colspan="2" | Parses JSON formatted data in a piecemeal format as and when file data is available.  Creates objects to store the contents of the JSON  
| colspan="2" | Parses JSON formatted data in a piecemeal format as and when file data is available.  Creates objects to store the contents of the JSON  
Line 304: Line 304:


===ParseXMLDataString===
===ParseXMLDataString===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ParseXMLDataString'''
| width="90%" class="mtx-class-macrohead" | '''ParseXMLDataString'''
|-
|-
| colspan="2" | Parses XML formatted data in a piecemeal format as and when file data is available.  Creates objects to store the contents of the XML. 
| colspan="2" | Parses XML formatted data in a piecemeal format as and when file data is available.  Creates objects to store the contents of the XML. 
Line 328: Line 328:


===SetObjectString===
===SetObjectString===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetObjectString'''
| width="90%" class="mtx-class-macrohead" | '''SetObjectString'''
|-
|-
| colspan="2" | Sets the data string of an existing object. 
| colspan="2" | Sets the data string of an existing object. 
Line 352: Line 352:


===SetObjectTag===
===SetObjectTag===
{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-comp-macro.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetObjectTag'''
| width="90%" class="mtx-class-macrohead" | '''SetObjectTag'''
|-
|-
| colspan="2" | Sets the tag name of an existing object. 
| colspan="2" | Sets the tag name of an existing object. 
Line 377: Line 377:
==Property reference==
==Property reference==


{| class="wikitable" style="width:60%; background-color:#FFFFFF;"
{| class="mtx-class-macrotable wikitable"
|-
|-
| width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]]
| width="10%" align="center" class="mtx-class-macrohead" | [[File:Fc9-prop-icon.png]]
| width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties'''  
| width="90%" class="mtx-class-macrohead" | '''Properties'''  
|-
|-
|}
|}

Latest revision as of 14:23, 13 July 2026

Author MatrixTSL
Version 1.0
Category Runtime Tools


XML JSON Parser component

A component designed to simplify the collection of data from XML and JSON sources. Parses the raw data and creates a dynamic representation of the data that is easy to navigate and interrogate. Also allows the objects to be manually created or edited and then re-exported as XML or JSON format.

Component Source Code

Please click here to download the component source project: FC_Comp_Source_XMLParser.fcfx

Please click here to view the component source code (Beta): FC_Comp_Source_XMLParser.fcfx

Detailed description

No detailed description exists yet for this component

Examples

No additional examples






Macro reference

AddObject

AddObject
Adds a tag at the selected location. Use the GetRootHandle and runtime API Tree functions . Returns the handle of the new object. 
- HANDLE ParentObject
The Object Handle to store the new tag inside 
- STRING Tag
Name of the object 
- STRING Data
data for the object (optional) 
- HANDLE Return


BuildJSONString

BuildJSONString
Generate a JSON string based on the current objects inside the component. 
- STRING Return


BuildXMLString

BuildXMLString
Generate a XML string based on the current objects inside the component. 
- STRING Return


ClearObjects

ClearObjects
Deletes all object data ready for fresh input 
- VOID Return


DeleteObject

DeleteObject
Deletes a selected tag object. 
- HANDLE Object
Handle to the object 
- BOOL Return


FindNextObject

FindNextObject
Finds the next instance of an object following a GetObject* call. Returns the first matching path from the last search. Returns 0 if the path was not found. 
- STRING SubObjPath
e.g. "item.title" 
- HANDLE Return


FindNextObjectString

FindNextObjectString
Searches for and then collects the data string from the specified path. Returns the first matching path from the last search 
- STRING SubObjPath
e.g. "item.title" 
- STRING Return


FindObject

FindObject
Finds the first instance of an object. Returns the first matching path from the root. Returns 0 if the path was not found. 
- STRING ObjPath
e.g. "rss.channel.title" 
- HANDLE Return


FindObjectString

FindObjectString
Searches for and then collects the data string from the specified path. Returns the first matching path from the root. 
- STRING ObjPath
e.g. "rss.channel.title" 
- STRING Return


GetObjectString

GetObjectString
Collects the data string from the specified object. 
- HANDLE Object
Handle to the object 
- STRING Return


GetObjectTag

GetObjectTag
Collects the tag string from the specified object. 
- HANDLE Object
Handle to the object 
- STRING Return


GetRootHandle

GetRootHandle
Allows for user to step through the objects manually using the inbuilt runtime api calls. 
- HANDLE Return


ParseJSONDataString

ParseJSONDataString
Parses JSON formatted data in a piecemeal format as and when file data is available. Creates objects to store the contents of the JSON  
- STRING Data
JSON Data string, can be a chunk of a file at a time 
- UINT Length
Number of Bytes to process 
- VOID Return


ParseXMLDataString

ParseXMLDataString
Parses XML formatted data in a piecemeal format as and when file data is available. Creates objects to store the contents of the XML. 
- STRING Data
XML Data string, can be a chunk of a file at a time 
- UINT Length
Number of bytes to process 
- VOID Return


SetObjectString

SetObjectString
Sets the data string of an existing object. 
- HANDLE Object
Handle to the object 
- STRING Data
 
- VOID Return


SetObjectTag

SetObjectTag
Sets the tag name of an existing object. 
- HANDLE Object
Handle to the object 
- STRING Tag
 
- VOID Return


Property reference

Properties