$hp_url>
Return to the Broker Home Page
?$hp_url>
\n
mode. # # Rather than just putting $cs_url in a HREF, we break it up and # stick the components around the 'DisplayObject' CGI program # which formats the SOIF into nice-looking HTML. # # VARIABLES: # # $url Object url: http://www.cia.gov:3333/Spies/KGB/secret.html # $A URL Access: http # $H URL Host : www.cia.gov:3333 # $P URL Path : /Spies/KGB/secret.html # $D URL Dir : /Spies/KGB/ # $F URL File : secret.html # $cs_url URL to the SOIF object in the broker databse # $cs_[ahp] elements of $cs_url as above with $url # $desc Description attribute of the matched object # $opaque A matched line (or all matched lines in obj-at-a-time mode) # $usermsg A user message # $attributes Requested attributes # This definition is much like the 'standard' output. #$objectnum $A URL: $F $H> host: $H ?$H> $P> path: $P ?$P> $description\ $attributes\ $objectWeight\ $opaque $cs_urlX> indexing data: \ formatted - \ plain ?$cs_urlX> # An alternate way of displaying an object. # ##Object #: $objectnum #filename: $F # Host: $H # Path: $D #Indexing: here #Description: $desc #$opaque # # # This definition is eval'd for each opaque (matched) line retruned by # the broker. It is intended to be used to remove SOIF attributes # and the 'Matched line' string from the output. See the perl(1) manual # page or book for information on building Perl regular expressions. # # Add this to have URLs in mached lines be links # # s/([a-z]*:\/\/\S*)/\1<\/A>/; #s/\s{2,}/ /g; s/(^Matched line:)/$1<\/STRONG>/g; s/^.*/ $&/; # PerObjectFunction is eval'd before every object is printed out. #$description = ''; $description = " Description: $desc\n" if ($desc ne ''); $objectWeight = ""; if ($maxWeight > 0 && $weightflag) { $objectWeight = " weight: ".int($weight * 100 / $maxWeight)."% (".(int($weight*100)/100)." Pts.)\n"; } # PerAttributeFunction is eval'd before the Attributes are printed out. ## Remove all empty lines $val =~ s/^(\s*)//mg; # Now prepare the object's type and size to display at the description. if ($att eq "last-modification-time" || $att eq "update-time" ) { local(@date,@months,$month,$minute,$year); @date = localtime($val); @months = ('Jan', 'Feb', 'Mar', 'Apr', 'May', 'Jun', 'Jul', 'Aug', 'Sep', 'Oct', 'Nov', 'Dec'); $month = $months[$date[4]]; $minute = $date[1]; $minute = "0$minute" if $minute < 10; $second = $date[0]; $second = "0$second" if $second < 10; $year = $date[5]+1900; $val = "$date[3]-$month-$year $date[2]:$minute:$second"; } else { ## other attributes # insert spaces to format multile lines $val =~ s/\n(.)/\n $1/mg; # limit to 5 (=4+1) lines... $val =~ s/^((.*\n){4})(.*)\n(.*\n)*/$1$3.../; } # Format Requested Attributes. Before this is eval'd, $att and $val # should be set. #$att: $val\n # ====================================================================== # ERROR, STATUS and WARNING functions # ====================================================================== # The message printed to the browser and logged to the HTTP server log # when the processes is killed. If the Timeout time is reached, the # process dies from SIGALRM. The short name of the offending signal # is placed in $sig. #Killed by SIG$sig...\n # How to format the object number. Use a printf format specification # to left/right justify, or whatever. Do not include quotes around # the format string. #%2d. # A warning message printed only when the broker might have truncated # the result set. Only printed if the number of matched lines equals # the 'maxresultflag' or the number of returned objects equals the # 'maxobjflag' value of the query.html form. ## WARNING: The search results were truncated at $nopaquelines matched lines and $nreturned found objects.
\n
# # A warning message printed only when the broker returned 0 results. #WARNING: The result set may have been truncated at $maxfiles #objects returned. #
# Error Message returned if there is no query string sent. # Your query either did not match any information in this Broker, or you may have specified a query that is not supported by this Broker's search subsystem. Please refer to the help on formulating queries for further assistance.
\n
No query information to decode.\n # Message returned if the broker sends back a # 111 - Broker is too heavily loaded # reply. #
Sorry, the search broker at $host, port $port is currently too heavily loaded to process your request.
Please try again later.
# Error message if broker is not available.
#
Please try again later. \n
Sorry, your query does not have the proper syntax:
Please refer to the
help in formulating queries
for details on the proper syntax.
Common syntax mistakes include:
$html_query
\n
For example, the phrase:
resource discovery should be
"resource discovery".
The regular expression:
res.* disc.* should be
"res.* disc.*".
Note that a single dot (``.'')
in a keyword needs quotes (e.g. "3.0").
Structured queries need a colon and optional parentheses. For example,
Type:PostScript or, (Type : PostScript)