[](https://github.com/SETI/rms-pds4indextools/releases)
[](https://github.com/SETI/rms-pds4indextools/releases)
[](https://github.com/SETI/rms-pds4indextools/actions)
[](https://rms-pds4indextools.readthedocs.io/en/latest/?badge=latest)
[](https://codecov.io/gh/SETI/rms-pds4indextools)
<br />
[](https://pypi.org/project/rms-pds4indextools)
[](https://pypi.org/project/rms-pds4indextools)
[](https://pypi.org/project/rms-pds4indextools)
[](https://pypi.org/project/rms-pds4indextools)
<br />
[](https://github.com/SETI/rms-pds4indextools/commits/main/)
[](https://github.com/SETI/rms-pds4indextools/commits/main/)
[](https://github.com/SETI/rms-pds4indextools/commits/main/)
<br />
[](https://github.com/SETI/rms-pds4indextools/issues)
[](https://github.com/SETI/rms-pds4indextools/issues)
[](https://github.com/SETI/rms-pds4indextools/pulls)
[](https://github.com/SETI/rms-pds4indextools/pulls)
<br />

[](https://github.com/SETI/rms-pds4indextools/stargazers)

# Introduction
`pds4indextools` is a set of programs and modules for parsing PDS4 XML labels.
They were created and are maintained by the [Ring-Moon Systems Node](https://pds-rings.seti.org)
of NASA's [Planetary Data System (PDS)](https://pds.nasa.gov).
The following tools are currently available:
- [`pds4_create_xml_index`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_xml_index.html):
A command-line program to scrape all metadata information from a series of PDS4 XML
labels, usually in a single collection, and generate a summary index file. Such summary
index files may be optionally provided as part of a PDS4 delivery by a data provider,
or may be created by end users to aid in their searching and processing of PDS4
data products.
- [`pds4_create_collection_product`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_collection_product.html):
A command-line program to create a collection product from a collection of PDS4 XML
labels. Collection products are a required part of PDS4 collections and are created by
data providers.
# Installation
`pds4indextools` is available via the `rms-pds4indextools` package on PyPI and
can be installed with:
```sh
pip install rms-pds4indextools
```
Note that this will install `pds4indextools` into your current system Python, or into your
currently activated virtual environment (venv), if any.
If you already have the `rms-pds4indextools` package installed but wish to upgrade to a
more recent version, you can use:
```sh
pip install --upgrade rms-pds4indextools
```
You may also install the index tools using `pipx`, which will isolate the installation
from your system Python without requiring the creation of a virtual environment. To
install `pipx`, please see the [installation
instructions](https://pipx.pypa.io/stable/installation/). Once `pipx` is available, you
may install `pds4indextools` with:
```sh
pipx install rms-pds4indextools
```
If you already have the `rms-pds4indextools` package installed with `pipx`, you may
upgrade to a more recent version with:
```sh
pipx upgrade rms-pds4indextools
```
# Getting Started With [`pds4_create_xml_index`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_xml_index.html)
Once `pds4indextools` has been installed, you may access the
[`pds4_create_xml_index`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_xml_index.html)
program directly from the command line.
The simplest use scrapes all metadata from all XML labels in a collection and generates an
index file:
```sh
pds4_create_xml_index <collection_dir> "**/*.xml"
```
Many options are available to customize the scraping and generation process, including
limiting which XML elements are scraped, changing the format of the resulting index file,
and generating a PDS4-compliant label. A summary of available options is available
by typing:
```sh
pds4_create_xml_index --help
```
Complete documentation is available [here](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_xml_index.html)
# Getting Started With [`pds4_create_collection_product`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_collection_product.html)
Once `pds4indextools` has been installed, you may access the
[`pds4_create_collection_product`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_collection_product.html)
program directly from the command line.
The simplest use scrapes all XML labels from a collection and generates a collection product:
```sh
pds4_create_collection_product <collection_dir> --bundle bundle_name --collection collection_name
```
This will generate a collection product called ``collection_<collection_name>.csv`` in the
given collection directory. Full instructions on usage can be found here:
```sh
pds4_create_collection_product --help
```
Complete documentation is available [here](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_collection_product.html)
# Contributing
Information on contributing to this package can be found in the
[Contributing Guide](https://github.com/SETI/rms-pds4indextools/blob/main/CONTRIBUTING.md).
# Links
- [Documentation](https://rms-pds4indextools.readthedocs.io)
- [Repository](https://github.com/SETI/rms-pds4indextools)
- [Issue tracker](https://github.com/SETI/rms-pds4indextools/issues)
- [PyPi](https://pypi.org/project/rms-pds4indextools)
# Licensing
This code is licensed under the [Apache License v2.0](https://github.com/SETI/rms-pds4indextools/blob/main/LICENSE).
Raw data
{
"_id": null,
"home_page": null,
"name": "rms-pds4indextools",
"maintainer": null,
"docs_url": null,
"requires_python": ">=3.9",
"maintainer_email": "\"Emilie R. Simpson\" <esimpson@seti.org>",
"keywords": "pds4indextools",
"author": null,
"author_email": null,
"download_url": "https://files.pythonhosted.org/packages/ae/b0/6255d17ed570e6a07abf182bf73ae52cafe4320008fccf8a8e9e84ccbbe3/rms_pds4indextools-1.2.1.tar.gz",
"platform": null,
"description": "[](https://github.com/SETI/rms-pds4indextools/releases)\n[](https://github.com/SETI/rms-pds4indextools/releases)\n[](https://github.com/SETI/rms-pds4indextools/actions)\n[](https://rms-pds4indextools.readthedocs.io/en/latest/?badge=latest)\n[](https://codecov.io/gh/SETI/rms-pds4indextools)\n<br />\n[](https://pypi.org/project/rms-pds4indextools)\n[](https://pypi.org/project/rms-pds4indextools)\n[](https://pypi.org/project/rms-pds4indextools)\n[](https://pypi.org/project/rms-pds4indextools)\n<br />\n[](https://github.com/SETI/rms-pds4indextools/commits/main/)\n[](https://github.com/SETI/rms-pds4indextools/commits/main/)\n[](https://github.com/SETI/rms-pds4indextools/commits/main/)\n<br />\n[](https://github.com/SETI/rms-pds4indextools/issues)\n[](https://github.com/SETI/rms-pds4indextools/issues)\n[](https://github.com/SETI/rms-pds4indextools/pulls)\n[](https://github.com/SETI/rms-pds4indextools/pulls)\n<br />\n\n[](https://github.com/SETI/rms-pds4indextools/stargazers)\n\n\n# Introduction\n\n`pds4indextools` is a set of programs and modules for parsing PDS4 XML labels.\nThey were created and are maintained by the [Ring-Moon Systems Node](https://pds-rings.seti.org)\nof NASA's [Planetary Data System (PDS)](https://pds.nasa.gov).\n\nThe following tools are currently available:\n\n- [`pds4_create_xml_index`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_xml_index.html):\n A command-line program to scrape all metadata information from a series of PDS4 XML\n labels, usually in a single collection, and generate a summary index file. Such summary\n index files may be optionally provided as part of a PDS4 delivery by a data provider,\n or may be created by end users to aid in their searching and processing of PDS4\n data products.\n- [`pds4_create_collection_product`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_collection_product.html):\n A command-line program to create a collection product from a collection of PDS4 XML\n labels. Collection products are a required part of PDS4 collections and are created by\n data providers.\n\n# Installation\n\n`pds4indextools` is available via the `rms-pds4indextools` package on PyPI and\ncan be installed with:\n\n```sh\npip install rms-pds4indextools\n```\n\nNote that this will install `pds4indextools` into your current system Python, or into your\ncurrently activated virtual environment (venv), if any.\n\nIf you already have the `rms-pds4indextools` package installed but wish to upgrade to a\nmore recent version, you can use:\n\n```sh\npip install --upgrade rms-pds4indextools\n```\n\nYou may also install the index tools using `pipx`, which will isolate the installation\nfrom your system Python without requiring the creation of a virtual environment. To\ninstall `pipx`, please see the [installation\ninstructions](https://pipx.pypa.io/stable/installation/). Once `pipx` is available, you\nmay install `pds4indextools` with:\n\n```sh\npipx install rms-pds4indextools\n```\n\nIf you already have the `rms-pds4indextools` package installed with `pipx`, you may\nupgrade to a more recent version with:\n\n```sh\npipx upgrade rms-pds4indextools\n```\n\n# Getting Started With [`pds4_create_xml_index`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_xml_index.html)\n\nOnce `pds4indextools` has been installed, you may access the\n[`pds4_create_xml_index`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_xml_index.html)\nprogram directly from the command line.\n\nThe simplest use scrapes all metadata from all XML labels in a collection and generates an\nindex file:\n\n```sh\npds4_create_xml_index <collection_dir> \"**/*.xml\"\n```\n\nMany options are available to customize the scraping and generation process, including\nlimiting which XML elements are scraped, changing the format of the resulting index file,\nand generating a PDS4-compliant label. A summary of available options is available\nby typing:\n\n```sh\npds4_create_xml_index --help\n```\n\nComplete documentation is available [here](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_xml_index.html)\n\n\n# Getting Started With [`pds4_create_collection_product`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_collection_product.html)\n\nOnce `pds4indextools` has been installed, you may access the\n[`pds4_create_collection_product`](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_collection_product.html)\nprogram directly from the command line.\n\nThe simplest use scrapes all XML labels from a collection and generates a collection product:\n\n```sh\npds4_create_collection_product <collection_dir> --bundle bundle_name --collection collection_name\n```\n\nThis will generate a collection product called ``collection_<collection_name>.csv`` in the\ngiven collection directory. Full instructions on usage can be found here:\n\n```sh\npds4_create_collection_product --help\n```\n\nComplete documentation is available [here](https://rms-pds4indextools.readthedocs.io/en/latest/pds4_create_collection_product.html)\n\n\n# Contributing\n\nInformation on contributing to this package can be found in the\n[Contributing Guide](https://github.com/SETI/rms-pds4indextools/blob/main/CONTRIBUTING.md).\n\n# Links\n\n- [Documentation](https://rms-pds4indextools.readthedocs.io)\n- [Repository](https://github.com/SETI/rms-pds4indextools)\n- [Issue tracker](https://github.com/SETI/rms-pds4indextools/issues)\n- [PyPi](https://pypi.org/project/rms-pds4indextools)\n\n# Licensing\n\nThis code is licensed under the [Apache License v2.0](https://github.com/SETI/rms-pds4indextools/blob/main/LICENSE).\n",
"bugtrack_url": null,
"license": "Apache-2.0",
"summary": "pds4indextools",
"version": "1.2.1",
"project_urls": {
"Documentation": "https://rms-pds4indextools.readthedocs.io/en/latest",
"Homepage": "https://github.com/SETI/rms-pds4indextools",
"Issues": "https://github.com/SETI/rms-pds4indextools/issues",
"Repository": "https://github.com/SETI/rms-pds4indextools",
"Source": "https://github.com/SETI/rms-pds4indextools"
},
"split_keywords": [
"pds4indextools"
],
"urls": [
{
"comment_text": "",
"digests": {
"blake2b_256": "3c2ca9542179fb2971f123cab2246c4a492cde6afd05420104ae76cb2f664f75",
"md5": "39485924aebf7ce36ffe7177192009ad",
"sha256": "da366ba5e29c48b3264eb2ef05a1be107672043c82a25a16db9b2d976e16b211"
},
"downloads": -1,
"filename": "rms_pds4indextools-1.2.1-py3-none-any.whl",
"has_sig": false,
"md5_digest": "39485924aebf7ce36ffe7177192009ad",
"packagetype": "bdist_wheel",
"python_version": "py3",
"requires_python": ">=3.9",
"size": 29171,
"upload_time": "2024-12-17T19:37:08",
"upload_time_iso_8601": "2024-12-17T19:37:08.722332Z",
"url": "https://files.pythonhosted.org/packages/3c/2c/a9542179fb2971f123cab2246c4a492cde6afd05420104ae76cb2f664f75/rms_pds4indextools-1.2.1-py3-none-any.whl",
"yanked": false,
"yanked_reason": null
},
{
"comment_text": "",
"digests": {
"blake2b_256": "aeb06255d17ed570e6a07abf182bf73ae52cafe4320008fccf8a8e9e84ccbbe3",
"md5": "d8079cff862c47750332e828f08170bf",
"sha256": "501799305874c353148d705afaf0cad29add3dd8e97ebc6d9e1fa8f555b786c8"
},
"downloads": -1,
"filename": "rms_pds4indextools-1.2.1.tar.gz",
"has_sig": false,
"md5_digest": "d8079cff862c47750332e828f08170bf",
"packagetype": "sdist",
"python_version": "source",
"requires_python": ">=3.9",
"size": 78194,
"upload_time": "2024-12-17T19:37:11",
"upload_time_iso_8601": "2024-12-17T19:37:11.107521Z",
"url": "https://files.pythonhosted.org/packages/ae/b0/6255d17ed570e6a07abf182bf73ae52cafe4320008fccf8a8e9e84ccbbe3/rms_pds4indextools-1.2.1.tar.gz",
"yanked": false,
"yanked_reason": null
}
],
"upload_time": "2024-12-17 19:37:11",
"github": true,
"gitlab": false,
"bitbucket": false,
"codeberg": false,
"github_user": "SETI",
"github_project": "rms-pds4indextools",
"travis_ci": false,
"coveralls": true,
"github_actions": true,
"requirements": [
{
"name": "coverage",
"specs": []
},
{
"name": "flake8",
"specs": []
},
{
"name": "lxml",
"specs": []
},
{
"name": "myst-parser",
"specs": []
},
{
"name": "pandas",
"specs": []
},
{
"name": "pytest",
"specs": []
},
{
"name": "pyyaml",
"specs": []
},
{
"name": "requests",
"specs": []
},
{
"name": "rms-pdstemplate",
"specs": []
},
{
"name": "sphinx",
"specs": []
},
{
"name": "sphinxcontrib-napoleon",
"specs": []
},
{
"name": "sphinx-rtd-theme",
"specs": []
}
],
"lcname": "rms-pds4indextools"
}