Ticket #189 (new enhancement) — at Version 2
Multiple download urls
Reported by: | dread | Owned by: | rgrp |
---|---|---|---|
Priority: | critical | Milestone: | v0.11 |
Component: | ckan | Keywords: | |
Cc: | Repository: | ||
Theme: |
Description (last modified by dread) (diff)
See also: PackageResources which defines a 'distribution' as a package's payload (perhaps with metadata). In our case, at least within CKAN, the representation of the distribution will just be the reference to get it (plus some minor metadata).
As a
User (package editor and package user)
I want to
(package editor) Associate multiple distributions with a package.
(package user) Easily have access to multiple distributions of a package should they exist.
Implementation
There is an object called 'Distribution' with the following attributes:
- url (text) (required in UI, but not in db table)
- format (text)
- description (text)
- package (association) - a distribution is always associated with 1 package
A package's list of distributions will have an order which is preserved. The first in the list will be known as the 'default distribution'.
How to replace download url
download_url removed and replaced as a proxy attribute. Read returns the url of the default distribution. Write changes the url of the default distribution. Ensures backward compatibility.
REST API has new attribute in package dictionary 'distributions' - an ordered list.
In WUI, replace download url in package read with a table of the distributions.
In the WUI package edit, be able to add/remove/edit/reorder distributions.
Example
Example part of package:
Distributions:
http://some.com/pollution.pdf | Original report | |
http://some.com/pollution.csv | csv | Original data |
http://some.com/pollution | sparql | Linked version of data |
Existing data to be migrated to new structure.
Cost: 4 days