CONTENTdm XML Gateway Documentation
Currently, CONTENTdm only provides two methods for accessing data by a federated search tool:
1. HTTP Gateway: Essentially, this requires the federated search tool to screen scrap the
results. This method is fraught with potential pitfalls, as any change to the outputted
HTML code could potentially break a tool’s ability to parse the data. rd2. Z39.50: CONTENTdm provides Z39.50 support via a 3 party PERL package. This
allows users to access their CONTENTdm collections via Z39.50, but my personal
opinion is that the Z39.50 interface seems a bit too “heavy” for this particular purpose.
Since the current methods for accessing CONTENTdm via a federated search tool do not seem
to meet our needs, Oregon State University (OSU) has developed an XML Gateway for
CONTENTdm. This gateway provides a federated search tool with a structured URL syntax and
XML-based output, providing a uniform method of search and retrieval on the CONTENTdm
system. In theory, the gateway will leave a smaller footprint than a Z39.50 implementation and
offer more stability than using an HTTP Gateway.
The syntax for MetaFind to search will be the following:
a = author search
t = title search
w = keyword search
s = subject search
xml: Exports dc
html: exports html citation
all: Search all databases
dna: dna collection
archives: Best of archives
streamsurvey: Stream Survey
pawardsmedals: Awards and Medals.
bracero: Braceros collection
n: This can be a variable number. By default, all results will be returned.
n: This specifies where in the results set that output should begin. So for
example, if there were 100 records and you wanted to start returning results at
record #50, you would use the argument: start=50.
reeset Page 2 7/11/2010
all: must match all words (default)
any: must match any words
adv: allows use of the following boolean statements: and/or/not.
Example query (search subject for memorial union & title for formal dance in the best of archives
Example Query (search keyword for military in all collections)
Example of Output:
<?xml version="1.0" ?>
<dc:title> Formal dance</dc:title>
<totalItems />: Specifies how many results have been located. totalItems will default to -
1 on error or when no results are present.
<errorMessage />: Textual error message. When this tag is filled, no results will be
<rdf:Description />: Parent “record” tag. The description element is the top element for all
<dc:title />: Primary CONTENTdm title.
<dc:identifier />: Direct URL to the item in the CONTENTdm collection.
<dc:source />: Internal name of the CONTENTdm collection.
<dc:relation />: Link to the item’s thumbnail if available.
reeset Page 3 7/11/2010
? CONTENTdm Server 3.6+ (or extract a copy of the queryget.exe from your 3.6
installation disks and place it in the cgi-bin as queryget2.exe)
? PHP 4.1+: PHP should be configured to run in safe-mode, though it’s not required.