User Tools

Site Tools


opacmarc_segun_django

OpacMarc según Django

Estas son unas notas iniciadas en marzo de 2008, cuando entré en contacto por primera vez con el framework Django. — Fernando Gómez 2009/05/13 23:08

Ver también:

Las URLs pueden organizarse según:

  • Base consultada:
    • headings (name, subj)
    • title
    • biblio
    • class
  • Tipo de consulta:
    • browse (headings, title, biblio, class)
    • keyword match (heading, biblio, class)
    • heading match (biblio)
  • Tipo de resultado:
    • list of headings
    • list of bib records
    • single bib record
    • class table

¿El parámetro <db>, presente en todas las URLs, podría ser guardado como variable de la sesión? Tal vez podría estar implícito, mediante archivo de configuración, o como parte del dominio (e.g. bibima.opac.uns.edu.ar).

Si tuviéramos subcatálogos, el nombre del subcatálogo debería ser otro parámetro en la URL.

¿El contexto de un registro (la lista de registros a la que pertenece) se puede almacenar en la sesión?

Ver cómo Django maneja la paginación de listas.

Templates:

  • base
  • header
  • footer
  • home

Aux functions (based on existing *.pfts and *.xis):

  • bib_sort_key()
  • doc_type()
  • clean_heading()
  • compact_dates()
  • agrep()
  • find_suggestions()

Tabla

-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
URL                                                         Response / Comments                                       Views (functions)        Templates
-------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------
Root:
  /                                                         No db specified, show menu of available dbs?
  
Search forms:
  /<db>/search/<form_type>/                                                                                           search_form()            form-simple.html, form-advanced.html
  /<db>/search/                                             Redirect to /<db>/search/simple/
  /<db>/                                                    Idem

Retrieve headings:
  /<db>/browse-head/<index>/[<term>]/                       Paginated list of headings.                               browse_headings()        heading_list.html, heading.html
                                                              Default: term = start of index
  /<db>/kw-in-head/<index>/<query>/                         Paginated list of headings, or suggestions.               match_kw_in_heading()    heading_list.html, suggestions.html

Title browse ??

Retrieve lists of bib records:
  /<db>/kw-in-bib/<type/field>/<query>/[sortBy]/            Paginated list of bib records, or suggestions.            match_kw_in_bib()        bib-record_list.html, bib-record-mini.html, suggestions.html
  /<db>/head-in-bib/<index>/<heading>/[sortBy]/             Paginated list of bib records.                            match_heading_in_bib()   bib-record_list.html, bib-record-mini.html
  /<db>/class-in-bib/<class_code>/[sortBy]/                 Paginated list of bib records.                            match_class_in_bib()     bib-record_list.html

Browse catalog (shelves):
  /<db>/browse-catalog/<browseMfn>/                         Paginated list of bib records, sorted by call number      browse_catalog()         bib-record_list.html, bib-record-mini1.html
  /<db>/browse-catalog/<browseTerm>/                        Paginated list of bib records, sorted by call number      browse_catalog()         bib-record_list.html, bib-record-mini1.html

Classification browse/search:
  /<db>/browse-class/[<tree_level>]/[<class_code>]/         List of class codes. Default: tree_level=1                browse_class()           class_list.html, msc_home.html, msc.html
  /<db>/kw-in-class/<query>/                                List of matching class codes, or suggestions.             match_kw_in_class()      class_list.html, msc.html

Bib record details:
  /<db>/bib-record/<curr>/<total>/<search-id>/[<style>]/    Detail view of bib record, with navigation links to       bib_record_detail()      bib-record_detail.html, bib-record-modular.html, bib-record-aacr.html, bib-record-etiquetado.html, bib-record-marc.html, ...
                                                               the context list of records and to its headings.
                                                               Problem: how to keep context with nice URLs
                                                               SEE BELOW: Amazon.com
  /<db>/bib-record/<record-id>/<context?>/[<style>]/        This looks better.
                                                              Context may be: "search-id + index in list"
  /<db>/bib-record/<recordID>/[<style>]/                    Permalink

New material:
  /<db>/new-material/                                       List of bib records. Pagination?                          new_material()           bib-record-news.html, bib-record-mini2.html
                                                            By date?

Static pages:
/<db>/about/                                                May include dynamic info, e.g. number of records and      about()                  about.html
                                                              last updated time
/<db>/feedback/                                             May include dynamic info, e.g. context for a bug report   feedback()               feedback.html (form + reply)
/<db>/help/                                                                                                           help()                   help.html

Other:
    Admin: modify settings?
    Test (boolean conditions, extract keys, etc)
    Logs?
    Subcatalogs?
    Advanced search? (search only in bib records, with many params)
    See other desired features mentioned in the wiki.


------------------------------------------------------------------------------------
Lists, details and context in Amazon.com
------------------------------------------------------------------------------------

Query: Books › "dawkins"
    http://www.amazon.com/s/ref=nb_ss_gw/103-5784421-3350266
        ?url=search-alias%3Dstripbooks
        &field-keywords=dawkins
        
Page #2
    http://www.amazon.com/s/ref=sr_pg_2
        ?ie=UTF8
        &rs=1000
        &keywords=dawkins
        &rh=n%3A1000%2Ck%3Adawkins
        &page=2

Page #3
    http://www.amazon.com/s/ref=sr_pg_3
        ?ie=UTF8
        &rs=1000
        &keywords=dawkins
        &rh=n%3A1000%2Ck%3Adawkins
        &page=3

Details of record #27 (3rd of page #3)
    http://www.amazon.com/God-New-Atheism-Critical-Response/dp/066423304X/ref=sr_1_27
        ?ie=UTF8
        &s=books
        &qid=1205012241  <== search id
        &sr=1-27
    (page has no links to prev/next/list)

Details of record #29 (5th of page #3)    
    http://www.amazon.com/Dawkins-Delusion-McGrath/dp/0281059276/ref=sr_1_29
        ?ie=UTF8
        &s=books
        &qid=1205012241  <== search id
        &sr=1-29

        
------------------------------------------------------------------------------------
Lists, details and context in Barnes and Noble
------------------------------------------------------------------------------------

Query:  You Searched Books For: dawkins
    http://search.barnesandnoble.com/booksearch/results.asp?WRD=dawkins

Page #3
    http://search.barnesandnoble.com/booksearch/results.asp?SZE=10&WRD=dawkins&SAT=21

Details for item #22 (2nd in page #3)
    http://search.barnesandnoble.com/River-out-of-Eden/Richard-Dawkins/e/9780465069903/?itm=22
    Does not mention the search id
    

------------------------------------------------------------------------------------
Lists, details and context: question to django-users group
------------------------------------------------------------------------------------
    http://groups.google.com/group/django-users/browse_thread/thread/9678230f84c50f03

Justin, thanks for your answer. Your arguments are very clear. So, this has practically nothing to do with Django or any other framework that I might choose, since it's more a basic web design question.

------------------------------------------------------------------------------------




[BROWSE CLASSIFICATION]
/bibima/CLASS-BROWSE/msclevel=1/searchType=SUBJ / 
/bibima/CLASS-BROWSE/msclevel=3/searchType=SUBJ/query=00/
Patrón: /<db>/CLASS-BROWSE/<tree_level>/<class_code>/

[SEARCH CLASSIFICATION BY KEYWORDS]
/bibima/searchType=SUBJ/query=28A80/
/bibima/searchType=SUBJ/query=godel/
Patrón: /<db>/KW-IN-CLASS/<query>/

[SEARCH BIBS BY CLASS CODE]
/bibima/BIB-CLASS-SEARCH/index=SUBJ/query=00A73/
Patrón: /<db>/CLASS-IN-BIB/<class_code>/

[BROWSE INDEXES]
/bibima/H-BROWSE/index=NAME/browseTerm=g/
/bibima/H-BROWSE/index=TITLE/browseTerm=per/
/bibima/browseMfn=1549/index=NAME/ (pagination)
/bibima/browseMfn=4609/index=TITLE/ (pagination)
Patrón: /<db>/HEAD-BROWSE/<index>/<term>/

[BROWSE CATALOG]
/abr/BROWSE-CATALOG/browseMfn=1/
/abr/BROWSE-CATALOG/browseTerm=517/

[HEADING MATCH IN BIBS]
/bibima/BIB-H-SEARCH/index=NAME/query=^aPeral,+Ireneo./
Posibles valores para index: NAME, SUBJ, COL (=series)
Patrón: /<db>/HEAD-IN-BIB/<index>/<heading>/

[KW MATCH IN HEADINGS]
/bibima/searchType=NAME/query=monteiro/
/bibima/searchType=SUBJ/query=monteiro/from=21/
Patrón: /<db>/KW-IN-HEAD/<index>/<query>/

[KW MATCH IN BIBS]
/bibima/searchType=TITLE/query=robert/
/bibima/searchType=SN/query=123/
/bibima/searchType=ANY/query=123/
Patrón: /<db>/KW-IN-BIB/<type/field>/<query>/

[SORT BIB RECORDS]
/bibima/BIB-H-SEARCH/query=%5EaCuadernos+Teorema/index=COL/sortBy=title/
Patrón: append /<sortBy>/ to the current URL, or replace its value if present

[DISPLAY BIB RECORD]
/bibima/BIB-RECORD/curr=5/total=13/cid=/tmp/fileS3fuXx
Patrón: /<db>/BIB-RECORD/<curr>/<total>/<cid>/
Permalink: /bibima/BIB-RECORD/cn=002431/
Patrón:  /<db>/BIB-RECORD/<recordID>/
opacmarc_segun_django.txt · Last modified: 14/05/2009 00:00 (external edit)