hydra-core 5.0.0.pre1

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.
Files changed (105) hide show
  1. data/.gitignore +2 -0
  2. data/Rakefile +5 -0
  3. data/app/helpers/blacklight_helper.rb +4 -0
  4. data/app/helpers/facets_helper.rb +4 -0
  5. data/app/helpers/hydra/blacklight_helper_behavior.rb +36 -0
  6. data/app/helpers/hydra/facets_helper_behavior.rb +25 -0
  7. data/app/models/hydra/datastream/properties.rb +24 -0
  8. data/app/models/mods_asset.rb +25 -0
  9. data/app/views/_flash_msg.html.erb +5 -0
  10. data/app/views/catalog/_citation.html.erb +11 -0
  11. data/app/views/catalog/_constraints_element.html.erb +34 -0
  12. data/app/views/catalog/_delete_partials/_default.html.erb +22 -0
  13. data/app/views/catalog/_edit_partials/_default.html.erb +57 -0
  14. data/app/views/catalog/_edit_partials/_default_details.html.erb +13 -0
  15. data/app/views/catalog/_facets.html.erb +37 -0
  16. data/app/views/catalog/_home.html.erb +6 -0
  17. data/app/views/catalog/_home_text.html.erb +4 -0
  18. data/app/views/catalog/_index_partials/_default.html.erb +20 -0
  19. data/app/views/catalog/_index_partials/_default_details.html.erb +14 -0
  20. data/app/views/catalog/_opensearch_response_metadata.html.erb +2 -0
  21. data/app/views/catalog/_show_partials/_default.html.erb +21 -0
  22. data/app/views/catalog/_show_partials/_default_details.html.erb +15 -0
  23. data/app/views/catalog/_show_partials/_facets.html.erb +52 -0
  24. data/app/views/catalog/_sms_form.html.erb +21 -0
  25. data/app/views/catalog/_sort_and_per_page.html.erb +23 -0
  26. data/app/views/catalog/_uva_tabs.html.erb +10 -0
  27. data/app/views/catalog/about.html.erb +0 -0
  28. data/app/views/catalog/show.html.erb +40 -0
  29. data/app/views/layouts/hydra-head.html.erb +47 -0
  30. data/config/jetty.yml +6 -0
  31. data/config/locales/hydra.en.yml +7 -0
  32. data/hydra-core.gemspec +40 -0
  33. data/lib/application_helper.rb +3 -0
  34. data/lib/generators/hydra/assets_generator.rb +50 -0
  35. data/lib/generators/hydra/cucumber_support_generator.rb +29 -0
  36. data/lib/generators/hydra/head_generator.rb +160 -0
  37. data/lib/generators/hydra/hyhead_fixtures_generator.rb +27 -0
  38. data/lib/generators/hydra/templates/catalog_controller.rb +162 -0
  39. data/lib/generators/hydra/templates/config/fedora.yml +14 -0
  40. data/lib/generators/hydra/templates/config/initializers/action_dispatch_http_upload_monkey_patch.rb +12 -0
  41. data/lib/generators/hydra/templates/config/initializers/hydra_config.rb +39 -0
  42. data/lib/generators/hydra/templates/config/role_map_cucumber.yml +10 -0
  43. data/lib/generators/hydra/templates/config/role_map_development.yml +12 -0
  44. data/lib/generators/hydra/templates/config/role_map_production.yml +2 -0
  45. data/lib/generators/hydra/templates/config/role_map_test.yml +15 -0
  46. data/lib/generators/hydra/templates/config/solr.yml +10 -0
  47. data/lib/generators/hydra/templates/config/solr_mappings.yml +22 -0
  48. data/lib/generators/hydra/templates/fedora_conf/conf/development/fedora.fcfg +946 -0
  49. data/lib/generators/hydra/templates/fedora_conf/conf/test/fedora.fcfg +946 -0
  50. data/lib/generators/hydra/templates/solr_conf/conf/schema.xml +692 -0
  51. data/lib/generators/hydra/templates/solr_conf/conf/solrconfig.xml +1887 -0
  52. data/lib/generators/hydra/templates/solr_conf/solr.xml +35 -0
  53. data/lib/hydra-core.rb +1 -0
  54. data/lib/hydra-head.rb +27 -0
  55. data/lib/hydra-head/engine.rb +14 -0
  56. data/lib/hydra-head/routes.rb +90 -0
  57. data/lib/hydra-head/version.rb +4 -0
  58. data/lib/hydra.rb +30 -0
  59. data/lib/hydra/catalog.rb +11 -0
  60. data/lib/hydra/controller.rb +25 -0
  61. data/lib/hydra/controller/controller_behavior.rb +39 -0
  62. data/lib/hydra/controller/repository_controller_behavior.rb +78 -0
  63. data/lib/hydra/controller/upload_behavior.rb +139 -0
  64. data/lib/hydra/global_configurable.rb +46 -0
  65. data/lib/hydra/model_methods.rb +109 -0
  66. data/lib/hydra/model_mixins/common_metadata.rb +25 -0
  67. data/lib/hydra/model_mixins/solr_document_extension.rb +24 -0
  68. data/lib/hydra/models/file_asset.rb +76 -0
  69. data/lib/hydra/repository_controller.rb +28 -0
  70. data/lib/hydra/solr.rb +9 -0
  71. data/lib/railties/active-fedora.rake +1 -0
  72. data/lib/railties/hydra-fixtures.rake +50 -0
  73. data/lib/railties/hydra_jetty.rake +53 -0
  74. data/spec/.gitignore +1 -0
  75. data/spec/controllers/catalog_controller_spec.rb +101 -0
  76. data/spec/controllers/catalog_valid_html_spec.rb +114 -0
  77. data/spec/factories.rb +11 -0
  78. data/spec/helpers/blacklight_helper_spec.rb +15 -0
  79. data/spec/helpers/facets_helper_spec.rb +15 -0
  80. data/spec/lib/catalog_spec.rb +16 -0
  81. data/spec/lib/global_configurable_spec.rb +98 -0
  82. data/spec/lib/model_methods_spec.rb +29 -0
  83. data/spec/lib/repository_controller_behavior_spec.rb +28 -0
  84. data/spec/models/mods_asset_spec.rb +21 -0
  85. data/spec/models/solr_document_spec.rb +17 -0
  86. data/spec/models/user_spec.rb +32 -0
  87. data/spec/rcov.opts +3 -0
  88. data/spec/spec.opts +4 -0
  89. data/spec/spec_helper.rb +26 -0
  90. data/spec/support/Gemfile +12 -0
  91. data/spec/support/app/models/generic_content.rb +23 -0
  92. data/spec/support/app/models/sample.rb +33 -0
  93. data/spec/support/app/models/solr_document.rb +5 -0
  94. data/spec/support/db/migrate/20111101221803_create_searches.rb +16 -0
  95. data/spec/support/lib/generators/test_app_generator.rb +33 -0
  96. data/spec/support/matchers/helper_matcher.rb +14 -0
  97. data/spec/support/matchers/solr_matchers.rb +60 -0
  98. data/spec/support/spec/fixtures/hydra_test_generic_content.foxml.xml +138 -0
  99. data/spec/support/spec/fixtures/hydrangea_fixture_mods_article1.foxml.xml +234 -0
  100. data/spec/unit/hydra-head-engine_spec.rb +8 -0
  101. data/spec/unit/hydra-head_spec.rb +8 -0
  102. data/tasks/hydra-head-fixtures.rake +58 -0
  103. data/tasks/hydra_jetty.rake +53 -0
  104. data/tasks/rspec.rake +53 -0
  105. metadata +469 -0
@@ -0,0 +1,12 @@
1
+ source 'https://rubygems.org'
2
+
3
+ gem 'rails', '3.2.6'
4
+
5
+ gem 'sqlite3'
6
+
7
+ gem 'devise'
8
+ gem 'blacklight'
9
+ gem 'hydra-access-controls', :path=>'../../../hydra-access-controls'
10
+ gem 'hydra-core', :path=>'../../'
11
+ gem 'rspec-rails'
12
+ gem 'factory_girl_rails', "<2.0.0" # >=2.0.0 requires ruby 1.9
@@ -0,0 +1,23 @@
1
+ # GenericContent: EXAMPLE Model that conforms to the Hydra genericContent and genericMetadata cModels
2
+ require 'deprecation'
3
+ class GenericContent < ActiveFedora::Base
4
+ extend Deprecation
5
+
6
+ # Uses the Hydra Rights Metadata Schema for tracking access permissions & copyright
7
+ # FIXME: should this have "include Hydra::ModelMixins::CommonMetadata" instead?
8
+ has_metadata :name => "rightsMetadata", :type => Hydra::Datastream::RightsMetadata
9
+
10
+ #has_metadata :name => "descMetadata", :type => Hydra::Datastream::ModsGenericContent
11
+
12
+ # A place to put extra metadata values, e.g. the user id of the object depositor (for permissions)
13
+ has_metadata :name => "properties", :type => Hydra::Datastream::Properties
14
+
15
+ # adds helpful methods for basic hydra objects.
16
+ # FIXME: redundate with GenericContent include above??
17
+ include Hydra::ModelMethods
18
+
19
+ def initialize( attrs={} )
20
+ Deprecation.warn(GenericContent, "GenericContent is deprecated and will be removed in hydra-head 5.x")
21
+ super
22
+ end
23
+ end
@@ -0,0 +1,33 @@
1
+ class Sample
2
+ # This is a stub model for testing.
3
+
4
+ cattr_accessor :objects
5
+ self.objects = {}
6
+
7
+ def self.create(params={})
8
+ obj = Sample.new
9
+ obj.save
10
+ obj
11
+ end
12
+
13
+ def save()
14
+ @pid ||= "sample:#{(rand * 1000).to_i}"
15
+ self.class.objects[@pid] = self
16
+ end
17
+
18
+ def update_attributes(attributes)
19
+ attributes.each do |k, v|
20
+ instance_variable_set "@#{k.to_s}".to_sym, v
21
+
22
+ self.class.send :attr_accessor, k
23
+ end
24
+ end
25
+
26
+ def self.find(pid)
27
+ objects[pid]
28
+ end
29
+
30
+ def pid
31
+ @pid
32
+ end
33
+ end
@@ -0,0 +1,5 @@
1
+ # -*- encoding : utf-8 -*-
2
+ class SolrDocument
3
+
4
+ include Blacklight::Solr::Document
5
+ end
@@ -0,0 +1,16 @@
1
+ # -*- encoding : utf-8 -*-
2
+ class CreateSearches < ActiveRecord::Migration
3
+ def self.up
4
+ create_table :searches do |t|
5
+ t.text :query_params
6
+ t.integer :user_id
7
+
8
+ t.timestamps
9
+ end
10
+ add_index :searches, :user_id
11
+ end
12
+
13
+ def self.down
14
+ drop_table :searches
15
+ end
16
+ end
@@ -0,0 +1,33 @@
1
+ require 'rails/generators'
2
+
3
+ class TestAppGenerator < Rails::Generators::Base
4
+ source_root File.expand_path("../../../../support", __FILE__)
5
+
6
+ # Inject call to Hydra::BatchEdit.add_routes in config/routes.rb
7
+ def inject_routes
8
+ insert_into_file "config/routes.rb", :after => '.draw do' do
9
+ "\n # Add HydraHead routes."
10
+ "\n HydraHead.add_routes(self)"
11
+ end
12
+ end
13
+
14
+ def copy_test_fixtures
15
+ copy_file "app/models/generic_content.rb"
16
+ copy_file "spec/fixtures/hydrangea_fixture_mods_article1.foxml.xml"
17
+
18
+ # For testing Hydra::SubmissionWorkflow
19
+ copy_file "spec/fixtures/hydra_test_generic_content.foxml.xml"
20
+ end
21
+
22
+ def run_blacklight_generator
23
+ say_status("warning", "GENERATING BL", :yellow)
24
+
25
+ generate 'blacklight', '--devise'
26
+ end
27
+
28
+ def run_hydra_head_generator
29
+ say_status("warning", "GENERATING HH", :yellow)
30
+
31
+ generate 'hydra:head', '-f'
32
+ end
33
+ end
@@ -0,0 +1,14 @@
1
+ RSpec::Matchers.define :be_html_safe do
2
+ match do |actual|
3
+ actual.html_safe?
4
+ end
5
+ failure_message_for_should do |actual|
6
+ "Expected that #{actual.inspect} would be marked as html safe"
7
+ end
8
+
9
+ failure_message_for_should_not do |actual|
10
+ "Expected that #{actual.inspect} would not be marked as html safe"
11
+ end
12
+ end
13
+
14
+
@@ -0,0 +1,60 @@
1
+ # Tests whether a solr document has the expected field values set.
2
+ # Should work with both Solr::Document and Hash objects
3
+ # Ex.
4
+ # @article.to_solr.should have_solr_fields("read_access_group_t"=>"public")
5
+ # @article.to_solr.should_not have_solr_fields("read_access_group_t"=>["public", "registered"])
6
+ RSpec::Matchers.define :have_solr_fields do |expected|
7
+ match do |actual|
8
+ result = false
9
+ if actual.kind_of?(Hash)
10
+ failures = {}
11
+ expected.each_pair do |field_name, expected_value|
12
+ if actual.has_key?(field_name)
13
+ expected_values = Array(expected_value)
14
+ if expected_values - actual[field_name] != []
15
+ failures.merge!(field_name => expected_value)
16
+ end
17
+ else
18
+ failures.merge!(field_name => expected_value)
19
+ end
20
+ end
21
+ result = failures.empty? ? true : false
22
+ elsif actual.kind_of?(Solr::Document)
23
+ inspected = actual.inspect
24
+ result = false
25
+ expected.each_pair do |field_name, field_value|
26
+ /<Solr::Field.*@name=\"#{field_name.to_s}\".*, @value=\"#{field_value}\".*>/
27
+ result = inspected.include?("@name=\"#{field_name.to_s}\", @boost=nil, @value=\"#{field_value}\"") || \
28
+ inspected.include?("@name=\"#{field_name.to_s}\", @value=\"#{field_value}\", @boost=nil") || \
29
+ inspected.include?("@value=\"#{field_value}\", @boost=nil, @name=\"#{field_name.to_s}\"") || \
30
+ inspected.include?("@value=\"#{field_value}\", @name=\"#{field_name.to_s}\", @boost=nil") || \
31
+ inspected.include?("@boost=nil, @value=\"#{field_value}\", @name=\"#{field_name.to_s}\"") || \
32
+ inspected.include?("@boost=nil, @name=\"#{field_name.to_s}\", @value=\"#{field_value}\"")
33
+ end
34
+ end
35
+ result
36
+ end
37
+
38
+ failure_message_for_should do |actual|
39
+ msg = ""
40
+ if actual.kind_of?(Hash)
41
+ expected.each_pair do |field_name, expected_value|
42
+ msg = "expected that the #{field_name} field would contain #{expected_value.inspect}. Got #{actual[field_name].inspect}"
43
+ end
44
+ else
45
+ msg = "expected that #{expected.keys} would contain a field for #{expected.inspect}"
46
+ end
47
+ msg
48
+ end
49
+
50
+ failure_message_for_should_not do |actual|
51
+ msg = ""
52
+ if actual.kind_of?(Hash)
53
+ expected.each_pair do |field_name, expected_value|
54
+ msg << "expected that the #{field_name} field would not contain #{expected_value.inspect}. Got #{actual[field_name].inspect}"
55
+ end
56
+ else
57
+ msg = "expected that #{actual.inspect} would not contain a field for #{expected.inspect}"
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,138 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <foxml:digitalObject VERSION="1.1" PID="hydra:test_generic_content" xmlns:foxml="info:fedora/fedora-system:def/foxml#" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="info:fedora/fedora-system:def/foxml# http://www.fedora.info/definitions/1/0/foxml1-1.xsd">
3
+ <foxml:objectProperties>
4
+ <foxml:property NAME="info:fedora/fedora-system:def/model#state" VALUE="Active"/>
5
+ <foxml:property NAME="info:fedora/fedora-system:def/model#label" VALUE=""/>
6
+ <foxml:property NAME="info:fedora/fedora-system:def/model#ownerId" VALUE="fedoraAdmin"/>
7
+ <foxml:property NAME="info:fedora/fedora-system:def/model#createdDate" VALUE="2011-07-14T01:28:47.221Z"/>
8
+ <foxml:property NAME="info:fedora/fedora-system:def/view#lastModifiedDate" VALUE="2011-07-14T01:30:56.432Z"/>
9
+ </foxml:objectProperties>
10
+ <foxml:datastream ID="DC" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true">
11
+ <foxml:datastreamVersion ID="DC1.0" LABEL="Dublin Core Record for this object" CREATED="2011-07-14T01:28:47.221Z" MIMETYPE="text/xml" FORMAT_URI="http://www.openarchives.org/OAI/2.0/oai_dc/" SIZE="341">
12
+ <foxml:xmlContent>
13
+ <oai_dc:dc xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/ http://www.openarchives.org/OAI/2.0/oai_dc.xsd">
14
+ <dc:identifier>hydra:test_generic_content</dc:identifier>
15
+ <dc:description>A test object using the GenericContent (active)fedora model</dc:description>
16
+ </oai_dc:dc>
17
+ </foxml:xmlContent>
18
+ </foxml:datastreamVersion>
19
+ </foxml:datastream>
20
+ <foxml:datastream ID="descMetadata" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true">
21
+ <foxml:datastreamVersion ID="descMetadata.1" LABEL="" CREATED="2011-07-14T01:30:13.169Z" MIMETYPE="text/xml" SIZE="1552">
22
+ <foxml:xmlContent>
23
+ <mods xmlns="http://www.loc.gov/mods/v3" xmlns:xlink="http://www.w3.org/1999/xlink" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" version="3.3" xsi:schemaLocation="http://www.loc.gov/mods/v3 http://www.loc.gov/standards/mods/v3/mods-3-3.xsd">
24
+ <titleInfo lang="">
25
+ <title>generic content</title>
26
+ </titleInfo>
27
+ <name type="personal">
28
+ <namePart type="given">Orlob</namePart>
29
+ <namePart type="family">Gryphon</namePart>
30
+ <affiliation>Fantasy</affiliation>
31
+ <role>
32
+ <roleTerm authority="marcrelator" type="text"/>
33
+ </role>
34
+ <description>Mythical Creatures</description>
35
+ </name>
36
+ <typeOfResource/>
37
+ <genre authority="marcgt"/>
38
+ <language>
39
+ <languageTerm authority="iso639-2b" type="code"/>
40
+ </language>
41
+ <physicalDescription>
42
+ <extent/>
43
+ </physicalDescription>
44
+ <abstract>A test object using the GenericContent (active)fedora model</abstract>
45
+ <subject>
46
+ <topic>flying creatures</topic>
47
+ </subject>
48
+ <relatedItem type="host">
49
+ <titleInfo>
50
+ <title/>
51
+ </titleInfo>
52
+ <identifier type="issn"/>
53
+ <originInfo>
54
+ <publisher/>
55
+ <dateIssued/>
56
+ </originInfo>
57
+ <part>
58
+ <detail type="volume">
59
+ <number/>
60
+ </detail>
61
+ <detail type="number">
62
+ <number/>
63
+ </detail>
64
+ <extent unit="pages">
65
+ <start/>
66
+ <end/>
67
+ </extent>
68
+ <date/>
69
+ </part>
70
+ </relatedItem>
71
+ <location>
72
+ <url/>
73
+ </location>
74
+ </mods>
75
+ </foxml:xmlContent>
76
+ </foxml:datastreamVersion>
77
+ </foxml:datastream>
78
+ <foxml:datastream ID="RELS-EXT" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true">
79
+ <foxml:datastreamVersion ID="RELS-EXT.0" LABEL="" CREATED="2011-07-14T01:28:49.031Z" MIMETYPE="text/xml" SIZE="277">
80
+ <foxml:xmlContent>
81
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
82
+ <rdf:Description rdf:about="info:fedora/hydra:test_generic_content">
83
+ <hasModel xmlns="info:fedora/fedora-system:def/model#" rdf:resource="info:fedora/afmodel:GenericContent"/>
84
+ </rdf:Description>
85
+ </rdf:RDF>
86
+ </foxml:xmlContent>
87
+ </foxml:datastreamVersion>
88
+ </foxml:datastream>
89
+ <foxml:datastream ID="rightsMetadata" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true">
90
+ <foxml:datastreamVersion ID="rightsMetadata.1" LABEL="" CREATED="2011-07-14T01:30:56.432Z" MIMETYPE="text/xml" SIZE="777">
91
+ <foxml:xmlContent>
92
+ <rightsMetadata xmlns="http://hydra-collab.stanford.edu/schemas/rightsMetadata/v1" version="0.1">
93
+ <copyright>
94
+ <human/>
95
+ <machine>
96
+ <uvalicense>no</uvalicense>
97
+ </machine>
98
+ </copyright>
99
+ <access type="discover">
100
+ <human/>
101
+ <machine/>
102
+ </access>
103
+ <access type="read">
104
+ <human/>
105
+ <machine>
106
+ <group>researcher</group>
107
+ <group>public</group>
108
+ <group>patron</group>
109
+ <group>donor</group>
110
+ </machine>
111
+ </access>
112
+ <access type="edit">
113
+ <human/>
114
+ <machine>
115
+ <person>archivist1</person>
116
+ <group>archivist</group>
117
+ <group>admin_policy_object_editor</group>
118
+ </machine>
119
+ </access>
120
+ <embargo>
121
+ <human/>
122
+ <machine/>
123
+ </embargo>
124
+ </rightsMetadata>
125
+ </foxml:xmlContent>
126
+ </foxml:datastreamVersion>
127
+ </foxml:datastream>
128
+ <foxml:datastream ID="properties" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true">
129
+ <foxml:datastreamVersion ID="properties.0" LABEL="" CREATED="2011-07-14T01:28:49.367Z" MIMETYPE="text/xml" SIZE="99">
130
+ <foxml:xmlContent>
131
+ <fields>
132
+ <collection>generic_content</collection>
133
+ <depositor>archivist1</depositor>
134
+ </fields>
135
+ </foxml:xmlContent>
136
+ </foxml:datastreamVersion>
137
+ </foxml:datastream>
138
+ </foxml:digitalObject>
@@ -0,0 +1,234 @@
1
+ <?xml version="1.0" encoding="UTF-8"?>
2
+ <foxml:digitalObject VERSION="1.1" PID="hydrangea:fixture_mods_article1"
3
+ xmlns:foxml="info:fedora/fedora-system:def/foxml#"
4
+ xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
5
+ xsi:schemaLocation="info:fedora/fedora-system:def/foxml# http://www.fedora.info/definitions/1/0/foxml1-1.xsd">
6
+ <foxml:objectProperties>
7
+ <foxml:property NAME="info:fedora/fedora-system:def/model#state" VALUE="Active"/>
8
+ <foxml:property NAME="info:fedora/fedora-system:def/model#label" VALUE=""/>
9
+ <foxml:property NAME="info:fedora/fedora-system:def/model#ownerId" VALUE="fedoraAdmin"/>
10
+ <foxml:property NAME="info:fedora/fedora-system:def/model#createdDate" VALUE="2010-06-17T19:56:19.301Z"/>
11
+ <foxml:property NAME="info:fedora/fedora-system:def/view#lastModifiedDate" VALUE="2010-06-17T19:57:30.688Z"/>
12
+ </foxml:objectProperties>
13
+ <foxml:datastream ID="AUDIT" STATE="A" CONTROL_GROUP="X" VERSIONABLE="false">
14
+ <foxml:datastreamVersion ID="AUDIT.0" LABEL="Audit Trail for this object" CREATED="2010-06-17T19:56:19.301Z" MIMETYPE="text/xml" FORMAT_URI="info:fedora/fedora-system:format/xml.fedora.audit">
15
+ <foxml:xmlContent>
16
+ <audit:auditTrail xmlns:audit="info:fedora/fedora-system:def/audit#">
17
+ <audit:record ID="AUDREC1">
18
+ <audit:process type="Fedora API-M"/>
19
+ <audit:action>addDatastream</audit:action>
20
+ <audit:componentID>descMetadata</audit:componentID>
21
+ <audit:responsibility>fedoraAdmin</audit:responsibility>
22
+ <audit:date>2010-06-17T19:56:22.150Z</audit:date>
23
+ <audit:justification></audit:justification>
24
+ </audit:record>
25
+ <audit:record ID="AUDREC2">
26
+ <audit:process type="Fedora API-M"/>
27
+ <audit:action>addDatastream</audit:action>
28
+ <audit:componentID>RELS-EXT</audit:componentID>
29
+ <audit:responsibility>fedoraAdmin</audit:responsibility>
30
+ <audit:date>2010-06-17T19:56:22.353Z</audit:date>
31
+ <audit:justification></audit:justification>
32
+ </audit:record>
33
+ <audit:record ID="AUDREC3">
34
+ <audit:process type="Fedora API-M"/>
35
+ <audit:action>addDatastream</audit:action>
36
+ <audit:componentID>rightsMetadata</audit:componentID>
37
+ <audit:responsibility>fedoraAdmin</audit:responsibility>
38
+ <audit:date>2010-06-17T19:56:23.335Z</audit:date>
39
+ <audit:justification></audit:justification>
40
+ </audit:record>
41
+ <audit:record ID="AUDREC4">
42
+ <audit:process type="Fedora API-M"/>
43
+ <audit:action>addDatastream</audit:action>
44
+ <audit:componentID>properties</audit:componentID>
45
+ <audit:responsibility>fedoraAdmin</audit:responsibility>
46
+ <audit:date>2010-06-17T19:56:23.477Z</audit:date>
47
+ <audit:justification></audit:justification>
48
+ </audit:record>
49
+ <audit:record ID="AUDREC5">
50
+ <audit:process type="Fedora API-M"/>
51
+ <audit:action>modifyObject</audit:action>
52
+ <audit:componentID></audit:componentID>
53
+ <audit:responsibility>fedoraAdmin</audit:responsibility>
54
+ <audit:date>2010-06-17T19:57:30.688Z</audit:date>
55
+ <audit:justification></audit:justification>
56
+ </audit:record>
57
+ </audit:auditTrail>
58
+ </foxml:xmlContent>
59
+ </foxml:datastreamVersion>
60
+ </foxml:datastream>
61
+ <foxml:datastream ID="DC" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true">
62
+ <foxml:datastreamVersion ID="DC1.0" LABEL="Dublin Core Record for this object" CREATED="2010-06-17T19:56:19.301Z" MIMETYPE="text/xml" FORMAT_URI="http://www.openarchives.org/OAI/2.0/oai_dc/" SIZE="360">
63
+ <foxml:xmlContent>
64
+ <oai_dc:dc xmlns:oai_dc="http://www.openarchives.org/OAI/2.0/oai_dc/" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance" xsi:schemaLocation="http://www.openarchives.org/OAI/2.0/oai_dc/ http://www.openarchives.org/OAI/2.0/oai_dc.xsd">
65
+ <dc:identifier>hydrangea:fixture_mods_article1</dc:identifier>
66
+ </oai_dc:dc>
67
+ </foxml:xmlContent>
68
+ </foxml:datastreamVersion>
69
+ </foxml:datastream>
70
+ <foxml:datastream ID="descMetadata" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true">
71
+ <foxml:datastreamVersion ID="descMetadata.0" LABEL="" CREATED="2010-06-17T19:56:22.150Z" MIMETYPE="text/xml" SIZE="19">
72
+ <foxml:xmlContent>
73
+ <mods version="3.0" xsi:schemaLocation="http://www.loc.gov/mods/v3
74
+ http://www.loc.gov/standards/mods/v3/mods-3-0.xsd" xmlns="http://www.loc.gov/mods/v3" xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance">
75
+
76
+ <titleInfo>
77
+ <nonSort>THE</nonSort>
78
+ <title>ARTICLE TITLE</title>
79
+ <subTitle>SUBTITLE</subTitle>
80
+ </titleInfo>
81
+ <titleInfo type="alternative">
82
+ <title>VARYING FORM OF TITLE</title>
83
+ </titleInfo>
84
+
85
+ <name type="personal">
86
+ <namePart type="family">FAMILY NAME</namePart>
87
+ <namePart type="given">GIVEN NAMES</namePart>
88
+ <namePart type="termsOfAddress">DR.</namePart>
89
+ <displayForm>NAME AS IT APPEARS</displayForm>
90
+ <affiliation>FACULTY, UNIVERSITY</affiliation>
91
+ <role>
92
+ <roleTerm authority="marcrelator" type="text">Creator</roleTerm>
93
+ </role>
94
+ </name>
95
+ <name type="personal">
96
+ <namePart type="family">Lacks</namePart>
97
+ <namePart type="given">Henrietta</namePart>
98
+ <displayForm>HeLa</displayForm>
99
+ <affiliation>Baltimore</affiliation>
100
+ <role>
101
+ <roleTerm authority="marcrelator" type="text">Contributor</roleTerm>
102
+ </role>
103
+ </name>
104
+ <name type="corporate">
105
+ <namePart>NSF</namePart>
106
+ <role>
107
+ <roleTerm authority="marcrelator" type="text">Funder</roleTerm>
108
+ </role>
109
+ </name>
110
+ <name type="conference">
111
+ <namePart>some conference</namePart>
112
+ <role>
113
+ <roleTerm authority="marcrelator" type="text">Host</roleTerm>
114
+ </role>
115
+ </name>
116
+
117
+ <typeOfResource>text</typeOfResource>
118
+ <genre authority="local">journal article</genre>
119
+
120
+ <abstract>ABSTRACT</abstract>
121
+ <subject>
122
+ <topic>TOPIC 1</topic>
123
+ <topic>TOPIC 2</topic>
124
+ </subject>
125
+ <subject authority="AUTHORITY SOURCE (RFCD, LCSH)">
126
+ <topic>CONTROLLED TERM</topic>
127
+ </subject>
128
+
129
+ <language>
130
+ <languageTerm authority="iso639-2b" type="code">en-aus </languageTerm>
131
+ </language>
132
+
133
+ <physicalDescription>
134
+ <internetMediaType>application/pdf</internetMediaType>
135
+ <extent>36 p.</extent>
136
+ </physicalDescription>
137
+
138
+ <relatedItem type="host">
139
+ <titleInfo>
140
+ <title>TITLE OF HOST JOURNAL</title>
141
+ </titleInfo>
142
+ <originInfo>
143
+ <publisher>PUBLISHER</publisher>
144
+ <dateIssued>DATE</dateIssued>
145
+ </originInfo>
146
+ <identifier type="issn">0013-8908</identifier>
147
+ <part>
148
+ <detail type="volume">
149
+ <number>2</number>
150
+ </detail>
151
+ <detail type="level">
152
+ <number>2</number>
153
+ </detail>
154
+ <extent unit="pages">
155
+ <start>195</start>
156
+ <end>230</end>
157
+ </extent>
158
+ <date>FEB. 2007</date>
159
+ </part>
160
+ </relatedItem>
161
+
162
+ <identifier type="uri">http://URL.edu.au/</identifier>
163
+ <identifier type="doi">doi:10.1006/jmbi.1995.0238</identifier>
164
+ <location>
165
+ <url>http://URL.edu.au/</url>
166
+ </location>
167
+ <accessCondition type="restrictionOnAccess">EMBARGO NOTE</accessCondition>
168
+ <accessCondition type="use and reproduction">OPEN ACCESS</accessCondition>
169
+
170
+ </mods>
171
+ </foxml:xmlContent>
172
+ </foxml:datastreamVersion>
173
+ </foxml:datastream>
174
+ <foxml:datastream ID="RELS-EXT" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true">
175
+ <foxml:datastreamVersion ID="RELS-EXT.0" LABEL="" CREATED="2010-06-17T19:56:22.353Z" MIMETYPE="text/xml" SIZE="306">
176
+ <foxml:xmlContent>
177
+ <rdf:RDF xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#">
178
+ <rdf:Description rdf:about="info:fedora/hydrangea:fixture_mods_article1">
179
+ <hasModel xmlns="info:fedora/fedora-system:def/relations-external#" rdf:resource="info:fedora/afmodel:ModsAsset"></hasModel>
180
+ </rdf:Description>
181
+ </rdf:RDF>
182
+ </foxml:xmlContent>
183
+ </foxml:datastreamVersion>
184
+ </foxml:datastream>
185
+ <foxml:datastream ID="rightsMetadata" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true">
186
+ <foxml:datastreamVersion ID="rightsMetadata.0" LABEL="" CREATED="2010-06-17T19:56:23.335Z" MIMETYPE="text/xml" SIZE="19">
187
+ <foxml:xmlContent>
188
+ <rightsMetadata xmlns="http://hydra-collab.stanford.edu/schemas/rightsMetadata/v1">
189
+ <copyright>
190
+ <human>(c)2009 The Hydra Project</human>
191
+ <human type="someSpecialisedType">Blah Blah</human>
192
+ <human type="aDifferentType">More blah</human>
193
+ <machine><a rel="license" href="http://creativecommons.org/licenses/publicdomain/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/publicdomain/88x31.png" /></a><br />This work is in the <a rel="license" href="http://creativecommons.org/licenses/publicdomain/">Public Domain</a>.</machine>
194
+ </copyright>
195
+ <access type="discover">
196
+ <human></human>
197
+ <machine>
198
+ <policy>hydra-policy:4502</policy>
199
+ <group>public</group>
200
+ </machine>
201
+ </access>
202
+ <access type="read">
203
+ <human></human>
204
+ <machine>
205
+ <group>public</group>
206
+ </machine>
207
+ </access>
208
+ <access type="edit">
209
+ <human></human>
210
+ <machine>
211
+ <person>researcher1</person>
212
+ <group>archivist</group>
213
+ </machine>
214
+ </access>
215
+ <access type="etc">
216
+ <!-- etc -->
217
+ </access>
218
+ <use>
219
+ <human>You are free to re-distribute this object, but you cannot change it or sell it. </human>
220
+ <machine><a rel="license" href="http://creativecommons.org/licenses/by-nc-nd/3.0/us/"><img alt="Creative Commons License" style="border-width:0" src="http://i.creativecommons.org/l/by-nc-nd/3.0/us/88x31.png" /></a><br />This <span xmlns:dc="http://purl.org/dc/elements/1.1/" href="http://purl.org/dc/dcmitype/Sound" rel="dc:type">work</span> is licensed under a <a rel="license" href="http://creativecommons.org/licenses/by-nc-nd/3.0/us/">Creative Commons Attribution-Noncommercial-No Derivative Works 3.0 United States License</a>.</machine>
221
+ </use>
222
+
223
+ </rightsMetadata>
224
+ </foxml:xmlContent>
225
+ </foxml:datastreamVersion>
226
+ </foxml:datastream>
227
+ <foxml:datastream ID="properties" STATE="A" CONTROL_GROUP="X" VERSIONABLE="true">
228
+ <foxml:datastreamVersion ID="properties.0" LABEL="" CREATED="2010-06-17T19:56:23.477Z" MIMETYPE="text/xml" SIZE="19">
229
+ <foxml:xmlContent>
230
+ <fields></fields>
231
+ </foxml:xmlContent>
232
+ </foxml:datastreamVersion>
233
+ </foxml:datastream>
234
+ </foxml:digitalObject>