1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
124
125
126
127
128
129
130
131
132
133
134
135
136
137
138
139
140
141
142
143
144
145
146
147
148
149
150
151
152
153
154
155
156
157
158
159
160
161
162
163
164
165
166
167
168
169
170
171
172
173
174
175
176
177
178
179
180
181
182
183
184
185
186
187
188
189
190
191
192
193
194
195
196
197
198
199
200
201
202
203
204
205
206
207
208
209
210
211
212
213
214
215
216
217
218
219
220
221
222
223
224
225
226
227
228
229
230
231
232
233
234
235
236
237
238
239
240
241
242
243
244
245
246
247
248
249
250
251
252
253
254
255
256
257
258
259
260
261
262
263
264
265
266
267
268
269
270
271
272
273
274
275
276
277
278
279
280
281
282
283
284
285
286
287
288
289
290
291
292
293
294
295
296
297
298
299
300
301
302
303
304
305
306
307
308
309
310
311
312
313
314
315
316
317
318
319
|
%global _empty_manifest_terminate_build 0
Name: python-dsp-tools
Version: 2.2.2
Release: 1
Summary: DSP-TOOLS is a Python package with a command line interface that helps you interact with a DaSCH service platform (DSP) server.
License: GPL-3.0-only
URL: https://www.dasch.swiss/
Source0: https://mirrors.nju.edu.cn/pypi/web/packages/2b/9b/26844ba5504db8e80a86f29cc1982467c76b432854b0b0597b3e67fc4c01/dsp_tools-2.2.2.tar.gz
BuildArch: noarch
Requires: python3-jsonpath-ng
Requires: python3-argparse
Requires: python3-lxml
Requires: python3-requests
Requires: python3-jsonschema
Requires: python3-openpyxl
Requires: python3-networkx
Requires: python3-pandas
Requires: python3-xlrd
Requires: python3-regex
%description
[](https://badge.fury.io/py/dsp-tools)
# DSP-TOOLS documentation
DSP-TOOLS is a Python package with a command line interface
that helps you interact with a DSP server.
A DSP server is a remote server or a local machine
where the [DSP-API](https://github.com/dasch-swiss/dsp-api) is running on.
To install the latest version, run:
```bash
pip3 install dsp-tools
```
To update to the latest version run:
```bash
pip3 install --upgrade dsp-tools
```
The two main tasks that DSP-TOOLS serves for are:
- **Create a project with its data model(s), described in a JSON file, on a DSP server**
In order to archive your data on the DaSCH Service Platform,
you need a data model that describes your data.
The data model is defined in a JSON project definition file
which has to be transmitted to the DSP server.
If the DSP server is aware of the data model for your project,
conforming data can be uploaded into the DSP repository.
- **Upload data, described in an XML file, to a DSP server that has a project with a matching data model**
Sometimes, data is added in large quantities.
Therefore, DSP-TOOLS allows you to perform bulk imports of your data.
In order to do so, the data has to be described in an XML file.
DSP-TOOLS is able to read the XML file
and upload all data to the DSP server.
All functionalities of DSP-TOOLS revolve around these two basic tasks.
DSP-TOOLS provides the following functionalities:
- [`dsp-tools create`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#create)
creates the project with its data model(s) on a DSP server from a JSON file.
- [`dsp-tools get`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands#get)
reads a project with its data model(s) from
a DSP server and writes it into a JSON file.
- [`dsp-tools xmlupload`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#xmlupload)
uploads data from an XML file (bulk data import)
and writes the mapping from internal IDs to IRIs into a local file.
- [`dsp-tools excel2json`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2json)
creates an entire JSON project file from a folder with Excel files in it.
- [`dsp-tools excel2lists`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2lists)
creates the "lists" section of a JSON project file from one or several Excel files.
The resulting section can be integrated into a JSON project file
and then be uploaded to a DSP server with `dsp-tools create`.
- [`dsp-tools excel2resources`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2resources)
creates the "resources" section of a JSON project file from an Excel file.
The resulting section can be integrated into a JSON project file
and then be uploaded to a DSP server with `dsp-tools create`.
- [`dsp-tools excel2properties`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2properties)
creates the "properties" section of a JSON project file from an Excel file.
The resulting section can be integrated into a JSON project file
and then be uploaded to a DSP server with `dsp-tools create`.
- [`dsp-tools excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2xml)
transforms a data source to XML
if it is already structured according to the DSP specifications.
- [The module `excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/excel2xml-module)
provides helper methods that can be used in a Python script
to convert data from a tabular format into XML.
- [`dsp-tools id2iri`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#id2iri)
takes an XML file for bulk data import and replaces referenced internal IDs with IRIs.
The mapping has to be provided with a JSON file.
- [`dsp-tools start-stack / stop-stack`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#start-stack)
assist you in running a DSP stack on your local machine.
- [`dsp-tools template`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#template)
creates a template repository with a minimal JSON and XML file.
- [`dsp-tools rosetta`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#rosetta)
clones the most up to data rosetta repository,
creates the data model and uploads the data.
%package -n python3-dsp-tools
Summary: DSP-TOOLS is a Python package with a command line interface that helps you interact with a DaSCH service platform (DSP) server.
Provides: python-dsp-tools
BuildRequires: python3-devel
BuildRequires: python3-setuptools
BuildRequires: python3-pip
%description -n python3-dsp-tools
[](https://badge.fury.io/py/dsp-tools)
# DSP-TOOLS documentation
DSP-TOOLS is a Python package with a command line interface
that helps you interact with a DSP server.
A DSP server is a remote server or a local machine
where the [DSP-API](https://github.com/dasch-swiss/dsp-api) is running on.
To install the latest version, run:
```bash
pip3 install dsp-tools
```
To update to the latest version run:
```bash
pip3 install --upgrade dsp-tools
```
The two main tasks that DSP-TOOLS serves for are:
- **Create a project with its data model(s), described in a JSON file, on a DSP server**
In order to archive your data on the DaSCH Service Platform,
you need a data model that describes your data.
The data model is defined in a JSON project definition file
which has to be transmitted to the DSP server.
If the DSP server is aware of the data model for your project,
conforming data can be uploaded into the DSP repository.
- **Upload data, described in an XML file, to a DSP server that has a project with a matching data model**
Sometimes, data is added in large quantities.
Therefore, DSP-TOOLS allows you to perform bulk imports of your data.
In order to do so, the data has to be described in an XML file.
DSP-TOOLS is able to read the XML file
and upload all data to the DSP server.
All functionalities of DSP-TOOLS revolve around these two basic tasks.
DSP-TOOLS provides the following functionalities:
- [`dsp-tools create`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#create)
creates the project with its data model(s) on a DSP server from a JSON file.
- [`dsp-tools get`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands#get)
reads a project with its data model(s) from
a DSP server and writes it into a JSON file.
- [`dsp-tools xmlupload`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#xmlupload)
uploads data from an XML file (bulk data import)
and writes the mapping from internal IDs to IRIs into a local file.
- [`dsp-tools excel2json`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2json)
creates an entire JSON project file from a folder with Excel files in it.
- [`dsp-tools excel2lists`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2lists)
creates the "lists" section of a JSON project file from one or several Excel files.
The resulting section can be integrated into a JSON project file
and then be uploaded to a DSP server with `dsp-tools create`.
- [`dsp-tools excel2resources`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2resources)
creates the "resources" section of a JSON project file from an Excel file.
The resulting section can be integrated into a JSON project file
and then be uploaded to a DSP server with `dsp-tools create`.
- [`dsp-tools excel2properties`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2properties)
creates the "properties" section of a JSON project file from an Excel file.
The resulting section can be integrated into a JSON project file
and then be uploaded to a DSP server with `dsp-tools create`.
- [`dsp-tools excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2xml)
transforms a data source to XML
if it is already structured according to the DSP specifications.
- [The module `excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/excel2xml-module)
provides helper methods that can be used in a Python script
to convert data from a tabular format into XML.
- [`dsp-tools id2iri`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#id2iri)
takes an XML file for bulk data import and replaces referenced internal IDs with IRIs.
The mapping has to be provided with a JSON file.
- [`dsp-tools start-stack / stop-stack`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#start-stack)
assist you in running a DSP stack on your local machine.
- [`dsp-tools template`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#template)
creates a template repository with a minimal JSON and XML file.
- [`dsp-tools rosetta`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#rosetta)
clones the most up to data rosetta repository,
creates the data model and uploads the data.
%package help
Summary: Development documents and examples for dsp-tools
Provides: python3-dsp-tools-doc
%description help
[](https://badge.fury.io/py/dsp-tools)
# DSP-TOOLS documentation
DSP-TOOLS is a Python package with a command line interface
that helps you interact with a DSP server.
A DSP server is a remote server or a local machine
where the [DSP-API](https://github.com/dasch-swiss/dsp-api) is running on.
To install the latest version, run:
```bash
pip3 install dsp-tools
```
To update to the latest version run:
```bash
pip3 install --upgrade dsp-tools
```
The two main tasks that DSP-TOOLS serves for are:
- **Create a project with its data model(s), described in a JSON file, on a DSP server**
In order to archive your data on the DaSCH Service Platform,
you need a data model that describes your data.
The data model is defined in a JSON project definition file
which has to be transmitted to the DSP server.
If the DSP server is aware of the data model for your project,
conforming data can be uploaded into the DSP repository.
- **Upload data, described in an XML file, to a DSP server that has a project with a matching data model**
Sometimes, data is added in large quantities.
Therefore, DSP-TOOLS allows you to perform bulk imports of your data.
In order to do so, the data has to be described in an XML file.
DSP-TOOLS is able to read the XML file
and upload all data to the DSP server.
All functionalities of DSP-TOOLS revolve around these two basic tasks.
DSP-TOOLS provides the following functionalities:
- [`dsp-tools create`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#create)
creates the project with its data model(s) on a DSP server from a JSON file.
- [`dsp-tools get`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands#get)
reads a project with its data model(s) from
a DSP server and writes it into a JSON file.
- [`dsp-tools xmlupload`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#xmlupload)
uploads data from an XML file (bulk data import)
and writes the mapping from internal IDs to IRIs into a local file.
- [`dsp-tools excel2json`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2json)
creates an entire JSON project file from a folder with Excel files in it.
- [`dsp-tools excel2lists`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2lists)
creates the "lists" section of a JSON project file from one or several Excel files.
The resulting section can be integrated into a JSON project file
and then be uploaded to a DSP server with `dsp-tools create`.
- [`dsp-tools excel2resources`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2resources)
creates the "resources" section of a JSON project file from an Excel file.
The resulting section can be integrated into a JSON project file
and then be uploaded to a DSP server with `dsp-tools create`.
- [`dsp-tools excel2properties`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2properties)
creates the "properties" section of a JSON project file from an Excel file.
The resulting section can be integrated into a JSON project file
and then be uploaded to a DSP server with `dsp-tools create`.
- [`dsp-tools excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#excel2xml)
transforms a data source to XML
if it is already structured according to the DSP specifications.
- [The module `excel2xml`](https://docs.dasch.swiss/latest/DSP-TOOLS/excel2xml-module)
provides helper methods that can be used in a Python script
to convert data from a tabular format into XML.
- [`dsp-tools id2iri`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#id2iri)
takes an XML file for bulk data import and replaces referenced internal IDs with IRIs.
The mapping has to be provided with a JSON file.
- [`dsp-tools start-stack / stop-stack`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#start-stack)
assist you in running a DSP stack on your local machine.
- [`dsp-tools template`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#template)
creates a template repository with a minimal JSON and XML file.
- [`dsp-tools rosetta`](https://docs.dasch.swiss/latest/DSP-TOOLS/cli-commands/#rosetta)
clones the most up to data rosetta repository,
creates the data model and uploads the data.
%prep
%autosetup -n dsp-tools-2.2.2
%build
%py3_build
%install
%py3_install
install -d -m755 %{buildroot}/%{_pkgdocdir}
if [ -d doc ]; then cp -arf doc %{buildroot}/%{_pkgdocdir}; fi
if [ -d docs ]; then cp -arf docs %{buildroot}/%{_pkgdocdir}; fi
if [ -d example ]; then cp -arf example %{buildroot}/%{_pkgdocdir}; fi
if [ -d examples ]; then cp -arf examples %{buildroot}/%{_pkgdocdir}; fi
pushd %{buildroot}
if [ -d usr/lib ]; then
find usr/lib -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/lib64 ]; then
find usr/lib64 -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/bin ]; then
find usr/bin -type f -printf "/%h/%f\n" >> filelist.lst
fi
if [ -d usr/sbin ]; then
find usr/sbin -type f -printf "/%h/%f\n" >> filelist.lst
fi
touch doclist.lst
if [ -d usr/share/man ]; then
find usr/share/man -type f -printf "/%h/%f.gz\n" >> doclist.lst
fi
popd
mv %{buildroot}/filelist.lst .
mv %{buildroot}/doclist.lst .
%files -n python3-dsp-tools -f filelist.lst
%dir %{python3_sitelib}/*
%files help -f doclist.lst
%{_docdir}/*
%changelog
* Mon May 15 2023 Python_Bot <Python_Bot@openeuler.org> - 2.2.2-1
- Package Spec generated
|