XML - Node to Dataset
Declaration
<AMXML ACTIVITY="node_to_dataset" XMLDOCUMENTFROM="text (options)" FILE="text" NEWVALUE="text" DEFAULTNSPREFIX="text" DEFAULTNAMESPACE="text" XPATH="text" RESULTDATASET="text"> <ATTRIBUTE NAME="text" VALUE="text" /><NAMESPACE PREFIX="text" URI="text" /></AMXML>
Description: Retrieves the text value or XPath expression of each node in a document tree or the value of a specific attribute and populates a dataset with the results.
Practical Usage
Used to gather information regarding node objects or attributes in a document tree.
Resource Parameters
Property |
Type |
Required |
Default |
Markup |
Description |
---|---|---|---|---|---|
File/Session |
|
|
|
|
Denotes where the XML data derives from. This is a visual mode parameter used only during design-time, therefore, contains no markup. The available options are:
|
Session |
Text |
Yes if Resource is set to Session |
XMLSession1 |
SESSIONNAME="myXMLSession" |
The name of an existing session in which to associate this activity with. As a safety measure, when a session is created, the XML file bound by that session is saved in memory and the original file is locked. Any modifications by subsequent XML steps are performed on a copy of the XML data saved to memory. Linking several activities to a single session eliminates redundancy. Additionally, a single task supports simultaneous execution of multiple sessions, improving overall efficiency. Use the XML - Save activity to output the in-memory representation of the XML session to a file or variable. To end the session, use the XML - End session activity. |
Create XML session from |
Text (options) |
Yes if Resource is set to File |
Existing File |
|
Specifies where the XML data should derive from to start the new session. The XML data will be saved into memory. Different parameters become active depending on which option is selected. The available options are:
|
File |
Text |
Yes if XML session derives from a new or existing file |
(Empty) |
FILE="c:\foldername\file.XML" |
The path and filename of the new or existing XML file. This parameter is active only if the Create XML session from parameter is set to Existing file or New file. |
Overwrite if file exists |
Yes/No |
Yes if XML session derives from a new file |
No |
OVERWRITEFILE="YES" |
If set to YES, specifies that if an XML file with the same name already exists at the specified location, it will be overwritten with the new file. If set to NO (default), the step fails if the file already exists. This parameter is active only if the Create XML session from parameter is set to New file. |
Root node name |
Text |
Yes if XML session derives from a new file |
(Empty) |
ROOTNODENAME="Automate" |
The root node name for new XML file. This parameter is active only if the Create XML session from parameter is set to New file. |
Root node value (optional) |
Text |
No |
(Empty) |
NEWVALUE="Value" |
The root node value for the new XML file. This parameter is active only if the Create XML session from parameter is set to New file. |
Default namespace prefix (optional) |
Text |
No |
(Empty) |
DEFAULTNSPREFIX="edi" |
The prefix of the default namespace for the new XML file. A namespace prefix is a text string assigned as an element name prefix to a namespace. When an element name is preceded by the prefix and a colon, then that element is in that assigned namespace. This parameter is active only if the Create XML session from parameter is set to New file. |
Default namespace URI (optional) |
Text |
No |
(Empty) |
DEFAULTNAMESPACE= "http://net.com/schema" |
The default namespace URI for the new XML file. An XML namespace is a collection of element type and attribute names that are uniquely identified by the name of the unique XML namespace of which they are a part. This parameter is active only if the Create XML session from parameter is set to New file. |
Text |
Text |
Yes if XML session derives from text |
(Empty) |
XMLTEXT="theText" |
The text that the XML data should originate from. This parameter is active only if the Start XML session from parameter is set to Text. |
Attribute Name |
Text |
No |
(Empty) |
Name="AttribName" |
The name portion of the attribute name value pair to insert. Use this parameter to insert attributes into the new node. To enter a new row of values select Click here to add new row... To delete an existing row, click the red "X". This parameter supports insertion of multiple attribute name value pairs. |
Attribute Value |
Text |
No |
(Empty) |
Value="AttribValue" |
The value portion of the attribute name value pair to insert. Use this parameter to insert attributes into the new node. To enter a new row of values select Click here to add new row... To delete an existing row, click the red "X". This parameter supports insertion of multiple attribute name value pairs. |
Node Parameters
Property |
Type |
Required |
Default |
Markup |
Description |
---|---|---|---|---|---|
XPath expression |
Text |
Yes |
(Empty) |
XPATH="sum(//price/text())" |
The XPath expression from the current XML document in which to retrieve values from. |
Dataset type |
Text (options) |
No |
Text |
|
Indicates the type of information to populate the specified dataset with. The available options are:
|
Create and populate dataset with node information |
Text |
Yes |
(Empty) |
RESULTDATASET="theDataset" |
The name of the dataset in which to create and populate with the node or attribute values. |
Description tab - A custom description can be provided on the Description tab to convey additional information or share special notes about a task step.
Error Causes tab - Specify how this step should behave upon the occurrence of an error. (Refer to Task Builder > Error Causes Tab for details.)
On Error tab - Specify what AWE should do if this step encounters an error as defined on the Error Causes tab. (Refer to Task Builder > On Error Tab for details.)
Example
The sample AML code below can be copied and pasted directly into the Steps panel of the Task Builder.
Description: This sample task creates a dataset named "NodeSet" containing XML node values of type "AttributeValue" at XPath location "/bookstore/book". The dataset is then looped and a message box is appears within each iteration displaying the value.
<AMXMLNODEITERATOR XPATH="/bookstore/book" RESULTDATASET="NodeSet" VARVALUETYPE="AttributeValue" ATTRNAME="category" /> <AMLOOP TYPE="DATASET" DATASET="NodeSet"> <AMSHOWDIALOG>%NodeSet.Value%</AMSHOWDIALOG> </AMLOOP> <AMXMLENDSESSION />