映射 XML
根据 XPath 表达式的参数以 XML (eXtensible 标记语言) 格式映射数据,并将其保存到映射的变量。
命令可用性: 本地 IBM RPA SaaS 和 IBM RPA
描述
使用此命令可从 XML 格式的文档,数据,配置,书籍,交易,发票和任何其他文件获取信息。 请参阅 XML 🡥 以获取详细信息。
限制
以下限制适用于此命令:
- 如果 XML 内容具有同名的名称空间和节点,那么无法选择特定节点。 必须使用正则表达式来获取特定节点。
- 如果 XML 内容具有名称空间和具有子节点的节点,那么无法从父代获取所有子代。 必须使用正则表达式来解析子节点。
脚本语法
IBM RPA 的专有脚本语言的语法与其他编程语言类似。 该脚本语法在脚本文件中定义命令的语法。 您可以在 IBM RPA Studio的 "脚本" 方式下使用此语法。
mapXml --xml(String) [--removenamespaces(Boolean)] --mappings(String)
输入参数
下表显示了此命令中提供的输入参数的列表。 在表中,您可以看到在 IBM RPA Studio的脚本方式及其 Designer 方式等效标签中工作时的参数名称。
| 设计器方式标签 | 脚本方式名称 | 必需的 | 接受的变量类型 | 描述 |
|---|---|---|---|---|
| XML | xml |
Required |
Text |
要映射的 XML 中的文本。 |
| 除去名称空间 | removenamespaces |
Optional |
Boolean |
使其能够除去 XML 文本中包含的名称空间。 |
| 映射 | mappings |
Required |
Text |
基于从同一 HTML 文本中抽取的 XPath 表达式来映射 XML 文本。 在此参数中,您可以根据需要输入任意数目的映射,并且对于每个参数,您必须指定一个变量以接收抽取的值。 在 参数 字段中,输入要映射的元素的 XPath。 在 值 字段中,输入类型为 Text 的变量以接收所映射元素的内容。 |
示例
此命令从 XML 参数中输入的 XML 文本映射数据,该参数表示消息的基本结构,并将每个标识的参数抽取到指定的变量。
defVar --name sender --type String
defVar --name recipient --type String
defVar --name messageSubject --type String
defVar --name messageHeader --type String
// Text in XML format.
defVar --name xmlMessage --type String --value "<?xml version=\"1.0\" encoding=\"UTF-8\"?>\r\n <note>\r\n <to>Tove</to>\r\n <from>Jani</from>\r\n <heading>Reminder</heading>\r\n <body>Don\'t forget me this weekend!</body>\r\n </note>"
// Mapping of each XML element entered in each XPath expression.
mapXml --xml "${xmlMessage}" --mappings "to==${sender},from==${recipient},heading==${messageSubject},body==${messageHeader}"
logMessage --message "From: ${sender}\r\nTo: ${recipient}\r\nSubject: ${messageSubject}\r\nMessage: ${messageHeader}" --type "Info"
// The above example displays the XML fields corresponding to the sender, recipient, subject, and message:
// From: Jani
// To: Tove
// Subject: Reminder
// Message: Don't forget me this weekend!