Trying to abstract the combined keyword/text search into a separate library yesterday was very problematic, but I took a simpler approach this morning and simply copied and adapted the code from search.xq into advanced_search.xq. The result seems to be working perfectly -- the keyword/text search is done first to retrieve a set of @xml:ids, then the search is done on those ids, with additional filters provided by the other form controls.
PAB wants to combine the simple search (which is actually very complicated behind the scenes, since it does keyword lookups and combines them with supplementary text-searching) with the advanced search filters. This is proving virtually impossible, partly because it's just too messy -- you'd need to retrieve a document set from the keyword search in a separate step, and then filter it -- and partly because I just don't have time to implement it properly before the launch. I'll have a couple more shots at it, but things aren't looking good so far.
Made a few other changes and fixes requested with PAB, and hid the text search box, since it's doing what it says on the box (a text search), and not what PAB wants (a complicated keyword search).
I've implemented the advanced search as a separate page, and got it basically working, although some missing bits in the encoding mean that it's not finding everything it should (e.g. dates are missing @whens sometimes).
Met with PAB and made a number of fixes:
We also made a plan for an advanced search, which I'll document in more detail here before I try to implement it.
Following PAB's instructions based on a request from her supervisor, the MyNDIR project has been temporarily password-protected. To do that, I followed my own instructions here. One wrinkle worth documenting:
After making the required changes, I tried restarting the webapp in the Tomcat manager. This appeared to work; however, when I tried to access it, I was challenged for authentication, but the authentication was not accepted. It seems that Tomcat perhaps does not re-read its tomcat-users.xml file unless it's restarted, so although Cocoon knew authentication was required, Tomcat was unable to process it. So we tried restarting Tomcat (in this case, tomcat-dev), logged on as me using sudo on the init script as documented elsewhere. This generated a problem we have seen before: the running instance of tomcat-dev failed to stop, and when a new process was started, we ended up with two running. The only way we could find to solve this was to su to hcmc (under which the processes run), and kill both of them. The first (the new one) was effectively killed with just kill, but the other required kill -9. Once both were stopped, we were able to run the init script (as me, using sudo), and Tomcat restarted. Greg is asking sysadmin to figure out what the problem might be here; we've encountered it several times now.
In the changes we rather hurriedly made last week, I neglected to update the JavaScript that handles the related items links. That was still pointing at index.htm instead of doc.htm. Now done.
PAB came by and we made the following changes:
<head> elements in <list>s and <listBibl>s are now formatted as <h3> tags in text.about.xml must have an @type attribute on its main content <div> (the first <div> in <body>). It doesn't matter what the value of the @type attribute is, but it must be present.Met with PAB and made the following minor tweaks:
Met with PAB and made these changes:
<notesStmt> in the <teiHeader>).<ref> tag so that one item can link directly to another in this wise:
<ref target="Nks1867-098v.xml"></ref>while preserving the normal functionality for external links.
Meeting with PAB, during which we:
:: Next Page >>