author | František Kučera <franta-hg@frantovo.cz> |
Mon, 21 Feb 2022 01:21:22 +0100 | |
branch | v_0 |
changeset 330 | 70e7eb578cfa |
parent 302 | e536a3aaee77 |
permissions | -rw-r--r-- |
23
0d2729ed16ed
zkouška interního odkazu
František Kučera <franta-hg@frantovo.cz>
parents:
18
diff
changeset
|
1 |
<stránka |
0d2729ed16ed
zkouška interního odkazu
František Kučera <franta-hg@frantovo.cz>
parents:
18
diff
changeset
|
2 |
xmlns="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/strana" |
0d2729ed16ed
zkouška interního odkazu
František Kučera <franta-hg@frantovo.cz>
parents:
18
diff
changeset
|
3 |
xmlns:m="https://trac.frantovo.cz/xml-web-generator/wiki/xmlns/makro"> |
0d2729ed16ed
zkouška interního odkazu
František Kučera <franta-hg@frantovo.cz>
parents:
18
diff
changeset
|
4 |
|
139
5377fcfa73cb
specification: empty page
František Kučera <franta-hg@frantovo.cz>
parents:
138
diff
changeset
|
5 |
<nadpis>Specification</nadpis> |
5377fcfa73cb
specification: empty page
František Kučera <franta-hg@frantovo.cz>
parents:
138
diff
changeset
|
6 |
<perex>Specification of the Relational pipes data format</perex> |
5377fcfa73cb
specification: empty page
František Kučera <franta-hg@frantovo.cz>
parents:
138
diff
changeset
|
7 |
<pořadí>20</pořadí> |
4
1bb39595a51c
genrování hlavní nabídky #1
František Kučera <franta-hg@frantovo.cz>
parents:
2
diff
changeset
|
8 |
|
2
ab9099ff88fa
vkládání zápatí, jmenné prostory, saxon
František Kučera <franta-hg@frantovo.cz>
parents:
1
diff
changeset
|
9 |
<text xmlns="http://www.w3.org/1999/xhtml"> |
ab9099ff88fa
vkládání zápatí, jmenné prostory, saxon
František Kučera <franta-hg@frantovo.cz>
parents:
1
diff
changeset
|
10 |
<p> |
153
7930f3482370
specification: intro
František Kučera <franta-hg@frantovo.cz>
parents:
139
diff
changeset
|
11 |
Currently only fragments of the specification are published |
7930f3482370
specification: intro
František Kučera <franta-hg@frantovo.cz>
parents:
139
diff
changeset
|
12 |
and the incompatible changes might (and will) come before the v1.0.0 release. |
7930f3482370
specification: intro
František Kučera <franta-hg@frantovo.cz>
parents:
139
diff
changeset
|
13 |
Please stay tuned for this stable version which will deliver specification such complete and precise |
7930f3482370
specification: intro
František Kučera <franta-hg@frantovo.cz>
parents:
139
diff
changeset
|
14 |
that independent implementation of the format will be possible. |
87
25dec6931f18
Lepší odsazení, tabulátory.
František Kučera <franta-hg@frantovo.cz>
parents:
23
diff
changeset
|
15 |
</p> |
154
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
16 |
|
156
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
17 |
<h2> |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
18 |
<m:name/> data format |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
19 |
</h2> |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
20 |
|
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
21 |
<h3>Stream structure structure</h3> |
154
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
22 |
|
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
23 |
|
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
24 |
<m:tabulka> |
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
25 |
id name description |
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
26 |
0x1D start start of the relation |
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
27 |
0x1E record start of the record |
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
28 |
</m:tabulka> |
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
29 |
|
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
30 |
|
156
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
31 |
<h3>Data types</h3> |
154
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
32 |
|
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
33 |
<p>Currently, there are only three data types.</p> |
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
34 |
|
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
35 |
<m:tabulka> |
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
36 |
typeId code description |
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
37 |
0x01 boolean logical value, true/false |
302
e536a3aaee77
specification: integers are signed
František Kučera <franta-hg@frantovo.cz>
parents:
239
diff
changeset
|
38 |
0x02 integer signed integer number of arbitrary length |
154
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
39 |
0x03 string character string in UTF-8 |
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
40 |
</m:tabulka> |
aec6545b2350
license: GNU GPLv3+
František Kučera <franta-hg@frantovo.cz>
parents:
153
diff
changeset
|
41 |
|
156
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
42 |
<h2>Libraries</h2> |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
43 |
|
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
44 |
<h3>relpipe-lib-writer</h3> |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
45 |
|
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
46 |
<p>Wraps an output stream (usually STDOUT), accepts method calls (relations, attributes) and generates <m:name/> data on the stream.</p> |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
47 |
|
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
48 |
<h3>relpipe-lib-reader</h3> |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
49 |
|
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
50 |
<p> |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
51 |
Wraps an input stream (usually STDIN). The caller creates and sets handlers (zero or more) using <code>addHandler()</code> and then calls <code>process()</code> method. |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
52 |
During this method call, the reader reads the input and calls the handlers. |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
53 |
Handlers receive relations and attributes. |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
54 |
</p> |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
55 |
|
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
56 |
<h2>Tools</h2> |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
57 |
|
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
58 |
<h3>relpipe-in-cli</h3> |
157
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
59 |
<p> |
184 | 60 |
A tool that generates a single relation. If we want more relations in a single stream, we just call this command multiple times: |
157
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
61 |
</p> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
62 |
|
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
63 |
<m:pre jazyk="bash"><![CDATA[ |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
64 |
(relpipe-in-cli ... ; relpipe-in-cli ... ; relpipe-in-cli ... ) | relpipe-out-tabular |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
65 |
]]></m:pre> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
66 |
|
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
67 |
<p>Or concatenate several files or do a combination of both files and commands.</p> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
68 |
|
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
69 |
<p>This command accept these arguments:</p> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
70 |
|
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
71 |
<ul> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
72 |
<li>relation name</li> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
73 |
<li>attribute count</li> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
74 |
<li>names of attributes</li> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
75 |
<li>types of attributes</li> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
76 |
<li>attribute values</li> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
77 |
</ul> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
78 |
|
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
79 |
<p> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
80 |
These data might be passed as CLI arguments on the command line or as null-byte (<code>\0</code>) separated list of values on STDIN. |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
81 |
Both ways can be combined e.g. pass relation name and metadata as CLI arguments and the data on STDIN. |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
82 |
The tool simply starts with CLI arguments (if any) and continues with values from STDIN (if any). |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
83 |
</p> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
84 |
|
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
85 |
<p> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
86 |
This tool is a good entry point to the <m:name/> world because it requires no programming and construction of the argument list or <code>\0</code> separated list can be done in any language or environment. |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
87 |
Tools like <code>perl</code> or <code>tr</code> can convert almost any data to this form and pass it to <code>relpipe-in-cli</code>. |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
88 |
</p> |
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
89 |
|
65b71e6a0973
specification: relpipe-in-cli
František Kučera <franta-hg@frantovo.cz>
parents:
156
diff
changeset
|
90 |
|
228 | 91 |
<h3>relpipe-in-csv</h3> |
92 |
||
93 |
<p> |
|
94 |
A tool that parses a CSV (comma-separated values) input and generates a single relation from it. |
|
95 |
Values might be "quoted". |
|
96 |
If quoted value contains a quote literal, it is escaped by doubling. |
|
97 |
Encoding must be UTF-8. |
|
98 |
Line ends might be LF or CRLF. |
|
99 |
</p> |
|
100 |
||
101 |
||
156
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
102 |
<h3>relpipe-in-fstab</h3> |
158
bec21a800cc3
specification: relpipe-in-fstab
František Kučera <franta-hg@frantovo.cz>
parents:
157
diff
changeset
|
103 |
|
bec21a800cc3
specification: relpipe-in-fstab
František Kučera <franta-hg@frantovo.cz>
parents:
157
diff
changeset
|
104 |
<p> |
bec21a800cc3
specification: relpipe-in-fstab
František Kučera <franta-hg@frantovo.cz>
parents:
157
diff
changeset
|
105 |
A tool that parses <code>fstab</code> (or <code>mtab</code>) file containing a list of devices, mount-points and their options and generates a single relation from it. |
bec21a800cc3
specification: relpipe-in-fstab
František Kučera <franta-hg@frantovo.cz>
parents:
157
diff
changeset
|
106 |
</p> |
bec21a800cc3
specification: relpipe-in-fstab
František Kučera <franta-hg@frantovo.cz>
parents:
157
diff
changeset
|
107 |
|
bec21a800cc3
specification: relpipe-in-fstab
František Kučera <franta-hg@frantovo.cz>
parents:
157
diff
changeset
|
108 |
<p> |
bec21a800cc3
specification: relpipe-in-fstab
František Kučera <franta-hg@frantovo.cz>
parents:
157
diff
changeset
|
109 |
If executed on TTY, it reads data from the default location: <code>/etc/fstab</code>. |
bec21a800cc3
specification: relpipe-in-fstab
František Kučera <franta-hg@frantovo.cz>
parents:
157
diff
changeset
|
110 |
If executed with STDIN attached to a file or another command (in a pipe), it reads data from this stream. |
bec21a800cc3
specification: relpipe-in-fstab
František Kučera <franta-hg@frantovo.cz>
parents:
157
diff
changeset
|
111 |
</p> |
bec21a800cc3
specification: relpipe-in-fstab
František Kučera <franta-hg@frantovo.cz>
parents:
157
diff
changeset
|
112 |
|
230 | 113 |
<h3>relpipe-in-xml</h3> |
114 |
||
115 |
<p> |
|
116 |
A tool that reads XML data in the format generated by <code>relpipe-out-xml</code> |
|
117 |
and converts it back to the relational format. |
|
118 |
Can be used together with XSLT procesor XQuery engine or other XML generator in two basic scenarios: |
|
119 |
</p> |
|
120 |
||
121 |
<ul> |
|
122 |
<li>as an input filter: to convert other formats to relational data</li> |
|
123 |
<li>as a transformation: in pipeline: <code>relpipe-out-xml | some-xml-processor | relpipe-in-xml</code></li> |
|
124 |
</ul> |
|
125 |
||
126 |
<p> |
|
127 |
XQuery is very powerful language that can do various transformations, filtering and even JOIN and UNION operations. |
|
128 |
So its power is comparable to relational databases. |
|
129 |
In future <m:name/> releases, there will be also an SQL transformation tool, where these operations will be defined in classic SQL syntax. |
|
130 |
</p> |
|
131 |
||
239
627ff99d475b
specification: relpipe-in-filesystem
František Kučera <franta-hg@frantovo.cz>
parents:
230
diff
changeset
|
132 |
<h3>relpipe-in-filesystem</h3> |
627ff99d475b
specification: relpipe-in-filesystem
František Kučera <franta-hg@frantovo.cz>
parents:
230
diff
changeset
|
133 |
|
627ff99d475b
specification: relpipe-in-filesystem
František Kučera <franta-hg@frantovo.cz>
parents:
230
diff
changeset
|
134 |
<p> |
627ff99d475b
specification: relpipe-in-filesystem
František Kučera <franta-hg@frantovo.cz>
parents:
230
diff
changeset
|
135 |
A tool that reads <code>\0</code> separated list of file paths and generates relation |
627ff99d475b
specification: relpipe-in-filesystem
František Kučera <franta-hg@frantovo.cz>
parents:
230
diff
changeset
|
136 |
with metadata of given files. |
627ff99d475b
specification: relpipe-in-filesystem
František Kučera <franta-hg@frantovo.cz>
parents:
230
diff
changeset
|
137 |
Can read basic metadata like file path, name, size, owner… |
627ff99d475b
specification: relpipe-in-filesystem
František Kučera <franta-hg@frantovo.cz>
parents:
230
diff
changeset
|
138 |
and also extended attributes (xattr). |
627ff99d475b
specification: relpipe-in-filesystem
František Kučera <franta-hg@frantovo.cz>
parents:
230
diff
changeset
|
139 |
</p> |
627ff99d475b
specification: relpipe-in-filesystem
František Kučera <franta-hg@frantovo.cz>
parents:
230
diff
changeset
|
140 |
|
156
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
141 |
<h3>relpipe-out-tabular</h3> |
159
3e78723ffef0
specification: relpipe-out-tabular
František Kučera <franta-hg@frantovo.cz>
parents:
158
diff
changeset
|
142 |
|
3e78723ffef0
specification: relpipe-out-tabular
František Kučera <franta-hg@frantovo.cz>
parents:
158
diff
changeset
|
143 |
<p> |
3e78723ffef0
specification: relpipe-out-tabular
František Kučera <franta-hg@frantovo.cz>
parents:
158
diff
changeset
|
144 |
A tool that formats relational data as tables with unicode borders and ANSI colors. |
3e78723ffef0
specification: relpipe-out-tabular
František Kučera <franta-hg@frantovo.cz>
parents:
158
diff
changeset
|
145 |
Good for viewing relational data in a terminal or redirecting such view to a file or clipboard (to be pasted anywhere, where fixed-width font is used). |
3e78723ffef0
specification: relpipe-out-tabular
František Kučera <franta-hg@frantovo.cz>
parents:
158
diff
changeset
|
146 |
</p> |
3e78723ffef0
specification: relpipe-out-tabular
František Kučera <franta-hg@frantovo.cz>
parents:
158
diff
changeset
|
147 |
|
3e78723ffef0
specification: relpipe-out-tabular
František Kučera <franta-hg@frantovo.cz>
parents:
158
diff
changeset
|
148 |
<h3>relpipe-out-gui</h3> |
3e78723ffef0
specification: relpipe-out-tabular
František Kučera <franta-hg@frantovo.cz>
parents:
158
diff
changeset
|
149 |
|
160
b731df137efb
specification: relpipe-out-gui
František Kučera <franta-hg@frantovo.cz>
parents:
159
diff
changeset
|
150 |
<p> |
b731df137efb
specification: relpipe-out-gui
František Kučera <franta-hg@frantovo.cz>
parents:
159
diff
changeset
|
151 |
A tool that views relational data in a GUI window. Relations are displayed as panels with tables. |
b731df137efb
specification: relpipe-out-gui
František Kučera <franta-hg@frantovo.cz>
parents:
159
diff
changeset
|
152 |
Particular implementation might offer also additional features like chart drawing or simple statistics (sum, max, min, avg, percentiles etc.) |
b731df137efb
specification: relpipe-out-gui
František Kučera <franta-hg@frantovo.cz>
parents:
159
diff
changeset
|
153 |
</p> |
b731df137efb
specification: relpipe-out-gui
František Kučera <franta-hg@frantovo.cz>
parents:
159
diff
changeset
|
154 |
|
178
674b4e3b2f14
relpipe-out-nullbyte
František Kučera <franta-hg@frantovo.cz>
parents:
176
diff
changeset
|
155 |
<h3>relpipe-out-nullbyte</h3> |
674b4e3b2f14
relpipe-out-nullbyte
František Kučera <franta-hg@frantovo.cz>
parents:
176
diff
changeset
|
156 |
|
674b4e3b2f14
relpipe-out-nullbyte
František Kučera <franta-hg@frantovo.cz>
parents:
176
diff
changeset
|
157 |
<p> |
674b4e3b2f14
relpipe-out-nullbyte
František Kučera <franta-hg@frantovo.cz>
parents:
176
diff
changeset
|
158 |
A tool that converts relational data to a list of null-byte (<code>\0</code>) separated values. |
674b4e3b2f14
relpipe-out-nullbyte
František Kučera <franta-hg@frantovo.cz>
parents:
176
diff
changeset
|
159 |
Makes sense only for a single relation because boundaries between relations will be lost if there are more of them. |
674b4e3b2f14
relpipe-out-nullbyte
František Kučera <franta-hg@frantovo.cz>
parents:
176
diff
changeset
|
160 |
Also attribute names and types are lost by default. |
674b4e3b2f14
relpipe-out-nullbyte
František Kučera <franta-hg@frantovo.cz>
parents:
176
diff
changeset
|
161 |
</p> |
674b4e3b2f14
relpipe-out-nullbyte
František Kučera <franta-hg@frantovo.cz>
parents:
176
diff
changeset
|
162 |
<p> |
184 | 163 |
Is suitable for passing a single relation to <code>xargs --null --max-args=X</code> (where X is the attribute count) |
178
674b4e3b2f14
relpipe-out-nullbyte
František Kučera <franta-hg@frantovo.cz>
parents:
176
diff
changeset
|
164 |
or other command that accepts values separated by a null-byte. |
674b4e3b2f14
relpipe-out-nullbyte
František Kučera <franta-hg@frantovo.cz>
parents:
176
diff
changeset
|
165 |
</p> |
159
3e78723ffef0
specification: relpipe-out-tabular
František Kučera <franta-hg@frantovo.cz>
parents:
158
diff
changeset
|
166 |
|
156
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
167 |
<h3>relpipe-out-xml</h3> |
2be00f14dc78
specification: libraries
František Kučera <franta-hg@frantovo.cz>
parents:
154
diff
changeset
|
168 |
|
161
989b1709a008
specification: relpipe-out-xml
František Kučera <franta-hg@frantovo.cz>
parents:
160
diff
changeset
|
169 |
<p> |
989b1709a008
specification: relpipe-out-xml
František Kučera <franta-hg@frantovo.cz>
parents:
160
diff
changeset
|
170 |
A tool that converts relational data to its XML representation. |
989b1709a008
specification: relpipe-out-xml
František Kučera <franta-hg@frantovo.cz>
parents:
160
diff
changeset
|
171 |
Is useful for further processing in other tools (e.g. XSLT procesor that generates XHTML org other XML-based format) |
989b1709a008
specification: relpipe-out-xml
František Kučera <franta-hg@frantovo.cz>
parents:
160
diff
changeset
|
172 |
or for storage of relational data in a text form (good for version control systems, diff, manual editation or review). |
989b1709a008
specification: relpipe-out-xml
František Kučera <franta-hg@frantovo.cz>
parents:
160
diff
changeset
|
173 |
</p> |
989b1709a008
specification: relpipe-out-xml
František Kučera <franta-hg@frantovo.cz>
parents:
160
diff
changeset
|
174 |
|
162
f9185bc14b68
specification: relpipe-out-ods
František Kučera <franta-hg@frantovo.cz>
parents:
161
diff
changeset
|
175 |
<h3>relpipe-out-ods</h3> |
f9185bc14b68
specification: relpipe-out-ods
František Kučera <franta-hg@frantovo.cz>
parents:
161
diff
changeset
|
176 |
|
f9185bc14b68
specification: relpipe-out-ods
František Kučera <franta-hg@frantovo.cz>
parents:
161
diff
changeset
|
177 |
<p> |
f9185bc14b68
specification: relpipe-out-ods
František Kučera <franta-hg@frantovo.cz>
parents:
161
diff
changeset
|
178 |
A tool that converts relational data to its ODS (OpenDocument) representation resp. its <em>flat</em> variant (a single XML file instead of a ZIP containing many files). |
f9185bc14b68
specification: relpipe-out-ods
František Kučera <franta-hg@frantovo.cz>
parents:
161
diff
changeset
|
179 |
This OpenDocument output can be opened in tools like LibreOffice and further processed (add charts, calculations etc.). |
f9185bc14b68
specification: relpipe-out-ods
František Kučera <franta-hg@frantovo.cz>
parents:
161
diff
changeset
|
180 |
</p> |
f9185bc14b68
specification: relpipe-out-ods
František Kučera <franta-hg@frantovo.cz>
parents:
161
diff
changeset
|
181 |
|
228 | 182 |
<h3>relpipe-out-csv</h3> |
183 |
||
184 |
<p> |
|
185 |
A tool that convers relational data into the CSV format (comma-separated values). |
|
186 |
Makes sense only for a single relation because boundaries between relations will be lost if there are more of them. |
|
187 |
</p> |
|
188 |
||
176
46042297e0d6
relpipe-tr-validator: specification and examples
František Kučera <franta-hg@frantovo.cz>
parents:
162
diff
changeset
|
189 |
<h3>relpipe-tr-validator</h3> |
46042297e0d6
relpipe-tr-validator: specification and examples
František Kučera <franta-hg@frantovo.cz>
parents:
162
diff
changeset
|
190 |
|
46042297e0d6
relpipe-tr-validator: specification and examples
František Kučera <franta-hg@frantovo.cz>
parents:
162
diff
changeset
|
191 |
<p> |
46042297e0d6
relpipe-tr-validator: specification and examples
František Kučera <franta-hg@frantovo.cz>
parents:
162
diff
changeset
|
192 |
A tool that behaves like <code>cat</code>, <code>dd</code> or <code>pv</code> commands i.e. reads data from STDIN and outputs the same data on STDOUT. |
46042297e0d6
relpipe-tr-validator: specification and examples
František Kučera <franta-hg@frantovo.cz>
parents:
162
diff
changeset
|
193 |
But compared to these tools, data are parsed and then converted back to the <m:name/> format. |
46042297e0d6
relpipe-tr-validator: specification and examples
František Kučera <franta-hg@frantovo.cz>
parents:
162
diff
changeset
|
194 |
Thus if the input was not in this format, the process fails (exit code != 0). |
46042297e0d6
relpipe-tr-validator: specification and examples
František Kučera <franta-hg@frantovo.cz>
parents:
162
diff
changeset
|
195 |
Errors (if any) are reported on STDERR. |
46042297e0d6
relpipe-tr-validator: specification and examples
František Kučera <franta-hg@frantovo.cz>
parents:
162
diff
changeset
|
196 |
</p> |
46042297e0d6
relpipe-tr-validator: specification and examples
František Kučera <franta-hg@frantovo.cz>
parents:
162
diff
changeset
|
197 |
|
206
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
198 |
<h3>relpipe-tr-sed</h3> |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
199 |
|
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
200 |
<p> |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
201 |
A tool that modifies attribute values according to given regular expression and replacement string. |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
202 |
Works with given relations and attributes only (others stay untouched). |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
203 |
Relation and attribute name are also specified as a regular expression. |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
204 |
Thus single <code>relpipe-tr-sed</code> run may modify multiple relations or attributes. |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
205 |
</p> |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
206 |
|
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
207 |
<h3>relpipe-tr-grep</h3> |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
208 |
|
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
209 |
<p> |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
210 |
A tool that drops records (does restriction) according to their match to given regular expression. |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
211 |
Relation and attribute name are also specified as a regular expression. |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
212 |
Thus single <code>relpipe-tr-grep</code> run may modify multiple relations or do match on multiple attributes. |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
213 |
</p> |
0c05bdaeda34
specification: relpipe-tr-sed, relpipe-tr-grep
František Kučera <franta-hg@frantovo.cz>
parents:
184
diff
changeset
|
214 |
|
213
cbf25a63a43f
specification: relpipe-tr-cut
František Kučera <franta-hg@frantovo.cz>
parents:
206
diff
changeset
|
215 |
<h3>relpipe-tr-cut</h3> |
cbf25a63a43f
specification: relpipe-tr-cut
František Kučera <franta-hg@frantovo.cz>
parents:
206
diff
changeset
|
216 |
|
cbf25a63a43f
specification: relpipe-tr-cut
František Kučera <franta-hg@frantovo.cz>
parents:
206
diff
changeset
|
217 |
<p> |
cbf25a63a43f
specification: relpipe-tr-cut
František Kučera <franta-hg@frantovo.cz>
parents:
206
diff
changeset
|
218 |
A tool that drops or multiplies attributes or changes their order (does projection) according to their name match to given regular expression. |
cbf25a63a43f
specification: relpipe-tr-cut
František Kučera <franta-hg@frantovo.cz>
parents:
206
diff
changeset
|
219 |
Relation name is also specified as a regular expression and there might be multiple regexes specifying desired attributes. |
cbf25a63a43f
specification: relpipe-tr-cut
František Kučera <franta-hg@frantovo.cz>
parents:
206
diff
changeset
|
220 |
Thus single <code>relpipe-tr-cut</code> run may modify multiple relations or pick multiple attributes from them. |
cbf25a63a43f
specification: relpipe-tr-cut
František Kučera <franta-hg@frantovo.cz>
parents:
206
diff
changeset
|
221 |
</p> |
cbf25a63a43f
specification: relpipe-tr-cut
František Kučera <franta-hg@frantovo.cz>
parents:
206
diff
changeset
|
222 |
|
87
25dec6931f18
Lepší odsazení, tabulátory.
František Kučera <franta-hg@frantovo.cz>
parents:
23
diff
changeset
|
223 |
</text> |
4
1bb39595a51c
genrování hlavní nabídky #1
František Kučera <franta-hg@frantovo.cz>
parents:
2
diff
changeset
|
224 |
|
1 | 225 |
</stránka> |