annotate xpath.xml @ 7:a890cac292f3 draft

planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/xpath commit 8cbc5a00fac3f19591b1f956610f0cc60810dab2
author iuc
date Tue, 28 Nov 2017 05:13:13 -0500
parents 3619c6fb132d
children
Ignore whitespace changes - Everywhere: Within whitespace: At end of lines:
rev   line source
0
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
1 <?xml version="1.0"?>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
2 <tool id="xpath" name="XPath" version="@WRAPPER_VERSION@.0">
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
3 <description>compute xpath expressions on XML data</description>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
4 <macros>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
5 <import>macros.xml</import>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
6 </macros>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
7 <expand macro="requirements"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
8 <expand macro="stdio"/>
6
3619c6fb132d planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/xpath commit c9d0e222bf9ec49f5a58a2d7f9990310933d71e9
iuc
parents: 5
diff changeset
9 <command><![CDATA[perl $__tool_directory__/xpath -q -e '$expression' $input > $output]]></command>
0
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
10 <inputs>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
11 <param name="input" type="data" format="xml" label="Input XML data"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
12 <param name="expression" type="text" label="XPath Query">
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
13 <sanitizer>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
14 <valid>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
15 <add value="&quot;"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
16 <add value="["/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
17 <add value="]"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
18 <add value="@"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
19 </valid>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
20 </sanitizer>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
21 </param>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
22 </inputs>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
23 <outputs>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
24 <!-- TODO: sometimes there's text output (e.g. text() queries) -->
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
25 <data format="xml" name="output" label="XPath expression on $input.name"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
26 </outputs>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
27 <tests>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
28 <test>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
29 <param name="input" value="test.xml"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
30 <param name="expression" value="//b[@attr=&quot;value&quot;]" />
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
31 <output name="output" file="1.xml"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
32 </test>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
33 <test>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
34 <param name="input" value="test.xml"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
35 <param name="expression" value="//b[@attr]" />
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
36 <output name="output" file="2.xml"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
37 </test>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
38 <test>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
39 <param name="input" value="test.xml"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
40 <param name="expression" value="//b/text()" />
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
41 <output name="output" file="3.xml"/>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
42 </test>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
43 </tests>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
44 <help><![CDATA[
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
45 **What it does**
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
46
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
47 Query XML files with XPath expressions.
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
48
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
49 For an example input file::
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
50
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
51 <root>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
52 <IdList>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
53 <Id>1234</Id>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
54 <Id>1235</Id>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
55 <Id>1236</Id>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
56 <Id>1237</Id>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
57 </IdList>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
58 </root>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
59
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
60 One could query out the IDs specifically with a query like::
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
61
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
62 //Id/text()
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
63
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
64 **XPath Expressions**
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
65
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
66 There are many helpful tutorials on the internet for XPath expressions.
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
67 `Wikipedia <https://en.wikipedia.org/wiki/XPath>`__ has a number of good
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
68 examples.
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
69
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
70 **Some More Examples**
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
71
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
72 For an XML document like the following::
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
73
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
74 <root>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
75 <a>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
76 <b attr="value">1</b>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
77 <b attr="none">2</b>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
78 <b>3</b>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
79 </a>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
80 <c>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
81 <d>4</d>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
82 <e>5</e>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
83 </c>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
84 </root>
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
85
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
86 Here are some example queries and their outputs:
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
87
7
a890cac292f3 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/xpath commit 8cbc5a00fac3f19591b1f956610f0cc60810dab2
iuc
parents: 6
diff changeset
88 +--------------------+---------------------------------------------------+
0
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
89 | Query | Result |
7
a890cac292f3 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/xpath commit 8cbc5a00fac3f19591b1f956610f0cc60810dab2
iuc
parents: 6
diff changeset
90 +====================+===================================================+
0
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
91 | //b[@attr="value"] | <b attr="value">1</b> |
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
92 +--------------------+---------------------------------------------------+
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
93 | //b[@attr] | <b attr="value">1</b><b attr="none">2</b> |
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
94 +--------------------+---------------------------------------------------+
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
95 | //b | <b attr="value">1</b><b attr="none">2</b><b>3</b> |
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
96 +--------------------+---------------------------------------------------+
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
97 | //b/text() | 1\n2\n3 |
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
98 +--------------------+---------------------------------------------------+
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
99 | /root/*/*/text() | 1\n2\n3\n4\n5 |
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
100 +--------------------+---------------------------------------------------+
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
101
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
102
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
103
7
a890cac292f3 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/xpath commit 8cbc5a00fac3f19591b1f956610f0cc60810dab2
iuc
parents: 6
diff changeset
104
0
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
105 @ATTRIBUTION@
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
106 ]]></help>
5
b88fc7f8ca73 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/xpath commit 344140b8df53b8b7024618bb04594607a045c03a
iuc
parents: 0
diff changeset
107 <citations>
b88fc7f8ca73 planemo upload for repository https://github.com/galaxyproject/tools-iuc/tree/master/tools/xpath commit 344140b8df53b8b7024618bb04594607a045c03a
iuc
parents: 0
diff changeset
108 </citations>
0
159bdf04ae19 Uploaded
iuc
parents:
diff changeset
109 </tool>