text:
US6041324A - System and method for identifying valid portion of computer resource identifier - Google Patents
System and method for identifying valid portion of computer resource identifier Download PDF
Joel Ray Earl
David John Goodman
George Wayne Nation
International Business Machines Corp
1997-11-17 Application filed by International Business Machines Corp filed Critical International Business Machines Corp
1997-11-17 Assigned to INTERNATIONAL BUSINESS MACHINES CORPORATION reassignment INTERNATIONAL BUSINESS MACHINES CORPORATION ASSIGNMENT OF ASSIGNORS INTEREST (SEE DOCUMENT FOR DETAILS). Assignors: EARL, JOEL RAY, GOODMAN, DAVID JOHN, NATION, GEORGE WAYNE
H04L29/00—Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00
H04L29/02—Communication control; Communication processing
H04L29/06—Communication control; Communication processing characterised by a protocol
G06F16/95—Retrieval from the web
G06F16/955—Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
G06F16/9566—URL specific, e.g. using aliases, detecting broken or misspelled links
H04L29/12—Arrangements, apparatus, circuits or systems, not covered by a single one of groups H04L1/00 - H04L27/00 characterised by the data terminal
H04L29/12009—Arrangements for addressing and naming in data networks
H04L61/00—Network arrangements or network protocols for addressing or naming
H04L67/42—Protocols for client-server architectures
Y10S707/00—Data processing: database and file management or data structures
Y10S707/99931—Database or file accessing
Y10S707/99939—Privileged access
Y10S707/99941—Database schema or data structure
Y10S707/99944—Object-oriented database structure
Y10S707/99945—Object-oriented database structure processing
A system and method for receiving and validating user input for a computer resource entered into a computing system or network, and distinguishing valid and invalid portions of the user input. The invalid resource identifier, which ranges from a least specific portion to a most specific portion, is partitioned into a plurality of fields. At least one of the fields corresponding to the most specific portion of the invalid resource identifier is removed from the invalid resource identifier to create a modified resource identifier, wherein the modified resource identifier is used to attempt to access a higher level computer resource. The fields corresponding to the most specific portion of the resource identifier are removed until the modified resource identifier proves to be a valid resource identifier which can access a computer resource. The valid resource identifier is distinguished from the invalid resource identifier entered by the user, so that the user can easily determine a point at which the input is invalid.
The present invention relates generally to computer or data processing systems. More particularly, the present invention relates to a system and method for receiving and validating user input for a computer resource entered into a computing system or network.
Information input and output are essential components of any computing system, as it provides a means by which computers and computer users can communicate. Virtually every computer processes data, and input is the mechanism to get unique data to the programs operating under the control of the computing system. The computer interface is the point--whether logical or physical--at which the computer and a peripheral connect. For example, keyboards, pointing devices, etc. are often used as a user interface for a user to input some form of text or other information to the computer system.
Computer systems often provide a means for which the user can enter an identifier of a desired resource. The desired resource can be any information related to a computer or computer network (i.e., computing system) that is used to control the computing system or that is stored within the computing system. For example, a desired resource may be specified by interacting with a command interpreter, often referred to as a command "shell". Generally, a command interpreter or shell is a program which reads textual commands from the user or from a file and executes them. Users enter commands, or other "identifiers" of a desired computer action, at a user interface so that a command interpreter or similar device can receive the commands for execution. The commands typically take the form of a character string identifying a specific action for which the computer should take, and may include many command "arguments" which either modify the action performed or supply it with additional input. Such commands and accompanying arguments often result in long character strings which are entered by the user.
Another desired resource may be a stored file in a computer memory or storage medium. Users enter identifiers (i.e., addresses) which specify which of the files is being sought. The user must enter the filename of the desired file, along with any preceding directory and sub-directory information. Similarly, the Internet is designed so that identifiers such as URLs (Uniform Resource Locators) can be entered by a user to locate the desired Internet resource. Because of the enormous amount of information available on the Internet and the potentially large number of files and directories configured on storage mediums, these types of identifiers (addresses, URLs, etc.) can also prove to be lengthy character strings. Other similar types of identifiers or addresses in computer systems also require computer users to enter comprehensive and intricate textual strings.
If any portion of the entered identifier proves to be incorrect, prior art computer systems simply indicate that the identifier is invalid, without indicating what portion, if any, of the identifier is valid. Typically, a user then carries out a trial-and-error procedure where the user removes the most specific portions of the identifier until a higher level identifier is found to be correct. Each of the removed portions is then reapplied to the high level identifier, one at a time, until the system indicates that the address is entered correctly. This method can be extremely cumbersome and time-consuming.
It would therefore be advantageous for a computer user interface to provide a means for which a lengthy character string would not have to be completely re-entered if an entry error occurred, and to help the user determine how to correct the faulty character string. It would also be beneficial to the user to be notified of the point of error so as to assist the user in analyzing whether the error was a typographical error or whether the user was not in possession of a valid identifier. Further, it would be beneficial to have the user interface or entry field automatically locate and position a cursor or other line entry identifier at the point where correction should be made. The present invention provides a solution to these and other problems, and offers other advantages over the prior art.
The present invention relates to a system and method for receiving and validating user input for a computer resource entered into a computing system or network, and for distinguishing valid and invalid portions of the user input.
In accordance with one embodiment of the invention, a method for determining a valid portion of an invalid resource identifier entered by a user is provided. The resource identifier is an address or other identifier which is used to access a computer resource in a computing system. The resource identifier entered by the user is determined to be invalid as a result of having no corresponding resource addressable by the entered resource identifier. The invalid resource identifier, which ranges from a least specific portion to a most specific portion, is partitioned into a plurality of fields. At least one of the fields corresponding to the most specific portion of the invalid resource identifier is removed from the invalid resource identifier to create a modified resource identifier, and the modified resource identifier is used to attempt to access a higher level computer resource. The fields corresponding to the most specific portion of the resource identifier are removed until the modified resource identifier proves to be a valid resource identifier which can access a computer resource. The valid resource identifier is distinguished from the invalid resource identifier entered by the user, so that the user can easily determine a point at which the input is invalid.
In accordance with another embodiment of the invention, a computing system for determining a valid portion of a desired resource identifier is provided. The desired resource identifier is intended to access a targeted computer resource within a computer or network, but has failed to access the targeted computer resource. The system includes memory that is configured to store a plurality of system resource identifiers, wherein the memory can be centralized or distributed throughout multiple computers in a network. A user interface allows a user to enter the desired resource identifier. A processor cooperates with the user interface to truncate predefined portions of the desired resource identifier until a resulting modified resource identifier is identified as a valid resource identifier. A valid resource identifier is one which is included within at least one of the system resource identifiers. A display device displays the valid resource identifier in relation to the desired resource identifier entered by the user.
In accordance with yet another embodiment of the invention, a computing system for determining a valid portion of an invalid Uniform Resource Locator (URL) is provided. A URL is used to access a targeted network resource within a computer network, such as the Internet. The computing system includes a client computer, which includes a user interface to allow a user to enter the desired URL, and a display device to display the desired URL entered by the user. The computing system also includes a network server, which includes memory configured to store multiple available URLs. This memory may be centralized within the network server, or distributed throughout multiple servers within the network. The server further includes a processor configured to remove predefined portions of the desired URL until a resulting modified URL is identified as a valid URL included within at least one of the available URLs.
In accordance with another aspect of the invention, a method for determining a valid portion of an invalid database request entered by a user is provided. The invalid database request is a request intended to access a particular one or more computer database records in a computing system. The database request, which ranges from a least specific portion to a most specific portion, is partitioned into plurality of fields. At least one of the fields corresponding to the least specific portion of the invalid database request is introduced into an evaluation field string, and the evaluation field string is tested for validity. Further fields are introduced into the evaluation test string until the evaluation field string is found to be invalid. The valid portion of the evaluation field string, which includes the evaluation field string at the time prior to the introduction of the invalidating field, is identified to the user.
These and other features and advantages of the present invention will become readily apparent to those skilled in the art from the following detailed description and corresponding drawings. As will be realized, the invention is capable of modification without departing from the invention. Accordingly, the drawing and description are to be regarded as illustrative in nature, and not as restrictive.
FIG. 1 is a flow diagram of a prior art file completion process;
FIG. 2 is a flow diagram of a prior art method for displaying potential file completions;
FIG. 3 is a flow diagram of an identifier resolution operation in accordance with one aspect of the present invention;
FIG. 4 illustrates an example of an file path identifier hierarchy;
FIG. 5 illustrates one embodiment of a user interface window for entering desired identifiers and displaying an indication of the valid portion of the desired identifier;
FIG. 6 illustrates one manner in which the system distinguishes the valid portion from the invalid portion of an identifier in the text entry field;
FIG. 7 is a flow diagram illustrating the manner in which a web browser performs a Uniform Resource Locator (URL) resolution operation in accordance with the present invention;
FIG. 8 is an illustration of a display window used to provide a hypertext link to the valid portion of a requested URL;
FIG. 9 is a flow diagram illustrating the manner in which a web server performs a URL resolution operation in accordance with the present invention;
FIG. 10 is a flow diagram illustrating the manner in which a command shell performs a file path resolution operation in accordance with the present invention;
FIG. 11 is a flow diagram illustrating the manner in which a command-line-driven application performs a file path resolution operation in accordance with the present invention;
FIG. 12 is a flow diagram illustrating the manner in which a valid portion of a postal address can be resolved using a reversed-sequence address resolution process in accordance with the present invention;
FIG. 13 is a flow diagram of a general embodiment of a reversed-sequence address resolution in accordance with the present invention;
FIG. 14 is a flow diagram of the provision of a completions list in accordance with the present invention; and
FIG. 15 is an example of a computing system in which the present invention can be incorporated.
DETAILED DESCRIPTION OF THE ILLUSTRATED EMBODIMENTS
As previously described, prior art identifier entry interfaces indicate that an identifier is invalid where any portion of the entered identifier proves to be incorrect. These systems do not indicate what portion of the identifier, if any, is valid. Many computer systems offer features commonly referred to as "command completion" and "filename completion". Command completion allows the user to enter a portion of a command name followed by a special keystroke that instructs the system to complete the command name. Upon receipt of the special keystroke, the system searches the available commands for those whose names begin with the command portion provided by the user. In the event that only one command includes the command portion, the system will fill in the remainder of the command name and position the cursor at the end of the command name, as if the user had typed the entire command. In the event that more than one command is matched by the portion, the system will fill any additional portion of the command name that is common to all the matching commands, and move the cursor to the end of this newly added portion. In either case, the system then allows the user to continue entering the command or to modify the portion filled in by the system.
File completion is similar, except that it deals with the specification of file names rather than command names. As illustrated in FIG. 1, such a prior art system allows the user to enter a prefix portion of a file name, followed by some special keystroke to request completion of this prefix, as shown at step 10. Upon receipt of this keystroke, the system will search the available files, and determine 12 whether any files begin with the prefix provided by the user. If no files match, an indication is provided 14 to that effect, and processing ends 16. In the event that only one file name matches as determined at step 18, the system will fill in the remainder of the file name at step 20 and position the cursor at the end of the file name, as if the user had typed it. In the event that more than one file name is matched by the portion, it is determined 22 whether additional common characters can be added to the files. If no common characters can be added, the system indicates 24 that the file prefix is still incomplete. If all the file names matching the entry have a common prefix beyond the portion matched by the supplied prefix, the system will add the remainder of this common prefix to the supplied prefix as if the user had typed it, as seen at step 26, and it is indicated 28 that the filename is still incomplete. Whether or not common characters are supplemented, the system allows the user to continue entering the file name or to modify the portion filled in by the system.
Implementations of command completion and file name completion may include an additional feature where the possible completions are displayed. This is useful where more than one command or file name is matched by the portion provided. A special keystroke causes the system to display the names matching the entered portion of the command or file name, so that the user can easily determine what additional portion of the name must be entered to more uniquely specify the desired name. A prior art method for displaying the potential completions is illustrated in the flow diagram of FIG. 2. At step 40, the user requests a completion list, and the system determines 42 whether any files exist that match a prefix of the desired command or file name entered by the user. The system returns an indication 44 that no files match is a match is not found. Where one or more files or commands include the prefix entered by the user, a list of those command or file names which match the prefix are returned at step 46.
These types of systems, however, do not automatically determine the incorrect portion of an identifier and automatically direct the user to the relevant editing position, from which position editing can occur or possible completions can be displayed. Therefore, the present invention allows an address, command, URL or other identifier to be analyzed for partial accuracy, and allows the valid portion to be conclusively identified. A user can then request valid completions for a partially correct identifier.
Referring now to FIG. 3, a flow diagram of one aspect of the invention is provided. The "identifier" referred to in FIG. 3 represents a user input variable including a string of characters that is used to identify or locate a particular computer resource. As will be described more fully below, this identifier may take the form of a memory address or other device address, a command, or a network address such as a URL.
When an identifier is found to be invalid at step 50, the system initiates an identifier resolution operation. The most specific portion of the identifier is removed 52 from the incorrect identifier entered by the user. For example, the most specific portion of a file path which includes a hierarchy of a number of directories followed by a file name would be the file name. This assumes that the "portion" has been predefined to include fields corresponding to the directories and file names. Alternatively, the "portion" could be defined as each individual character in the file path character string. Therefore, the most specific portion to be removed can correspond to the name of the lowest-level hierarchical object for a hierarchical identifier, or it can be some subset of that name, such as a single character. Selecting a portion based on the name of the lowest-level hierarchical "object" may provide an improved response time over the selection of single characters.
The remaining portion of the identifier (hereinafter the "modified identifier") is then tested for validity at steps 54 and 60. At step 54, it is determined whether any identifier remains after removing the most specific portion of the requested identifier. If not, then the system reports 56 that no portion of the requested identifier is valid, and processing ends 58. If a modified identifier can be created, however, it is then determined at test step 60 whether that modified identifier is valid. If it is not valid, the system returns to step 52 where yet another portion of the modified identifier is removed. In one embodiment of the invention, the removal process continues to remove the most specific portion of the modified identifier, thereby creating another modified identifier which will be more generic (i.e., a higher level of abstraction) than the previous one. In other words, an identifier is a subset of the more generic identifier that is created upon removing the most specific portion of that identifier. This will be described in greater detail in connection with FIG. 4.
The identifier resolution operation continues to remove the most specific portions of the initially requested identifier until no portion of the identifier is valid, as shown at step 56, or until a modified identifier is found to be valid at test step 60. This test can take various forms, depending on the nature of the identifier. In one embodiment of the invention, this test is effected by comparing the modified identifier with identifiers of the type requested. For example, where the identifier is a file path, the modified file path is compared to existing file paths in the file memory being searched. As is known to those skilled in the art, this comparison can be performed via hardware, firmware, or preferably via a software comparison routine.
If a modified identifier is found to be valid, the system returns an identification of the valid portion of the requested identifier, as shown at step 62. In one embodiment of the invention, this identification is provided by distinguishing the valid portion in reference to the requested identifier. For example, the requested identifier can be displayed in a display window with the valid portion distinguished from the entire requested identifier using distinguishable features such as fonts, character size, color, underlining, background attributes, reverse video, etc. As will be readily apparent to those skilled in the art, other distinguishing characteristics can be used without departing from the spirit and scope of the invention. Alternatively, a cursor may be automatically inserted at the boundary between the valid and invalid portions of the requested identifier in a text entry field, so that the user can edit the identifier from the automatically positioned cursor position. This helps the user focus the effort of correcting the identifier on that portion which is not valid, or to start at the object corresponding to the valid portion of the identifier in searching for the correct version of the invalid portion.
Referring now to FIG. 4, an example of an identifier hierarchy is provided. The example of FIG. 4 refers to a file path identifier, however this example is equally applicable to other types of identifiers such as URLs and commands. The file path hierarchy of FIG. 4 has six levels, labeled level 1 through level 6. Where a user wants to access a file named MNOP, an entry could be entered into a filename entry field as shown in Example 1 below:
DIR-1\DIR-2A\DIR-3B\DIR-4C\DIR-5.backslash.MNOP                                               [Ex. 1]
Each of the six levels corresponds to a hierarchical object, moving from the least specific (level 1) to the most specific (level 6). Each of these hierarchical objects are depicted in FIG. 4, labeled DIR-1 80, DIR-2A 82, DIR-3B 84, DIR-4C 86, DIR-5 88, and MNOP 90. Where the most specific portion of a file path is removed at step 52 of FIG. 3, the removal therefore begins at level 6 of the current example, thereby removing object MNOP 90. Therefore, after the most specific portion of the requested identifier has been removed for the first time, the resulting modified identifier would appear as shown in Example 2 below:
DIR-1\DIR-2A\DIR-3B\DIR-4C\DIR-5[Ex. 2]
Because the "portion" has been defined to be a hierarchical object rather than a single character in this example, the most specific portion removed is the file name MNOP. The remaining portion is then again tested, and the removal process continues to remove the most specific portion of the modified identifier until no portion of the identifier is valid, or until a modified identifier is found to be valid. Had the user entered DIR-40C rather than DIR-4C in the text entry field, the valid portion returned would appear as shown in Example 3 below:
DIR-1\DIR-2A\DIR-3B                    [Ex. 3]
Referring now to FIG. 5, an example is provided of a user interface window 100 that allows a user to input a desired identifier, and which can provide an indication of the valid portion of the desired identifier. Within the user interface window 100 is an entry field 102, where a user can input a desired identifier, which in this example is a URL entry to access a resource via the Internet. Upon submitting the URL, the URL is checked for validity. If found to be invalid, the URL is analyzed as described in connection with FIG. 3 to ascertain what portion of the URL, if any, is valid. If a portion is determined to be valid, the system returns an identification of the valid portion of the requested identifier as referenced against the requested URL. In one embodiment of the invention, this is accomplished by providing a display window 104, which displays the requested URL, and distinguishes the valid portion from the invalid portion, so that the user knows precisely where the invalid portion of the original entry begins. In another embodiment of the invention, the system distinguishes the valid portion from the invalid portion of the requested URL in the entry field 102.
FIG. 6 illustrates one manner in which the system distinguishes the valid portion from the invalid portion of an identifier, such as a URL, in the text entry field 102. An original requested URL in the entry field 102 includes various objects or fields arranged in a hierarchy of specificity, ranging from field 120 to field 136. As the URL is analyzed as described in connection with FIG. 3, and the requested URL is not valid, the fields are removed until a valid, higher level URL is established. For example, fields 136, 134 and 132 may be removed and the remaining URL including fields 120, 122, 124, 126, 128 and 130 may be found to be valid. The present invention identifies the boundary between the valid portion 138 and the invalid portion 140 of the requested URL. In one embodiment of the invention, this can be accomplished by moving the user interface entry cursor to the boundary location identified by arrow 142. In this way, the user can simply begin editing from the inserted cursor position.
There are many computer-related embodiments in which the present invention can be applied. In order to illustrate various embodiments of the invention, the following examples are provided. While the invention is described in the context of the following examples, other embodiments are possible without departing from the scope and spirit of the invention as will be readily apparent to those skilled in the art from the ensuing description of the various embodiments of the invention.
FIG. 7 is a flow diagram of one embodiment of the invention where a web browser performs a URL (Uniform Resource Locator) resolution operation in accordance with the present invention. A URL is used to locate a resource in a network environment such as the Internet, and is essentially an address for an object that can be accessed by the web browser. A web browser is a client program that is used to access various kinds of Internet resources from remote web servers. It allows a user to read hypertext, and gives some means of viewing the contents of nodes (or "pages"), and of navigating from one node to another.
For the purposes of this description, the user interface of a web browser includes at least two components. First, a display window is provided for displaying the contents of a URL, an error message, or other communication from the browser to the user. Such a display window was illustrated as display window 104 in FIG. 5. Second, an entry field, such as entry field 102 of FIG. 5, is provided to allow the user to enter a URL to be loaded.
When the user enters a URL for the browser to fetch, the browser sends the request to the server and waits for a response. The response is either the content of the requested URL, or an error message. If the error message is "File Not Found" (e.g., HTTP status code 404), existing browsers will simply display the error message to the user, and wait for further user action. A browser equipped with the present invention will instead display a "resolving incorrect URL" message, and initiate the resolution operation shown in FIG. 3. If the user does not wish to wait for the resolution process, activating the "Stop" button (or any other means the browser provides to interrupt an operation) will stop the resolution process, and display the standard "File not found" message.
For each iteration of the resolution operation, the browser will remove the rightmost (most specific) element of the incorrect URL, and send a HEAD request for this modified URL to the server. HTTP (HyperText Transfer Protocol) defines a HEAD request for obtaining information about a document, without the additional overhead of obtaining the document itself. The server will respond normally to these requests by sending header information for the requested URL if it is available, or by sending a status code 404 if the requested URL is not available. If the server sends the header information, then the URL is considered valid. The browser uses a pointer to position the cursor in the URL entry field between the valid and invalid portions of the URL.
Referring again to FIG. 7, one embodiment of the aforementioned process is provided where a web browser performs a URL resolution operation. When a URL is deemed invalid at step 200, the browser initiates the URL resolution operation by removing 202 the most specific portion of the URL. If no portion of the requested URL is found to be valid, the browser will display a message 206 in the display window that the entire URL is invalid, and processing of the URL resolution operation will end 208. If any portion of the URL exists after removing a portion at step 202, the remaining portion of the URL is tested for validity at step 210 by sending a HEAD request for this modified URL to the server. If the modified URL is not valid, processing returns to step 202 where the next most specific portion of the modified URL is removed. This removal and validity testing process continues until no portion of the URL is remaining, or until the modified portion of the URL is valid.
Where the validity test at step 210 is successful, an indication is returned that identifies the boundary between the valid and invalid portions of the URL, as shown at step 212. The boundary identification can be used to position the cursor in the URL entry field between the valid and invalid portions of the URL. Optionally, the browser will also display in the display window a message indicating that the URL is partially valid, and use some form of indication to distinguish the valid and invalid portions. This indication can be in the form of a visual indication, such as distinguishable fonts, character size, color, underlining, and could even take the form of an audible indication. As will be readily apparent to those skilled in the art, other distinguishing characteristics can be used without departing from the spirit and scope of the invention.
The valid portion can also be converted to a hypertext link to the URL corresponding to the valid portion. Hypertext is text that has hyperlinks. In terms of the Internet, a hyperlink is a link in an HyperText Markup Language (HTML) document that leads to another World Wide Web site, or another place within the same document. Hyperlinks are usually underlined or shown in a different color from the surrounding text, and are sometimes in graphical form. When hypertext is viewed with an interactive browser, certain words appear as highlighted by underlining or color, and selecting the highlighted link leads to another resource location.
FIG. 8 is an illustration of a display window 250 used to provide a hypertext link to the valid portion of a requested URL. Alternatively, the hypertext link could be placed in the URL entry field, rather than in the display window 250. The valid portion of the requested URL is depicted by the fields comprising portion 252, where the hypertext link is distinguished from the invalid portion 254 by visual distinctions. In this embodiment of the invention, the valid portion 252 is presented in bold typeface, and is underlined. Selecting this portion via user input selection would lead to the URL corresponding to the valid portion 252. Automatic presentation of such a hypertext link in accordance with the present invention allows a user to link to the most specific valid URL, where the requested URL was not valid for any reason.
A network server, rather than the web browser which is a client of the web server, could be equipped with the present invention. The network server, such as an Internet web server, returns an indication that a URL is invalid at step 300 when the requested URL is not available. In the Internet setting, a web server typically returns an HTTP status code 404 error--"File not found" when the URL is not available. Alternatively, some existing web servers return a search page for that site when an invalid URL is requested. Neither of these methods point out incorrect and correct portions of the URL, and they require the user to essentially start over, whether by entering the complete URL or searching from a search page.
Referring now to FIG. 9, a flow diagram of an embodiment of the invention is provided wherein a web server performs a URL resolution operation in accordance with the invention. The server initiates the URL resolution operation by removing 302 the most specific portion of the URL, and if no portion of the requested URL is found to be valid at step 304, the server will generate a page 306 indicating that the entire URL is invalid, and processing will end 308. If any portion of the URL exists after removing a portion at step 302, the remaining portion of the URL is tested for validity at step 310. If the modified URL is not valid, processing returns to step 302 where the next most specific portion of the modified URL is removed. This removal and validity testing process continues until no portion of the URL is remaining, or until the modified portion of the URL is valid.
Where the validity test at step 310 affirms the existence of the modified URL, the server determines 312 if it can be served to the requesting client. If it can not be served, a page is generated containing a message including the incorrect URL and the valid portion of the requested URL, which is provided to the requesting client as illustrated at step 314. If the modified URL can be served, a page is returned 316 containing a message including the incorrect URL as well as the valid portion of the URL, and a link to the valid portion of the URL is provided at step 318.
Other computer-related embodiments in which the present invention can be applied include user input of commands to a computer system. Generally, a command takes the form of a character string identifying a specific action for which the computer system should take, and may include command arguments which either further define the action or supply it with additional input. Commands can be entered into a computer system in various manners, including through command interpreters and command-line-driven applications.
FIG. 10 is a flow diagram of an embodiment of the invention where a command shell performs a file path resolution operation in accordance with the present invention. A command shell is a form of user interface in which the user enters the names of commands to be executed, as well as associated arguments to specify the behavior of those commands. FIG. 10 illustrates one embodiment of the invention where command completion utilizing identifier resolution operation in accordance with the present invention when the given prefix is invalid.
Many computer systems store commands and files in a hierarchical fashion, meaning that some of the files are actually containers for other files. These special files are generally referred to as directories. The complete specification of a particular file in such a system consists of a combination of the name of the file itself, the name of the directory containing the file, the name of the directory containing that directory, and so forth. This combination of the names of the file and the directories that contain it is called a "file path". File paths can be specified from the highest directory down to the file, or specified relative to a default directory. These specifications are known as "absolute file paths" and "relative file paths", respectively.
A user enters an initial portion of a command, hereinafter referred to as a "prefix", which may include any portion of the file path associated with that command or file. In accordance with the present invention, the user can then request completion of the file path prefix, as shown at step 350. The system compares the entered prefix with files and their associated file paths as they are stored in memory, as determined at step 352. If any files include the entered prefix, it is determined 354 whether more than one files match the prefix. If only one file matches the prefix, the matching file is identified 356, and the possible completions to the prefix are displayed 370. If more than one file matches the prefix as determined at step 354, the prefix and any subsequent portion of the matching files that is common to all files is returned 358, and the possible completions are displayed 370.
If, however, the prefix provided by the user does not match any files as determined at step 352, the least significant portion of the file path is removed 360. In one embodiment of the invention, the portion is reduced to a single character, so that the least significant character of the file path is removed. If no characters are remaining at step 362 after removal of the least significant character, an indication of the invalidity of the requested file path prefix is returned 364, and processing ends. If any characters are remaining after removal of the least significant character, it is determined 366 whether files exist that match the modified file path prefix. If files match the modified file path prefix, an indication is returned 368 that the modified file path prefix is valid, and the possible completions to the file path are shown 370.
If it is determined at step 366 that no files exist that match the modified file path prefix, processing returns to step 360, where another character of the file path is removed. This file path resolution operation continues by removing file path characters, moving from the least significant character to the most significant character, until an indication is returned 368 that the modified file path prefix is valid, and the possible completions are displayed 370.
A command-line-driven application is defined by a non-interactive user interface. Typically, the application is used by typing its name, followed by any arguments to specify its behavior, at the prompt of a command shell. Often, one or more of the arguments which are supplied will be in the form of a file path. When given an invalid file path, current command-line-driven applications simply report that the path is invalid. The present invention will enter a identifier resolution operation upon detecting an invalid file path, as illustrated in FIG. 11.
Referring now to FIG. 11, a flow diagram of an embodiment of the invention where a command-line-driven application performs a file path resolution operation in accordance with the present invention. Where the file path is determined to be invalid 400, the file path is compared to stored files to determine 402 whether any of the files match the file path provided. If so, it is indicated 404 that the file path is invalid, but also indicated 406 that a portion of the requested file path matches one or more of the existing files. Optionally, these matching existing files can be listed for the user to select a desired one of the existing files.
Where the file path does not match any of the files at step 402, the least significant character of the file path is removed 408. If no characters are remaining in the file path as determined at decision step 410, the entire file path is invalid 412, and processing ends. If characters are remaining after removal of the least significant character, the modified file path is compared to existing files to determine 414 whether the modified file path is included in any of the existing files. If so, the valid portion of the file path is identified, and the system reports that the requested file path is invalid, as illustrated at step 416. Optionally, the files that include the valid portion of the requested file path can be listed 418.
If it is determined at step 414 that no files exist that match the modified file path, processing returns to step 408, where the next least significant character of the file path is removed. The application performs this file path resolution operation until a valid portion is identified 416.
Hierarchical addresses are used to designate other structures as well as computer data structures. Some information, such as postal address information, may be resolved in accordance with another embodiment of the present invention. Such a system assumes the presence of a database, distributed or otherwise, capable of determining the validity of a postal address or any portion thereof. When a complete postal address is determined to be invalid, the system begins the address resolution process illustrated in FIG. 12.
The example of FIG. 12 assumes that the system implements postal addresses as a hierarchical system of five fields: addressee name, building or other structure number, street name, city, and state. A practical implementation of a database of valid postal addresses may require more resources to verify an address that is more specific. That is, the validity of a state name can be tested quite easily, while the validity of an addressee name requires much more effort to test. Therefore, this embodiment of the invention reverses the sequences of the address resolution method used in other described embodiments, by adding successive portions of the given address to the address that is used for validation.
Referring now to FIG. 12, a postal address resolution process in accordance with the present invention is provided. Where the requested address is deemed invalid 450, an evaluation address is created 452. The evaluation address is created field by field in a memory location. For example, the evaluation address is first created including only the most general (i.e., hierarchically highest) portion of the postal address. Therefore, the state name is added to the evaluation address first, as shown in step 454. The existing evaluation address is then checked for validity at step 456, by comparing the evaluation address to a list of valid state names or abbreviations. If the existing evaluation address is not valid, the system indicates 458 that the state name is invalid, and that no fields can be validated until this most general field is validated.
If the state name proves to be valid at step 456, the city name is added 460 to the evaluation address. If the evaluation address is valid, which now includes the state and the city, the street name is added to the evaluation address. Otherwise the invalid address is reported, and the valid portion of the address is provided at step 466. Therefore, the user is provided with the valid portion of the address, and the point at which the address was erroneous will become known.
Where the street name is determined to be invalid at step 468, the invalid address is reported, and the valid portion of the address is provided at step 466. Where the street name is valid, the building number can be added 470 to the evaluation address, and the evaluation address can again be checked for validity 472. At each stage, the valid portion of the address is provided at step 466.
FIG. 13 is a flow diagram of a general embodiment of the reversed sequence address resolution method. Other database structures other than postal addresses can be resolved by the present invention, as described in connection with FIG. 13. A requested field string is determined to be invalid 500, and an evaluation field string is created 502. The least specific field is added 504 to the evaluation field string, and the evaluation field string is checked for validity 506. If the evaluation field string is invalid, the system reports that the most general portion of the field string is invalid, as shown at step 508. Otherwise, if the evaluation field string is valid, the next most specific field is added 510 to the evaluation field string. If this modified evaluation field string is not valid as determined at step 512, the valid portion of the field string is reported 514 to the user. If the evaluation field string is valid, processing returns to step 510, where the next most specific field is again added to the evaluation field string. This reversed sequence resolution operation continues until the entire field string is determined to be valid, or until an invalid portion of the field string is identified, at which point the valid portion of the field string is identified to the user at step 514.
FIG. 14 is a flow diagram of an embodiment of the invention where a completions list is provided. Where an identifier resolution operation determines a valid portion of an identifier such as a file path or command name, the user may want to select from a list of possible file paths which match the valid portion of the entered file path or command name. Existing path/name completions merely post a message such as "No Match" if the path/name entered is invalid. The present invention enters an identifier resolution operation, and the possible completion list is provided from the "point of validity".
When this validity point is identified by the present invention, a completions list can be provided as shown in FIG. 14. A user requests 550 a possible completions list upon successful resolution of a valid portion of the particular type of identifier (e.g., file path, command name, URL, etc.). If no existing files match the valid portion as determined at step 552, an indication is provided 554 that no files include the valid portion. Otherwise, a list of the files which include the valid portion is returned to the user 556. This allows the user to select the desired file from a list of files, beginning at the point of validity entered by the user.
With enhanced completion, instead of using the entire path/name, only the portion of the name preceding the cursor would be used. This would be useful in conjunction with the file completion, where file completion would position the cursor to the right of the last valid position in the path/name. Keying a "Possible Completions" key would then show the list of what is possible. The user could also move the cursor to any desired location and request the possible completions at that point.
Referring now to FIG. 15, a system block diagram of a typical computing system 600, in which the present invention can be incorporated, is shown. A user computer 602 suitable for performing the functions in accordance with the present invention typically includes a central processor (CPU) 604 coupled to random access memory (RAM) 606 and read-only memory (ROM) 608. The processor 604 communicates with other internal and external components through input/output (I/O) circuitry and bussing 610. The computer 602 may also include one or more data storage devices, including hard and floppy disk drives 612 and a CD-ROM drive 614. In one embodiment, software containing application software, such as file management or command shell programs, may be stored and distributed on a CD-ROM 616, or a diskette 618, which may be inserted into, and read by, the CD-ROM drive 614 or the disk drive 612 respectively. The computer 602 is also coupled to a display 620, a user input interface 622 such as a mouse and keyboard, and a printer 624. The user typically inputs and modifies the desired resource identifiers by interfacing with the client computer 602 through the user interface 626, which interacts with user input interface 622 and display 620. The computer may optionally be connected to network server 628 in a local network configuration. The computer may further be part of a larger network configuration as in a global area network (GAN) such as the Internet. In such a case, the computer accesses one or more web servers 630 via an internet 632.
As noted above, the present invention provides a system and method for receiving and validating user input for a computer resource entered into a computing system or network, and for distinguishing valid and invalid portions of the user input. The present invention should not be considered limited to the particular examples described above, but rather should be understood to cover all aspects of the invention as fairly set out in the attached claims. Various modifications, equivalent processes, as well as numerous structures to which the present invention may be applicable will be readily apparent to those of skill in the art to which the present invention is directed upon review of the present specification. The claims are intended to cover such modifications and devices.
1. A method for determining a valid portion of an invalid resource identifier entered by a user to access a computer resource in a computing system, wherein the resource identifier ranges from a least specific portion to a most specific portion, the method comprising:
determining whether the resource identifier entered by the user is invalid;
partitioning the invalid resource identifier entered by the user into a plurality of fields;
repeatedly removing at least one of the fields corresponding to the most specific portion of the invalid resource identifier to create modified resource identifiers, until one of the modified resource identifiers is a valid resource identifier; and
distinguishing the valid resource identifier from the invalid resource identifier entered by the user.
2. The method of claim 1, wherein distinguishing the valid resource identifier comprises displaying the valid resource identifier on a user computer display screen in a manner visually distinguishable from the invalid resource identifier entered by the user.
3. The method of claim 2, wherein displaying the valid resource identifier comprises providing a visual depiction of the invalid resource identifier, and visually modifying the valid resource identifier within the invalid resource identifier.
4. The method of claim 3, wherein visually modifying the valid resource identifier comprises modifying characteristics of a text string corresponding to the valid resource identifier, wherein the characteristics of the text string are selected from the group comprising text fonts, text color, background color, text size, underlining, and reverse video.
5. The method of claim 2, wherein displaying the valid resource identifier comprises providing a visual depiction of the invalid resource identifier, and providing a visual cue at a boundary between the valid resource identifier and a remaining portion of the invalid resource identifier.
6. The method of claim 1, further comprising positioning a cursor in a text entry field at a boundary between the valid resource identifier and a remaining portion of the invalid resource identifier to allow the user to edit the invalid resource identifier from a point of validity.
7. The method of claim 1, wherein distinguishing the valid resource identifier comprises providing an audio indication of the valid resource identifier.
8. The method of claim 1, further comprising determining whether the modified resource identifier is the valid resource identifier each time the at least one of the fields is removed from the invalid resource identifier.
9. The method of claim 8, wherein determining whether the modified resource identifier is the valid resource identifier comprises comparing the modified resource identifier to stored computer resource identifiers, and determining whether the modified resource identifier matches any of the stored computer resource identifiers.
10. The method of claim 1, wherein partitioning the invalid resource identifier into a plurality of fields comprises assigning particular portions of the invalid resource identifier to each of the plurality of fields.
11. The method of claim 10, wherein assigning particular portions of the invalid resource identifier to each of the plurality of fields comprises assigning a plurality of textual characters of the invalid resource identifier to a particular one of the plurality of fields.
12. The method of claim 10, wherein assigning particular portions of the invalid resource identifier to each of the plurality of fields comprises assigning a single character of the invalid resource identifier to a particular one of the plurality of fields.
13. The method of claim 1, wherein determining whether the resource identifier entered by the user is invalid comprises comparing the resource identifier entered by the user to stored computer resource identifiers.
14. The method of claim 1, further comprising providing a selectable list of a plurality of available computer resource identifiers which include the valid resource identifier.
15. The method of claim 14, wherein providing a selectable list comprises providing the selectable list of the plurality of available resource identifiers from any point within the valid resource identifier which is designated by the user.
16. The method of claim 15, wherein providing the selectable list of the plurality of available resource identifiers from any point within the valid resource identifier comprises moving a visual designator to the point designated by the user.
17. A computing system for determining a valid portion of a desired resource identifier used to access a targeted computer resource, wherein the desired resource identifier has been determined to be invalid, the system comprising:
a memory configured to store a plurality of system resource identifiers;
a user interface to allow a user to enter the desired resource identifier;
a processor which cooperates with the user interface to truncate predefined portions of the desired resource identifier until a resulting modified resource identifier is identified as a valid resource identifier included within at least one of the system resource identifiers; and
a display device to display the valid resource identifier in relation to the desired resource identifier entered by the user.
18. The computing system as in claim 17, wherein the processor partitions the desired resource identifier into the predefined portions.
19. The computing system as in claim 17, wherein the user interface comprises a command shell, and wherein the desired resource identifier comprises a command character string including a command and any associated file directories and command arguments.
20. The computing system as in claim 19, wherein the processor partitions the command character string into the predefined portions, and wherein each of the commands, file directories, and command arguments corresponds to one of the predefined portions.
21. The computing system as in claim 19, wherein the processor partitions the command character string into the predefined portions, and wherein each character of the command character string corresponds to one of the predefined portions.
22. The computing system as in claim 17, wherein the user interface comprises a command-line-driven application, and wherein the desired resource identifier comprises a command character string including a command and any associated file directories and command arguments.
23. The computing system as in claim 17, wherein the user interface comprises a web browser for accessing information from the Internet, and wherein the desired resource identifier comprises a Uniform Resource Locator (URL).
24. The computing system as in claim 23, wherein the processor partitions the URL into the predefined portions, and wherein each of the URL directories, subdirectories, and filenames corresponds to one of the predefined portions.
25. The computing system as in claim 23, wherein the processor partitions the URL into the predefined portions, and wherein each of the characters of the URL corresponds to one of the predefined portions.
26. The computing system as in claim 23, wherein the processor partitions the URL into the predefined portions, and wherein each URL segment separated by delimiters corresponds to one of the predefined portions.
27. The computing system as in claim 23, wherein the web browser is configured and arranged to convert the valid resource identifier into a hypertext link.
28. The computing system as in claim 17, wherein the user interface further comprises a display window, and wherein the display device displays the valid resource identifier in the display window in a manner visually distinguishable from the desired resource identifier entered by the user.
29. The computing system as in claim 17, wherein:
the user interface further comprises a display window; and
the display device displays in the display window the valid resource identifier within the desired resource identifier, and displays a visual cue at a boundary between the valid resource identifier and a remaining portion of the desired resource identifier.
the user interface comprises a text entry field to allow the user to enter the desired resource identifier; and
the processor cooperates with the user interface to provide a text cursor in the text entry field at a boundary between the valid resource identifier and a remaining portion of the desired resource identifier to allow the user to edit the desired resource identifier from a point of validity.
31. A computing system for determining a valid portion of a desired Uniform Resource Locator (URL) used to access a targeted network resource, wherein the desired URL has been determined to be invalid, the computing system comprising:
(a) a client computer comprising:
(i) a user interface to allow a user to enter the desired URL; and
(ii) a display device to display the desired URL;
(b) a network server comprising:
(i) a memory configured to store a plurality of available URLs; and
(ii) a processor configured to identify the desired URL as an invalid URL, and to remove predefined portions of the invalid URL until a resulting modified URL is identified as a valid URL included within at least one of the available URLs.
32. The computing system as in claim 31, wherein the display device further distinguishably displays the valid URL within the desired URL entered by the user.
33. The computing system as in claim 32, wherein the processor is further configured to provide a user-selectable list of the plurality of available URLs which contain the valid URL to the user interface for display on the display device.
34. The computing system as in claim 31, wherein the processor is further configured to convert the valid URL into a hypertext link selectable by the user.
35. A method for determining a valid portion of an invalid database request entered by a user to access a computer database record in a computing system, wherein the database request ranges from a least specific portion to a most specific portion, the method comprising:
partitioning the invalid database request into a plurality of fields;
creating an evaluation field string;
repeatedly introducing at least one of the fields corresponding to the least specific portion of the invalid database request into the evaluation field string, until a most recently introduced field invalidates the evaluation field string; and
identifying a valid portion of the evaluation field string.
36. The method of claim 35, wherein identifying a valid portion of the evaluation field string comprises eliminating from the evaluation field string the most recently introduced field which invalidated the evaluation field string.
37. The method of claim 35, wherein the database request is a postal address.
38. The method of claim 37, wherein partitioning the invalid database request comprises partitioning the postal address into a plurality of fields selected from a group comprising a state name, a city name, a street name, a building identifier, a post office box identifier, an entity identifier, and a personal name.
39. A method for determining a valid portion of an invalid resource identifier entered by a user to access a computer resource in a computing system, wherein the resource identifier ranges from a least specific portion to a most specific portion, the method comprising the steps of:
(a) partitioning the invalid resource identifier entered by the user into a plurality of fields;
(b) removing the field corresponding to the most specific portion of the invalid resource identifier to create a modified resource identifier;
(c) determining whether the modified resource identifier is capable of accessing one of the computer resources in the computing system;
(d) distinguishably displaying the modified resource identifier from the invalid resource identifier entered by the user, if the modified resource identifier is capable of accessing one of the computer resources in the computing system; and
repeating steps (b) and (c) until the modified resource identifier is capable of accessing one of the computer resources in the computing system.
40. A computer-readable medium having computer-executable instructions for performing steps comprising:
determining whether the resource identifier entered by the user is invalid,
US08/972,106 1997-11-17 1997-11-17 System and method for identifying valid portion of computer resource identifier Expired - Fee Related US6041324A (en)
US08/972,106 US6041324A (en) 1997-11-17 1997-11-17 System and method for identifying valid portion of computer resource identifier
US08/972,106 Expired - Fee Related US6041324A (en) 1997-11-17 1997-11-17 System and method for identifying valid portion of computer resource identifier
US6134680A (en) * 1997-10-16 2000-10-17 International Business Machines Corp Error handler for a proxy server computer system
US6208998B1 (en) * 1998-12-08 2001-03-27 Infospace, Inc. On-line directory service through the internet
US6212565B1 (en) * 1998-08-26 2001-04-03 Sun Microsystems, Inc. Apparatus and method for improving performance of proxy server arrays that use persistent connections
US6332158B1 (en) * 1998-12-03 2001-12-18 Chris Risley Domain name system lookup allowing intelligent correction of searches and presentation of auxiliary information
US20020083171A1 (en) * 2000-12-22 2002-06-27 Hoogenboom Peter J. System and method of application input validation
WO2002071268A2 (en) * 2001-03-05 2002-09-12 Koninklijke Philips Electronics N.V. Advanced system and method for checking paths
US6532481B1 (en) * 2000-03-31 2003-03-11 George C. Fassett, Jr. Product identifier, catalog and locator system and method
US20030065762A1 (en) * 2001-09-28 2003-04-03 Cable & Wireless Internet Services, Inc. Configurable adaptive global traffic control and management
US20030065703A1 (en) * 2001-10-02 2003-04-03 Justin Aborn Automated server replication
US20030079027A1 (en) * 2001-10-18 2003-04-24 Michael Slocombe Content request routing and load balancing for content distribution networks
US20030191734A1 (en) * 2002-04-04 2003-10-09 Voigt Douglas L. Method and program product for managing data access routes in a data storage system providing multiple access routes
US6654807B2 (en) 1998-02-10 2003-11-25 Cable & Wireless Internet Services, Inc. Internet content delivery network
US20040003283A1 (en) * 2002-06-26 2004-01-01 Goodman Joshua Theodore Spam detector with challenges
US6678717B1 (en) 1999-03-22 2004-01-13 Eric Schneider Method, product, and apparatus for requesting a network resource
US20040030780A1 (en) * 2002-08-08 2004-02-12 International Business Machines Corporation Automatic search responsive to an invalid request
US6700959B2 (en) * 2001-12-27 2004-03-02 Matsushita Electric Industrial Co., Ltd. Facsimile machine
US6727923B1 (en) * 1998-05-08 2004-04-27 Apple Computer, Inc. Creation and manipulation of internet location objects in a graphical user interface environment
US6782430B1 (en) * 1998-06-05 2004-08-24 International Business Machines Corporation Invalid link recovery
US6845475B1 (en) * 2001-01-23 2005-01-18 Symbol Technologies, Inc. Method and apparatus for error detection
US20050033861A1 (en) * 2003-08-05 2005-02-10 Kwong Michael Yiupun Apparatus, method and computer program product for producing a resource descriptor
US20050033823A1 (en) * 2003-08-05 2005-02-10 Kwong Michael Ylupun Apparatus, method and computer program product for resource locator using queries
US20050064887A1 (en) * 1999-08-12 2005-03-24 Henrik Bengtsson System and method for sending multimedia attachments to text messages in radiocommunication systems
US20050097210A1 (en) * 2003-11-05 2005-05-05 Internet Computer Bureau Plc Computer address resolution
US20050204006A1 (en) * 2004-03-12 2005-09-15 Purcell Sean E. Message junk rating interface
US6959339B1 (en) * 1998-11-06 2005-10-25 International Business Machines Corporation Technique for handling a universal image format on the internet
US20060015574A1 (en) * 2002-02-14 2006-01-19 Digital Island, Inc. Managed object replication and delivery
US20060026463A1 (en) * 2004-07-28 2006-02-02 Oracle International Corporation, (A California Corporation) Methods and systems for validating a system environment
US20060031382A1 (en) * 2004-06-04 2006-02-09 Arvind Pradhakar System and method for translating fully qualified domain name access in a browser environment
US6999975B1 (en) * 2001-11-14 2006-02-14 Cas, Inc. System and method for identifying records with valid address, but invalid name information
US20060037016A1 (en) * 2004-07-28 2006-02-16 Oracle International Corporation Methods and systems for modifying nodes in a cluster environment
US20060041633A1 (en) * 2002-02-22 2006-02-23 Microsoft Corporation Opportunistic directory cache
US20060112066A1 (en) * 2004-11-22 2006-05-25 International Business Machines Corporation Spell checking URLs in a resource
US20060184874A1 (en) * 2005-02-11 2006-08-17 Fujitsu Limited System and method for displaying an acceptance status
US7099914B1 (en) * 1999-06-24 2006-08-29 International Business Machines Corporation System and method for variable size retrieval of webpage data
US20060253612A1 (en) * 2005-04-04 2006-11-09 Cheshire Stuart D Method and apparatus for detecting incorrect responses to network queries
US20070014540A1 (en) * 2005-07-12 2007-01-18 Sony Corporation Audio recording apparatus, audio recording method and audio recording program
US20070038705A1 (en) * 2005-07-29 2007-02-15 Microsoft Corporation Trees of classifiers for detecting email spam
US7188138B1 (en) 1999-03-22 2007-03-06 Eric Schneider Method, product, and apparatus for resource identifier registration and aftermarket services
US20070106665A1 (en) * 2005-11-09 2007-05-10 Nokia Corporation Method, a system, a device, a browser and a computer program product for providing information regarding the validity of a character string as a document identifier
US20070150477A1 (en) * 2005-12-22 2007-06-28 International Business Machines Corporation Validating a uniform resource locator ('URL') in a document
US7243135B1 (en) * 1998-03-13 2007-07-10 Thomson Licensing Method for finding an Internet or E-mail address
US20070208699A1 (en) * 2004-09-07 2007-09-06 Shigeki Uetabira Information search provision apparatus and information search provision system
US20070288903A1 (en) * 2004-07-28 2007-12-13 Oracle International Corporation Automated treatment of system and application validation failures
US20080005127A1 (en) * 2002-01-05 2008-01-03 Eric Schneider Sitemap Access Method, Product, And Apparatus
US7376752B1 (en) * 2003-10-28 2008-05-20 David Chudnovsky Method to resolve an incorrectly entered uniform resource locator (URL)
US20080215718A1 (en) * 2001-09-28 2008-09-04 Level 3 Communications, Llc Policy-based content delivery network selection
US20080215735A1 (en) * 1998-02-10 2008-09-04 Level 3 Communications, Llc Resource invalidation in a content delivery network
US20080279222A1 (en) * 2001-10-18 2008-11-13 Level 3 Communications Llc Distribution of traffic across a computer network
US20090006393A1 (en) * 2007-06-29 2009-01-01 Nokia Corporation Apparatuses, methods, and computer program products for managing files being stored in a memory
US20090006394A1 (en) * 2007-06-29 2009-01-01 Snapp Robert F Systems and methods for validating an address
US20090041589A1 (en) * 2005-03-09 2009-02-12 Knorr-Bremse Systeme Fur Schienenfahrzeuge Gmbh Oil-Injected Compressor with a Temperature Switch
WO2009030864A2 (en) * 2007-08-30 2009-03-12 Xooloo Distributed database
US20090094313A1 (en) * 2007-10-03 2009-04-09 Jay Feng System, method, and computer program product for sending interactive requests for information
US7558832B2 (en) 2003-03-03 2009-07-07 Microsoft Corporation Feedback loop for spam prevention
US7660865B2 (en) 2004-08-12 2010-02-09 Microsoft Corporation Spam filtering with probabilistic secure hashes
US20100036776A1 (en) * 2001-02-21 2010-02-11 Intangi, Inc. Automatic Design And Sale Of Complex Multi-Vendor Electronic And Mechanical Systems
US7665131B2 (en) 2003-06-04 2010-02-16 Microsoft Corporation Origination/destination features and lists for spam prevention
US7711779B2 (en) 2003-06-20 2010-05-04 Microsoft Corporation Prevention of outgoing spam
US7849193B1 (en) * 2007-02-01 2010-12-07 Adobe Systems Incorporated Multiple hyperlinks in a uniform resource locator
US20100332595A1 (en) * 2008-04-04 2010-12-30 David Fullagar Handling long-tail content in a content delivery network (cdn)
US7953888B2 (en) 1999-06-18 2011-05-31 Level 3 Communications, Llc On-demand overlay routing for computer-based communication networks
US8037168B2 (en) 1999-07-15 2011-10-11 Esdr Network Solutions Llc Method, product, and apparatus for enhancing resolution services, registration services, and search services
US8065370B2 (en) 2005-11-03 2011-11-22 Microsoft Corporation Proofs to filter spam
US8214438B2 (en) 2004-03-01 2012-07-03 Microsoft Corporation (More) advanced spam detection features
US8224905B2 (en) 2006-12-06 2012-07-17 Microsoft Corporation Spam filtration utilizing sender activity data
USRE43690E1 (en) 1999-03-22 2012-09-25 Esdr Network Solutions Llc Search engine request method, product, and apparatus
US8307073B1 (en) 2010-06-24 2012-11-06 Amazon Technologies, Inc. URL rescue by correction of encoding errors
US20120290696A1 (en) * 2011-05-12 2012-11-15 Futurewei Technologies, Inc. Method and System for Longest Prefix Matching of Variable-Sized Hierarchial Names by Treelets
US20120317467A1 (en) * 2003-07-01 2012-12-13 Aol Inc. Identifying url target hostnames
USRE44207E1 (en) 1999-09-01 2013-05-07 Esdr Network Solutions Llc Network resource access method, product, and apparatus
US8458227B1 (en) * 2010-06-24 2013-06-04 Amazon Technologies, Inc. URL rescue by identifying information related to an item referenced in an invalid URL
US8543901B1 (en) 1999-11-01 2013-09-24 Level 3 Communications, Llc Verification of content stored in a network
US8626786B2 (en) 2005-06-23 2014-01-07 International Business Machines Corporation Dynamic language checking
US8714447B1 (en) * 2012-01-19 2014-05-06 Intuit Inc. Identifying and correcting invalid identifiers
US20140258447A1 (en) * 2013-03-08 2014-09-11 Lincoln Global, Inc. System and method for installing device drivers on welding equipment
US8898137B1 (en) 2010-06-24 2014-11-25 Amazon Technologies, Inc. URL rescue by execution of search using information extracted from invalid URL
US8930538B2 (en) 2008-04-04 2015-01-06 Level 3 Communications, Llc Handling long-tail content in a content delivery network (CDN)
US8990347B2 (en) 1999-09-01 2015-03-24 Esdr Network Solutions Llc Method, product, and apparatus for processing a data request
US9141717B2 (en) 1999-03-22 2015-09-22 Esdr Network Solutions Llc Methods, systems, products, and devices for processing DNS friendly identifiers
US20170046314A1 (en) * 2015-08-12 2017-02-16 International Business Machines Corporation Clickable links within live collaborative web meetings
US10057214B2 (en) * 2016-07-09 2018-08-21 Richard Lamb DNSSEC lightweight database access protocol gateway
US5388213A (en) * 1990-06-06 1995-02-07 Apple Computer, Inc. Method and apparatus for determining whether an alias is available to uniquely identify an entity in a communications system
US5678041A (en) * 1995-06-06 1997-10-14 At&T System and method for restricting user access rights on the internet based on rating information stored in a relational database
US5745752A (en) * 1994-12-13 1998-04-28 Microsoft Corporation Dual namespace client having long and short filenames
US5764906A (en) * 1995-11-07 1998-06-09 Netword Llc Universal electronic resource denotation, request and delivery system
US5812769A (en) * 1995-09-20 1998-09-22 Infonautics Corporation Method and apparatus for redirecting a user to a new location on the world wide web using relative universal resource locators
US5848413A (en) * 1995-01-13 1998-12-08 Ricoh Company, Ltd. Method and apparatus for accessing and publishing electronic documents
US5854901A (en) * 1996-07-23 1998-12-29 Cisco Systems, Inc. Method and apparatus for serverless internet protocol address discovery using source address of broadcast or unicast packet
US5864676A (en) * 1996-11-14 1999-01-26 Triteal Corporation URL login
US5870546A (en) * 1996-02-21 1999-02-09 Infoseek Corporation Method and apparatus for redirection of server external hyper-link reference
US5913215A (en) * 1996-04-09 1999-06-15 Seymour I. Rubinstein Browse by prompted keyword phrases with an improved method for obtaining an initial document set
US8478903B2 (en) 1998-02-10 2013-07-02 Level 3 Communications, Llc Shared content delivery infrastructure
US8291046B2 (en) 1998-02-10 2012-10-16 Level 3 Communications, Llc Shared content delivery infrastructure with rendezvous based on load balancing and network conditions
US8296396B2 (en) 1998-02-10 2012-10-23 Level 3 Communications, Llc Delivering resources to clients in a distributed computing environment with rendezvous based on load balancing and network conditions
US20070233706A1 (en) * 1998-02-10 2007-10-04 Level 3 Communications, Llc Shared content delivery infrastructure with rendezvous based on load balancing and network conditions
US7945693B2 (en) 1998-02-10 2011-05-17 Level 3 Communications, Llc Controlling subscriber information rates in a content delivery network
US8468245B2 (en) 1998-02-10 2013-06-18 Level 3 Communications, Llc Delivering resources to clients in a distributed computing environment
US8473613B2 (en) 1998-02-10 2013-06-25 Level 3 Communications, Llc Transparent redirection of resource requests
US20080140800A1 (en) * 1998-02-10 2008-06-12 Level 3 Communications, Llc Shared content delivery infrastructure & method of generating a web page
US8281035B2 (en) 1998-02-10 2012-10-02 Level 3 Communications, Llc Optimized network resource location
US20070233884A1 (en) * 1998-02-10 2007-10-04 Level 3 Communications, Llc Shared content delivery infrastructure
US20080104268A1 (en) * 1998-02-10 2008-05-01 Level 3 Communications, Llc Controlling Subscriber information rates in a content delivery network
US20050198334A1 (en) * 1998-02-10 2005-09-08 Farber David A. Optimized network resource location
US8572210B2 (en) 1998-02-10 2013-10-29 Level 3 Communications, Llc Shared content delivery infrastructure and method of generating a web page
US20110219120A1 (en) * 1998-02-10 2011-09-08 Level 3 Communications, Llc Transparent Redirection Of Resource Requests
US8683076B2 (en) 1998-02-10 2014-03-25 Level 3 Communications, Llc Method of generating a web page
US20070233705A1 (en) * 1998-02-10 2007-10-04 Level 3 Communications, Llc Method of generating a web page
US8060613B2 (en) 1998-02-10 2011-11-15 Level 3 Communications, Llc Resource invalidation in a content delivery network
US20070233846A1 (en) * 1998-02-10 2007-10-04 Level 3 Communications, Llc Delivering resources to clients in a distributed computing environment
US7954061B2 (en) 1998-05-08 2011-05-31 Apple Inc. Creation and manipulation of internet location objects in a graphical user interface environment
US20040201630A1 (en) * 1998-05-08 2004-10-14 Apple Computer, Inc. Creation and manipulation of internet location objects in a graphical user interface environment
US20010027492A1 (en) * 1998-08-26 2001-10-04 Amit Gupta Apparatus and method for improving performance of proxy server arrays that use persistent connections
US8635340B1 (en) * 1999-03-22 2014-01-21 Esdr Network Solutions Llc Method, product, and apparatus for requesting a network resource
US8224994B1 (en) 1999-03-22 2012-07-17 Esdr Network Solutions Llc Fictitious domain name method, system, product, and apparatus
USRE44898E1 (en) 1999-03-22 2014-05-13 ESDR Networks Solutions LLC Search engine request method, product, and apparatus
US9659070B2 (en) 1999-03-22 2017-05-23 S. Aqua Semiconductor, Llc Methods, systems, products, and devices for processing DNS friendly identifiers
US8599697B2 (en) 1999-06-18 2013-12-03 Level 3 Communications, Llc Overlay network
US20150201039A1 (en) * 1999-09-01 2015-07-16 Esdr Network Solutions Llc Method, product, and apparatus for processing a data request
US6874025B2 (en) * 2000-12-22 2005-03-29 Intel Corporation System and method of application input validation
US8521479B2 (en) * 2001-02-21 2013-08-27 Intangi, Inc. Automatic design and sale of complex multi-vendor electronic and mechanical systems
WO2002071268A3 (en) * 2001-03-05 2004-05-27 Koninkl Philips Electronics Nv Advanced system and method for checking paths
US9203636B2 (en) 2001-09-28 2015-12-01 Level 3 Communications, Llc Distributing requests across multiple content delivery networks based on subscriber policy
US20080147866A1 (en) * 2001-09-28 2008-06-19 Level 3 Communications, Llc Distributing requests across multiple content delivery networks based on subscriber policy
US8645517B2 (en) 2001-09-28 2014-02-04 Level 3 Communications, Llc Policy-based content delivery network selection
US7822871B2 (en) 2001-09-28 2010-10-26 Level 3 Communications, Llc Configurable adaptive global traffic control and management
US9338227B2 (en) 2001-10-02 2016-05-10 Level 3 Communications, Llc Automated management of content servers based on change in demand
US20080162700A1 (en) * 2001-10-02 2008-07-03 Level 3 Communications Llc Automated server replication
US9021112B2 (en) 2001-10-18 2015-04-28 Level 3 Communications, Llc Content request routing and load balancing for content distribution networks
US7565402B2 (en) * 2002-01-05 2009-07-21 Eric Schneider Sitemap access method, product, and apparatus
US20080065724A1 (en) * 2002-02-14 2008-03-13 Level 3 Communications, Llc Peer server handoff in content delivery network
US9167036B2 (en) 2002-02-14 2015-10-20 Level 3 Communications, Llc Managed object replication and delivery
US8924466B2 (en) 2002-02-14 2014-12-30 Level 3 Communications, Llc Server handoff in content delivery network
US7562098B2 (en) * 2002-02-22 2009-07-14 Microsoft Corporation Opportunistic directory cache
US7171396B2 (en) * 2002-04-04 2007-01-30 Hewlett-Packard Development Company, L.P. Method and program product for specifying the different data access route for the first data set includes storing an indication of the different access for the first data set providing alternative data access routes to a data storage
US8046832B2 (en) 2002-06-26 2011-10-25 Microsoft Corporation Spam detector with challenges
US20150373047A1 (en) * 2003-07-01 2015-12-24 Facebook, Inc. Identifying url target hostnames
US9092544B2 (en) * 2003-07-01 2015-07-28 Facebook, Inc. Displaying a true URL in response to a user interaction
US8943414B2 (en) * 2003-07-01 2015-01-27 Facebook, Inc. Identifying URL target hostnames
US20130073936A1 (en) * 2003-07-01 2013-03-21 Conor P. Cahill Identifying url target hostnames
US7269826B2 (en) 2003-08-05 2007-09-11 International Business Machines Corporation Apparatus, method and computer program product for resource locator using queries
US7464182B2 (en) 2003-08-05 2008-12-09 International Business Machines Corporation Apparatus, method and computer program product for producing a resource descriptor
US20080016179A1 (en) * 2003-08-05 2008-01-17 International Business Machines Corporation Apparatus, method and computer program product for resource locator using queries
US7937455B2 (en) 2004-07-28 2011-05-03 Oracle International Corporation Methods and systems for modifying nodes in a cluster environment
US7536599B2 (en) * 2004-07-28 2009-05-19 Oracle International Corporation Methods and systems for validating a system environment
US7962788B2 (en) 2004-07-28 2011-06-14 Oracle International Corporation Automated treatment of system and application validation failures
US8341135B2 (en) * 2004-09-07 2012-12-25 Interman Corporation Information search provision apparatus and information search provision system
US20070283254A1 (en) * 2004-11-22 2007-12-06 Hamzy Mark J Spell Checking URLs In A Resource
US9195642B2 (en) * 2004-11-22 2015-11-24 International Business Machines Corporation Spell checking URLs in a resource
US8996991B2 (en) * 2005-02-11 2015-03-31 Fujitsu Limited System and method for displaying an acceptance status
US20120311114A1 (en) * 2005-04-04 2012-12-06 Apple Inc. Method and apparatus for detecting incorrect responses to network queries
US8280991B2 (en) * 2005-04-04 2012-10-02 Apple Inc. Method and apparatus for detecting incorrect responses to network queries
US7769479B2 (en) * 2005-07-12 2010-08-03 Sony Corporation Audio recording apparatus, audio recording method and audio recording program
US7930353B2 (en) 2005-07-29 2011-04-19 Microsoft Corporation Trees of classifiers for detecting email spam
US8046349B2 (en) 2005-11-09 2011-10-25 Nokia Corporation Method, a system, a device, and a computer program product for providing information regarding the validity of a character string as a document identifier
US8719416B1 (en) 2007-02-01 2014-05-06 Adobe Systems Incorporated Multiple subparts of a uniform resource locator
WO2009004545A1 (en) * 2007-06-29 2009-01-08 Nokia Corporation Apparatuses, methods, and computer program products for managing files being stored in a memory
US7769778B2 (en) * 2007-06-29 2010-08-03 United States Postal Service Systems and methods for validating an address
US9129131B2 (en) 2007-08-30 2015-09-08 Xooloo Distributed database
US10218806B2 (en) 2008-04-04 2019-02-26 Level 3 Communications, Llc Handling long-tail content in a content delivery network (CDN)
US9584580B2 (en) 2010-06-24 2017-02-28 Amazon Technologies, Inc. URL rescue by identifying information related to an item referenced in an invalid URL
US8438279B2 (en) 2010-06-24 2013-05-07 Amazon Technologies, Inc. Identifying content that is responsive to a request for an invalid URL
US8972453B2 (en) * 2011-05-12 2015-03-03 Futurewei Technologies, Inc. Method and system for longest prefix matching of variable-sized hierarchical names by treelets
US9203893B2 (en) * 2013-03-08 2015-12-01 Lincoln Global, Inc. System and method for installing device drivers on welding equipment
US9864734B2 (en) * 2015-08-12 2018-01-09 International Business Machines Corporation Clickable links within live collaborative web meetings
Mesbah et al. 2008 Crawling Ajax by inferring user interface state changes
US6882995B2 (en) 2005-04-19 Automatic query and transformative process
US7895595B2 (en) 2011-02-22 Automatic method and system for formulating and transforming representations of context used by information services
US6658408B2 (en) 2003-12-02 Document information management system
US6950980B1 (en) 2005-09-27 System, method, and program product for saving a submitted form of a web page
US6560620B1 (en) 2003-05-06 Hierarchical document comparison system and method
US6209036B1 (en) 2001-03-27 Management of and access to information and other material via the world wide web in an LDAP environment
US7194460B2 (en) 2007-03-20 Search device, search system, and search method
US7792870B2 (en) 2010-09-07 Identification and automatic propagation of geo-location associations to un-located documents
US8024384B2 (en) 2011-09-20 Techniques for crawling dynamic web content
US5848424A (en) 1998-12-08 Data navigator interface with navigation as a function of draggable elements and drop targets
US7047246B2 (en) 2006-05-16 Search and index hosting system
US7502995B2 (en) 2009-03-10 Processing structured/hierarchical content
US6003046A (en) 1999-12-14 Automatic development and display of context information in structured documents on the world wide web
US8458161B2 (en) 2013-06-04 Method, product, and apparatus for enhancing resolution services, registration services, and search services
CN1205567C (en) 2005-06-08 Apparatus and method for formating web page
US6732102B1 (en) 2004-05-04 Automated data extraction and reformatting
US7240067B2 (en) 2007-07-03 System and methodology for extraction and aggregation of data from dynamic content
AU2003204478B2 (en) 2010-03-04 Method and system for associating actions with semantic labels in electronic documents
US6338059B1 (en) 2002-01-08 Hyperlinked search interface for distributed database
KR101303488B1 (en) 2013-09-10 Search systems and methods using in-line contextual queries
EP1402404B1 (en) 2017-08-30 Storing and retrieving the visual form of data
US7660781B2 (en) 2010-02-09 Method, apparatus and computer-readable medium for searching and navigating a document database
JP3703080B2 (en) 2005-10-05 Methods for simplifying the web content, the system and the medium
US5848410A (en) 1998-12-08 System and method for selective and continuous index generation
Owner name: INTERNATIONAL BUSINESS MACHINES CORPORATION, NEW Y
Free format text: ASSIGNMENT OF ASSIGNORS INTEREST;ASSIGNORS:EARL, JOEL RAY;GOODMAN, DAVID JOHN;NATION, GEORGE WAYNE;REEL/FRAME:008833/0081


Abstract: This paper describes a smart contract programming lab conducted in our undergraduate security class at the University of Maryland. Through our experiences, we have gained various insights on why it is difficult to create a safe smart contract. This lab also led to new insights for cybersecurity education.


text:
Daily Ratings & News for Exelon
Complete the form below to receive the latest headlines and analysts' recommendations for Exelon with our free daily email newsletter:
Follow @TranscriptDaily
NEXTDC Limited (OTCMKTS:NXDCF) Short Interest Down 36.0% in December
ImageWare Systems, Inc. (OTCMKTS:IWSY) Sees Significant Decrease in Short Interest
Kingstone Companies, Inc. (NASDAQ:KINS) Short Interest Down 36.9% in December
Cogeco Communications Inc. (OTCMKTS:CGEAF) Receives Consensus Recommendation of "Buy" from Brokerages
Analysts Set SEGRO Plc (OTCMKTS:SEGXF) PT at $15.00
Brinker International, Inc. (NYSE:EAT) Given Average Recommendation of "Buy" by Brokerages
ZeuxCoin (ZUC) Price Down 2.7% This Week
DistX (DISTX) 24-Hour Volume Reaches $42,846.00
Gem Exchange And Trading Price Reaches $0.33 on Exchanges (GXT)
TerraKRW Achieves Market Cap of $60.81 Million (KRT)
Aeternity One Day Trading Volume Hits $10.89 Million (AE)
Utz Brands (NYSE:UTZ) Stock Rating Reaffirmed by Barclays
Pylon Network (PYLNT) One Day Volume Hits $47.00
$7.56 Billion in Sales Expected for Nokia Co. (NYSE:NOK) This Quarter
AAX Token (AAB) Price Tops $0.0484 on Top Exchanges
Innate Pharma S.A. (NASDAQ:IPHA) Receives Average Recommendation of "Hold" from Analysts
Cipher Core Token (CIPHC) Price Tops $37.12 on Exchanges
DAVENPORT & Co LLC Acquires 660 Shares of Exelon Co. (NASDAQ:EXC)
Posted by James Quigley on Jan 14th, 2021
DAVENPORT & Co LLC raised its holdings in shares of Exelon Co. (NASDAQ:EXC) by 11.0% during the fourth quarter, according to its most recent disclosure with the Securities and Exchange Commission (SEC). The fund owned 6,644 shares of the company's stock after acquiring an additional 660 shares during the period. DAVENPORT & Co LLC's holdings in Exelon were worth $281,000 at the end of the most recent reporting period.
A number of other hedge funds and other institutional investors have also modified their holdings of EXC. Summit X LLC bought a new position in Exelon during the third quarter valued at approximately $29,000. Advisory Alpha LLC bought a new position in shares of Exelon in the third quarter worth approximately $29,000. Fortis Group Advisors LLC bought a new position in shares of Exelon in the third quarter worth approximately $29,000. Mirova bought a new position in shares of Exelon in the third quarter worth approximately $31,000. Finally, Kistler Tiffany Companies LLC grew its holdings in shares of Exelon by 88.1% in the third quarter. Kistler Tiffany Companies LLC now owns 918 shares of the company's stock worth $33,000 after purchasing an additional 430 shares during the last quarter. Institutional investors and hedge funds own 65.06% of the company's stock.
Get Exelon alerts:
Shares of Exelon stock opened at $42.80 on Thursday. The company has a current ratio of 1.09, a quick ratio of 0.94 and a debt-to-equity ratio of 1.02. The firm has a market capitalization of $41.75 billion, a P/E ratio of 17.61, a P/E/G ratio of 4.22 and a beta of 0.41. The business has a fifty day simple moving average of $42.06 and a two-hundred day simple moving average of $41.41. Exelon Co. has a 12 month low of $29.28 and a 12 month high of $50.54.
Exelon (NASDAQ:EXC) last announced its quarterly earnings data on Tuesday, November 3rd. The company reported $1.04 EPS for the quarter, beating the consensus estimate of $0.87 by $0.17. The business had revenue of $8.85 billion during the quarter, compared to analyst estimates of $8.62 billion. Exelon had a return on equity of 9.24% and a net margin of 7.15%. Analysts predict that Exelon Co. will post 3.1 earnings per share for the current year.
Several research analysts have recently issued reports on EXC shares. Zacks Investment Research upgraded shares of Exelon from a "sell" rating to a "hold" rating and set a $39.00 target price on the stock in a report on Tuesday, October 6th. Argus raised their target price on shares of Exelon from $42.00 to $45.00 and gave the stock a "buy" rating in a report on Friday, December 11th. Morgan Stanley cut their target price on shares of Exelon from $59.00 to $56.00 and set an "overweight" rating on the stock in a report on Tuesday, December 15th. BidaskClub upgraded shares of Exelon from a "hold" rating to a "buy" rating in a report on Saturday, October 17th. Finally, Credit Suisse Group lifted their price target on shares of Exelon from $44.00 to $47.00 and gave the company an "outperform" rating in a report on Monday, November 2nd. One analyst has rated the stock with a sell rating, three have assigned a hold rating and eleven have issued a buy rating to the company's stock. Exelon presently has a consensus rating of "Buy" and an average price target of $45.29.
Exelon Company Profile
Exelon Corporation, a utility services holding company, engages in the generation and marketing of energy in the United States and Canada. It owns nuclear, fossil, wind, hydroelectric, biomass, and solar generating facilities. The company also sells electricity to wholesale and retail customers; and sells natural gas, renewable energy, and other energy-related products and services.
See Also: Shanghai Stock Exchange Composite Index
Receive News & Ratings for Exelon Daily - Enter your email address below to receive a concise daily summary of the latest news and analysts' ratings for Exelon and related companies with MarketBeat.com's FREE daily email newsletter.
CHURCHILL MANAGEMENT Corp Cuts Stake in Hanesbrands Inc. (NYSE:HBI)
Bath Savings Trust Co Sells 314 Shares of Oracle Co. (NYSE:ORCL)
Barclays Analysts Give Infineon Technologies AG a €33.00 Price Target
Zalando SE Given a €111.00 Price Target by The Goldman Sachs Group Analysts
Deutsche Post AG PT Set at €53.00 by The Goldman Sachs Group
KION GROUP AG Given a €68.00 Price Target at Morgan Stanley
AIXTRON SE Given a €15.50 Price Target at Barclays
DZ Bank Reaffirms Buy Rating for Bechtle AG
© 2006-2021 Transcript Daily

redpajama_set_name: RedPajamaCommonCrawl


DiPrete Engineering is proud to announce Audie Osgood's recent promotion to Senior Project Manager. Audie began his career at DiPrete in 2005 when he joined the firm as a Project Engineer. In addition to being a professional engineer, he is a LEED Accredited Professional, which lends itself to the revitalization projects in his portfolio.
Over the years, he has worked on several large redevelopment projects where he has collaborated with diverse design teams including developers, national engineering firms, attorneys, architects, and contractors. One of the biggest projects Audie worked on was the redevelopment of the East Providence waterfront with clients including Chevron and Providence and Worcester Railroad Co.
In his new role as Senior Project Manager, Audie will manage and provide engineering assistance on a variety of projects and will handle construction documents and administration. He will also be responsible for mentoring junior staff in preparing construction documents.
Audie is currently working on implementing his Lean training to develop a standard process for consistently creating high quality construction documents, and then working with everyone on the team to implement the process. He is also very involved in the firm's initiatives to give back to the community and participates in the MS150 Ride the Rhode race every year with DiPrete's team, The PT Riders.
"We are very proud of Audie's hard work and commitment to the firm over the years, and look forward to what the future will bring," said Greg.
During his free time, Audie being outdoors hiking, fishing, and hunting. He also has a passion for restoring old cars and is currently working on a 1974 Triumph TR-6 and a 1971 Land Rover Series IIA.


text:
Q: hacer request a servicio en ajax usando angular tambien Intento consumirlo de la siguiente manera
function listar( $scope, $http, cliente) {

    $http({
    method: "POST",
    data: cliente,
    url: "http://ver.moz.com.mx/movil//Servicios.svc/getEstadosReferenciasPorClienteDetalle" + cliente+'5000',
    headers: {
        'Content-Type': 'application/json; charset=utf-8',
        'dataType': 'json'
    }

    }).then(function mySuccess(response) {
        $scope.estados = response.data;
        console.log(response.data);
        var array = JSON.stringify(response.data);
        $scope.estados = JSON.parse(array);
    }, function error(response) {
        $scope.myerror = response.statusText;

    });

}

y me da por error

bad request

redpajama_set_name: RedPajamaStackExchange


Alexis Dawes created a product called "Desperate Buyers Only". I interview her for an upcoming case study on Inspiring Innovators, where she mentions that she is able to make up to $97 from ebooks as small as 12 pages. The key? Finding people who are incredibly desperate for the information you provide and then doing good research to find a real solution to their problems. The result? Happy customers whose problem is solved, and money for you — a win-win situation! Caveat: It may be tough to find a real desperate buyer niche (Alexis reveals some in her case study). Here are some hints: When were you last in a situation where information would have either saved you a lot of money or a lot of pain? Has someone else close to you been in a situation where they could have used information to avert pain? Think legal, medical, and financial niches.


text:
Blog Smallville Season 10 Episode 18 – Booster
Smallville Season 10 Episode 18 – Booster
Watch the 18th episode of Smallville season 10 entitled "Booster" which air date is this Friday April 22, 2011 at 8pm ET @ CW. Clark Kent and Lois Lane returns with this outrageous series which will introduce several characters that we only see from the famous comics of superheroes.
In Smallville season 10 episode 18, Clark and Lois will encounter a new breed of superhero that doesn't like being in the "low profile" and quite vigilante that implement justice from the shadow. The new hero is someone who came from the future named Booster Gold who happened to have a motto in life and that is "to get rich" using his abilities and skills to save a lot of people. Imagine he got TV ads and 1800 number for you to call if you needed him. A real business minded hero indeed!
However, stuff like this won't last longer without any trouble and another character came under the name of Blue Beetle who is a teenager being corrupted by an alien suit. It seems so powerful that this Booster guy requires assistance from our man of steel.
See the preview of Smallville 10×18 below:
[youtube http://www.youtube.com/watch?v=RKp2vfD9FG8 560 349]
Oh well, for further story about it, let just watch Smallville season 10 episode 18 online replay on or after its official airing above.