diff options
author | CoprDistGit <infra@openeuler.org> | 2023-04-10 12:30:23 +0000 |
---|---|---|
committer | CoprDistGit <infra@openeuler.org> | 2023-04-10 12:30:23 +0000 |
commit | fd7c498c6927e2d7f3be0cc041b65d41f7b956c9 (patch) | |
tree | 8b2668fa25e3323f8d084629b5330ca43f7c9aa0 | |
parent | d56a9e8b5232e9d3051347ac864fa70364510a49 (diff) |
automatic import of python-cow-csvw
-rw-r--r-- | .gitignore | 1 | ||||
-rw-r--r-- | python-cow-csvw.spec | 522 | ||||
-rw-r--r-- | sources | 1 |
3 files changed, 524 insertions, 0 deletions
@@ -0,0 +1 @@ +/cow_csvw-1.21.tar.gz diff --git a/python-cow-csvw.spec b/python-cow-csvw.spec new file mode 100644 index 0000000..b51e06e --- /dev/null +++ b/python-cow-csvw.spec @@ -0,0 +1,522 @@ +%global _empty_manifest_terminate_build 0 +Name: python-cow-csvw +Version: 1.21 +Release: 1 +Summary: Integrated CSV to RDF converter, using CSVW and nanopublications +License: MIT +URL: https://github.com/CLARIAH/COW +Source0: https://mirrors.nju.edu.cn/pypi/web/packages/8d/c4/96a4c09c6fef23cf46ea16f38ce46ef72831685140950207e4006e43828b/cow_csvw-1.21.tar.gz +BuildArch: noarch + + +%description +## CoW: Integrated CSV to RDF Converter + +> CoW (Csv on the Web) is an integrated CSV to RDF converter that uses the W3C standard [CSVW](https://www.w3.org/TR/tabular-data-primer/) for rich semantic table specificatons, and [nanopublications](http://nanopub.org/) as an output RDF model + + + +### What is CoW + +CoW is a command-line utility to convert any CSV file into an RDF dataset. Its distinctive features are: + +- Expressive CSVW-compatible schemas based on the [Jinja](https://github.com/pallets/jinja) template enginge +- Highly efficient implementation leveraging multithreaded and multicore architectures +- Available as a pythonic [CLI tool](#cli), [library](#library), and [web service](#web-service) +- Supports Python 3 + +### Documentation and support +For user documentation see the basic introduction video https://t.co/SDWC3NhWZf and [wiki](https://github.com/clariah/cow/wiki/). Technical details are provided below. If you encounter an issue then please [report](https://github.com/CLARIAH/COW/issues/new/choose) it. Also feel free to create pull requests! + +### Install (requires Python to be installed) + +`pip3` is the recommended method of installing COW in your system: + +``` +pip3 install cow-csvw +``` + +You can upgrade your currently installed version with: + +``` +pip3 install cow-csvw --upgrade +``` + +Possible issues: + +- Permission issues. You can get around them by installing CoW in user space: `pip3 install cow-csvw --user`. Make sure your binary user directory (typically something like `/Users/user/Library/Python/3.7/bin` in MacOS or `/home/user/.local/bin` in Linux) is in your PATH (in MacOS: `/etc/paths`. For Windows/MacOS we recommend to install Python via the [official distribution page](https://www.python.org/downloads/). You can also use [virtualenv](https://virtualenv.pypa.io/en/latest/) to avoid conflicts with your system libraries +- Please [report your unlisted issue](https://github.com/CLARIAH/CoW/issues/new) + +If you can't/don't want to deal with installing CoW, you can use the [cattle](http://cattle.datalegend.net/) [web service version](#web-service) (deprecated). + +### Usage + +#### CLI + +The CLI (command line interface) is the recommended way of using CoW for most users. The straightforward CSV to RDF conversion is done in two steps. First: + +``` +cow_tool build myfile.csv +``` + +This will create a file named `myfile.csv-metadata.json` (from now on: JSON schema file or just JSF). You don't need to worry about this file if you only want a syntactic conversion. Then: + +``` +cow_tool convert myfile.csv +``` + +Will output a `myfile.csv.nq` RDF file (nquads by default; you can control the output RDF serialization with e.g. ``--format turtle``). That's it! + +If you want to control the base URI namespace, URIs used in predicates, virtual columns, and the many other features of CoW, you'll need to edit the `myfile.csv-metadata.json` JSF and/or use CoW arguments. Have a look at the [CLI options](#options) below, the examples in the [wiki](https://github.com/CLARIAH/CoW/wiki), and the [technical documentation](http://csvw-converter.readthedocs.io/en/latest/). + +##### Options + +Check the ``--help`` for a complete list of options: + +``` +usage: cow_tool [-h] [--dataset DATASET] [--delimiter DELIMITER] + [--quotechar QUOTECHAR] [--encoding ENCODING] [--processes PROCESSES] + [--chunksize CHUNKSIZE] [--base BASE] + [--format [{xml,n3,turtle,nt,pretty-xml,trix,trig,nquads}]] + [--gzip] [--version] + {convert,build} file [file ...] + +Not nearly CSVW compliant schema builder and RDF converter + +positional arguments: + {convert,build} Use the schema of the `file` specified to convert it + to RDF, or build a schema from scratch. + file Path(s) of the file(s) that should be used for + building or converting. Must be a CSV file. + +optional arguments: + -h, --help show this help message and exit + --dataset DATASET A short name (slug) for the name of the dataset (will + use input file name if not specified) + --delimiter DELIMITER + The delimiter used in the CSV file(s) + --quotechar QUOTECHAR + The character used as quotation character in the CSV + file(s) + --encoding ENCODING The character encoding used in the CSV file(s) + + --processes PROCESSES + The number of processes the converter should use + --chunksize CHUNKSIZE + The number of rows processed at each time + --base BASE The base for URIs generated with the schema (only + relevant when `build`ing a schema) + --gzip Compress the output file using gzip + --format [{xml,n3,turtle,nt,pretty-xml,trix,trig,nquads}], -f [{xml,n3,turtle,nt,pretty-xml,trix,trig,nquads}] + RDF serialization format + --version show program's version number and exit +``` + +#### Web service + +There is web service and interface running CoW, called [cattle](http://cattle.datalegend.net/). Two public instances are running at: + +- http://cattle.datalegend.net/ - runs CoW in Python3 +- http://legacy.cattle.datalegend.net/ - runs CoW in Python2 for legacy reasons + +Beware of the web service limitations: + +- There's a limit to the size of the CSVs you can upload +- It's a public instance, so your conversion could take longer +- Cattle is no longer being maintained and these public instances will eventually be taken offline + +#### Library + +Once installed, CoW can be used as a library as follows: + +``` +from cow_csvw.csvw_tool import COW +import os + +COW(mode='build', files=[os.path.join(path, filename)], dataset='My dataset', delimiter=';', quotechar='\"') + +COW(mode='convert', files=[os.path.join(path, filename)], dataset='My dataset', delimiter=';', quotechar='\"', processes=4, chunksize=100, base='http://example.org/my-dataset', format='turtle', gzipped=False) +``` + +### Technical documentation + +Technical documentation for CoW are maintained in this GitHub repository (under <docs>), and published through [Read the Docs](http://readthedocs.org) at <http://csvw-converter.readthedocs.io/en/latest/>. + +To build the documentation from source, change into the `docs` directory, and run `make html`. This should produce an HTML version of the documentation in the `_build/html` directory. + +### Examples + +The [wiki](https://github.com/CLARIAH/COW/wiki) provides more hands-on examples of transposing CSVs into Linked Data + +### License + +MIT License (see [license.txt](license.txt)) + +### Acknowledgements + +**Authors:** Albert Meroño-Peñuela, Roderick van der Weerdt, Rinke Hoekstra, Kathrin Dentler, Auke Rijpma, Richard Zijdeman, Melvin Roest, Xander Wilcke + +**Copyright:** Vrije Universiteit Amsterdam, Utrecht University, International Institute of Social History + + +CoW is developed and maintained by the CLARIAH project and funded by NWO. + + +%package -n python3-cow-csvw +Summary: Integrated CSV to RDF converter, using CSVW and nanopublications +Provides: python-cow-csvw +BuildRequires: python3-devel +BuildRequires: python3-setuptools +BuildRequires: python3-pip +%description -n python3-cow-csvw +## CoW: Integrated CSV to RDF Converter + +> CoW (Csv on the Web) is an integrated CSV to RDF converter that uses the W3C standard [CSVW](https://www.w3.org/TR/tabular-data-primer/) for rich semantic table specificatons, and [nanopublications](http://nanopub.org/) as an output RDF model + + + +### What is CoW + +CoW is a command-line utility to convert any CSV file into an RDF dataset. Its distinctive features are: + +- Expressive CSVW-compatible schemas based on the [Jinja](https://github.com/pallets/jinja) template enginge +- Highly efficient implementation leveraging multithreaded and multicore architectures +- Available as a pythonic [CLI tool](#cli), [library](#library), and [web service](#web-service) +- Supports Python 3 + +### Documentation and support +For user documentation see the basic introduction video https://t.co/SDWC3NhWZf and [wiki](https://github.com/clariah/cow/wiki/). Technical details are provided below. If you encounter an issue then please [report](https://github.com/CLARIAH/COW/issues/new/choose) it. Also feel free to create pull requests! + +### Install (requires Python to be installed) + +`pip3` is the recommended method of installing COW in your system: + +``` +pip3 install cow-csvw +``` + +You can upgrade your currently installed version with: + +``` +pip3 install cow-csvw --upgrade +``` + +Possible issues: + +- Permission issues. You can get around them by installing CoW in user space: `pip3 install cow-csvw --user`. Make sure your binary user directory (typically something like `/Users/user/Library/Python/3.7/bin` in MacOS or `/home/user/.local/bin` in Linux) is in your PATH (in MacOS: `/etc/paths`. For Windows/MacOS we recommend to install Python via the [official distribution page](https://www.python.org/downloads/). You can also use [virtualenv](https://virtualenv.pypa.io/en/latest/) to avoid conflicts with your system libraries +- Please [report your unlisted issue](https://github.com/CLARIAH/CoW/issues/new) + +If you can't/don't want to deal with installing CoW, you can use the [cattle](http://cattle.datalegend.net/) [web service version](#web-service) (deprecated). + +### Usage + +#### CLI + +The CLI (command line interface) is the recommended way of using CoW for most users. The straightforward CSV to RDF conversion is done in two steps. First: + +``` +cow_tool build myfile.csv +``` + +This will create a file named `myfile.csv-metadata.json` (from now on: JSON schema file or just JSF). You don't need to worry about this file if you only want a syntactic conversion. Then: + +``` +cow_tool convert myfile.csv +``` + +Will output a `myfile.csv.nq` RDF file (nquads by default; you can control the output RDF serialization with e.g. ``--format turtle``). That's it! + +If you want to control the base URI namespace, URIs used in predicates, virtual columns, and the many other features of CoW, you'll need to edit the `myfile.csv-metadata.json` JSF and/or use CoW arguments. Have a look at the [CLI options](#options) below, the examples in the [wiki](https://github.com/CLARIAH/CoW/wiki), and the [technical documentation](http://csvw-converter.readthedocs.io/en/latest/). + +##### Options + +Check the ``--help`` for a complete list of options: + +``` +usage: cow_tool [-h] [--dataset DATASET] [--delimiter DELIMITER] + [--quotechar QUOTECHAR] [--encoding ENCODING] [--processes PROCESSES] + [--chunksize CHUNKSIZE] [--base BASE] + [--format [{xml,n3,turtle,nt,pretty-xml,trix,trig,nquads}]] + [--gzip] [--version] + {convert,build} file [file ...] + +Not nearly CSVW compliant schema builder and RDF converter + +positional arguments: + {convert,build} Use the schema of the `file` specified to convert it + to RDF, or build a schema from scratch. + file Path(s) of the file(s) that should be used for + building or converting. Must be a CSV file. + +optional arguments: + -h, --help show this help message and exit + --dataset DATASET A short name (slug) for the name of the dataset (will + use input file name if not specified) + --delimiter DELIMITER + The delimiter used in the CSV file(s) + --quotechar QUOTECHAR + The character used as quotation character in the CSV + file(s) + --encoding ENCODING The character encoding used in the CSV file(s) + + --processes PROCESSES + The number of processes the converter should use + --chunksize CHUNKSIZE + The number of rows processed at each time + --base BASE The base for URIs generated with the schema (only + relevant when `build`ing a schema) + --gzip Compress the output file using gzip + --format [{xml,n3,turtle,nt,pretty-xml,trix,trig,nquads}], -f [{xml,n3,turtle,nt,pretty-xml,trix,trig,nquads}] + RDF serialization format + --version show program's version number and exit +``` + +#### Web service + +There is web service and interface running CoW, called [cattle](http://cattle.datalegend.net/). Two public instances are running at: + +- http://cattle.datalegend.net/ - runs CoW in Python3 +- http://legacy.cattle.datalegend.net/ - runs CoW in Python2 for legacy reasons + +Beware of the web service limitations: + +- There's a limit to the size of the CSVs you can upload +- It's a public instance, so your conversion could take longer +- Cattle is no longer being maintained and these public instances will eventually be taken offline + +#### Library + +Once installed, CoW can be used as a library as follows: + +``` +from cow_csvw.csvw_tool import COW +import os + +COW(mode='build', files=[os.path.join(path, filename)], dataset='My dataset', delimiter=';', quotechar='\"') + +COW(mode='convert', files=[os.path.join(path, filename)], dataset='My dataset', delimiter=';', quotechar='\"', processes=4, chunksize=100, base='http://example.org/my-dataset', format='turtle', gzipped=False) +``` + +### Technical documentation + +Technical documentation for CoW are maintained in this GitHub repository (under <docs>), and published through [Read the Docs](http://readthedocs.org) at <http://csvw-converter.readthedocs.io/en/latest/>. + +To build the documentation from source, change into the `docs` directory, and run `make html`. This should produce an HTML version of the documentation in the `_build/html` directory. + +### Examples + +The [wiki](https://github.com/CLARIAH/COW/wiki) provides more hands-on examples of transposing CSVs into Linked Data + +### License + +MIT License (see [license.txt](license.txt)) + +### Acknowledgements + +**Authors:** Albert Meroño-Peñuela, Roderick van der Weerdt, Rinke Hoekstra, Kathrin Dentler, Auke Rijpma, Richard Zijdeman, Melvin Roest, Xander Wilcke + +**Copyright:** Vrije Universiteit Amsterdam, Utrecht University, International Institute of Social History + + +CoW is developed and maintained by the CLARIAH project and funded by NWO. + + +%package help +Summary: Development documents and examples for cow-csvw +Provides: python3-cow-csvw-doc +%description help +## CoW: Integrated CSV to RDF Converter + +> CoW (Csv on the Web) is an integrated CSV to RDF converter that uses the W3C standard [CSVW](https://www.w3.org/TR/tabular-data-primer/) for rich semantic table specificatons, and [nanopublications](http://nanopub.org/) as an output RDF model + + + +### What is CoW + +CoW is a command-line utility to convert any CSV file into an RDF dataset. Its distinctive features are: + +- Expressive CSVW-compatible schemas based on the [Jinja](https://github.com/pallets/jinja) template enginge +- Highly efficient implementation leveraging multithreaded and multicore architectures +- Available as a pythonic [CLI tool](#cli), [library](#library), and [web service](#web-service) +- Supports Python 3 + +### Documentation and support +For user documentation see the basic introduction video https://t.co/SDWC3NhWZf and [wiki](https://github.com/clariah/cow/wiki/). Technical details are provided below. If you encounter an issue then please [report](https://github.com/CLARIAH/COW/issues/new/choose) it. Also feel free to create pull requests! + +### Install (requires Python to be installed) + +`pip3` is the recommended method of installing COW in your system: + +``` +pip3 install cow-csvw +``` + +You can upgrade your currently installed version with: + +``` +pip3 install cow-csvw --upgrade +``` + +Possible issues: + +- Permission issues. You can get around them by installing CoW in user space: `pip3 install cow-csvw --user`. Make sure your binary user directory (typically something like `/Users/user/Library/Python/3.7/bin` in MacOS or `/home/user/.local/bin` in Linux) is in your PATH (in MacOS: `/etc/paths`. For Windows/MacOS we recommend to install Python via the [official distribution page](https://www.python.org/downloads/). You can also use [virtualenv](https://virtualenv.pypa.io/en/latest/) to avoid conflicts with your system libraries +- Please [report your unlisted issue](https://github.com/CLARIAH/CoW/issues/new) + +If you can't/don't want to deal with installing CoW, you can use the [cattle](http://cattle.datalegend.net/) [web service version](#web-service) (deprecated). + +### Usage + +#### CLI + +The CLI (command line interface) is the recommended way of using CoW for most users. The straightforward CSV to RDF conversion is done in two steps. First: + +``` +cow_tool build myfile.csv +``` + +This will create a file named `myfile.csv-metadata.json` (from now on: JSON schema file or just JSF). You don't need to worry about this file if you only want a syntactic conversion. Then: + +``` +cow_tool convert myfile.csv +``` + +Will output a `myfile.csv.nq` RDF file (nquads by default; you can control the output RDF serialization with e.g. ``--format turtle``). That's it! + +If you want to control the base URI namespace, URIs used in predicates, virtual columns, and the many other features of CoW, you'll need to edit the `myfile.csv-metadata.json` JSF and/or use CoW arguments. Have a look at the [CLI options](#options) below, the examples in the [wiki](https://github.com/CLARIAH/CoW/wiki), and the [technical documentation](http://csvw-converter.readthedocs.io/en/latest/). + +##### Options + +Check the ``--help`` for a complete list of options: + +``` +usage: cow_tool [-h] [--dataset DATASET] [--delimiter DELIMITER] + [--quotechar QUOTECHAR] [--encoding ENCODING] [--processes PROCESSES] + [--chunksize CHUNKSIZE] [--base BASE] + [--format [{xml,n3,turtle,nt,pretty-xml,trix,trig,nquads}]] + [--gzip] [--version] + {convert,build} file [file ...] + +Not nearly CSVW compliant schema builder and RDF converter + +positional arguments: + {convert,build} Use the schema of the `file` specified to convert it + to RDF, or build a schema from scratch. + file Path(s) of the file(s) that should be used for + building or converting. Must be a CSV file. + +optional arguments: + -h, --help show this help message and exit + --dataset DATASET A short name (slug) for the name of the dataset (will + use input file name if not specified) + --delimiter DELIMITER + The delimiter used in the CSV file(s) + --quotechar QUOTECHAR + The character used as quotation character in the CSV + file(s) + --encoding ENCODING The character encoding used in the CSV file(s) + + --processes PROCESSES + The number of processes the converter should use + --chunksize CHUNKSIZE + The number of rows processed at each time + --base BASE The base for URIs generated with the schema (only + relevant when `build`ing a schema) + --gzip Compress the output file using gzip + --format [{xml,n3,turtle,nt,pretty-xml,trix,trig,nquads}], -f [{xml,n3,turtle,nt,pretty-xml,trix,trig,nquads}] + RDF serialization format + --version show program's version number and exit +``` + +#### Web service + +There is web service and interface running CoW, called [cattle](http://cattle.datalegend.net/). Two public instances are running at: + +- http://cattle.datalegend.net/ - runs CoW in Python3 +- http://legacy.cattle.datalegend.net/ - runs CoW in Python2 for legacy reasons + +Beware of the web service limitations: + +- There's a limit to the size of the CSVs you can upload +- It's a public instance, so your conversion could take longer +- Cattle is no longer being maintained and these public instances will eventually be taken offline + +#### Library + +Once installed, CoW can be used as a library as follows: + +``` +from cow_csvw.csvw_tool import COW +import os + +COW(mode='build', files=[os.path.join(path, filename)], dataset='My dataset', delimiter=';', quotechar='\"') + +COW(mode='convert', files=[os.path.join(path, filename)], dataset='My dataset', delimiter=';', quotechar='\"', processes=4, chunksize=100, base='http://example.org/my-dataset', format='turtle', gzipped=False) +``` + +### Technical documentation + +Technical documentation for CoW are maintained in this GitHub repository (under <docs>), and published through [Read the Docs](http://readthedocs.org) at <http://csvw-converter.readthedocs.io/en/latest/>. + +To build the documentation from source, change into the `docs` directory, and run `make html`. This should produce an HTML version of the documentation in the `_build/html` directory. + +### Examples + +The [wiki](https://github.com/CLARIAH/COW/wiki) provides more hands-on examples of transposing CSVs into Linked Data + +### License + +MIT License (see [license.txt](license.txt)) + +### Acknowledgements + +**Authors:** Albert Meroño-Peñuela, Roderick van der Weerdt, Rinke Hoekstra, Kathrin Dentler, Auke Rijpma, Richard Zijdeman, Melvin Roest, Xander Wilcke + +**Copyright:** Vrije Universiteit Amsterdam, Utrecht University, International Institute of Social History + + +CoW is developed and maintained by the CLARIAH project and funded by NWO. + + +%prep +%autosetup -n cow-csvw-1.21 + +%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-cow-csvw -f filelist.lst +%dir %{python3_sitelib}/* + +%files help -f doclist.lst +%{_docdir}/* + +%changelog +* Mon Apr 10 2023 Python_Bot <Python_Bot@openeuler.org> - 1.21-1 +- Package Spec generated @@ -0,0 +1 @@ +611568a8fbceb4a2f9f54ce50147415d cow_csvw-1.21.tar.gz |