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' );
34 # should we have just one field entry per class for each record???? (xslt vs xpath)
35 #biblio::record_entry->has_a( title_field_entries => 'metabib::title_field_entry' );
36 #biblio::record_entry->has_a( author_field_entries => 'metabib::author_field_entry' );
37 #biblio::record_entry->has_a( subject_field_entries => 'metabib::subject_field_entry' );
38 #biblio::record_entry->has_a( keyword_field_entries => 'metabib::keyword_field_entry' );
39 #-------------------------------------------------------------------------------
40 biblio::record_node->has_a( owner_doc => 'biblio::record_entry' );
41 #biblio::record_node->has_a(
42 # parent_node => 'biblio::record_node::subnode',
43 # inflate => sub { return biblio::record_node::subnode::_load(@_) }
45 #-------------------------------------------------------------------------------
47 #-------------------------------------------------------------------------------
48 #metabib::metarecord->has_a( master_record => 'biblio::record_entry' );
49 #-------------------------------------------------------------------------------
50 #metabib::title_field_entry->has_a( field => 'config::metabib_field_map' );
51 #-------------------------------------------------------------------------------
52 #metabib::author_field_entry->has_a( field => 'config::metabib_field_map' );
53 #-------------------------------------------------------------------------------
54 #metabib::subject_field_entry->has_a( field => 'config::metabib_field_map' );
55 #-------------------------------------------------------------------------------
56 #metabib::keyword_field_entry->has_a( field => 'config::metabib_field_map' );
57 #-------------------------------------------------------------------------------
60 # should we have just one field entry per class for each record???? (xslt vs xpath)
61 #metabib::title_field_entry_source_map->has_a( field_entry => 'metabib::title_field_entry' );
62 #metabib::title_field_entry_source_map->has_a( source_record => 'biblio::record_entry' );
63 #-------------------------------------------------------------------------------
64 #metabib::subject_field_entry_source_map->has_a( field_entry => 'metabib::subject_field_entry' );
65 #metabib::subject_field_entry_source_map->has_a( source_record => 'biblio::record_entry' );
66 #-------------------------------------------------------------------------------
67 #metabib::author_field_entry_source_map->has_a( field_entry => 'metabib::author_field_entry' );
68 #metabib::author_field_entry_source_map->has_a( source_record => 'biblio::record_entry' );
69 #-------------------------------------------------------------------------------
70 #metabib::keyword_field_entry_source_map->has_a( field_entry => 'metabib::keyword_field_entry' );
71 #metabib::keyword_field_entry_source_map->has_a( source_record => 'biblio::record_entry' );
72 #-------------------------------------------------------------------------------