1 package OpenILS::Application::Storage::CDBI;
4 use base qw/Class::DBI/;
8 use OpenILS::Application::Storage::CDBI::actor;
9 use OpenILS::Application::Storage::CDBI::asset;
10 use OpenILS::Application::Storage::CDBI::biblio;
11 use OpenILS::Application::Storage::CDBI::metabib;
14 #-------------------------------------------------------------------------------
15 asset::copy->has_a( call_number => 'asset::call_number' );
16 asset::copy->might_have( metadata => 'asset::copy_metadata' );
17 #-------------------------------------------------------------------------------
18 asset::copy_metadata->might_have( copy => 'asset::copy' );
19 #asset::copy_metadata->has_a( ciruclating_location => 'actor::org_unit');
20 #asset::copy_metadata->has_a( hold_radius => 'actor::org_unit_type');
21 #-------------------------------------------------------------------------------
22 asset::call_number->has_a( record => 'biblio::record_entry' );
23 asset::call_number->has_many( copies => 'asset::copy' );
24 #-------------------------------------------------------------------------------
27 #-------------------------------------------------------------------------------
28 biblio::record_note->has_a( record => 'biblio::record_entry' );
29 #-------------------------------------------------------------------------------
30 biblio::record_entry->has_many( notes => 'biblio::record_note' );
31 biblio::record_entry->has_many( nodes => 'biblio::record_node', { order_by => 'intra_doc_id' } );
32 biblio::record_entry->has_many( call_numbers => 'asset::call_number' );
33 biblio::record_entry->has_a( metarecord => 'metabib::metarecord' );
35 # should we have just one field entry per class for each record???? (xslt vs xpath)
36 #biblio::record_entry->has_a( title_field_entries => 'metabib::title_field_entry' );
37 #biblio::record_entry->has_a( author_field_entries => 'metabib::author_field_entry' );
38 #biblio::record_entry->has_a( subject_field_entries => 'metabib::subject_field_entry' );
39 #biblio::record_entry->has_a( keyword_field_entries => 'metabib::keyword_field_entry' );
40 #-------------------------------------------------------------------------------
41 biblio::record_node->has_a( owner_doc => 'biblio::record_entry' );
42 #biblio::record_node->has_a(
43 # parent_node => 'biblio::record_node::subnode',
44 # inflate => sub { return biblio::record_node::subnode::_load(@_) }
46 #-------------------------------------------------------------------------------
48 #-------------------------------------------------------------------------------
49 #metabib::metarecord->has_a( master_record => 'biblio::record_entry' );
50 #-------------------------------------------------------------------------------
51 #metabib::title_field_entry->has_a( field => 'config::metabib_field_map' );
52 #-------------------------------------------------------------------------------
53 #metabib::author_field_entry->has_a( field => 'config::metabib_field_map' );
54 #-------------------------------------------------------------------------------
55 #metabib::subject_field_entry->has_a( field => 'config::metabib_field_map' );
56 #-------------------------------------------------------------------------------
57 #metabib::keyword_field_entry->has_a( field => 'config::metabib_field_map' );
58 #-------------------------------------------------------------------------------
61 # should we have just one field entry per class for each record???? (xslt vs xpath)
62 #metabib::title_field_entry_source_map->has_a( field_entry => 'metabib::title_field_entry' );
63 #metabib::title_field_entry_source_map->has_a( source_record => 'biblio::record_entry' );
64 #-------------------------------------------------------------------------------
65 #metabib::subject_field_entry_source_map->has_a( field_entry => 'metabib::subject_field_entry' );
66 #metabib::subject_field_entry_source_map->has_a( source_record => 'biblio::record_entry' );
67 #-------------------------------------------------------------------------------
68 #metabib::author_field_entry_source_map->has_a( field_entry => 'metabib::author_field_entry' );
69 #metabib::author_field_entry_source_map->has_a( source_record => 'biblio::record_entry' );
70 #-------------------------------------------------------------------------------
71 #metabib::keyword_field_entry_source_map->has_a( field_entry => 'metabib::keyword_field_entry' );
72 #metabib::keyword_field_entry_source_map->has_a( source_record => 'biblio::record_entry' );
73 #-------------------------------------------------------------------------------