active-fedora 11.0.0.rc7 → 11.0.0

Sign up to get free protection for your applications and to get access to all the features.
Files changed (61) hide show
  1. checksums.yaml +4 -4
  2. data/.gitignore +1 -0
  3. data/.rubocop.yml +2 -7
  4. data/.rubocop_todo.yml +40 -9
  5. data/active-fedora.gemspec +2 -2
  6. data/lib/active_fedora/associations/collection_association.rb +1 -1
  7. data/lib/active_fedora/associations/contained_finder.rb +2 -2
  8. data/lib/active_fedora/change_set.rb +6 -2
  9. data/lib/active_fedora/core.rb +18 -7
  10. data/lib/active_fedora/fedora_attributes.rb +1 -1
  11. data/lib/active_fedora/indexing_service.rb +0 -4
  12. data/lib/active_fedora/orders/ordered_list.rb +2 -2
  13. data/lib/active_fedora/relation/delegation.rb +4 -0
  14. data/lib/active_fedora/solr_hit.rb +0 -4
  15. data/lib/active_fedora/solr_query_builder.rb +16 -12
  16. data/lib/active_fedora/version.rb +1 -1
  17. data/spec/config_helper.rb +1 -1
  18. data/spec/integration/autosave_association_spec.rb +1 -1
  19. data/spec/integration/base_spec.rb +1 -1
  20. data/spec/integration/file_spec.rb +1 -1
  21. data/spec/integration/indexing_spec.rb +1 -1
  22. data/spec/integration/query_result_builder_spec.rb +1 -1
  23. data/spec/integration/relation_delegation_spec.rb +1 -3
  24. data/spec/integration/versionable_spec.rb +4 -4
  25. data/spec/spec_helper.rb +52 -3
  26. data/spec/unit/active_fedora_spec.rb +1 -1
  27. data/spec/unit/association_hash_spec.rb +8 -22
  28. data/spec/unit/attached_files_spec.rb +6 -6
  29. data/spec/unit/base_cma_spec.rb +1 -1
  30. data/spec/unit/base_extra_spec.rb +2 -18
  31. data/spec/unit/base_spec.rb +1 -1
  32. data/spec/unit/callback_spec.rb +2 -2
  33. data/spec/unit/checksum_spec.rb +2 -2
  34. data/spec/unit/code_configurator_spec.rb +1 -1
  35. data/spec/unit/core_spec.rb +36 -0
  36. data/spec/unit/default_model_mapper_spec.rb +3 -3
  37. data/spec/unit/file_configurator_spec.rb +4 -4
  38. data/spec/unit/file_path_builder_spec.rb +1 -1
  39. data/spec/unit/file_spec.rb +1 -1
  40. data/spec/unit/files_hash_spec.rb +2 -2
  41. data/spec/unit/finder_methods_spec.rb +3 -3
  42. data/spec/unit/has_and_belongs_to_many_association_spec.rb +0 -2
  43. data/spec/unit/has_many_association_spec.rb +2 -2
  44. data/spec/unit/indexing_spec.rb +2 -2
  45. data/spec/unit/logger_spec.rb +1 -1
  46. data/spec/unit/orders/reflection_spec.rb +1 -1
  47. data/spec/unit/property_spec.rb +2 -2
  48. data/spec/unit/query_spec.rb +1 -1
  49. data/spec/unit/reflection_spec.rb +3 -3
  50. data/spec/unit/solr_config_options_spec.rb +1 -1
  51. data/spec/unit/solr_service_spec.rb +4 -10
  52. data/spec/unit/with_metadata/default_metadata_class_factory_spec.rb +1 -1
  53. data/spec/unit/with_metadata/metadata_node_spec.rb +1 -1
  54. metadata +10 -17
  55. data/spec/fixtures/damsObjectModel.xml +0 -38
  56. data/spec/fixtures/dublin_core_rdf_descMetadata.nt +0 -13
  57. data/spec/fixtures/mixed_rdf_descMetadata.nt +0 -7
  58. data/spec/fixtures/mods_articles/mods_article1.xml +0 -98
  59. data/spec/fixtures/solr_rdf_descMetadata.nt +0 -7
  60. data/spec/samples/oral_history_sample.xml +0 -38
  61. data/spec/samples/oral_history_xml.xml +0 -35
@@ -7,8 +7,6 @@ describe ActiveFedora::Associations::HasAndBelongsToManyAssociation do
7
7
  end
8
8
  class Page < ActiveFedora::Base
9
9
  end
10
- allow_any_instance_of(Book).to receive(:load_datastreams).and_return(false)
11
- allow_any_instance_of(Page).to receive(:load_datastreams).and_return(false)
12
10
 
13
11
  allow(book).to receive(:new_record?).and_return(false)
14
12
  allow(book).to receive(:save).and_return(true)
@@ -110,8 +110,8 @@ describe ActiveFedora::Associations::HasManyAssociation do
110
110
  end
111
111
 
112
112
  describe "#ids_reader" do
113
- let(:owner) { double('owner') }
114
- let(:reflection) { double('reflection', check_validity!: true) }
113
+ let(:owner) { instance_double(ActiveFedora::Base) }
114
+ let(:reflection) { instance_double(ActiveFedora::Reflection::AssociationReflection, check_validity!: true) }
115
115
  let(:association) { described_class.new(owner, reflection) }
116
116
 
117
117
  let(:r1) { ActiveFedora::Base.new(id: 'r1-id', &:mark_for_destruction) }
@@ -72,8 +72,8 @@ describe ActiveFedora::Indexing do
72
72
  end
73
73
 
74
74
  context "with attached files" do
75
- let(:mock1) { double("ds1") }
76
- let(:mock2) { double("ds2") }
75
+ let(:mock1) { instance_double(ActiveFedora::File) }
76
+ let(:mock2) { instance_double(ActiveFedora::File) }
77
77
 
78
78
  it "calls .to_solr on all datastreams, passing the resulting document to solr" do
79
79
  expect(mock1).to receive(:to_solr).and_return("one" => "title one")
@@ -1,7 +1,7 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe ActiveFedora::Base do
4
- let(:logger1) { double(debug?: false) }
4
+ let(:logger1) { instance_double(::Logger, debug?: false) }
5
5
 
6
6
  before do
7
7
  @initial_logger = described_class.logger
@@ -6,7 +6,7 @@ RSpec.describe ActiveFedora::Reflection::OrdersReflection do
6
6
  let(:name) { "ordered_member_proxies" }
7
7
  let(:options) { {} }
8
8
  let(:scope) { nil }
9
- let(:active_fedora) { double("active_fedora") }
9
+ let(:active_fedora) { instance_double(ActiveFedora::Base) }
10
10
 
11
11
  describe "#klass" do
12
12
  it "is a proxy" do
@@ -1,8 +1,8 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe ActiveFedora::Property do
4
- before(:each) do
5
- @test_property = described_class.new(double("model_stub"), "file_name", :string)
4
+ before do
5
+ @test_property = described_class.new(instance_double(ActiveFedora::Base), "file_name", :string)
6
6
  end
7
7
 
8
8
  it 'provides .new' do
@@ -8,7 +8,7 @@ describe ActiveFedora::Base do
8
8
  end
9
9
  end
10
10
  let(:sort_query) { ActiveFedora.index_field_mapper.solr_name("system_create", :stored_sortable, type: :date) + ' asc' }
11
- let(:model_query) { "_query_:\"{!field f=has_model_ssim}SpecModel::Basic\"" }
11
+ let(:model_query) { "_query_:\"{!raw f=has_model_ssim}SpecModel::Basic\"" }
12
12
 
13
13
  after(:all) do
14
14
  Object.send(:remove_const, :SpecModel)
@@ -4,14 +4,14 @@ describe ActiveFedora::Reflection::AssociationReflection do
4
4
  describe "#derive_foreign_key" do
5
5
  let(:name) { 'dummy' }
6
6
  let(:options) { { inverse_of: :default_permissions } }
7
- let(:active_fedora) { double }
7
+ let(:active_fedora) { instance_double(ActiveFedora::Base) }
8
8
  subject { instance.send :derive_foreign_key }
9
9
 
10
10
  context "when a has_many" do
11
11
  let(:instance) { ActiveFedora::Reflection::HasManyReflection.new(name, nil, options, active_fedora) }
12
12
 
13
13
  context "and the inverse is a collection association" do
14
- let(:inverse) { double(collection?: true) }
14
+ let(:inverse) { instance_double(ActiveFedora::Reflection::HasAndBelongsToManyReflection, collection?: true) }
15
15
  before { allow(instance).to receive(:inverse_of).and_return(inverse) }
16
16
  it { is_expected.to eq 'default_permission_ids' }
17
17
  end
@@ -28,7 +28,7 @@ describe ActiveFedora::Reflection::AssociationReflection do
28
28
  after { Object.send(:remove_const, :Dummy) }
29
29
  let(:name) { 'dummy' }
30
30
  let(:options) { { as: 'foothing' } }
31
- let(:active_fedora) { double }
31
+ let(:active_fedora) { instance_double(ActiveFedora::Base) }
32
32
  subject { instance.send :automatic_inverse_of }
33
33
 
34
34
  context "when a has_many" do
@@ -25,7 +25,7 @@ describe ActiveFedora do
25
25
  it "is used by ActiveFedora::Base#search_with_conditions" do
26
26
  mock_response = double("SolrResponse")
27
27
  expect(ActiveFedora::SolrService).to receive(:query)
28
- .with("_query_:\"{!field f=has_model_ssim}SolrSpecModel::Basic\" AND " \
28
+ .with("_query_:\"{!raw f=has_model_ssim}SolrSpecModel::Basic\" AND " \
29
29
  "_query_:\"{!field f=#{field}}changeme:30\"",
30
30
  sort: ["#{described_class.index_field_mapper.solr_name('system_create', :stored_sortable, type: :date)} asc"])
31
31
  .and_return(mock_response)
@@ -9,6 +9,8 @@ describe ActiveFedora::SolrService do
9
9
  described_class.reset!
10
10
  end
11
11
 
12
+ let(:mock_conn) { instance_double(RSolr::Client) }
13
+
12
14
  describe '#conn' do
13
15
  it "takes a n-arg constructor and configure for localhost" do
14
16
  expect(RSolr).to receive(:connect).with(read_timeout: 120, open_timeout: 120, url: 'http://localhost:8080/solr')
@@ -21,10 +23,9 @@ describe ActiveFedora::SolrService do
21
23
  end
22
24
 
23
25
  describe '#conn=' do
24
- let(:new_connection) { double }
25
26
  it 'is settable' do
26
- described_class.instance.conn = new_connection
27
- expect(described_class.instance.conn).to eq new_connection
27
+ described_class.instance.conn = mock_conn
28
+ expect(described_class.instance.conn).to eq mock_conn
28
29
  end
29
30
  end
30
31
 
@@ -44,14 +45,12 @@ describe ActiveFedora::SolrService do
44
45
 
45
46
  describe "#get" do
46
47
  it "calls solr" do
47
- mock_conn = double("Connection")
48
48
  stub_result = double("Result")
49
49
  expect(mock_conn).to receive(:get).with('select', params: { q: 'querytext', qt: 'standard' }).and_return(stub_result)
50
50
  allow(described_class).to receive(:instance).and_return(double("instance", conn: mock_conn))
51
51
  expect(described_class.get('querytext')).to eq stub_result
52
52
  end
53
53
  it "uses select_path" do
54
- mock_conn = double("Connection")
55
54
  stub_result = double("Result")
56
55
  expect(mock_conn).to receive(:get).with('select_test', params: { q: 'querytext', qt: 'standard' }).and_return(stub_result)
57
56
  expect(described_class).to receive(:select_path).and_return('select_test')
@@ -65,7 +64,6 @@ describe ActiveFedora::SolrService do
65
64
  let(:docs) { [doc] }
66
65
 
67
66
  it "wraps the solr response documents in Solr hits" do
68
- mock_conn = double("Connection")
69
67
  stub_result = { 'response' => { 'docs' => docs } }
70
68
  expect(mock_conn).to receive(:get).with('select', params: { q: 'querytext', qt: 'standard' }).and_return(stub_result)
71
69
  allow(described_class).to receive(:instance).and_return(double("instance", conn: mock_conn))
@@ -77,14 +75,12 @@ describe ActiveFedora::SolrService do
77
75
 
78
76
  describe ".count" do
79
77
  it "returns a count of matching records" do
80
- mock_conn = double("Connection")
81
78
  stub_result = { 'response' => { 'numFound' => '7' } }
82
79
  expect(mock_conn).to receive(:get).with('select', params: { rows: 0, q: 'querytext', qt: 'standard' }).and_return(stub_result)
83
80
  allow(described_class).to receive(:instance).and_return(double("instance", conn: mock_conn))
84
81
  expect(described_class.count('querytext')).to eq 7
85
82
  end
86
83
  it "accepts query args" do
87
- mock_conn = double("Connection")
88
84
  stub_result = { 'response' => { 'numFound' => '7' } }
89
85
  expect(mock_conn).to receive(:get).with('select', params: { rows: 0, q: 'querytext', qt: 'standard', fq: 'filter' }).and_return(stub_result)
90
86
  allow(described_class).to receive(:instance).and_return(double("instance", conn: mock_conn))
@@ -104,7 +100,6 @@ describe ActiveFedora::SolrService do
104
100
 
105
101
  describe ".add" do
106
102
  it "calls solr" do
107
- mock_conn = double("Connection")
108
103
  doc = { 'id' => '1234' }
109
104
  expect(mock_conn).to receive(:add).with(doc, params: {})
110
105
  allow(described_class).to receive(:instance).and_return(double("instance", conn: mock_conn))
@@ -114,7 +109,6 @@ describe ActiveFedora::SolrService do
114
109
 
115
110
  describe ".commit" do
116
111
  it "calls solr" do
117
- mock_conn = double("Connection")
118
112
  expect(mock_conn).to receive(:commit)
119
113
  allow(described_class).to receive(:instance).and_return(double("instance", conn: mock_conn))
120
114
  described_class.commit
@@ -1,7 +1,7 @@
1
1
  require 'spec_helper'
2
2
 
3
3
  describe ActiveFedora::WithMetadata::DefaultMetadataClassFactory do
4
- let(:parent) { double("Parent") }
4
+ let(:parent) { class_double(ActiveFedora::File) }
5
5
  let(:object) { described_class.new }
6
6
 
7
7
  describe "default class attributes" do
@@ -37,7 +37,7 @@ describe ActiveFedora::WithMetadata::MetadataNode do
37
37
  end
38
38
 
39
39
  it "is expected to have the rdf type statement" do
40
- expect(changes_for_update[::RDF.type]).to be_kind_of RDF::Queryable::Enumerator
40
+ expect(changes_for_update[::RDF.type]).to be_present
41
41
  end
42
42
  end
43
43
  end
metadata CHANGED
@@ -1,7 +1,7 @@
1
1
  --- !ruby/object:Gem::Specification
2
2
  name: active-fedora
3
3
  version: !ruby/object:Gem::Version
4
- version: 11.0.0.rc7
4
+ version: 11.0.0
5
5
  platform: ruby
6
6
  authors:
7
7
  - Matt Zumwalt
@@ -10,7 +10,7 @@ authors:
10
10
  autorequire:
11
11
  bindir: bin
12
12
  cert_chain: []
13
- date: 2016-08-18 00:00:00.000000000 Z
13
+ date: 2016-09-13 00:00:00.000000000 Z
14
14
  dependencies:
15
15
  - !ruby/object:Gem::Dependency
16
16
  name: rsolr
@@ -18,20 +18,20 @@ dependencies:
18
18
  requirements:
19
19
  - - "~>"
20
20
  - !ruby/object:Gem::Version
21
- version: '1.0'
21
+ version: '1.1'
22
22
  - - ">="
23
23
  - !ruby/object:Gem::Version
24
- version: 1.0.10
24
+ version: 1.1.2
25
25
  type: :runtime
26
26
  prerelease: false
27
27
  version_requirements: !ruby/object:Gem::Requirement
28
28
  requirements:
29
29
  - - "~>"
30
30
  - !ruby/object:Gem::Version
31
- version: '1.0'
31
+ version: '1.1'
32
32
  - - ">="
33
33
  - !ruby/object:Gem::Version
34
- version: 1.0.10
34
+ version: 1.1.2
35
35
  - !ruby/object:Gem::Dependency
36
36
  name: solrizer
37
37
  requirement: !ruby/object:Gem::Requirement
@@ -92,14 +92,14 @@ dependencies:
92
92
  requirements:
93
93
  - - "~>"
94
94
  - !ruby/object:Gem::Version
95
- version: 0.10.0
95
+ version: 0.11.0
96
96
  type: :runtime
97
97
  prerelease: false
98
98
  version_requirements: !ruby/object:Gem::Requirement
99
99
  requirements:
100
100
  - - "~>"
101
101
  - !ruby/object:Gem::Version
102
- version: 0.10.0
102
+ version: 0.11.0
103
103
  - !ruby/object:Gem::Dependency
104
104
  name: deprecation
105
105
  requirement: !ruby/object:Gem::Requirement
@@ -530,20 +530,15 @@ files:
530
530
  - script/destroy
531
531
  - script/generate
532
532
  - spec/config_helper.rb
533
- - spec/fixtures/damsObjectModel.xml
534
533
  - spec/fixtures/dino.jpg
535
534
  - spec/fixtures/dino_jpg_no_file_ext
536
- - spec/fixtures/dublin_core_rdf_descMetadata.nt
537
535
  - spec/fixtures/minivan.jpg
538
- - spec/fixtures/mixed_rdf_descMetadata.nt
539
- - spec/fixtures/mods_articles/mods_article1.xml
540
536
  - spec/fixtures/rails_root/config/fake_fedora.yml
541
537
  - spec/fixtures/rails_root/config/fedora.yml
542
538
  - spec/fixtures/rails_root/config/solr.yml
543
539
  - spec/fixtures/rails_root/config/solr_mappings.yml
544
540
  - spec/fixtures/rails_root/config/solr_mappings_af_0.1.yml
545
541
  - spec/fixtures/rails_root/config/solr_mappings_bl_2.4.yml
546
- - spec/fixtures/solr_rdf_descMetadata.nt
547
542
  - spec/integration/associations/rdf_spec.rb
548
543
  - spec/integration/associations_spec.rb
549
544
  - spec/integration/attached_files_spec.rb
@@ -586,8 +581,6 @@ files:
586
581
  - spec/integration/versionable_spec.rb
587
582
  - spec/integration/with_metadata_spec.rb
588
583
  - spec/rcov.opts
589
- - spec/samples/oral_history_sample.xml
590
- - spec/samples/oral_history_xml.xml
591
584
  - spec/spec.opts
592
585
  - spec/spec_helper.rb
593
586
  - spec/support/an_active_model.rb
@@ -676,9 +669,9 @@ required_ruby_version: !ruby/object:Gem::Requirement
676
669
  version: '2.0'
677
670
  required_rubygems_version: !ruby/object:Gem::Requirement
678
671
  requirements:
679
- - - ">"
672
+ - - ">="
680
673
  - !ruby/object:Gem::Version
681
- version: 1.3.1
674
+ version: '0'
682
675
  requirements: []
683
676
  rubyforge_project:
684
677
  rubygems_version: 2.5.1
@@ -1,38 +0,0 @@
1
- <rdf:RDF
2
- xmlns:rdf="http://www.w3.org/1999/02/22-rdf-syntax-ns#"
3
- xmlns:dams="http://library.ucsd.edu/ontology/dams#"
4
- xmlns:mads="http://www.loc.gov/mads/rdf/v1#"
5
- xmlns:damsid="http://library.ucsd.edu/ark:/20775/">
6
- <dams:Object rdf:about="http://library.ucsd.edu/ark:/20775/">
7
- <dams:title rdf:parseType="Resource">
8
- <rdf:value>example title</rdf:value>
9
- <dams:relatedTitle rdf:parseType="Resource">
10
- <rdf:value xml:lang="fr">example translated relatedTitle</rdf:value>
11
- <dams:type>translated</dams:type>
12
- </dams:relatedTitle>
13
- </dams:title>
14
-
15
- <dams:date rdf:parseType="Resource">
16
- <dams:beginDate>2012-11-27</dams:beginDate>
17
- <dams:endDate>2012-11-30</dams:endDate>
18
- <rdf:value>2012-11-29</rdf:value>
19
- </dams:date>
20
-
21
- <dams:language rdf:resource="http://library.ucsd.edu/ark:/20775/bb12345678"/>
22
- <dams:typeOfResource>image</dams:typeOfResource>
23
- <dams:otherResource>
24
- <dams:RelatedResource>
25
- <dams:type>online exhibit</dams:type>
26
- <dams:description>foo</dams:description>
27
- <dams:uri>http://library.ucsd.edu/test/foo/</dams:uri>
28
- </dams:RelatedResource>
29
- </dams:otherResource>
30
- <dams:relationship>
31
- <dams:Relationship>
32
- <dams:role rdf:resource="http://library.ucsd.edu/ark:/20775/bd55639754"/>
33
- <dams:name rdf:resource="http://library.ucsd.edu/ark:/20775/bb08080808"/>
34
- </dams:Relationship>
35
- </dams:relationship>
36
- <dams:assembledCollection rdf:resource="http://library.ucsd.edu/ark:/20775/bb03030303"/>
37
- </dams:Object>
38
- </rdf:RDF>
@@ -1,13 +0,0 @@
1
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/description> "This is a work by JD in the field of biology." .
2
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/publisher> "Penn State" .
3
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/contributor> "Department of Bioinformatics" .
4
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/created> "2010-12-31"^^<http://www.w3.org/2001/XMLSchema#date> .
5
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/title> "Title of work" .
6
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/subject> "Biology" .
7
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/language> "en" .
8
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/date> "2009-12-31"^^<http://www.w3.org/2001/XMLSchema#date> .
9
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/rights> "insert rights statement here" .
10
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/type> <http://purl.org/dc/dcmitype/Image> .
11
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/format> "image/jpeg" .
12
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/creator> "John Doe" .
13
- <http://id.psu.edu/object42> <http://purl.org/dc/terms/identifier> "old:identifier:7779" .
@@ -1,7 +0,0 @@
1
- <http://localhost:8983/fedora/rest/test/test:1> <http://purl.org/dc/terms/created> "2010-12-31"^^<http://www.w3.org/2001/XMLSchema#date> .
2
- <http://localhost:8983/fedora/rest/test/test:1> <http://purl.org/dc/terms/title> "Title of work" .
3
- <http://localhost:8983/fedora/rest/test/test:1> <http://purl.org/dc/terms/publisher> "Penn State" .
4
- <http://localhost:8983/fedora/rest/test/test:1> <http://xmlns.com/foaf/0.1/based_near> "New York, NY, US" .
5
- <http://localhost:8983/fedora/rest/test/test:1> <http://www.w3.org/2000/01/rdf-schema#seeAlso> <http://google.com/> .
6
- <http://localhost:8983/fedora/rest/test/test:1/content> <http://purl.org/dc/terms/title> "Title of datastream" .
7
-
@@ -1,98 +0,0 @@
1
- <mods version="3.0" xsi:schemaLocation="http://www.loc.gov/mods/v3
2
- 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">
3
-
4
- <titleInfo>
5
- <nonSort>THE</nonSort>
6
- <title>ARTICLE TITLE</title>
7
- <subTitle>SUBTITLE</subTitle>
8
- </titleInfo>
9
- <titleInfo type="alternative">
10
- <title>VARYING FORM OF TITLE</title>
11
- </titleInfo>
12
-
13
- <name type="personal">
14
- <namePart type="family">FAMILY NAME</namePart>
15
- <namePart type="given">GIVEN NAMES</namePart>
16
- <namePart type="termsOfAddress">DR.</namePart>
17
- <displayForm>NAME AS IT APPEARS</displayForm>
18
- <affiliation>FACULTY, UNIVERSITY</affiliation>
19
- <role>
20
- <roleTerm authority="marcrelator" type="text">Creator</roleTerm>
21
- </role>
22
- </name>
23
- <name type="personal">
24
- <namePart type="family">Lacks</namePart>
25
- <namePart type="given">Henrietta</namePart>
26
- <displayForm>HeLa</displayForm>
27
- <affiliation>Baltimore</affiliation>
28
- <role>
29
- <roleTerm authority="marcrelator" type="text">Contributor</roleTerm>
30
- </role>
31
- </name>
32
- <name type="corporate">
33
- <namePart>NSF</namePart>
34
- <role>
35
- <roleTerm authority="marcrelator" type="text">Funder</roleTerm>
36
- </role>
37
- </name>
38
- <name type="conference">
39
- <namePart>some conference</namePart>
40
- <role>
41
- <roleTerm authority="marcrelator" type="text">Host</roleTerm>
42
- </role>
43
- </name>
44
-
45
- <typeOfResource>text</typeOfResource>
46
- <genre authority="local">journal article</genre>
47
-
48
- <abstract>ABSTRACT</abstract>
49
- <subject>
50
- <topic>TOPIC 1</topic>
51
- <topic>TOPIC 2</topic>
52
- </subject>
53
- <subject authority="AUTHORITY SOURCE (RFCD, LCSH)">
54
- <topic>CONTROLLED TERM</topic>
55
- </subject>
56
-
57
- <language>
58
- <languageTerm authority="iso639-2b" type="code">en-aus </languageTerm>
59
- </language>
60
-
61
- <physicalDescription>
62
- <internetMediaType>application/pdf</internetMediaType>
63
- <extent>36 p.</extent>
64
- </physicalDescription>
65
-
66
- <relatedItem type="host">
67
- <titleInfo>
68
- <title>TITLE OF HOST JOURNAL</title>
69
- </titleInfo>
70
- <originInfo>
71
- <publisher>PUBLISHER</publisher>
72
- <dateIssued>DATE</dateIssued>
73
- </originInfo>
74
- <identifier type="issn">0013-8908</identifier>
75
- <part>
76
- <detail type="volume">
77
- <number>2</number>
78
- </detail>
79
- <detail type="level">
80
- <number>2</number>
81
- </detail>
82
- <extent unit="pages">
83
- <start>195</start>
84
- <end>230</end>
85
- </extent>
86
- <date>FEB. 2007</date>
87
- </part>
88
- </relatedItem>
89
-
90
- <identifier type="uri">http://URL.edu.au/</identifier>
91
- <identifier type="doi">doi:10.1006/jmbi.1995.0238</identifier>
92
- <location>
93
- <url>http://URL.edu.au/</url>
94
- </location>
95
- <accessCondition type="restrictionOnAccess">EMBARGO NOTE</accessCondition>
96
- <accessCondition type="use and reproduction">OPEN ACCESS</accessCondition>
97
-
98
- </mods>