A Python library for working with a Data Package Registry.
Project description
[![Coverage Status](https://coveralls.io/repos/okfn/datapackage-registry-py/badge.svg?branch=master&service=github)](https://coveralls.io/github/okfn/datapackage-registry-py?branch=master)
datapackage-registry-py
=======================
A Python library for working with a Data Package Registry.
The default registry backend is currently located at:
<https://rawgit.com/dataprotocols/registry/master/registry.csv>
Usage
-----
```python
import datapackage_registry
# get the default registry objects
registry = datapackage_registry.Registry()
# see the available profiles in the registry
print(registry.available_profiles)
# {
# 'base': {
# 'id': 'base',
# 'schema': 'https://rawgit.com/dataprotocols/schemas/master/data-package.json',
# 'specification': 'http://dataprotocols.org/data-packages',
# 'title': 'Data Package'
# },
# 'tabular': {
# 'id': 'tabular',
# 'schema': 'https://rawgit.com/dataprotocols/schemas/master/tabular-data-package.json',
# 'specification': 'http://dataprotocols.org/tabular-data-package/',
# 'title': 'Tabular Data Package'
# }
# }
# get a profile by its id
base_profile = registry.get('base')
```
If you’d like to use a custom registry, you can pass its URL or local
path to the `Registry()` constructor, as in:
```python
import datapackage_registry
registry = datapackage_registry.Registry('http://someplace.com/my-registry.csv')
```
If you’d like to get a schema that's not in the registry, you can pass its URL
or local path to `Registry().get_external()` method, as in:
```python
import datapackage_registry
registry = datapackage_registry.Registry()
try:
schema = registry.get_external('http://someplace.com/schema.json')
except datapackage_registry.exceptions.DataPackageRegistryException:
pass # handle error
```
Developer notes
---------------
These notes are intended to help people that want to contribute to this
package itself. If you just want to use it, you can safely ignore this.
### Updating the local schemas cache
We cache the schemas from <https://github.com/dataprotocols/schemas>
using git-subtree. To update it, use:
git subtree pull --prefix datapackage_registry/schemas https://github.com/dataprotocols/schemas.git master --squash
datapackage-registry-py
=======================
A Python library for working with a Data Package Registry.
The default registry backend is currently located at:
<https://rawgit.com/dataprotocols/registry/master/registry.csv>
Usage
-----
```python
import datapackage_registry
# get the default registry objects
registry = datapackage_registry.Registry()
# see the available profiles in the registry
print(registry.available_profiles)
# {
# 'base': {
# 'id': 'base',
# 'schema': 'https://rawgit.com/dataprotocols/schemas/master/data-package.json',
# 'specification': 'http://dataprotocols.org/data-packages',
# 'title': 'Data Package'
# },
# 'tabular': {
# 'id': 'tabular',
# 'schema': 'https://rawgit.com/dataprotocols/schemas/master/tabular-data-package.json',
# 'specification': 'http://dataprotocols.org/tabular-data-package/',
# 'title': 'Tabular Data Package'
# }
# }
# get a profile by its id
base_profile = registry.get('base')
```
If you’d like to use a custom registry, you can pass its URL or local
path to the `Registry()` constructor, as in:
```python
import datapackage_registry
registry = datapackage_registry.Registry('http://someplace.com/my-registry.csv')
```
If you’d like to get a schema that's not in the registry, you can pass its URL
or local path to `Registry().get_external()` method, as in:
```python
import datapackage_registry
registry = datapackage_registry.Registry()
try:
schema = registry.get_external('http://someplace.com/schema.json')
except datapackage_registry.exceptions.DataPackageRegistryException:
pass # handle error
```
Developer notes
---------------
These notes are intended to help people that want to contribute to this
package itself. If you just want to use it, you can safely ignore this.
### Updating the local schemas cache
We cache the schemas from <https://github.com/dataprotocols/schemas>
using git-subtree. To update it, use:
git subtree pull --prefix datapackage_registry/schemas https://github.com/dataprotocols/schemas.git master --squash
Project details
Release history Release notifications | RSS feed
Download files
Download the file for your platform. If you're not sure which to choose, learn more about installing packages.
Source Distribution
File details
Details for the file datapackage-registry-0.4.0.tar.gz
.
File metadata
- Download URL: datapackage-registry-0.4.0.tar.gz
- Upload date:
- Size: 9.5 kB
- Tags: Source
- Uploaded using Trusted Publishing? No
File hashes
Algorithm | Hash digest | |
---|---|---|
SHA256 | 205932d29b64e16e59f64575383465018abfe686edc580cde2bc2197d44477db |
|
MD5 | 9982616a254b5b0b690939515abeb207 |
|
BLAKE2b-256 | c78aed4e7025c0d04a17fe4a40787bceb7c59132ebd1e268a82eff6d21cd37ff |