Difference between revisions of "Component: XML JSON Parser (Runtime Tools)"
From Flowcode Help
Jump to navigationJump to search| Line 17: | Line 17: | ||
==Component Source Code== | ==Component Source Code== | ||
| − | Please click here | + | Please click here to view the component source code (Beta): [https://www.flowcode.co.uk/FlowchartView/?wfile=componentsource/FC_Comp_Source_XMLParser.fcfx FC_Comp_Source_XMLParser.fcfx] |
==Detailed description== | ==Detailed description== | ||
| + | |||
| + | |||
| Line 26: | Line 28: | ||
==Examples== | ==Examples== | ||
| + | |||
| + | |||
| Line 32: | Line 36: | ||
==Macro reference== | ==Macro reference== | ||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetObjectString''' | ||
| + | |- | ||
| + | | colspan="2" | Sets the data string of an existing object. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-h32-icon.png]] - HANDLE | ||
| + | | width="90%" | Object | ||
| + | |- | ||
| + | | colspan="2" | Handle to the object | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" | Data | ||
| + | |- | ||
| + | | colspan="2" | | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetRootHandle''' | ||
| + | |- | ||
| + | | colspan="2" | Allows for user to step through the objects manually using the inbuilt runtime api calls. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-h32-icon.png]] - HANDLE | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" | ObjPath | ||
| + | |- | ||
| + | | colspan="2" | e.g. "rss.channel.title" | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-h32-icon.png]] - HANDLE | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''FindObjectString''' | ||
| + | |- | ||
| + | | colspan="2" | Searches for and then collects the data string from the specified path. Returns the first matching path from the root. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" | ObjPath | ||
| + | |- | ||
| + | | colspan="2" | e.g. "rss.channel.title" | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-h32-icon.png]] - HANDLE | ||
| + | | width="90%" | ParentObject | ||
| + | |- | ||
| + | | colspan="2" | The Object Handle to store the new tag inside | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" | Tag | ||
| + | |- | ||
| + | | colspan="2" | Name of the object | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" | Data | ||
| + | |- | ||
| + | | colspan="2" | data for the object (optional) | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-h32-icon.png]] - HANDLE | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" | SubObjPath | ||
| + | |- | ||
| + | | colspan="2" | e.g. "item.title" | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-h32-icon.png]] - HANDLE | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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 | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" | Data | ||
| + | |- | ||
| + | | colspan="2" | JSON Data string, can be a chunk of a file at a time | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| + | | width="90%" | Length | ||
| + | |- | ||
| + | | colspan="2" | Number of Bytes to process | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetObjectString''' | ||
| + | |- | ||
| + | | colspan="2" | Collects the data string from the specified object. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-h32-icon.png]] - HANDLE | ||
| + | | width="90%" | Object | ||
| + | |- | ||
| + | | colspan="2" | Handle to the object | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''ClearObjects''' | ||
| + | |- | ||
| + | | colspan="2" | Deletes all object data ready for fresh input | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''GetObjectTag''' | ||
| + | |- | ||
| + | | colspan="2" | Collects the tag string from the specified object. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-h32-icon.png]] - HANDLE | ||
| + | | width="90%" | Object | ||
| + | |- | ||
| + | | colspan="2" | Handle to the object | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''BuildXMLString''' | ||
| + | |- | ||
| + | | colspan="2" | Generate a XML string based on the current objects inside the component. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''DeleteObject''' | ||
| + | |- | ||
| + | | colspan="2" | Deletes a selected tag object. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-h32-icon.png]] - HANDLE | ||
| + | | width="90%" | Object | ||
| + | |- | ||
| + | | colspan="2" | Handle to the object | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-bool-icon.png]] - BOOL | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''FindNextObjectString''' | ||
| + | |- | ||
| + | | colspan="2" | Searches for and then collects the data string from the specified path. Returns the first matching path from the last search | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" | SubObjPath | ||
| + | |- | ||
| + | | colspan="2" | e.g. "item.title" | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''BuildJSONString''' | ||
| + | |- | ||
| + | | colspan="2" | Generate a JSON string based on the current objects inside the component. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''SetObjectTag''' | ||
| + | |- | ||
| + | | colspan="2" | Sets the tag name of an existing object. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-h32-icon.png]] - HANDLE | ||
| + | | width="90%" | Object | ||
| + | |- | ||
| + | | colspan="2" | Handle to the object | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" | Tag | ||
| + | |- | ||
| + | | colspan="2" | | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" align="center" | [[File:Fc9-comp-macro.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''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. | ||
| + | |- | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-string-icon.png]] - STRING | ||
| + | | width="90%" | Data | ||
| + | |- | ||
| + | | colspan="2" | XML Data string, can be a chunk of a file at a time | ||
| + | |- | ||
| + | | width="10%" align="center" | [[File:Fc9-u16-icon.png]] - UINT | ||
| + | | width="90%" | Length | ||
| + | |- | ||
| + | | colspan="2" | Number of bytes to process | ||
| + | |- | ||
| + | | width="10%" align="center" style="border-top: 2px solid #000;" | [[File:Fc9-void-icon.png]] - VOID | ||
| + | | width="90%" style="border-top: 2px solid #000;" | ''Return'' | ||
| + | |} | ||
| + | |||
| + | |||
| + | |||
| + | |||
| + | ==Property reference== | ||
| + | |||
| + | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
| + | |- | ||
| + | | width="10%" align="center" style="background-color:#D8C9D8;" | [[File:Fc9-prop-icon.png]] | ||
| + | | width="90%" style="background-color:#D8C9D8; color:#4B008D;" | '''Properties''' | ||
| + | |- | ||
| + | |}==Macro reference== | ||
{| class="wikitable" style="width:60%; background-color:#FFFFFF;" | {| class="wikitable" style="width:60%; background-color:#FFFFFF;" | ||
Revision as of 15:17, 20 January 2023
| Author | MatrixTSL |
| Version | 1.0 |
| Category | Runtime Tools |
Contents
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 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
| SetObjectString | |
| Sets the data string of an existing object. | |
| Object | |
| Handle to the object | |
| Data | |
| Return | |
| GetRootHandle | |
| Allows for user to step through the objects manually using the inbuilt runtime api calls. | |
| Return | |
| FindObject | |
| Finds the first instance of an object. Returns the first matching path from the root. Returns 0 if the path was not found. | |
| ObjPath | |
| e.g. "rss.channel.title" | |
| Return | |
| FindObjectString | |
| Searches for and then collects the data string from the specified path. Returns the first matching path from the root. | |
| ObjPath | |
| e.g. "rss.channel.title" | |
| Return | |
| GetObjectString | |
| Collects the data string from the specified object. | |
| Object | |
| Handle to the object | |
| Return | |
| ClearObjects | |
| Deletes all object data ready for fresh input | |
| Return | |
| GetObjectTag | |
| Collects the tag string from the specified object. | |
| Object | |
| Handle to the object | |
| Return | |
| BuildXMLString | |
| Generate a XML string based on the current objects inside the component. | |
| Return | |
| DeleteObject | |
| Deletes a selected tag object. | |
| Object | |
| Handle to the object | |
| Return | |
| FindNextObjectString | |
| Searches for and then collects the data string from the specified path. Returns the first matching path from the last search | |
| SubObjPath | |
| e.g. "item.title" | |
| Return | |
| BuildJSONString | |
| Generate a JSON string based on the current objects inside the component. | |
| Return | |
| SetObjectTag | |
| Sets the tag name of an existing object. | |
| Object | |
| Handle to the object | |
| Tag | |
| Return | |
Property reference
| Properties |
==Macro reference==
| SetObjectString | |
| Sets the data string of an existing object. | |
| Object | |
| Handle to the object | |
| Data | |
| Return | |
| GetRootHandle | |
| Allows for user to step through the objects manually using the inbuilt runtime api calls. | |
| Return | |
| FindObject | |
| Finds the first instance of an object. Returns the first matching path from the root. Returns 0 if the path was not found. | |
| ObjPath | |
| e.g. "rss.channel.title" | |
| Return | |
| FindObjectString | |
| Searches for and then collects the data string from the specified path. Returns the first matching path from the root. | |
| ObjPath | |
| e.g. "rss.channel.title" | |
| Return | |
| GetObjectString | |
| Collects the data string from the specified object. | |
| Object | |
| Handle to the object | |
| Return | |
| ClearObjects | |
| Deletes all object data ready for fresh input | |
| Return | |
| GetObjectTag | |
| Collects the tag string from the specified object. | |
| Object | |
| Handle to the object | |
| Return | |
| BuildXMLString | |
| Generate a XML string based on the current objects inside the component. | |
| Return | |
| DeleteObject | |
| Deletes a selected tag object. | |
| Object | |
| Handle to the object | |
| Return | |
| FindNextObjectString | |
| Searches for and then collects the data string from the specified path. Returns the first matching path from the last search | |
| SubObjPath | |
| e.g. "item.title" | |
| Return | |
| BuildJSONString | |
| Generate a JSON string based on the current objects inside the component. | |
| Return | |
| SetObjectTag | |
| Sets the tag name of an existing object. | |
| Object | |
| Handle to the object | |
| Tag | |
| Return | |
Property reference
| Properties |