https://github.com/dataoneorg/puri-service
The DataONE service for resolving PURIs to resources like datasets, people, and organizations
https://github.com/dataoneorg/puri-service
Last synced: 3 months ago
JSON representation
The DataONE service for resolving PURIs to resources like datasets, people, and organizations
- Host: GitHub
- URL: https://github.com/dataoneorg/puri-service
- Owner: DataONEorg
- License: apache-2.0
- Created: 2018-05-02T23:27:15.000Z (about 8 years ago)
- Default Branch: master
- Last Pushed: 2018-05-08T00:45:13.000Z (about 8 years ago)
- Last Synced: 2025-06-13T11:51:25.772Z (about 1 year ago)
- Size: 6.84 KB
- Stars: 1
- Watchers: 25
- Forks: 0
- Open Issues: 8
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
# puri-service
The DataONE service for resolving PURIs to resources like datasets, people, and organizations.
## Summary
The core idea is to provide the following things to DataONE:
- Platform service version independent URIs for resources that existed either literally (Objects, Nodes, Accounts) or virtually (Datasets, People, Organizations)
- Stable & resolvable Linked Open Data URIs for use in Linked Open Data contexsts such as RDF and JSON-LD
- Provide HTTP Content Negotiation for clients
### High level overview
```text
┌──────────────┐ ┌──────────────┐ ┌──────────────┐
│ Client │─────makes ─────▶│ PURI Service │───redirects ─▶│ DataONE API │
└──────────────┘ request to └──────────────┘ to └──────────────┘
▲ │
│ responds │
└──────────────────────────────to───────────────────────────────┘
```
### Example requests
```text
.───────────.
┌──────▶( Client )
│ `───────────'
│ │
│ makes makes
│ request┬──────────request─────────────────────┐
│ │ │
│ ▼ ▼
│ ┌──────────────────────────┐ ┌───────────────────────────────┐
│ │GET /dataset/X │ │GET /dataset/X │
│ │Accept: text/html │ │Accept: application/ld+json │
│ └──────────────────────────┘ └───────────────────────────────┘
│ │ │
│ is │ │is
returns redirected redirected
response to to
│ ▼ ▼
│ ┌────────────────────────────────────────────────────────────┐
│ │ PURI Service │
│ └────────────────────────────────────────────────────────────┘
│ │ │
│ is is
│ redirected redirected
│ to │ to
│ │ │
│ ▼ ▼
│ ┌──────────────────────────────┐ ┌───────────────────────────────────┐
│ │search.dataone.org/#view/X │ │LOD Service │
│ │Content-Type: text/html │ │Content-Type: application/json+ld │
│ └──────────────────────────────┘ └───────────────────────────────────┘
│ │ │
│ │ │
└─────────────────◀─────────────────────────────────────┘
```
## Installation
TODO
## Development
TODO
## Contributing
Please report any bugs or feature requests as Issues on this repository. Pull Requests welcome.