Presentation is loading. Please wait.

Presentation is loading. Please wait.

Ralph LeVan Research Scientist

Similar presentations


Presentation on theme: "Ralph LeVan Research Scientist"— Presentation transcript:

1 Ralph LeVan Research Scientist levan@oclc.org
SRU and Lucene Ralph LeVan Research Scientist

2 SRU Overview A Simple Web Service Supports Search and Retrieve
Supports REST-ful and SOAP requests Responses are always XML records Supports Search and Retrieve Uses a Standard Query Grammar Supports Self-Configuring Clients A Gateway to Local Databases

3 SRU Features Explain Records CQL Query Grammar Persistent Result Sets
XML Database Records Returned Index Browses Stylesheets

4 Explain Records serverInfo databaseInfo metaInfo indexInfo schemaInfo
configInfo

5 serverInfo Generated Automatically host port database

6 databaseInfo From SRWDatabase.props Provided Automatically
databaseInfo.title databaseInfo.description databaseInfo.contact Provided Automatically implementation

7 metaInfo From SRWDatabase.props metaInfo.dateModified
metaInfo.aggregatedFrom metaInfo.dateAggregated

8 indexInfo Generated Automatically From SRWDatabase.props
“local” index set and Lucene index names From SRWDatabase.props qualifier.<indexSet>.<indexName> = <LuceneIndexName> Used only if you want to map other index names to your Lucene indexes (e.g. qualifier.dc.identifier=id)

9 schemaInfo Generated Automatically From SRWDatabase.props
LuceneDocument From SRWDatabase.props xmlSchemas=<list of name> <schemaName>.identifier= <schemaName>.location= <schemaName>.namespace= <schemaName>.title= [<schemaName>.transformer=] [<schemaName>.resolver=]

10 schemaInfo Example xmlSchemas=LuceneDocument, DC
LuceneDocument.identifier=info:srw/schema/1/LuceneDocument LuceneDocument.location=http://www.oclc.org/standards/Lucene/schema/LuceneDocument.xsd LuceneDocument.namespace=http://www.oclc.org/LuceneDocument LuceneDocument.title=Lucene Demo Database records in their internal format

11 schemaInfo Example (cont.)
DC.identifier=info:srw/schema/1/dc-v1.1 DC.location=http://www.loc.gov/zing/srw/dc-schema.xsd DC.title=DC: Dublin Core Elements DC.transformer=LuceneToDC.xsl

12 configInfo Generated Automatically From SRWDatabase.props
maximumRecords (20) numberOfRecords (10) resultSetTTL (300) From SRWDatabase.props configInfo.maximumRecords configInfo.numberOfRecords configInfo.resultSetTTL

13 CQL Query Grammar Builtin: BasicLuceneQueryTranslator
CqlQueryTranslator Query makeQuery(CQLNode cn); Term getTerm(); From SRWDatabase.props SRWLuceneDatabase. CqlToLuceneQueryTranslator= <ClassName>

14 Persistent Result Sets
Builtin: LuceneQueryResult

15 XML Database Records Builtin: BasicLuceneRecordResolver RecordResolver
Void init(Properties props); Record resolve(Document doc, String IdFieldName, ExtraDataType extraDataType) From SRWDatabase.props <schemaName>.resolver=<ClassName> SRWLuceneDatabase.idFieldName= <FieldName>

16 Index Browses Builtin: SRWLuceneDatabase.getTerms()

17 Stylesheets From SRWDatabase.props
explainStyleSheet= /SRW/explainResponse.xsl scanStyleSheet=/SRW/scanResponse.xsl searchStyleSheet= /SRW/searchRetrieveResponse.xsl

18 Making the Magic Happen
Drop the SRWLucene.war into your <tomcat>/webapps directory Restart Tomcat Edit <tomcat>/webapps/SRWLucene/WEB-INF/classes/SRWServer.props

19 Sample SRWServer.props
db.LuceneDemoDB.class= ORG.oclc.os.SRW.Lucene.SRWLuceneDatabase db.LuceneDemoDB.home= f:/lucene-2.0.0 db.LuceneDemoDB.configuration= SRWDatabase.props

20 Sample SRWDatabase.props
databaseInfo.title=Lucene Demo Database databaseInfo.description=An index of the source code for Lucene databaseInfo.contact=Ralph LeVan qualifier.cql.serverChoice=contents explainStyleSheet=/SRWLucene/explainResponse.xsl scanStyleSheet=/SRWLucene/scanResponse.xsl searchStyleSheet= /SRWLucene/searchRetrieveResponse.xsl

21 Resources http://www.oclc.org/research/software/srw


Download ppt "Ralph LeVan Research Scientist"

Similar presentations


Ads by Google