Find Text — Concordance
See
http://taporware.mcmaster.ca/~taporware/htmlTools/findtext.shtml
Description
This tool can find text anywhere in an HTML document. The search can be narrowed to specified tags. All results are returned with a concordance of either words, sentences, or lines.
Term Definition
- concordance: Search patterns in their context. This is an analysis that shows search patterns and their context in one line (similiar to KWICs -- acronym for Keyword In Context). The search patterns are in the center of a line, the rest consists of the context before and after the search pattern.
- pattern: A sequence of characters used either with regular expression notation or for path name expansion, as a means of selecting various character strings or path names, respectively. Values are matched against patterns to see if they should be included/excluded. In patterns "*" matches any string, "?" matches any single character.
- context: the text that occurs before and after a piece of text (or a pattern in this case).
Predefined Parameter Values in Tool Bar
- Source: the page the user is currently in.
- Element:
body or set by site owner
- Context: words
- Context length: 5
- Display format: HTML
Pseudocode
- Obtain HTML string by URL or from user's local disk
- Obtain text contained by user specified tags
- Find user specified word/pattern along with user specified context -- concordance
- Generate output of concordance and word lists before and after the user specified word/pattern in the concordance text
Ways of Using
- Enter a valid URL in the URL field or enter a local upload html text
- Enter a valid html tag or tag list seperated by comma, default is "body"
- Enter word or pattern in the corresponding text field by check the related radio button
- Select the context of concordance and the length of context
- Select output format
- If you want the results displayed in the same window with taporware interface, uncheck the check box - "Open results in new window"
- Finally, click the "Submit" button
CGI Interface
If you want to use this tool from your web site, here is the CGI Interface:
(
Note: If you want to upload local html text to the tool, you need to use attribute name/value pair: enctype="multipart/form-data" within the form tag)
Here are the parameters:
| Parameter Name | Parameter Value | Control Type | Default | Discription |
| source | url/local | radio button | url | Let user select input text (either a url or upload local html text) |
| htmlurl | | text | | A Valid URL that the pointed document should be an html text |
| localFile | | file | | The path to your local html text file |
| tagtext | | text | body | Valid html element (tag) name or multple html element name separated by comma |
| findwhat | word/patt | radio button | word | let user to select either word or pattern of the key of the concordance |
| find_word | | text | | key word of the concordance |
| find_patt | | text | | key pattern of the concordance |
| context | 1/2/3 | selection | Words (1) | context type corresponding the values in the parameter value field: Words/Lines/Sentences. |
| conLeng | | text | 5 | context length corresponding to the selected context |
| finddisp | 1/2/3 | selection | 2 | Display format which are XML text in HTML/HTML/XML tree in the order of parameter values |
| taporface | | checkbox | checked | display result in a new window without graphics interface (default) or with taporware interface in the same window |
Use Find Text -- Concordance TAPoRware Tool in Your Web Page
You can add a text field and a button in your web page to get the concordance of the pattern you entered in that page by call
TAPoRware cgi script.
Here is the code that you can cut and paste to your web pages:
<table style="border: solid gray 1pt"><tr><td>
<form method="post" name="htmlForm" enctype="multipart/form-data" target="_blank" action="http://taporware.mcmaster.ca/~taporware/cgi-bin/prototype/hfindtext.cgi" onsubmit="document.htmlForm.htmlurl.value=document.location.href">
<input type="hidden" name="source" value="url" />
<input type="hidden" name="htmlurl" />
<input type="hidden" name="freetext" value="yes"/>
Pattern: <input type="text" name="find_patt" />
<input type="hidden" name="context" value="1" />
<input type="hidden" name="conLeng" value="5" />
<input type="hidden" name="finddisp" value="1" />
<input type="hidden" name="taporface" value="same" />
<input type="submit" name="doIt" value="Get Concordance of the Page" />
</form>
</td></tr></table>
Web Service Interface
Taporware provides web services to any non-benefit organizations. here is the taporware web services infomation:
- Endpoint URL: http://taporware.mcmaster.ca:9982
- Service URI: http://taporware.mcmaster.ca/~taporware/webservice
- Service Method: find_Concordance_HTML
- parameters:
- htmlInput -- any html string
- htmlTag -- any html element (tag) name or multple html element name separated by comma
- pattern -- unix styled pattern or regular expression
- context -- value can be 1/2/3 which coresponding to Words/Lines/Sentences respectively
- contextLength -- length of context
- outFormat -- values are same as parameter "finddisp" in the CGI interface above
REST Service Interface
Taporware Rest service uses plain text HTTP protocol so that you can submit your request use either POST or GET method.
- Service URI: http://tapor1-dev.mcmaster.ca/~restserv/html/concordance.
- Parameters:
- htmlInput -- any HTML text
- htmlTag -- any valid HTML tag in your submitted HTML text
- pattern -- Unix styled pattern you want to find in the text
- context -- value can be 1/2/3/4 which corresponding to Words/Lines/Sentences/Paragraphs respectively
- contextlength -- number of words/lines/sentences/paragraphs before and after the specified context
- outFormat -- output format. The values are same as parameter "finddisp" in the CGI interface above
- See sample interface in http://tapor1-dev.mcmaster.ca/~restserv/html/concordancetool
Known Bugs
To Do
--
MattPatey - 13 Oct 2005