2007年7月17日

web service concepts

JAX-RPC is the Java API for XML-based Remote Procedural Calls. You might recognize the acronym RPC right away -- it's been around for years. A Remote Procedural Call (RPC) occurs when a component on one system passes a message to a component on a remote system, over the network. This long-distance communication technique lies very near the heart of the Enterprise JavaBeans (EJB), Java Management eXtensions (JMX), and Java Remote Method Invocation (RMI) APIs.

posted @ 2007-07-17 09:15 jing 阅读(117) | 评论 (0)编辑 收藏

2007年6月13日

javascript Escape Character

\b Backspace
\f Form feed
\n New line
\r Carriage return
\t Tab
\' Single quote or apostrophe (')
\" Double quote (")
\\ Backslash (\)
\XXX XXX is an octal number (between 0 and 377) that represent the Latin-1 character equivalent. For example \251 is the octal code for the copyright symbol.
\xXX XX is a hexadecimal number (between 00 and FF) that represent the Latin-1 character equivalent. For example \xA9 is the hexadecimal code for the copyright symbol.
\uXXXX XXXX is a hexadecimal number (between 00 and FF) that represent the Unicode character equivalent. For example \u00A9 is the hexadecimal code for the copyright symbol.
(Note: Unicode is only supported by JavaScript 1.3)

The string "\tTom said \"Hello to everyone!\"\nSo did Mary." would print:

          Tom said "Hello to everyone!"
    So did Mary.

posted @ 2007-06-13 15:29 jing 阅读(274) | 评论 (0)编辑 收藏

2007年6月1日

DOM appendChild doesn't work for mutiple append?

I do like
var oj = document.createTextNode("append list")
     var newN2 = document.createElement("li")
     var theBR = document.createElement("br");
      var newN3 = document.createElement("li")
       var newN4 = document.createElement("li")
    y = x.appendChild(newN2)
    x.appendChild(theBR)
    x.appendChild(oj)
    x.appendChild(theBR)
    x.appendChild(oj)
    y.appendChild(oj)
-------------only shows


posted @ 2007-06-01 02:14 jing 阅读(209) | 评论 (0)编辑 收藏

2007年5月30日

Use regular expressions to validate/format a string

Use regular expressions to validate/format a string

This is an impressive collection (that I found somehere on the Net) of various functions to validate or format string in Javascript. The code is very compact.

/****************************************************************
FILE: RegExpValidate.js

DESCRIPTION: This file contains a library of validation functions
using javascript regular expressions. Library also contains
functions that reformat fields for display or for storage.


VALIDATION FUNCTIONS:

validateEmail - checks format of email address
validateUSPhone - checks format of US phone number
validateNumeric - checks for valid numeric value
validateInteger - checks for valid integer value
validateNotEmpty - checks for blank form field
validateUSZip - checks for valid US zip code
validateUSDate - checks for valid date in US format
validateValue - checks a string against supplied pattern

FORMAT FUNCTIONS:

rightTrim - removes trailing spaces from a string
leftTrim - removes leading spaces from a string
trimAll - removes leading and trailing spaces from a string
removeCurrency - removes currency formatting characters (), $
addCurrency - inserts currency formatting characters
removeCommas - removes comma separators from a number
addCommas - adds comma separators to a number
removeCharacters - removes characters from a string that match
passed pattern


AUTHOR: Karen Gayda

DATE: 03/24/2000
*******************************************************************/

function validateEmail( strValue) {
/************************************************
DESCRIPTION: Validates that a string contains a
valid email pattern.

PARAMETERS:
strValue - String to be tested for validity

RETURNS:
True if valid, otherwise false.

REMARKS: Accounts for email with country appended
does not validate that email contains valid URL
type (.com, .gov, etc.) or valid country suffix.
*************************************************/
var objRegExp =
/(^[a-z]([a-z_\.]*)@([a-z_\.]*)([.][a-z]{3})$)|(^[a-z]([a-z_\.]*)@
([a-z_\.]*)(\.[a-z]{3})(\.[a-z]{2})*$)/i;

//check for valid email
return objRegExp.test(strValue);
}

function validateUSPhone( strValue ) {
/************************************************
DESCRIPTION: Validates that a string contains valid
US phone pattern.
Ex. (999) 999-9999 or (999)999-9999

PARAMETERS:
strValue - String to be tested for validity

RETURNS:
True if valid, otherwise false.
*************************************************/
var objRegExp = /^\([1-9]\d{2}\)\s?\d{3}\-\d{4}$/;

//check for valid us phone with or without space between
//area code
return objRegExp.test(strValue);
}

function validateNumeric( strValue ) {
/*****************************************************************
DESCRIPTION: Validates that a string contains only valid numbers.

PARAMETERS:
strValue - String to be tested for validity

RETURNS:
True if valid, otherwise false.
******************************************************************/
var objRegExp = /(^-?\d\d*\.\d*$)|(^-?\d\d*$)|(^-?\.\d\d*$)/;

//check for numeric characters
return objRegExp.test(strValue);
}

function validateInteger( strValue ) {
/************************************************
DESCRIPTION: Validates that a string contains only
valid integer number.

PARAMETERS:
strValue - String to be tested for validity

RETURNS:
True if valid, otherwise false.
**************************************************/
var objRegExp = /(^-?\d\d*$)/;

//check for integer characters
return objRegExp.test(strValue);
}

function validateNotEmpty( strValue ) {
/************************************************
DESCRIPTION: Validates that a string is not all
blank (whitespace) characters.

PARAMETERS:
strValue - String to be tested for validity

RETURNS:
True if valid, otherwise false.
*************************************************/
var strTemp = strValue;
strTemp = trimAll(strTemp);
if(strTemp.length > 0){
return true;
}
return false;
}

function validateUSZip( strValue ) {
/************************************************
DESCRIPTION: Validates that a string a United
States zip code in 5 digit format or zip+4
format. 99999 or 99999-9999

PARAMETERS:
strValue - String to be tested for validity

RETURNS:
True if valid, otherwise false.

*************************************************/
var objRegExp = /(^\d{5}$)|(^\d{5}-\d{4}$)/;

//check for valid US Zipcode
return objRegExp.test(strValue);
}

function validateUSDate( strValue ) {
/************************************************
DESCRIPTION: Validates that a string contains only
valid dates with 2 digit month, 2 digit day,
4 digit year. Date separator can be ., -, or /.
Uses combination of regular expressions and
string parsing to validate date.
Ex. mm/dd/yyyy or mm-dd-yyyy or mm.dd.yyyy

PARAMETERS:
strValue - String to be tested for validity

RETURNS:
True if valid, otherwise false.

REMARKS:
Avoids some of the limitations of the Date.parse()
method such as the date separator character.
*************************************************/
var objRegExp = /^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{4}$/

//check to see if in correct format
if(!objRegExp.test(strValue))
return false; //doesn't match pattern, bad date
else{
var strSeparator = strValue.substring(2,3)
var arrayDate = strValue.split(strSeparator);
//create a lookup for months not equal to Feb.
var arrayLookup = { '01' : 31,'03' : 31,
'04' : 30,'05' : 31,
'06' : 30,'07' : 31,
'08' : 31,'09' : 30,
'10' : 31,'11' : 30,'12' : 31}
var intDay = parseInt(arrayDate[1],10);

//check if month value and day value agree
if(arrayLookup[arrayDate[0]] != null) {
if(intDay <= arrayLookup[arrayDate[0]] && intDay != 0)
return true; //found in lookup table, good date
}

//check for February (bugfix 20050322)
//bugfix for parseInt kevin
//bugfix biss year O.Jp Voutat
var intMonth = parseInt(arrayDate[0],10);
if (intMonth == 2) {
var intYear = parseInt(arrayDate[2]);
if (intDay > 0 && intDay < 29) {
return true;
}
else if (intDay == 29) {
if ((intYear % 4 == 0) && (intYear % 100 != 0) ||
(intYear % 400 == 0)) {
// year div by 4 and ((not div by 100) or div by 400) ->ok
return true;
}
}
}
}
return false; //any other values, bad date
}

function validateValue( strValue, strMatchPattern ) {
/************************************************
DESCRIPTION: Validates that a string a matches
a valid regular expression value.

PARAMETERS:
strValue - String to be tested for validity
strMatchPattern - String containing a valid
regular expression match pattern.

RETURNS:
True if valid, otherwise false.
*************************************************/
var objRegExp = new RegExp( strMatchPattern);

//check if string matches pattern
return objRegExp.test(strValue);
}


function rightTrim( strValue ) {
/************************************************
DESCRIPTION: Trims trailing whitespace chars.

PARAMETERS:
strValue - String to be trimmed.

RETURNS:
Source string with right whitespaces removed.
*************************************************/
var objRegExp = /^([\w\W]*)(\b\s*)$/;

if(objRegExp.test(strValue)) {
//remove trailing a whitespace characters
strValue = strValue.replace(objRegExp, '$1');
}
return strValue;
}

function leftTrim( strValue ) {
/************************************************
DESCRIPTION: Trims leading whitespace chars.

PARAMETERS:
strValue - String to be trimmed

RETURNS:
Source string with left whitespaces removed.
*************************************************/
var objRegExp = /^(\s*)(\b[\w\W]*)$/;

if(objRegExp.test(strValue)) {
//remove leading a whitespace characters
strValue = strValue.replace(objRegExp, '$2');
}
return strValue;
}

function trimAll( strValue ) {
/************************************************
DESCRIPTION: Removes leading and trailing spaces.

PARAMETERS: Source string from which spaces will
be removed;

RETURNS: Source string with whitespaces removed.
*************************************************/
var objRegExp = /^(\s*)$/;

//check for all spaces
if(objRegExp.test(strValue)) {
strValue = strValue.replace(objRegExp, '');
if( strValue.length == 0)
return strValue;
}

//check for leading & trailing spaces
objRegExp = /^(\s*)([\W\w]*)(\b\s*$)/;
if(objRegExp.test(strValue)) {
//remove leading and trailing whitespace characters
strValue = strValue.replace(objRegExp, '$2');
}
return strValue;
}

function removeCurrency( strValue ) {
/************************************************
DESCRIPTION: Removes currency formatting from
source string.

PARAMETERS:
strValue - Source string from which currency formatting
will be removed;

RETURNS: Source string with commas removed.
*************************************************/
var objRegExp = /\(/;
var strMinus = '';

//check if negative
if(objRegExp.test(strValue)){
strMinus = '-';
}

objRegExp = /\)|\(|[,]/g;
strValue = strValue.replace(objRegExp,'');
if(strValue.indexOf('$') >= 0){
strValue = strValue.substring(1, strValue.length);
}
return strMinus + strValue;
}

function addCurrency( strValue ) {
/************************************************
DESCRIPTION: Formats a number as currency.

PARAMETERS:
strValue - Source string to be formatted

REMARKS: Assumes number passed is a valid
numeric value in the rounded to 2 decimal
places. If not, returns original value.
*************************************************/
var objRegExp = /-?[0-9]+\.[0-9]{2}$/;

if( objRegExp.test(strValue)) {
objRegExp.compile('^-');
strValue = addCommas(strValue);
if (objRegExp.test(strValue)){
strValue = '(' + strValue.replace(objRegExp,'') + ')';
}
return '$' + strValue;
}
else
return strValue;
}

function removeCommas( strValue ) {
/************************************************
DESCRIPTION: Removes commas from source string.

PARAMETERS:
strValue - Source string from which commas will
be removed;

RETURNS: Source string with commas removed.
*************************************************/
var objRegExp = /,/g; //search for commas globally

//replace all matches with empty strings
return strValue.replace(objRegExp,'');
}

function addCommas( strValue ) {
/************************************************
DESCRIPTION: Inserts commas into numeric string.

PARAMETERS:
strValue - source string containing commas.

RETURNS: String modified with comma grouping if
source was all numeric, otherwise source is
returned.

REMARKS: Used with integers or numbers with
2 or less decimal places.
*************************************************/
var objRegExp = new RegExp('(-?[0-9]+)([0-9]{3})');

//check for match to search criteria
while(objRegExp.test(strValue)) {
//replace original string with first group match,
//a comma, then second group match
strValue = strValue.replace(objRegExp, '$1,$2');
}
return strValue;
}

function removeCharacters( strValue, strMatchPattern ) {
/************************************************
DESCRIPTION: Removes characters from a source string
based upon matches of the supplied pattern.

PARAMETERS:
strValue - source string containing number.

RETURNS: String modified with characters
matching search pattern removed

USAGE: strNoSpaces = removeCharacters( ' sfdf dfd',
'\s*')
*************************************************/
var objRegExp = new RegExp( strMatchPattern, 'gi' );

//replace passed pattern matches with blanks
return strValue.replace(objRegExp,'');
}
You can try it here.

If you want to know more about these MSDN pages :
RegExp Object
Regular Expression Syntax

Common expressions

 Date 
/^\d{1,2}(\-|\/|\.)\d{1,2}\1\d{4}$/ mm/dd/yyyy

US zip code
/(^\d{5}$)|(^\d{5}-\d{4}$)/ 99999 or 99999-9999

Canadian postal code
/^\D{1}\d{1}\D{1}\-?\d{1}\D{1}\d{1}$/ Z5Z-5Z5 orZ5Z5Z5

Time
/^([1-9]|1[0-2]):[0-5]\d(:[0-5]\d(\.\d{1,3})?)?$/ HH:MM or HH:MM:SS or HH:MM:SS.mmm

IP Address(no check for alid values (0-255))
/^\d{1,3}\.\d{1,3}\.\d{1,3}\.\d{1,3}$/ 999.999.999.999

Dollar Amount
/^((\$\d*)|(\$\d*\.\d{2})|(\d*)|(\d*\.\d{2}))$/ 100, 100.00, $100 or $100.00

Social Security Number
/^\d{3}\-?\d{2}\-?\d{4}$/ 999-99-9999 or999999999

Canadian Social Insurance Number
/^\d{9}$/ 999999999

posted @ 2007-05-30 06:54 jing 阅读(285) | 评论 (0)编辑 收藏

2007年4月28日

Dvd Rip 字幕使用

完成下载相应的字幕文件之后,需要把下载的字幕文件和电影文件放到同一个目录下面。然后需要把字幕文件和电影文件改成同一文件名称,这其中不包括文 件的扩展名。例如下载某电影为abc.avi,相应的字幕文件为abc.srt(或者abc.idx和abc.sub)。

有时下载的字幕与电影在时间上有偏差!或者字幕分为两集!电影分成三集!前者还好办一些!只要调整播放软件设置中字幕的同步时间就可以!其他一些可以调整字幕时间的软件!如Kmplayer !也可以用软件直接编辑字幕!vobsub

后者比较麻烦!则需要字幕编辑软件来完成!例如vobsub。这个软件就是一款字幕编辑软件!可以分割和合并字幕!!

posted @ 2007-04-28 08:24 jing 阅读(703) | 评论 (1)编辑 收藏

2007年4月16日

转载 google acquisitions

转载 google acquisitions

(中文链接 http://tech.sina.com.cn/i/2007-04-14/13421465519.shtml )

With all of the recent acquisitions by Yahoo! and Google, I decided to take a closer look at some of the companies that Google has purchased. I’m glad I did. I came across a couple of papers I hadn’t seen before, and learned a little more about some of Google’s employees that I didn’t know.

Doubleclick (Added 4/14/2007)

Google’s largest acquisition at this point in terms of cost (for $3.1 billion in cash) was announced at the Official Google Blog.

I’ve posted about some of the patent filings that Doubleclick has made over the past few years in Doubleclick + Google: Looking at Some of the Doubleclick Patent Filings. It’s going to be interesting to see how Google moves forward with this purchase.

Gapminder’s Trendalyzer Software (Added 3/17/2007)

An announcement from Google’s Marissa Mayer on the official Google Blog titled A World in Motion tells us of the acquisition of some new software by Google, as well as the hiring of team members who worked for the foundation that developed the software.

The software adds a visualization element to the presentation of data, ” in the display of facts, figures, and statistics in presentations.” According to the Gapminder pages:

Trendalyzer’s developers have left Gapminder to join Google in Mountain View, where Google intends to improve and scale up Trendalyzer, and make it freely available to those who seek access

Adscape Media (Added 2/17/2007)

This company has been around under the name BiDamic since 2002, and as Adscape Media since 2006. Details are supposedly still being worked out, but it’s sounds like this in-game advertising company has been purchased by Google. One of the news reports included a quote from a Adscape employee who stated that they owned 15 patents.

I found 30 published patent applications, and a granted patent. Links to those and more details about the company at: Google Acquires Adscape Media: Interactive Online Gaming Advertisement and Gaming System Developers

A couple of those patent filings are for full blown, interactive, online gaming systems.

update - 3/17/2007 -Google publishes a press release on the Adscape Media acquisition

Jotspot, Inc. (Added 10/31/2006)

Founded by Joe Kraus and Graham Spencer, who had worked together at Excite.com, Jotspot is a wiki with a number of collaborative tools for business users, and includes applications such as spreadsheets, calendars, and forms, unlike most wiki software. I’ve written a longer post on the acquisition at Google Acquires Jotspot, Inc. & Wiki Patent Application

Financial terms of the purchase were not disclosed, but Jotspot had just had a patent application published at the US Patent and Trademark Office:

Collaborative web page authoring

YouTube, Inc. (added 10/9/2006)

YouTube was founded in February, 2005, and quickly grew to one of the busiest online destinations on the web. The site is community driven, and allows people to post and share videos. Viewers can tag videos, comment upon them, and display them upon their own web sites.

The Google Press Release issued on October 9, 2006, tells us that the sale price was $1.65 Billion in a stock for stock transaction. There are no planned changes to the YouTube brand identity. The company will continue to be based in San Bruno, CA, and all of the YouTube employees will remain with the company.

As of this update, there isn’t a press release on the YouTube site about the Google acquisition, but there are three releases dated today about content and distribution deals with CBS (Strategic Content and Advertising Partnership), Sony BMG Music Entertainment (Content License Agreement ), and Universal Music Group (Strategic Partnership).

Neven Vision (added 8/15/2006)

Neven Vision, or Nevenengineering, Inc., has a strong background in facial and object recognition technologies, and has been broadening their offerings by focusing upon mobile technology, including two patent application filed over the past couple of years for image-based search on a mobile device equiped with a camera. I’ve written a little about the acquisition, and the company and its technology (including patents) in this post: Google Acquires Neven Vision: Adding Object and Facial Recognition Mobile Technology.

@Last Software (added 3/14/2006)

@Last Software (March, 2006) - 3D design software, with a plugin for Google Earth. Rumors of the purchase started circulating as early as October of last year. A Frequently Asked Questions section on the purchase describes changes resulting from the purchase.

The company does hold a US Patent:

System and method for three-dimensional modeling

Abstract:

A three-dimensional design and modeling environment allows users to draw the outlines, or perimeters, of objects in a two-dimensional manner, similar to pencil and paper, already familiar to them. The two-dimensional, planar faces created by a user can then be pushed and pulled by editing tools within the environment to easily and intuitively model three-dimensional volumes and geometries.

Writely (added 3/10/2006)

Writely (March 2006) Web-based word processing that allows online collaboration on documents.

The buzz is on with this acquisition that Google is going to take on Microsoft, and that company’s hold on desktop publishing applications. Except that this isn’t just a desktop publishing application. The program allows you to organize documents by tags, which makes it a web 2.0 styled application, and it provides offline storage and backups. It can also be used to create blog posts for a blog, and allows for rollbacks to previous versions.

Measure Map (added 3/10/2006)

Measuremap(February, 2006) A statistics and analytics package geared more towards blogs than other web sites, the acquistion of this company by Google was something of a surprise, especially since Google purchased Urchin, which makes a pretty good analytics program. But the beauty or Measuremap is supposedly in the User Interface and design. Hard to tell at the time of the purchase, since it was invitation-only pre-release mode, and I never received the invitation I signed up for.

dMarc Broadcasting (added 3/10/2006)

dMarc Broadcasting(January, 2006) Radio advertising company, allowing for highly automated advertising campaigns. This acquisition brought Google a whole new way to reach out to consumers with advertisements.

Android

Android (August 2005), software for mobile telephones
Founded by Andy Rubin, accompanied by Andy McFadden, Richard Miner, and Chris White.

Reqwireless, Inc. (added 3/10/2006)

Reqwireless (July, 2006) Maker of popular mobile applications for email and the web on wireless devices. The presumption is that the technology developed by the ReqWireless folks, and the chance to gain a foot hold in the Waterloo, Ont. area is what led to this acquisition. The purchase wasn’t uncovered until January 6, 2006.

Transformic, Inc. (added 9/20, 2006)

I’ve written a full blog post about this acquisition - Google’s Quiet Acquisition of Transformic, Inc.

Tranformic was a small company, focusing upon building search engines for the deep web, where major commercial search engines had difficulties crawling, and had developed a site that showed off their technology in Everyclassified.com, which collected information from hundreds of classifieds sites on the web. The main reason for this purchase appears to have been to get Dr. Alon Halevy, the man behind Transformic, to work at Google.

Akwan Information Technologies

Akwan Information Technologies (July 2005)
Google Press Release: Google Continues International Expansion, Opens Offices in Latin America

The office in Sao Paulo, Brazil follows the acquisition of Brazil’s Akwan Information Technologies Inc. in July of this year. Akwan has become Google’s R&D centre in Brazil.

An example of the type of research being conducted by the people at Akwan: Distributed Processing of Conjunctive Queries (pdf)

Dodgeball

Dodgeball (May 2005), social-networking software for mobile devices

Founders Dennis Crowley and Alex Rainert, see: Google Buys Social Networking Firm and The Future of Wireless

Urchin Software

Urchin Software (March 2005), Web Analytics software
Google Press Release: Google Agrees To Acquire Urchin

Urchin is a web site analytics solution used by web site owners and marketers to better understand their users’ experiences, optimize content and track marketing performance.

Patent Applications:

System and method for tracking unique visitors to a website

Abstract:

A system and method for analyzing traffic to a website is provided that is based on log files and that uses both server-side and client-side information channeled through one source to create a more complete picture of activity to a website. In one preferred embodiment, a sensor code is embedded in a requested web page, and sends information back to the web server where the website resides. This additional information is logged along with normal requests.

System and method for monitoring and analyzing internet traffic

Abstract:

A system and method for monitoring and analyzing Internet traffic is provided that is efficient, completely automated, and fast enough to handle the busiest websites on the Internet, processing data many times faster than existing systems. The system and method of the present invention processes data by reading log files produced by web servers, or by interfacing with the web server in real time, processing the data as it occurs. The system and method of the present invention can be applied to one website or thousands of websites, whether they reside on one server or multiple servers. The multi-site and sub-reporting capabilities of the system and method of the present invention makes it applicable to servers containing thousands of websites and entire on-line communities. In one embodiment, the system and method of the present invention includes e-commerce analysis and reporting functionality, in which data from standard traffic logs is received and merged with data from e-commerce systems. The system and method of the present invention can produce reports showing detailed “return on investment” information, including identifying which banner ads, referrals, domains, etc. are producing specific dollars.

Zipdash

Zipdash (December 2004) Provides navigation assistance for road traffic on mobile in real time by GPS.
See: Navigating by phone and Google acquires traffic info start-up Zipdash

Where 2 Technologies

Where 2 Technologies (October 2004), Internet mapping

Brothers Lars Eilstrup Rasmussen and Jens Eilstrup Rasmussen are from Google’s Sydney office, and have been actively involved in the patent applications behind Google Maps, and using Geographic location information. Before then, they were with Where 2 technologies. See: Take browsers to the limit: Google, and Google Maps and AJAX vs WithStyle - the Australian Legacy, and Assigning Geographic Locations to Web Pages.

Keyhole

Keyhole (October 2004), imagery by satellite
Google Press Release: Google Acquires Keyhole Corp

Keyhole’s technology combines a multi-terabyte database of mapping information and images collected from satellites and airplanes with easy-to-use software.

Picassa

Picasa (July 2004), software of management of photographs on line
Google Press Release: Google Acquires Picasa

Google Inc. today announced it acquired Picasa, Inc., a Pasadena, Calif.-based digital photo management company

Ignite Logic

Ignite Logic (May 2004), design of turn key legal sites. Puzzling acquisition, though founder David Ferguson has an interesting past.

Genius Labs

Genius Labs (October 2003), Biz Stone was Genius Labs. He is no longer with Google.

Sprinks

Sprinks (October 2003), paid advertising

Kaltix

Kaltix (September 2003), Research on personalized search, from Taher Haveliwala, Glen Jeh, and Sepandar Kamvar.
Google Press Release: Google Acquires Kaltix Corp.

Kaltix Corp. was formed in June 2003 and focuses on developing personalized and context-sensitive search technologies that make it faster and easier for people to find information on the web.

Patent application:

System and method for presenting multiple sets of search results for a single query

Abstract:

A system and a method that manages a user query by a single interaction between a server and a client. A plurality of clients send queries for search results to a server. The server receives these queries and performs multiple searches to generate multiple sets of search results. These sets of search results are ranked, consolidated and passed to the requesting client. The client stores these multiple sets of search results. The client then displays these search results in accordance to the boundary defined by the user. This boundary defines the portions of the search results that the user desires to view. The user may re-define the boundary. The client identifies the search results corresponding to the boundary and displays them.

Applied Semantics

Applied Semantics (April 2003), contextual advertising
Google Press Release: Google Acquires Applied Semantics

Applied Semantics’ products are based on its patented CIRCA technology, which understands, organizes, and extracts knowledge from websites and information repositories in a way that mimics human thought and enables more effective information retrieval.

Patents:

Meaning-based advertising and document relevance determination

Abstract:

The present invention is directed to a system in which a semantic space is searched in order to determine the semantic distance between two locations. A further aspect of the present invention provides a system in which a portion of semantic space is purchased and associated with a target data set element which is returned in response to a search input. The semantic space is created by a lexicon of concepts and relations between concepts. An input is associated with a location in the semantic space. Similarly, each data element in the target data set being searched is associated with a location in the semantic space. Searching is accomplished by determining a semantic distance between the first and second location in semantic space, wherein this distance represents their closeness in meaning and where the cost for retrieval of target data elements is based on this distance.

Meaning-based information organization and retrieval

Abstract:

The present invention relies on the idea of a meaning-based search, allowing users to locate information that is close in meaning to the concepts they are searching. A semantic space is created by a lexicon of concepts and relations between concepts. A query is mapped to a first meaning differentiator, representing the location of the query in the semantic space. Similarly, each data element in the target data set being searched is mapped to a second meaning differentiator, representing the location of the data element in the semantic space. Searching is accomplished by determining a semantic distance between the first and second meaning differentiator, wherein this distance represents their closeness in meaning. Search results on the input query are presented where the target data elements that are closest in meaning, based on their determined semantic distance, are ranked higher.

Neotonic Software

Neotonic Software (April 2003), email customer support Case Study from neotonic, about how they helped Google in the days before the purchase. Google also hired David Jeske, who was the co-founder of Neotonic and the former director of engineering for eGroups.

Pyra Labs

Pyra Labs (February 2003), editor of Blogger, blogging platform

Outride

Outride (September 2001), a Xerox PARC spinoff, data-mining and semantic analysis. See: Personalized Search: A contextual computing approach may prove a breakhrough in personalized search efficiency (pdf) and Personalized Search

Google Press Release: Google Acquires Technology Assets of Outride Inc.

Outride, a spin-off from Xerox Palo Alto Research Center (PARC), was created to apply state-of-the-art model-based relevance technology to the challenge of online information retrieval.

Deja Deja.com (February 2001), Purchase of their usenet archive and other assets, which become Google Groups.

posted @ 2007-04-16 01:57 jing 阅读(278) | 评论 (1)编辑 收藏

仅列出标题  
<2024年11月>
272829303112
3456789
10111213141516
17181920212223
24252627282930
1234567

导航

统计

常用链接

留言簿(1)

随笔档案

web technology

搜索

最新评论

阅读排行榜

评论排行榜