A user-facing application can issue search queries to the Edgerton Digital Collections repositories via a standardized connector (an OSID implementation). Current assumptions:
Matching Metadata
Description: This image shows a bullet passing through a playing card.
Non-Matching Metadata
Description: This image shows a bullet passing through a pack of playing cards.
Matching Metadata
Description: This video shows Yitzhak Perlman playing a violin.
Author: Michael Card
Non-Matching Metadata
Description: This video shows Yitzhak Perlman playing a violin.
Author: Michael Cardinal
Query is: "Playing Card"
Matching Metadata
Description: This image shows a bullet passing through a playing card.
Non-Matching Metadata
Description: This image shows a bullet passing through a pack of playing cards.
Non-Matching Metadata
Description: This video shows Yitzhak Perlman playing a violin.
Author: Michael Card
Non-Matching Metadata
Description: This video shows Yitzhak Perlman playing a violin.
Author: Michael Cardinal
The input to this search is field / value pairs. This can be a Java Properties object, but an XML string may be more flexible.
Within the application, we assume there will be an Advanced Search Page to capture the query (this page is based on a single, statically defined, metadata schema).
In the advanced search, there can be a value for each metadata field. Field values can be enclosed in double-quotes, for a literal match, or unquoted for a less demanding match.
For date metadata, there will be the option to provide a value on or before a date or on or after a date.
For people and place metadata, there may be a controlled vocabulary, presented as a picklist.
Advanced Search Examples
Query is:
Description contains Playing
Matching Metadata
Description: This image shows a bullet passing through a playing card.
Query is:
Description contains Playing
Author contains Card
Matching Metadata
Description: This video shows Yitzhak Perlman playing a violin.
Author: Michael Card
Sample Queries:
Find any image with the title matching Playing Card
This search implies that results can be limited by media type, such as image, video, notebook, notebook page, etc. Is the set of media types defined by the consumer, provider, or a under the control of a third-party or standard? Can a search match any of a set of types?
This search implies that results can be sought to match a specific metadata field, such as the title. Is the set of fields defined by the consumer, provider, or a under the control of a third-party or standard? Can a search match a set of fields? Do multiple field matches allow for boolean operators such as AND, OR, and NOT?
This search implies that a match is found with Playing Card. What do we mean by match, specifically:
What are the consumers expectations, if any, about the order results are returned. For example, if three assets match the title, what can the consumer request or demand about the order, if anything? What can the provider declare about the order, if anything? Does a provider support searching within a result set?
What is the specific syntax specification for queries?
What was done for "strobe disks" between the time of Edgerton's marriage and the birth of his first child.
"strobe disks" is a criteria expression
controlled vocabulary
case sensitivity
match all, match part, match any
results can be filtered by date range
date expression
date end-points (inclusion / exclusive)
Result Metadata
What metadata are returned about the result set? For example, is there a time; a total result count; a "cursor" or start and end index?
What metadata are returned about an individual results?
Are all metadata returned directly, or do any require subsequent requests?
fields
field order
field syntax
missing data
Result Order
how to navigate
Interoperation Validation
A second consumer can integrate as easily with the first provider.
The consumer can consume as easily a second, different provider.
A consumer can integrate with multiple providers.