TextClass
- Data
- more complex: documents/items with bibliographic header info; sometimes
have page information, sometimes very highly encoded structurally, sometimes
both
- indexed with XPat
- TextClass Functionality
- Navigation around this data / Kinds of XPat searches that give you the
pieces you need to navigate around large amounts of SGML
- TextClass Middleware Components
- text-idx, textclass.cfg
- colldb, maps
- SGML and XPat index
- HTML templates
- Flowchart
to show decision tree for search, filtering, etc.
- TextClass URL
Parameters
- Collection parameters: c, cc
- Search types: type=simple | boolean | proximity
- Pages: page=simple | boolean | simplext | booleanext
- Query parameters: q1, q2, ..., rgn1, rgn2, ..., op2, op3, ...
- Views: view=reslist
- Actions: bbaction=add | remove | download | email
- Session ID: sid=106eb945036468c97458ee38d21186a0
- Objects, modules used
- Authorization
- TextClass (example),
TextClassUtils, CollsInfo, XPat, SearchSet (example)
and XPatResultSet (example),
RemoteConnect, QueryFactory and TerminologyMapper, SearchHistory, Bookbag,
ProcIns, DlpsSession, DlpsUtils
- CGI, Apache::Session
- Searching
- Fabricated regions (see encoding
workshop)
- Configuration
- colldb, textclass.cfg, BookBag.cfg, DlpsSession.cfg
- PIs and HTML Templates
- JavaScript generated by CGI to handle collection picker
- Filtering
- general TextClass entities filtered in one routine
- examples of interest (in TextClass.pm): NotesResultsFilter, _ScopedResultsFilter
- Subclassing
- What do we mean by subclassing?
- Why is it a Good Thing?
- Code maintenance
- Code Reuse
- Runtime binding
- Customization
- General How To / Techniques
- Create subclass file
(Perl necessities: ISA, etc.)
- Techniques
- Current examples
- CollsInfo/CITC.pm: additional data + methods
- BookBagItem/BBItemBC.pm: additional data + methods
- Notes filtering
- TextFilter (MqrTC)
- Hands on:TBD
- DlpsLocalUtils / running Traps