SRU (Search/Retrieval Using URL)

CQL Bibliographic Searching (June 29, 2007)

SECTIONS: Title - Name - Subject - Identifier - Date - Format - Resource Type/Genre - Target Audience
Classification - Place of Origin - LanguageEdition - Part - Issuance - Summary Table - Committee


This is a blueprint for CQL bibliographic searching.  It is intended to guide work that will result in:

  1. A CQL 'bib' context set.
  2. An SRU profile for bibliographic searching.

The profile will specify how to combine elements from context sets ('bib', 'dc', 'cql', and others) for bibliographic searching.

This document is neither a context set specification nor a profile. As noted,  it is a blueprint for development of both.

The bib context set will define indexes and modifiers, based on MODS. This means that MODS is used for reference semantics. (This does not presume that the data being searched is MODS. This is analogous to Z39.50 bib-1 and MARC. The semantics of the bib-1 core Use attributes are defined in terms of MARC but the bib-1 attribute set does not presume that the data being searched is MARC.) 

The premise of this approach is that when there is an existing defined index (including for example a dublin core index, possibly qualified) appropriate for a bibliographic search, it should be used.   When there is no appropriate existing index for a required bibliographic search, a bib index is defined.

This document was developed by an ad hoc committee over more than a year, and is now ready for contribution to a standards body for further development and standardization.


Searching by Title

Title Indexes Defined for the bib Context Set

  • bib.titleAbbreviated
  • bib.titleUniform
  • bib.titleTranslated
  • bib.titleAlternative
  • bib.titleSeries

Relation modifiers

Modifiers defined for the bib set:

  • bib.portion
    • main
    • sub
    • partNum
    • partName
  • bib.titleAuthority  (for titleUniform only)
    • lcnaf

Modifiers proposed for the CQL set:

  • lang (the language of the term)

Examples

  1. bib.titleUniform=/bib.portion=main/bib.titleAuthority=lcnaf "Symphonies, no. 5, op. 67, C minor"
  2. bib.titleTranslated=/bib.portion=main/lang=fr "homme qui voulut être roi"
  3. dc.title="Annual report of notifiable diseases"
  4. dc.title="Annual report of notifiable diseases" OR
    bib.titleAbbreviated="Annu. rep. notif. dis."
  5. dc.title=/lang=rus "Geodezja i urzadzenia roline" OR
    bib.titleTranslated=/lang=eng "Land surveying and agriculture equipment"
  6. dc.title="Focus on grammar" AND bib.titleSub="basic level"

Notes

  • As seen in these examples there is no general 'title' index defined for the bib set. To search on unqualified 'title', for example to search for a list of words anywhere within a title field, dc.title is to be used.
  • Similarly there is no bib.titleProper index defined. To search on "title proper" dc.title is to be used.

Searching by Name

Name Indexes Defined for the bib Context Set

  • bib.name
  • bib.namePersonal
  • bib.namePersonalFamily
  • bib.namePersonalGiven
  • bib.nameCorporate
  • bib.nameConference

Relation Modifiers

  • bib.date
  • bib.nameAuthority
  • bib.role
  • bib.roleAuthority
    default marcrelator

Examples

  1. bib.namePersonal="Herb Plews"
    bib.namePersonalGiven=herb PROX bib.namePersonalFamily=plews
  2. bib.namePersonal=/bib.role=shortstop "Herb Plews"
  3. bib.nameCorporate=ibm
  4. bib.nameConference="International Workshop on Plasma-Based Ion Implantation 1993 : University of Wisconsin--Madison"
  5. bib.NamePersonal=/bib.nameAuthority=lcnaf/bib.role=composer/bib.roleAuthority=marcrelator "Beethoven, Ludwig van, 1770-1827"
  6. bib.NamePersonal=/bib.role=author/bib.roleAuthority=marcrelator "George Orwell"
  7. bib.namePersonal=/bib.date="1835-1913" "Albert Babeau"
  8. dc.contributor="Florida Department of Agriculture and Consumer Affairs"

Notes

  • In example 5, "role=composer/bib.roleAuthority=marcrelator" means that the 'role'  "composer" is taken from the list 'marcrelator' which is intended to be a nickname for the list of roles at http://www.loc.gov/marc/sourcecode/relator/relatorlist.html.
  • So, as seen in example 6, to do an author search, use "bib.role=author/bib.roleAuthority=marcrelator".
  • lcnaf refers to the LC name authority file, searchable at http://authorities.loc.gov/. The authorized name heading, "Beethoven, Ludwig van, 1770-1827" (in example 5), can be found there.
  • To search by contributor use dc.contributor; to search by publisher, use dc.publisher; to search by creator, use dc.creator.  That is, use these instead of role=contributor, role=publisher or role=creator.

Searching by Subject

Subject Indexes Defined for the bib Context Set

  • bib.subjectPlace
  • bib.subjectTitle
  • bib.subjectName
  • bib.subjectOccupation

Relation Modifiers

  • bib.subjectAuthority (e.g. 'marcgac', 'marccountry', 'iso3166', 'lcsh', 'lcnaf')

Examples

  1. dc.subject="Food additives -- Law and legislation"
  2. dc.subject=/bib.subjectAuthority=lcsh "Food additives -- Law and legislation"
  3. bib.subjectName= "Ted Williams"
  4. bib.subjectName=/bib.subjectAuthority=lcnaf "Williams, Ted, 1918-2002"

Notes

  • No bib index is defined to search on unqualified 'subject', instead (as seen in example 1) dc.subject should be used.
  • Similarly there is no bib.subjectTopic index defined. To search on "subject - topic" dc.subject is to be used.

Searching by Identifier

The bib context set does not define indexes for identifiers, instead, dc.identifier should be used. 

Relation Modifiers

  • bib.identifierAuthority
    • hdl
    • doi
    • isbn
    • isrc
    • ismn
    • issn
    • local
    • lccn
    • stock-number
    • uri

Examples

  • dc.identifier=n78890351
  • dc.identifier=/bib.identifierAuthority=lccn n78890351

Notes

  • In the first example above (the identifier is an LCCN) this query could be used on a server where lccn is the default identifier type.

Searching by Date

Date Indexes Defined for the bib Context Set

  • bib.dateIssued
  • bib.dateCreated
  • bib.dateValid
  • bib.dateModified
  • bib.dateCopyright

Relation Modifiers

  • bib.dateAuthority
    • w3cdtf
      This is the default. If no dateAuthority is included on a bib date index, 'w3cdtf' is assumed.

Example

  1. bib.dateIssued=2001 AND bib.namePersonal="matilda plews"
  2. bib.dateIssued=/dateAuthority=w3cdtf 2001 AND bib.namePersonal="matilda plews"
  3. dc.date=2001

Notes

  • Examples 1 and 2 have identical semantics since 'w3cdtf' is the default authority.
  • To search simply on date where no qualification ("created", "published", etc.) is intended, dc.date should be used, as in example 3.

Searching by Format

The bib context set does not define an index for format, instead, dc.format should be used. 

Relation Modifiers

  • bib.formatAuthority

Example

  • dc.format=/bib.formatAuthority=modsPhysicalForm print AND bib.namePersonal="matilda plews"

Notes


Searching by Resource Type/Genre

The bib context set does not define an index for resource type, instead, dc.type should be used. 

Genre Indexes Defined for the bib Context Set

  • bib.genre

Relation Modifiers

  • bib.genreAuthority
    • modsGenre
  • bib.typeAuthority
    • modsResource

Examples

  • bib.genre=/bib.genreAuthority=modsGenre "humor, satire" AND bib.namePersonal="dan jenkins"
  • bib.genre=humor AND bib.namePersonal="dan jenkins"
  • dc.type=/bib.typeAuthority=modsResource text AND bib.namePersonal="matilda plews"

Notes

  • bib.genre is for use with a controlled vocabulary. If the authority is omited then a default is assumed (specified in the server's explain information).
  • 'modsGenre' refers to the list at http://www.loc.gov/marc/sourcecode/genre/genrelist.html.
  • 'modsResource' refers to the enumerated list for resourceType in the MODS schema.
  • Although as noted above, no bib index is defined for resource type and instead dc.type should be used, for bibliographic searching by genre, bib.genre, not dc.type, should be used (even though in general Dublin Core element type covers genre).

Searching by Target Audience

Target Audience Indexes Defined for the bib Context Set

  • bib.audience

Relation Modifiers

  • bib.audienceAuthority
    • modsAudience

Examples

  • bib.audience=/bib.audienceAuthority=modsAudience adolescent AND bib.namePersonal="matilda plews"
  • bib.audience=adolescent AND bib.namePersonal="matilda plews"

Notes


Searching by Classification

Classification Indexes Defined for the bib Context Set

  • bib.classification

Relation Modifiers

  • bib.classAuthority
    • lcc

Examples

  • bib.classification=RF110-320
  • bib.classification=/bib.classAuthority=lcc RF110-320

Notes

  1. This index is for use with a controlled vocabulary. If the authority is omited then a default is assumed (specified in the server's explain information).
  2. 'lcc' as the class authority means the value is from the list at:
    http://www.loc.gov/marc/sourcecode/classification/classificationsource.html, and refers to "Library of Congress classification". For the example, click on "R" and then "Subclass RF" see that RF110-320 is the classification for "Otology. Diseases of the ear".

Searching by Place of Origin

Place of Origin Indexes Defined for the bib Context Set

  • bib.originPlace

Relation Modifiers

  • bib.portion
    • country
    • city
  • bib.placeAuthority
    • marcCC
    • marcCN

Examples

  • bib.originPlace=london AND bib.namePersonal="jack t. ripper" 
  • bib.originPlace=/bib.portion=country/bib.placeAuthority=marcCC cu AND bib.namePersonal="livan hernandez"
  • bib.originPlace=/bib.portion=country/bib.placeAuthority=marcCN cuba AND bib.namePersonal="livan hernandez"
  • bib.originPlace=/bib.portion=city havana AND bib.namePersonal="livan hernandez"

Notes


Searching by Language

The bib context set does not define language indexes, instead, dc.language should be used.

Relation Modifiers

  • bib.languageAuthority
    • rfc3066
    • iso639-2b
      Default is server defined. Guidance provided by RFC 3066 is recommended.

Examples

  • dc.language=english AND bib.subjectPlace=london
  • dc.language=/languageAuthority=iso639-2b car AND bib.subjectPlace=carribean

Searching by Edition

Edition Indexes Defined for the bib Context Set

  • bib.edition

Examples

  • bib.edition=canadian

Searching by Part

Part Indexes Defined for the bib Context Set

  • bib.volume
  • bib.issue
  • bib.startPage
  • bib.endPage

Examples

  • dc.title="neurology now" AND bib.volume=1 AND bib.issue=2

Searching by Issuance

Issuance Index Defined for the bib Context Set

  • bib.issuance

This index takes one of the following two values:

  • continuing
  • monograph

Examples

  • dc.title="neurology now" AND bib.issuance=continuing

Notes

  • It remains an open question whether values should be restricted to the above two (in which case a diagnostic needs to be defined) or extensible to other values.

Summary Table

Category Indexes Modifiers
Title
  • dc.title
  • bib.titleAbbreviated
  • bib.titleUniform
  • bib.titleTranslated
  • bib.titleAlternative
  • bib.titleSeries
  • bib.portion (main, sub, partNum, partName)
  • bib.titleAuthority  (for titleUniform only)
  • lang
Name
  • bib.name
  • bib.namePersonal
  • bib.namePersonalFamily
  • bib.namePersonalGiven
  • bib.nameCorporate
  • bib.nameConference
  • dc.contributor
  • dc.creator
  • dc.publisher
  • bib.date
  • bib.nameAuthority
  • bib.role
  • bib.roleAuthority
    default marcrelator
Subject
  • bib.subjectPlace
  • bib.subjectTitle
  • bib.subjectName
  • bib.subjectOccupation
  • dc.subject
  • bib.subjectAuthority
Identifier
  • dc.identifier
  • bib.identifierAuthority
Date
  • bib.dateIssued
  • bib.dateCreated
  • bib.dateValid
  • bib.dateModified
  • bib.dateCopyright
  • bib.dateAuthority
    default 'w3cdtf'
Resource Type
  • dc.type
  • bib.typeAuthority
Format
  • dc.format
  • bib.formatAuthority
Genre
  • bib.genre
  • bib.genreAuthority
Target Audience
  • bib.audience
  • bib.audienceAuthority
Classification
  • bib.classification
  • bib.classAuthority
Place of Origin
  • bib.originPlace
  • bib.portion (country)
  • bib.placeAuthority
Language
  • dc.language
  • languageAuthority
    Default: server defined
Edition
  • bib.edition
 
Part
  • bib.volume
  • bib.issue
  • bib.startPage
  • bib.endPage
 
Issuance
  • bib.issuance
 

This was developed by an ad hoc committee which included the following people:

  • Leif Andresen
  • Ray Denenberg
  • Larry Dixson
  • Rebecca Guenther
  • Jenn Riley
  • Mike Rylander
  • Rob Sanderson
  • Ludia Sardo
  • Ryan Scherle
  • Ross Singer