aboutsummaryrefslogtreecommitdiffstats
path: root/guide/src/entity_fileset.md
blob: 8a9ea832aa8178021c003bb5d72a73b694467242 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51

# Fileset Entity Reference

## Fields

- `manifest` (array of objects): each entry represents a file
  - `path` (string, required): relative path to file (including filename)
  - `size` (integer, required): in bytes
  - `md5` (string): MD5 hash in lower-case hex
  - `sha1` (string): SHA-1 hash in lower-case hex
  - `sha256` (string): SHA-256 hash in lower-case hex
  - `mimetype` (string): Content type in MIME type schema
  - `extra` (object): any extra metadata about this specific file. all are
    optional
    - `original_url`: live web canonical URL to download this file
    - `webarchive_url`: web archive capture of this file
- `urls`: An array of "typed" URLs. Order is not meaningful, and may not be
  preserved. These are URLs for the entire fileset, not individual files.
    - `url` (string, required):
            Eg: "https://example.edu/~frau/prcding.pdf".
    - `rel` (string, required):
            Eg: "archive-base", "webarchive".

- `release_ids` (array of string identifiers): references to `release` entities
- `content_scope` (string): for situations where the fileset does not simply
  contain the full representation of a work (eg, all files in dataset, for a
  `dataset` release), describes what that scope of coverage is. Uses same
  vocabulary as File entity.
- `extra` (object with string keys): additional metadata about this group of
  files, including upstream platform-specific metadata and identifiers
  - `platform_id`: platform-specific identifier for this fileset

#### URL `rel` types

Any ending in "-base" implies that a file path (from the manifest) can be
appended to the "base" URL to get a file download URL. Any "bundle" implies a
direct link to an archive or "bundle" (like `.zip` or `.tar`) which contains
all the files in this fileset

- `repository` or `platform` or `web`: URL of a live-web landing page or other
  location where content can be found. May or may not be machine-reachable.
- `webarchive`: web archive version of `repository` landing page
- `repository-bundle`: direct URL to a live-web "archive" file, such as `.zip`,
  which contains all of the individual files in this fileset
- `webarchive-bundle`: web archive version of `repository-bundle`
- `archive-bundle`: file archive version of `repository-bundle`
- `repository-base`: live-web base URL/directory from which file `path` can be
  appended to fetch individual files
- `archive-base`: base URL/directory from which file `path` can be appended to fetch
  individual files