hydra-works 0.0.1
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/.coveralls.yml +1 -0
- data/.gitignore +17 -0
- data/.rspec +1 -0
- data/.travis.yml +14 -0
- data/CONTRIBUTING.md +115 -0
- data/Gemfile +14 -0
- data/LICENSE +16 -0
- data/README.md +80 -0
- data/Rakefile +23 -0
- data/hydra-works.gemspec +33 -0
- data/lib/hydra/works.rb +81 -0
- data/lib/hydra/works/models/collection.rb +5 -0
- data/lib/hydra/works/models/concerns/aggregates_collections.rb +16 -0
- data/lib/hydra/works/models/concerns/aggregates_generic_files.rb +20 -0
- data/lib/hydra/works/models/concerns/aggregates_generic_works.rb +20 -0
- data/lib/hydra/works/models/concerns/collection_behavior.rb +28 -0
- data/lib/hydra/works/models/concerns/generic_file/contained_files.rb +22 -0
- data/lib/hydra/works/models/concerns/generic_file/derivatives.rb +32 -0
- data/lib/hydra/works/models/concerns/generic_file/mime_types.rb +69 -0
- data/lib/hydra/works/models/concerns/generic_file_behavior.rb +25 -0
- data/lib/hydra/works/models/concerns/generic_work_behavior.rb +30 -0
- data/lib/hydra/works/models/generic_file.rb +17 -0
- data/lib/hydra/works/models/generic_work.rb +9 -0
- data/lib/hydra/works/processor.rb +9 -0
- data/lib/hydra/works/services/collection/add_collection.rb +19 -0
- data/lib/hydra/works/services/collection/add_generic_work.rb +19 -0
- data/lib/hydra/works/services/collection/add_related_object.rb +19 -0
- data/lib/hydra/works/services/collection/get_collections.rb +17 -0
- data/lib/hydra/works/services/collection/get_generic_works.rb +17 -0
- data/lib/hydra/works/services/collection/get_related_objects.rb +17 -0
- data/lib/hydra/works/services/collection/remove_collection.rb +19 -0
- data/lib/hydra/works/services/collection/remove_generic_work.rb +20 -0
- data/lib/hydra/works/services/collection/remove_related_object.rb +19 -0
- data/lib/hydra/works/services/generic_file/add_file.rb +55 -0
- data/lib/hydra/works/services/generic_file/add_generic_file.rb +19 -0
- data/lib/hydra/works/services/generic_file/add_original_file.rb +11 -0
- data/lib/hydra/works/services/generic_file/add_related_object.rb +19 -0
- data/lib/hydra/works/services/generic_file/add_versioned_original_file.rb +10 -0
- data/lib/hydra/works/services/generic_file/generate/thumbnail.rb +19 -0
- data/lib/hydra/works/services/generic_file/get_generic_files.rb +17 -0
- data/lib/hydra/works/services/generic_file/get_related_objects.rb +17 -0
- data/lib/hydra/works/services/generic_file/remove_generic_file.rb +20 -0
- data/lib/hydra/works/services/generic_file/remove_related_object.rb +19 -0
- data/lib/hydra/works/services/generic_file/upload_file.rb +32 -0
- data/lib/hydra/works/services/generic_work/add_generic_file.rb +19 -0
- data/lib/hydra/works/services/generic_work/add_generic_work.rb +19 -0
- data/lib/hydra/works/services/generic_work/add_related_object.rb +19 -0
- data/lib/hydra/works/services/generic_work/get_generic_files.rb +17 -0
- data/lib/hydra/works/services/generic_work/get_generic_works.rb +17 -0
- data/lib/hydra/works/services/generic_work/get_related_objects.rb +17 -0
- data/lib/hydra/works/services/generic_work/move_generic_file.rb +19 -0
- data/lib/hydra/works/services/generic_work/remove_generic_file.rb +20 -0
- data/lib/hydra/works/services/generic_work/remove_generic_work.rb +20 -0
- data/lib/hydra/works/services/generic_work/remove_related_object.rb +19 -0
- data/lib/hydra/works/version.rb +5 -0
- data/lib/hydra/works/vocab/works_terms.rb +12 -0
- data/spec/fixtures/sample-file.pdf +0 -0
- data/spec/fixtures/updated-file.txt +1 -0
- data/spec/hydra/works/models/collection_spec.rb +41 -0
- data/spec/hydra/works/models/concerns/file/contained_files_spec.rb +113 -0
- data/spec/hydra/works/models/concerns/generic_file_behavior_spec.rb +12 -0
- data/spec/hydra/works/models/generic_file_spec.rb +45 -0
- data/spec/hydra/works/models/generic_work_spec.rb +50 -0
- data/spec/hydra/works/services/collection/add_collection_spec.rb +166 -0
- data/spec/hydra/works/services/collection/add_generic_work_spec.rb +155 -0
- data/spec/hydra/works/services/collection/add_related_object_spec.rb +149 -0
- data/spec/hydra/works/services/collection/get_collections_spec.rb +35 -0
- data/spec/hydra/works/services/collection/get_generic_works_spec.rb +35 -0
- data/spec/hydra/works/services/collection/get_related_objects_spec.rb +49 -0
- data/spec/hydra/works/services/collection/remove_collection_spec.rb +133 -0
- data/spec/hydra/works/services/collection/remove_generic_work_spec.rb +133 -0
- data/spec/hydra/works/services/collection/remove_related_object_spec.rb +128 -0
- data/spec/hydra/works/services/generic_file/add_file_spec.rb +28 -0
- data/spec/hydra/works/services/generic_file/add_generic_file_spec.rb +174 -0
- data/spec/hydra/works/services/generic_file/add_related_object_spec.rb +150 -0
- data/spec/hydra/works/services/generic_file/generate/thumbnail_spec.rb +21 -0
- data/spec/hydra/works/services/generic_file/get_generic_files_spec.rb +19 -0
- data/spec/hydra/works/services/generic_file/get_related_objects_spec.rb +45 -0
- data/spec/hydra/works/services/generic_file/remove_generic_file_spec.rb +124 -0
- data/spec/hydra/works/services/generic_file/remove_related_object_spec.rb +123 -0
- data/spec/hydra/works/services/generic_file/upload_file_spec.rb +82 -0
- data/spec/hydra/works/services/generic_work/add_generic_file_spec.rb +156 -0
- data/spec/hydra/works/services/generic_work/add_generic_work_spec.rb +157 -0
- data/spec/hydra/works/services/generic_work/add_related_object_spec.rb +148 -0
- data/spec/hydra/works/services/generic_work/get_generic_files_spec.rb +35 -0
- data/spec/hydra/works/services/generic_work/get_generic_works_spec.rb +35 -0
- data/spec/hydra/works/services/generic_work/get_related_objects_spec.rb +46 -0
- data/spec/hydra/works/services/generic_work/move_generic_file_spec.rb +21 -0
- data/spec/hydra/works/services/generic_work/remove_generic_file_spec.rb +132 -0
- data/spec/hydra/works/services/generic_work/remove_generic_work_spec.rb +133 -0
- data/spec/hydra/works/services/generic_work/remove_related_object_spec.rb +128 -0
- data/spec/hydra/works_spec.rb +149 -0
- data/spec/spec_helper.rb +40 -0
- data/use-cases/conference_event_use_case.md +16 -0
- data/use-cases/lafayette_college_geospatial_use_case.md +80 -0
- data/use-cases/northwestern_adminset_use-case.md +19 -0
- data/use-cases/northwestern_displayset_use_case.md +23 -0
- data/use-cases/northwestern_playlist_use_case.md +21 -0
- data/use-cases/princeton_book_use_case.md +117 -0
- data/use-cases/scholarsphere_use_case.md +32 -0
- data/use-cases/stanford_data_model_use_case.md +86 -0
- data/use-cases/ucin_linked_resource_use_case.md +21 -0
- metadata +338 -0
@@ -0,0 +1,32 @@
|
|
1
|
+
# Penn State ScholarSphere work use cases
|
2
|
+
|
3
|
+
Sponsor: @mjgiarlo
|
4
|
+
|
5
|
+
Given a scholarly work with one or more files
|
6
|
+
As a user
|
7
|
+
I want to manage, preserve, and share the work that contains the files
|
8
|
+
And I want to maintain the relationships between works and the files in which they are represented
|
9
|
+
And I want files to be characterized with technical metadata
|
10
|
+
So that I can more accurately and efficiently represent multi-file works than now (when I must apply granular descriptive metadata at the file level, and group files into collections).
|
11
|
+
|
12
|
+
Given one or more works to which I have access in ScholarSphere
|
13
|
+
As a user
|
14
|
+
I want to group my works into collections
|
15
|
+
And I want to allow other users to be able to do the same, possibly with the same works I have grouped into a collection
|
16
|
+
So that I may better highlight aggregations of works, e.g., the work of a particular department, class, or discipline
|
17
|
+
|
18
|
+
The domain model I am getting at (though not entirely covering) above:
|
19
|
+
|
20
|
+
* Work has a unique identifier
|
21
|
+
* Work has many (0..n) Files
|
22
|
+
* Work has descriptive metadata
|
23
|
+
* Work may belong to many (0..n) Collections
|
24
|
+
* Work may be related to other Works
|
25
|
+
* File has a unique identifier
|
26
|
+
* File must belong to one and only one Work
|
27
|
+
* File has binary content/payload
|
28
|
+
* File has technical metadata
|
29
|
+
* File may have descriptive metadata independent of containing Work
|
30
|
+
* Collection has a unique identifier
|
31
|
+
* Collection has many (0..n) Works
|
32
|
+
* Collection has descriptive metadata independent of contained Works
|
@@ -0,0 +1,86 @@
|
|
1
|
+
# Stanford hierarchical data modeling
|
2
|
+
|
3
|
+
Sponsor: @atz
|
4
|
+
|
5
|
+
Tip o' the hat to the [Princeton cases](princeton_book_use_case.md) that are sufficient for our most common cases.
|
6
|
+
|
7
|
+
We currently have Collections, Items and Files. Items belong to exactly 1 Collection and have 0..n Files.
|
8
|
+
Our approach is mappable to the proposed [Component model](https://cloud.githubusercontent.com/assets/856924/4593133/4ef830c4-5083-11e4-9ec7-261a9483eb7a.png)
|
9
|
+
Other groupings/lists will be discussed separately.
|
10
|
+
|
11
|
+
Here we'll introduce some complexities.
|
12
|
+
|
13
|
+
## Access/Rights
|
14
|
+
|
15
|
+
At construction, the work acquires overridable default rights from its Collection membership.
|
16
|
+
We do optionally apply access rights at the (file) leaf node level, where an individual file might be, for example, raw documentary audio of an event, i.e. source material for the work.
|
17
|
+
|
18
|
+
## Multi-phase digitization
|
19
|
+
|
20
|
+
To the baseline:
|
21
|
+
```
|
22
|
+
Given a book with many pages, and many images of each page
|
23
|
+
As a repository comprised in part of digitized books and manuscripts
|
24
|
+
I want to maintain the relationships between images of a page and technical,
|
25
|
+
descriptive, and provenance metadata about each image
|
26
|
+
And I want to maintain sorting, label, and other metadata, as well as files
|
27
|
+
that represent the whole object in one place
|
28
|
+
So that I can have multiple images of a page tied to one instance of a model
|
29
|
+
without relying on naming conventions (e.g. jp2_md5_checksum)
|
30
|
+
```
|
31
|
+
Add:
|
32
|
+
```
|
33
|
+
INCLUDING multiple images of the same page generated at different times via separate scans.
|
34
|
+
```
|
35
|
+
|
36
|
+
Note:
|
37
|
+
* format is not enough to distinguish the various page-images
|
38
|
+
* it should be possible to add `1..n` additional scan-image file(s) to a page Component
|
39
|
+
* ideally via metadata that identifies the page being represented (because newfile also represents work:$id, page:34)
|
40
|
+
* instead of just (or in addition to) explicitly saying attach newfile to component:$cid
|
41
|
+
* We agree work must also take attachment of `0..n` file(s), not just the page components. Most commonly this would be the big PDF representing the whole work (or more than one page).
|
42
|
+
* However, a composite work-level file may be composed from partial scans, rather than page-files being decomposed from a big scan.
|
43
|
+
* Some day (or for certain means of accessing certain media, e.g. streaming audio) this composite might be assembled on the fly rather than precomposed.
|
44
|
+
|
45
|
+
|
46
|
+
## Order
|
47
|
+
|
48
|
+
* Order of components or subcomponents is essential
|
49
|
+
* If you have a bunch of pages, you need to be able to present them in order. That order shouldn't change if additional page-images of already populated pages are added.
|
50
|
+
* Order of files (leaf nodes) is important but context-dependent:
|
51
|
+
* In this case one version of order is just the ability to prefer one file of a given format vs others, e.g. `getBestImageForCompositing(["tiff","jp2", "jpg"])`
|
52
|
+
|
53
|
+
## Technical Reports, Versioning
|
54
|
+
|
55
|
+
Some reports are republished in a versioned sequence. They are substantially the same work with updates or corrections. The work is at the report title level, with a component for the version
|
56
|
+
and further subcomponents for pages.
|
57
|
+
|
58
|
+
## Problematic Cases
|
59
|
+
|
60
|
+
These are not immediate requirements but are targets for future integration.
|
61
|
+
|
62
|
+
### Book Sets, Box Sets, e.g. Atlas of Maps or Art Book
|
63
|
+
|
64
|
+
An Art Book contains images representing artistic works where the individual Component's descriptive metadata is likely of equivalent or greater interest than
|
65
|
+
its presence in the publication. This case is particularly strong when digitization policy supports targeting of individual pages on demand (say, Pablo Picaso, "Blue Nude").
|
66
|
+
|
67
|
+
Similarly, for descriptive purposes, a map is more tightly bound to its creator than to its appearance in a given atlas.
|
68
|
+
Will attempt to flesh out via concrete example.
|
69
|
+
|
70
|
+
### Series
|
71
|
+
|
72
|
+
Classic problem, hasn't been discussed much. Presumed out of scope for works modeling.
|
73
|
+
|
74
|
+
### Government Documents
|
75
|
+
|
76
|
+
Similar to series.
|
77
|
+
|
78
|
+
### Dataset
|
79
|
+
|
80
|
+
Institutionally generated or acquired from external source.
|
81
|
+
|
82
|
+
Not necessarily including related publication. There may or may not be an accompanying paper or article. If existing, the publication may be part of the
|
83
|
+
Hydra repository or external.
|
84
|
+
|
85
|
+
Needs to be able to attach to part of a research-work. Defer on modeling domain-specific full hierarchical depth.
|
86
|
+
|
@@ -0,0 +1,21 @@
|
|
1
|
+
Cincinnati Linked Resource Use Case
|
2
|
+
Sponsor: @scherztc
|
3
|
+
|
4
|
+
Given an intellectual work (object) with external resources (LinkedResource)
|
5
|
+
As a repository comprised of Collset -> Wortem -> Compart -> GenericFile / LinkedResource
|
6
|
+
I want to maintain the relationships between descriptive and provenance
|
7
|
+
metadata about each object.
|
8
|
+
And I want to maintain sorting, label, and other metadata, as well as files
|
9
|
+
that represent the whole object in one place
|
10
|
+
So that I can have multiple Compart of a Wortem tied to one instance of a model
|
11
|
+
with each Compart containing a GenericFile or LinkedResource.
|
12
|
+
Therefore I can have a Wortem that does not contain a GenericFile, but only LinkedResources.
|
13
|
+
|
14
|
+
Here are some example object we need to represent, and their characteristics, from least to most complex.
|
15
|
+
|
16
|
+
LinkedResource
|
17
|
+
Compart
|
18
|
+
Wortem
|
19
|
+
Collset
|
20
|
+
|
21
|
+
|
metadata
ADDED
@@ -0,0 +1,338 @@
|
|
1
|
+
--- !ruby/object:Gem::Specification
|
2
|
+
name: hydra-works
|
3
|
+
version: !ruby/object:Gem::Version
|
4
|
+
version: 0.0.1
|
5
|
+
platform: ruby
|
6
|
+
authors:
|
7
|
+
- Justin Coyne
|
8
|
+
autorequire:
|
9
|
+
bindir: bin
|
10
|
+
cert_chain: []
|
11
|
+
date: 2015-06-05 00:00:00.000000000 Z
|
12
|
+
dependencies:
|
13
|
+
- !ruby/object:Gem::Dependency
|
14
|
+
name: hydra-pcdm
|
15
|
+
requirement: !ruby/object:Gem::Requirement
|
16
|
+
requirements:
|
17
|
+
- - "~>"
|
18
|
+
- !ruby/object:Gem::Version
|
19
|
+
version: 0.0.1
|
20
|
+
type: :runtime
|
21
|
+
prerelease: false
|
22
|
+
version_requirements: !ruby/object:Gem::Requirement
|
23
|
+
requirements:
|
24
|
+
- - "~>"
|
25
|
+
- !ruby/object:Gem::Version
|
26
|
+
version: 0.0.1
|
27
|
+
- !ruby/object:Gem::Dependency
|
28
|
+
name: hydra-derivatives
|
29
|
+
requirement: !ruby/object:Gem::Requirement
|
30
|
+
requirements:
|
31
|
+
- - "~>"
|
32
|
+
- !ruby/object:Gem::Version
|
33
|
+
version: 1.1.0
|
34
|
+
type: :runtime
|
35
|
+
prerelease: false
|
36
|
+
version_requirements: !ruby/object:Gem::Requirement
|
37
|
+
requirements:
|
38
|
+
- - "~>"
|
39
|
+
- !ruby/object:Gem::Version
|
40
|
+
version: 1.1.0
|
41
|
+
- !ruby/object:Gem::Dependency
|
42
|
+
name: activefedora-aggregation
|
43
|
+
requirement: !ruby/object:Gem::Requirement
|
44
|
+
requirements:
|
45
|
+
- - "~>"
|
46
|
+
- !ruby/object:Gem::Version
|
47
|
+
version: 0.2.0
|
48
|
+
type: :runtime
|
49
|
+
prerelease: false
|
50
|
+
version_requirements: !ruby/object:Gem::Requirement
|
51
|
+
requirements:
|
52
|
+
- - "~>"
|
53
|
+
- !ruby/object:Gem::Version
|
54
|
+
version: 0.2.0
|
55
|
+
- !ruby/object:Gem::Dependency
|
56
|
+
name: bundler
|
57
|
+
requirement: !ruby/object:Gem::Requirement
|
58
|
+
requirements:
|
59
|
+
- - "~>"
|
60
|
+
- !ruby/object:Gem::Version
|
61
|
+
version: '1.7'
|
62
|
+
type: :development
|
63
|
+
prerelease: false
|
64
|
+
version_requirements: !ruby/object:Gem::Requirement
|
65
|
+
requirements:
|
66
|
+
- - "~>"
|
67
|
+
- !ruby/object:Gem::Version
|
68
|
+
version: '1.7'
|
69
|
+
- !ruby/object:Gem::Dependency
|
70
|
+
name: rake
|
71
|
+
requirement: !ruby/object:Gem::Requirement
|
72
|
+
requirements:
|
73
|
+
- - "~>"
|
74
|
+
- !ruby/object:Gem::Version
|
75
|
+
version: '10.0'
|
76
|
+
type: :development
|
77
|
+
prerelease: false
|
78
|
+
version_requirements: !ruby/object:Gem::Requirement
|
79
|
+
requirements:
|
80
|
+
- - "~>"
|
81
|
+
- !ruby/object:Gem::Version
|
82
|
+
version: '10.0'
|
83
|
+
- !ruby/object:Gem::Dependency
|
84
|
+
name: rspec-rails
|
85
|
+
requirement: !ruby/object:Gem::Requirement
|
86
|
+
requirements:
|
87
|
+
- - "~>"
|
88
|
+
- !ruby/object:Gem::Version
|
89
|
+
version: '3.1'
|
90
|
+
type: :development
|
91
|
+
prerelease: false
|
92
|
+
version_requirements: !ruby/object:Gem::Requirement
|
93
|
+
requirements:
|
94
|
+
- - "~>"
|
95
|
+
- !ruby/object:Gem::Version
|
96
|
+
version: '3.1'
|
97
|
+
- !ruby/object:Gem::Dependency
|
98
|
+
name: engine_cart
|
99
|
+
requirement: !ruby/object:Gem::Requirement
|
100
|
+
requirements:
|
101
|
+
- - "~>"
|
102
|
+
- !ruby/object:Gem::Version
|
103
|
+
version: '0'
|
104
|
+
type: :development
|
105
|
+
prerelease: false
|
106
|
+
version_requirements: !ruby/object:Gem::Requirement
|
107
|
+
requirements:
|
108
|
+
- - "~>"
|
109
|
+
- !ruby/object:Gem::Version
|
110
|
+
version: '0'
|
111
|
+
- !ruby/object:Gem::Dependency
|
112
|
+
name: sqlite3
|
113
|
+
requirement: !ruby/object:Gem::Requirement
|
114
|
+
requirements:
|
115
|
+
- - ">="
|
116
|
+
- !ruby/object:Gem::Version
|
117
|
+
version: '0'
|
118
|
+
type: :development
|
119
|
+
prerelease: false
|
120
|
+
version_requirements: !ruby/object:Gem::Requirement
|
121
|
+
requirements:
|
122
|
+
- - ">="
|
123
|
+
- !ruby/object:Gem::Version
|
124
|
+
version: '0'
|
125
|
+
- !ruby/object:Gem::Dependency
|
126
|
+
name: jettywrapper
|
127
|
+
requirement: !ruby/object:Gem::Requirement
|
128
|
+
requirements:
|
129
|
+
- - ">="
|
130
|
+
- !ruby/object:Gem::Version
|
131
|
+
version: 2.0.0
|
132
|
+
type: :development
|
133
|
+
prerelease: false
|
134
|
+
version_requirements: !ruby/object:Gem::Requirement
|
135
|
+
requirements:
|
136
|
+
- - ">="
|
137
|
+
- !ruby/object:Gem::Version
|
138
|
+
version: 2.0.0
|
139
|
+
- !ruby/object:Gem::Dependency
|
140
|
+
name: coveralls
|
141
|
+
requirement: !ruby/object:Gem::Requirement
|
142
|
+
requirements:
|
143
|
+
- - ">="
|
144
|
+
- !ruby/object:Gem::Version
|
145
|
+
version: '0'
|
146
|
+
type: :development
|
147
|
+
prerelease: false
|
148
|
+
version_requirements: !ruby/object:Gem::Requirement
|
149
|
+
requirements:
|
150
|
+
- - ">="
|
151
|
+
- !ruby/object:Gem::Version
|
152
|
+
version: '0'
|
153
|
+
- !ruby/object:Gem::Dependency
|
154
|
+
name: rspec
|
155
|
+
requirement: !ruby/object:Gem::Requirement
|
156
|
+
requirements:
|
157
|
+
- - ">="
|
158
|
+
- !ruby/object:Gem::Version
|
159
|
+
version: '0'
|
160
|
+
type: :development
|
161
|
+
prerelease: false
|
162
|
+
version_requirements: !ruby/object:Gem::Requirement
|
163
|
+
requirements:
|
164
|
+
- - ">="
|
165
|
+
- !ruby/object:Gem::Version
|
166
|
+
version: '0'
|
167
|
+
description: Using this data model should enable easy collaboration amongst hydra
|
168
|
+
projects.
|
169
|
+
email:
|
170
|
+
- justin@curationexperts.com
|
171
|
+
executables: []
|
172
|
+
extensions: []
|
173
|
+
extra_rdoc_files: []
|
174
|
+
files:
|
175
|
+
- ".coveralls.yml"
|
176
|
+
- ".gitignore"
|
177
|
+
- ".rspec"
|
178
|
+
- ".travis.yml"
|
179
|
+
- CONTRIBUTING.md
|
180
|
+
- Gemfile
|
181
|
+
- LICENSE
|
182
|
+
- README.md
|
183
|
+
- Rakefile
|
184
|
+
- hydra-works.gemspec
|
185
|
+
- lib/hydra/works.rb
|
186
|
+
- lib/hydra/works/models/collection.rb
|
187
|
+
- lib/hydra/works/models/concerns/aggregates_collections.rb
|
188
|
+
- lib/hydra/works/models/concerns/aggregates_generic_files.rb
|
189
|
+
- lib/hydra/works/models/concerns/aggregates_generic_works.rb
|
190
|
+
- lib/hydra/works/models/concerns/collection_behavior.rb
|
191
|
+
- lib/hydra/works/models/concerns/generic_file/contained_files.rb
|
192
|
+
- lib/hydra/works/models/concerns/generic_file/derivatives.rb
|
193
|
+
- lib/hydra/works/models/concerns/generic_file/mime_types.rb
|
194
|
+
- lib/hydra/works/models/concerns/generic_file_behavior.rb
|
195
|
+
- lib/hydra/works/models/concerns/generic_work_behavior.rb
|
196
|
+
- lib/hydra/works/models/generic_file.rb
|
197
|
+
- lib/hydra/works/models/generic_work.rb
|
198
|
+
- lib/hydra/works/processor.rb
|
199
|
+
- lib/hydra/works/services/collection/add_collection.rb
|
200
|
+
- lib/hydra/works/services/collection/add_generic_work.rb
|
201
|
+
- lib/hydra/works/services/collection/add_related_object.rb
|
202
|
+
- lib/hydra/works/services/collection/get_collections.rb
|
203
|
+
- lib/hydra/works/services/collection/get_generic_works.rb
|
204
|
+
- lib/hydra/works/services/collection/get_related_objects.rb
|
205
|
+
- lib/hydra/works/services/collection/remove_collection.rb
|
206
|
+
- lib/hydra/works/services/collection/remove_generic_work.rb
|
207
|
+
- lib/hydra/works/services/collection/remove_related_object.rb
|
208
|
+
- lib/hydra/works/services/generic_file/add_file.rb
|
209
|
+
- lib/hydra/works/services/generic_file/add_generic_file.rb
|
210
|
+
- lib/hydra/works/services/generic_file/add_original_file.rb
|
211
|
+
- lib/hydra/works/services/generic_file/add_related_object.rb
|
212
|
+
- lib/hydra/works/services/generic_file/add_versioned_original_file.rb
|
213
|
+
- lib/hydra/works/services/generic_file/generate/thumbnail.rb
|
214
|
+
- lib/hydra/works/services/generic_file/get_generic_files.rb
|
215
|
+
- lib/hydra/works/services/generic_file/get_related_objects.rb
|
216
|
+
- lib/hydra/works/services/generic_file/remove_generic_file.rb
|
217
|
+
- lib/hydra/works/services/generic_file/remove_related_object.rb
|
218
|
+
- lib/hydra/works/services/generic_file/upload_file.rb
|
219
|
+
- lib/hydra/works/services/generic_work/add_generic_file.rb
|
220
|
+
- lib/hydra/works/services/generic_work/add_generic_work.rb
|
221
|
+
- lib/hydra/works/services/generic_work/add_related_object.rb
|
222
|
+
- lib/hydra/works/services/generic_work/get_generic_files.rb
|
223
|
+
- lib/hydra/works/services/generic_work/get_generic_works.rb
|
224
|
+
- lib/hydra/works/services/generic_work/get_related_objects.rb
|
225
|
+
- lib/hydra/works/services/generic_work/move_generic_file.rb
|
226
|
+
- lib/hydra/works/services/generic_work/remove_generic_file.rb
|
227
|
+
- lib/hydra/works/services/generic_work/remove_generic_work.rb
|
228
|
+
- lib/hydra/works/services/generic_work/remove_related_object.rb
|
229
|
+
- lib/hydra/works/version.rb
|
230
|
+
- lib/hydra/works/vocab/works_terms.rb
|
231
|
+
- spec/fixtures/sample-file.pdf
|
232
|
+
- spec/fixtures/updated-file.txt
|
233
|
+
- spec/hydra/works/models/collection_spec.rb
|
234
|
+
- spec/hydra/works/models/concerns/file/contained_files_spec.rb
|
235
|
+
- spec/hydra/works/models/concerns/generic_file_behavior_spec.rb
|
236
|
+
- spec/hydra/works/models/generic_file_spec.rb
|
237
|
+
- spec/hydra/works/models/generic_work_spec.rb
|
238
|
+
- spec/hydra/works/services/collection/add_collection_spec.rb
|
239
|
+
- spec/hydra/works/services/collection/add_generic_work_spec.rb
|
240
|
+
- spec/hydra/works/services/collection/add_related_object_spec.rb
|
241
|
+
- spec/hydra/works/services/collection/get_collections_spec.rb
|
242
|
+
- spec/hydra/works/services/collection/get_generic_works_spec.rb
|
243
|
+
- spec/hydra/works/services/collection/get_related_objects_spec.rb
|
244
|
+
- spec/hydra/works/services/collection/remove_collection_spec.rb
|
245
|
+
- spec/hydra/works/services/collection/remove_generic_work_spec.rb
|
246
|
+
- spec/hydra/works/services/collection/remove_related_object_spec.rb
|
247
|
+
- spec/hydra/works/services/generic_file/add_file_spec.rb
|
248
|
+
- spec/hydra/works/services/generic_file/add_generic_file_spec.rb
|
249
|
+
- spec/hydra/works/services/generic_file/add_related_object_spec.rb
|
250
|
+
- spec/hydra/works/services/generic_file/generate/thumbnail_spec.rb
|
251
|
+
- spec/hydra/works/services/generic_file/get_generic_files_spec.rb
|
252
|
+
- spec/hydra/works/services/generic_file/get_related_objects_spec.rb
|
253
|
+
- spec/hydra/works/services/generic_file/remove_generic_file_spec.rb
|
254
|
+
- spec/hydra/works/services/generic_file/remove_related_object_spec.rb
|
255
|
+
- spec/hydra/works/services/generic_file/upload_file_spec.rb
|
256
|
+
- spec/hydra/works/services/generic_work/add_generic_file_spec.rb
|
257
|
+
- spec/hydra/works/services/generic_work/add_generic_work_spec.rb
|
258
|
+
- spec/hydra/works/services/generic_work/add_related_object_spec.rb
|
259
|
+
- spec/hydra/works/services/generic_work/get_generic_files_spec.rb
|
260
|
+
- spec/hydra/works/services/generic_work/get_generic_works_spec.rb
|
261
|
+
- spec/hydra/works/services/generic_work/get_related_objects_spec.rb
|
262
|
+
- spec/hydra/works/services/generic_work/move_generic_file_spec.rb
|
263
|
+
- spec/hydra/works/services/generic_work/remove_generic_file_spec.rb
|
264
|
+
- spec/hydra/works/services/generic_work/remove_generic_work_spec.rb
|
265
|
+
- spec/hydra/works/services/generic_work/remove_related_object_spec.rb
|
266
|
+
- spec/hydra/works_spec.rb
|
267
|
+
- spec/spec_helper.rb
|
268
|
+
- use-cases/conference_event_use_case.md
|
269
|
+
- use-cases/lafayette_college_geospatial_use_case.md
|
270
|
+
- use-cases/northwestern_adminset_use-case.md
|
271
|
+
- use-cases/northwestern_displayset_use_case.md
|
272
|
+
- use-cases/northwestern_playlist_use_case.md
|
273
|
+
- use-cases/princeton_book_use_case.md
|
274
|
+
- use-cases/scholarsphere_use_case.md
|
275
|
+
- use-cases/stanford_data_model_use_case.md
|
276
|
+
- use-cases/ucin_linked_resource_use_case.md
|
277
|
+
homepage: ''
|
278
|
+
licenses:
|
279
|
+
- APACHE2
|
280
|
+
metadata: {}
|
281
|
+
post_install_message:
|
282
|
+
rdoc_options: []
|
283
|
+
require_paths:
|
284
|
+
- lib
|
285
|
+
required_ruby_version: !ruby/object:Gem::Requirement
|
286
|
+
requirements:
|
287
|
+
- - ">="
|
288
|
+
- !ruby/object:Gem::Version
|
289
|
+
version: '0'
|
290
|
+
required_rubygems_version: !ruby/object:Gem::Requirement
|
291
|
+
requirements:
|
292
|
+
- - ">="
|
293
|
+
- !ruby/object:Gem::Version
|
294
|
+
version: '0'
|
295
|
+
requirements: []
|
296
|
+
rubyforge_project:
|
297
|
+
rubygems_version: 2.4.6
|
298
|
+
signing_key:
|
299
|
+
specification_version: 4
|
300
|
+
summary: Fundamental repository data model for hydra
|
301
|
+
test_files:
|
302
|
+
- spec/fixtures/sample-file.pdf
|
303
|
+
- spec/fixtures/updated-file.txt
|
304
|
+
- spec/hydra/works/models/collection_spec.rb
|
305
|
+
- spec/hydra/works/models/concerns/file/contained_files_spec.rb
|
306
|
+
- spec/hydra/works/models/concerns/generic_file_behavior_spec.rb
|
307
|
+
- spec/hydra/works/models/generic_file_spec.rb
|
308
|
+
- spec/hydra/works/models/generic_work_spec.rb
|
309
|
+
- spec/hydra/works/services/collection/add_collection_spec.rb
|
310
|
+
- spec/hydra/works/services/collection/add_generic_work_spec.rb
|
311
|
+
- spec/hydra/works/services/collection/add_related_object_spec.rb
|
312
|
+
- spec/hydra/works/services/collection/get_collections_spec.rb
|
313
|
+
- spec/hydra/works/services/collection/get_generic_works_spec.rb
|
314
|
+
- spec/hydra/works/services/collection/get_related_objects_spec.rb
|
315
|
+
- spec/hydra/works/services/collection/remove_collection_spec.rb
|
316
|
+
- spec/hydra/works/services/collection/remove_generic_work_spec.rb
|
317
|
+
- spec/hydra/works/services/collection/remove_related_object_spec.rb
|
318
|
+
- spec/hydra/works/services/generic_file/add_file_spec.rb
|
319
|
+
- spec/hydra/works/services/generic_file/add_generic_file_spec.rb
|
320
|
+
- spec/hydra/works/services/generic_file/add_related_object_spec.rb
|
321
|
+
- spec/hydra/works/services/generic_file/generate/thumbnail_spec.rb
|
322
|
+
- spec/hydra/works/services/generic_file/get_generic_files_spec.rb
|
323
|
+
- spec/hydra/works/services/generic_file/get_related_objects_spec.rb
|
324
|
+
- spec/hydra/works/services/generic_file/remove_generic_file_spec.rb
|
325
|
+
- spec/hydra/works/services/generic_file/remove_related_object_spec.rb
|
326
|
+
- spec/hydra/works/services/generic_file/upload_file_spec.rb
|
327
|
+
- spec/hydra/works/services/generic_work/add_generic_file_spec.rb
|
328
|
+
- spec/hydra/works/services/generic_work/add_generic_work_spec.rb
|
329
|
+
- spec/hydra/works/services/generic_work/add_related_object_spec.rb
|
330
|
+
- spec/hydra/works/services/generic_work/get_generic_files_spec.rb
|
331
|
+
- spec/hydra/works/services/generic_work/get_generic_works_spec.rb
|
332
|
+
- spec/hydra/works/services/generic_work/get_related_objects_spec.rb
|
333
|
+
- spec/hydra/works/services/generic_work/move_generic_file_spec.rb
|
334
|
+
- spec/hydra/works/services/generic_work/remove_generic_file_spec.rb
|
335
|
+
- spec/hydra/works/services/generic_work/remove_generic_work_spec.rb
|
336
|
+
- spec/hydra/works/services/generic_work/remove_related_object_spec.rb
|
337
|
+
- spec/hydra/works_spec.rb
|
338
|
+
- spec/spec_helper.rb
|