Wiki-principle based intranet- and internet search assistant and bookmark sharing tool which uses auto-type detection methods, approximate (fuzzy) searches,
and regular expression pattern searches to immediately redirect a user-entered shortcuts to target URIs (WIBISA).


Download the Research Disclosure RD488004.pdf (electronic publication date: 10 Nov 2004 16:01 UTC)

http://www.tgries.de/wibisa

http://sourceforge.net/projects/wibisa/


This page was updated on March 14, 2014





Flowchart version 2 published on 02. Feb 2005, 08:20 UTC

WIBISA Flowchart Version 2; 02.February 2005 WIBISA http://www.wibisa.org http://www.tgries.de/wibisa


Extensions to the original disclosure
It is expressly mentioned, that not only pure wiki-based (using "wiki" pages, which can be changed by everyone) but also all wiki-principle based (using database tables., which can be changed by everyone) search assistants have been already disclosed in the original publication RD488004.pdf November 10, 2004, due to the following reasons.

The original description already reveals this by saying in the summary and other places "The decision where to forward the users= query depends on results of queries against tables, decision trees, hashes or databases, regular expressions or against page names of one or many “wikis”, the contents of the tables, decision trees, hashes, databases, regular expressions or wikis being dynamically changeable by a user community using the "wiki-principle" wherein any user can create or change any table, decision tree, hash or database entry and pages on the wikis from anywhere and at any time, and all changes are logged to prevent vandalism. " and "search in a second table, tree, hash or database".

Wiki pages such as implemented by the wiki enginie "Mediawiki" software http://www.mediawiki.org used on http://www.wikipedia.org are often realised in form of contents of MySQL database tables, which contents may be changed by any user. Other Wikis engines such as UseMod http://www.usemod.com/ realise the wiki pages in form of flat files in the directory structure of a computer, which can be changed by any user via the wiki software.

Thus, any change of the correspondences between the shortcuts (aliases) and the corresponding target URLs (aliasURL)  - stored in the tables of the WIBISA disclosure http://www.wibisa.org , notwithstanding whether the correspondence "table" may be a database table, a decision tree (hard-coded in a program), a hash or even a wiki page is declared to be an application of the so-called "wiki-principle".

Any method or apparatus performing the method as stated in this disclosure is unambiguously declared to be public domain and shall be deemed to be unpatentable, because it cannot be novel over this defensive disclosure or the first-filed research disclosure RD488004.pdf as of November 10, 2004. Copyright: the Author, Thomas Gries, 13. Februar 2005, 14:00 UTC.



Related services, projects, disclosures (updated February 3, 2006)

None of the following other projects discloses or anticipates the subject-matter of the WIBISA disclosure (this page)  that
"A (social) commandline for the web"
Browser URL line acts as commandline very close to WIBISA
Published on June 04, 2005 (after the WIBISA disclosure November 10, 2004)

RubNub http://www.rubnub.org The Firefox Toolbar

RubNub for YubNub is a (social) command bar for the web. This Firefox toolbar truly does allow you to do it all. Take advantage of the growing, community-based, set of commands or type in new and create your own commands. Using this in place of your Address Bar works because it will accept normal URLs with/without 'http://' or 'www.' just like you normally enter a URL. As you continue to use RubNub for YubNub, you will eventually pick-up some pretty useful commands such as:

g future progress Does a search on Google for future progress

Under GPL license; the servie being hosted on dozens of servers worldwide

Server-based private bookmark tool with private bookmarks and public bookmarks, which are available for others users.
Further resource locations: http://freshmeat.net/projects/bookmark4u/

A freeware Safari-Browser bookmark tool for the Mac.

Configure your own shortcuts to search or visit your favorite sites using just a few simple keystrokes in Safari. Sogudi comes with several shortcuts included that allow you to search sites without waiting for their home pages to load, saving you time and effort.

Example: Just type 'vt' followed by your search term(s) into the Location bar and hit return. Sogudi translates your text into a fully qualified URL and the VersionTracker search comences.

Many more helpful shortcuts are included; you can modify these and easily create your own. Type 'mu' to search MacUpdate, 'dict' to search Dictionary.com, 'mov' for the Internet Movie Database, etc. If you leave off the shortcut, Sogudi will send all the words to its default shortcut instead.

You can now type search terms into the address bar just like you can in the Google Search field from Apple. The difference is that Sogudi allows you to change the search engine you use. See the Default Shortcut topic of Sogudi.

it requiresMac OS X 10.2.x, 10.3.x, or Tiger and Safari 1.0 or later.

A free service on the Internet, license: unknown, source code not available
Server-based public bookmark-shortcut tool, wherein any user can submit a URL to receive a randomized but permanent shortcut.

Example: http://tinyurl.com/5e5ap
-- this is the TinyURL shortcut for the current URL http://www.wibisa.org

A tool for quick access to your favorite web services via your bookmark toolbar.
It consists of small widgets, called blummlets, which make use of Javascript to provide
rich functionality (such as bookmarklets).

Web-based categorized bookmark sharing server

Similar to TinyURL, but tracks also IP address

Example: http://digbig.com/4cydb --
-- this is the DigBig shortcut for the current URL http://www.wibisa.org

offers permanent Document Object Identifiers for electronic documents and publications, this concept is discussed in detail in the Wikipedia article http://en.wikipedia.org/wiki/Digital_object_identifier
It is a concept similar to Wibisa, TinyURL and DigBig in the sense, that a shortcut (identifier) is stored in a central repository (database).



This is the original text and flowchart of the defensive research disclosure as of  November 10, 2004 Research Disclosure RD488004 http://www.researchdisclosure.com


Wiki-based Intranet- and Internet Search Assistant and bookmark sharing tool using auto-type detection and approximate and regular expression pattern shortcuts WIBISA


Disclosed by Thomas Gries on November 10, 2004.


Download the Research Disclosure RD488004.pdf
Electronic Publication Date: 10 Nov 2004 16:01 UTC


Proposed International Patent Classification: IPC G06F17/30

 

SUMMARY

 

            A  "wiki"-based Intranet- and Internet Search Assistant and bookmark sharing tool is disclosed which uses auto-type detection methods and/or approximate pattern matching and/or regular expression pattern matching and/or exact pattern matching for mixed alpha-numeric user inputs. The inputs can either be in one-part-form consisting of one word, an abbreviation (shortcut) or even a misspelling (typo) thereof for a wanted service or of two-part form consisting of a word, an abbreviation (shortcut) or a misspelling (typo) thereof for a wanted service followed by one or several search items to be sent to that wanted service. The Search Assistant uses a sequence of decisions to find a first match and transfers the users' input to the service corresponding to the first match. The decision where to forward the users= query depends on results of queries against tables, decision trees, hashes or databases, regular expressions or against page names of one or many “wikis”, the contents of the tables, decision trees, hashes, databases, regular expressions or wikis being dynamically changeable by a user community using the "wiki-principle" wherein any user can create or change any table, decision tree, hash or database entry and pages on the wikis from anywhere and at any time, and all changes are logged to prevent vandalism. The benevolent attitude of the majority of users is foreseen to draw correspondences between shortcuts and wanted services to a stable equilibrium, so that wanted services will become the most wanted services for a shortcut after a while. An administrator can clean and prune the tables by using special secret commands.

 

DESCRIPTION

 

            The disclosure describes a method software or apparatus hardware for guiding  requests (one item or word) and search queries (two or more items or words) of human or artificial systems such as computers or robots - herein collectively called USER - by forwarding their requests or search queries comprising characters, digits, binary digits

 

-           herein called QUERYSTRING, which comprises either a single word SHORTCUT or a word SHORTCUT followed by one or several pairs of character SEPARATOR and one or several words SEARCHITEM(S)

QUERYSTRING     := http://wibisa/SHORTCUT
                                            := http://wibisa/SHORTCUT:SEARCHITEM(S)

 

as quickly as possible to the most suited target service realised by means or methods of a so-called service SERVER, addressable and identified by a so-called UNIFORM RESOURCE IDENTIFIER URI according to RFC2396 [1] using the Internet Protocol or another method for transmitting information and is characterised by performing the method steps or by means performing the method steps in the sequence or in a different sequence of the steps of

 

a)         WIBISA-DIRECT:


if the QUERYSTRING has the format of an Internet address pattern URIPATTERN in conformity with RFC2396, it immediately forwards the action to the service denoted by QUERYSTRING determined to be a URIPATTERN, and optionally stores the so-determined correspondence QUERYSTRING, USER, URIPATTERN, TIME/DATE in a first protocol log file or database and counts the access, and then stops executing by not performing the following steps

b)         WIBISA-PREFIX-AP/RE (approximate/regular expression):

if the condition of a) is not fulfilled, then performing a first search in a first table, tree, hash or database PREFIXTABLE  with an approximate [2] or exact matching or "regular expression" RE [3] algorithm for the said SHORTCUT, the table realising a correspondence between a first subset PREFIXES of possible SHORTCUTS and a first plurality of service addresses called PREFIXURI, which addresses might also be present in one or more of the other tables of the disclosed method or apparatus, wherein each of the SHORTCUTS has a corresponding PREFIXURI matching in approximate or exact bounds, and immediately forwarding the request QUERYSTRING of the USER to the said service denoted by PREFIXURI if a match between the SHORTCUT and one of the PREFIXES is found  and optionally storing the so-determined correspondence between QUERYSTRING, USER, PREFIXURI, TIME/DATE  in the first log file or database and counting the access to the first table, and then stops executing by not performing the following steps

c)         WIBISA-SHORTCUT-AP/RE/SC

            (approximate/regular expression/shortcut detection):

if no matches were found while performing the search steps of a) and b), then performing a second search in a second table, tree, hash or database ALIASTABLE with an approximate or exact matching or regular expression algorithm for the said SHORTCUT, the table realising a correspondence between a second subset ALIASES of possible SHORTCUTS and a second plurality of service addresses called ALIASURI, which addresses might also be present in one or more of the other tables of the disclosed method or apparatus, wherein each of the second SHORTCUTS has a corresponding ALIASURI matching in approximate or exact bounds, and as soon as a match is found then immediately forwarding the request QUERYSTRING of the USER to the said service ALIASURI and optionally storing the correspondence between QUERYSTRING, USER, ALIASURI, TIME/DATE in the first log file or database and counting the access to the second table, and then stops executing by not performing the following steps

d)         WIBISA-ATD/RE (auto-type detection/regular expression):


if no matches were found while performing the search steps of a) to c), then performing a third search in a third table, tree, hash or database AUTO-TYPE-DETECTION RULES [4] realised by evaluating a set of stored "regular expressions" which define a plurality of regular expression rules RE for the character properties PATTERN of the characters which the QUERYSTRING composes of, the said plurality of rules corresponding and matching to a third plurality of service addresses called ATD­SERVER­URI, which addresses might also be present in one or more of the other tables of the disclosed method or apparatus, and as soon as one of the regular expression rules RE matches the PATTERN then immediately forwarding the QUERY­STRING of the USER to the said service ATDSERVERURI and optionally storing the so-determined correspondence between QUERYSTRING, USER, ATD­SERVER­URI, PATTERN, RE, TIME/DATE in the first log file or database and counting the access to the third table, and then stops executing by not performing the following steps,

e)         WIBISA-AUTOWIKI-AP/RE/SC (approximate/regular expression/shortcut):

if no matches were found while performing the search steps of a) to d), then performing a fourth search with an approximate or exact matching or regular expression algorithm for the said QUERYSTRING or SHORTCUT in a fourth table WIKIPAGE­NAMES comprising of Internet or Intranet page names and addresses WIKIURI which are page names and addresses of one or many so-called "wikis", a "wiki" [5] being a dynamic or static set of Internet or Intranet pages which can quickly be created and modified by every USER being member of a limited or unlimited group of USER, which said addresses WIKIURI might also be present in one or more of the other tables of the disclosed method or apparatus, wherein said wiki page creations or modifications are logged in a second log file usually belonging to the wiki, and if a matching PAGENAME is found in the fourth table WIKIPAGENAMES, then accessing the wiki page approximately or exactly matching the QUERYSTRING or SHORTCUT and optionally storing the so-determined  correspondence between QUERYSTRING, USER, PAGENAME, WIKIURI, TIME/DATE in the first protocol log file or database and counting the accesses to the fourth table, and then stops executing by not performing the next steps,

f)          WIBISA-USERDEFAULT:

if no matches were found while performing the search steps of a) to e), then forwarding the QUERYSTRING of the USER to a default service USERDEFAULTURI, this service being permanently determined by the USER but changeable at his/her discretion, wherein the definition and storage of the USERDEFAULTURI is accomplished by means and methods of storing information at the USER premises or at another arbitrary place such as in form of a data file and/or in form of a so-called COOKIE and/or in form of an entry in a database and/or by means and in form of a wiki-page, which every USER being member of a limited or unlimited group of USER can quickly create or modify, the changes being logged, and optionally storing the so-determined  correspondence between QUERYSTRING, USER, USERDEFAULTURI, TIME/DATE in the first protocol log file or database and counting this event, and then stops executing by not performing the next step:

g)         WIBISA-DEFAULT:

if no matches were found while performing the search steps of a) to f), then forwarding the QUERYSTRING  to a default service DEFAULTURI which can be any arbitrary target service such as a search or translation engine, but preferably is an Intra- or Internetserver which looks up a telephone book or a similar address repository for the one SEARCHITEM and optionally storing the so-determined  correspondence between QUERYSTRING, USER, DEFAULTURI, TIME/DATE in the first protocol log file or database and counting this event, and then stops executing,

 


wherein the most suited service is determined by the first match while performing the steps a) to g) in sequence, the algorithm being dynamically controlled by the dynamic contents of the first table PREFIXTABLE, the second table AUTO-TYPE-DETECTION RULES, and the third table ALIASTABLE, these tables being realised as one, two or three wiki pages on an Intranet or on the Internet, so that every USER being member of a limited or unlimited group of USER can quickly create or modify one or any of the tables, and can therefore determine for all USERs the way the disclosed method or apparatus assists or guides the requests to the most suited target service, all changes to the tables being logged, and

 

            the fourth table being regularly updated, for example daily, or automatically generated by a scheduler, or  non-automatically by demand, by accessing and indexing all "wiki" or "wikis" pages and their page names, and wherein

 

            the optional SEARCHITEM(S) comprised in the QUERYSTRING might be transformed,  modified, or translated by the disclosed method or apparatus in order fit exactly the input format or the interface required by the said determined most suited target service, the input format might differ from the format a USER is used to.

 

            It is expressly and unambiguously disclosed, that the steps a), b), c), d), e), f), g) can also be performed in any other order, differing from the order mentioned above, which could lead to a different prioritisation between the stored shortcuts and the corresponding services.

 

            The table entries PREFIXURI and ALIASURI, which are formatted as UNIFIED RESOURCE IDENTIFIERS URI, can also recursively refer back to the disclosed method or apparatus in that a QUERYSTRING is searched in a first run and matches in one of the steps b) to g) to an entry QUERYSTRING' corresponding to a PREFIXURI or ALIASURI which in sequence executes the steps a) to f) again with that modified QUERYSTRING'. The recursion can be realised internally without the QUERYSTRING' leaving the method or apparatus in a recursive call or recursive calls. The numbers of recursions need to be counted and limited internally to a reasonable small number to avoid infinite loops. This is the only event, that the disclosed method or apparatus cannot assist the USER and needs to issue an error message to the USER. As an alternative to the error message, the processing could continue with step f).

 

            It is also disclosed to implement an optional detection of the USER computer name or another USER identifier which allows the method or apparatus to work only with a subset of all stored table entries. This advantageously realises a user-dependent search assistant in that it hides certain entries for certain users and enables or disables visibility and action of the one or other entry for them.

 

            The PREFIXTABLE is preferably an intrinsic part of the method or apparatus and contains at least partially unchangeable correspondences between PREFIXES and PREFIX­URIs to assure a basic functionality even in the case of destroyed or unavailable other tables. Optional entries in this PREFIXTABLE, which are not visible to certain USERs, can be used for remote control, debugging, administration and maintenance, such as to start a listing of all entries of all tables in the order they are processed, or to trace what table entries would match an QUERYSTRING X, or to change the visibility and action mode of certain table entries for the certain users as explained above.

 

References and prior art:


[1]        Uniform Resource Identifiers (URI) RFC2396. http://www.faqs.org/rfcs/rfc2396.html

[2]        Approximate GREP:. http//webglimpse.org; http://en.wikipedia.org/wiki/Agrep; http://www.tgries.de/agrep

[3]        Regular Expression (RE). http://en.wikipedia.org/wiki/Regular_expression

[4]        Auto-Type Detection. Published in "Definitive Wunschliste 14.02.1997" European Patent Office, Munich/The Hague/Berlin/Vienna, 1997;

[5]        Wiki. http://en.wikipedia.org/wiki/Wiki

 

Examples for cases:


a)         http://www.wibisa.org/www.google.org/searchthis

            detecting a URIPATTERN, transforming the searchitem and going there

b)         http://www.wibisa.org/phone:123456789

            detecting PREFIX phone and transferring SEARCHITEM to PREFIXURI             http://www.phonebook.org/query=123456789

c)         http://www.wibisa.org/dutytravelrequestform

http://www.wibisa.org/google:searchitem detecting ALIASES and transferring control to ALIASURI (without a further string) or transferring SEARCHITEM to ALIASURI

d)         http://www.wibisa.org/ABC2396

matches regular expression [A-Z]{3}[0-9]{1,4} and transfers control to ATDSERVERURI with or without a further string

e)         http://www.wibisa.org/Main_Page

matches a Wiki Page with that name; transfer is controlled to that page

f), g)     http://www.wibisa.org/donald

if no previous matches are found, a default action USERDEFAULTSERVERURI is called if it is defined, or a DEFAULTSERVERURI, which is preferably a company=s phonebook or Internet search engine, but can be any other one of the foregoing cases.

End of original disclosure as of November 10, 2004


Disclosed by Thomas Gries on November 10, 2004 on http://www.tgries.de/wibisa 

SourceForge.net Logo