Compression and abbreviation for fixed length messaging
Claim Score by NHIP
Abstract
A method, computer program product, and data processing system for compressing and abbreviating text messages at a first text messaging device for transport and subsequent interpretation at a second text messaging device is disclosed. A user-defined message length reduction profile for producing human-readable compressed text is associated with a source text message at a first text messaging device. The source text message is then shortened using abbreviations and transformation rules in the profile. The shortened text message can then be transmitted to a second text messaging device. In addition, the compression provided by the present invention, although intended to be human-readable, can be complemented with decompression software to expand the compressed and abbreviated text to its full length and verifying, using a checksum or other error detecting code, that the expanded version corresponds to the original text.

Term
Term ended
Projected expiry passed 15 March 2025, 1.5 years ago.
- Priority and filed
- Published
- Projected expiry
- Today
26 claims: 6 independent, 20 dependent
- 1Broadest claimClaim Score 64, broad(NHIP)A method for text based messaging using user defined abbreviations, the method comprising:associating, at a first text messaging device, a message length reduction profile with a source text message;shortening the source text message in accordance with the message length reduction profile to obtain a shortened text message;transmitting to a second messaging device information that denotes a correspondence between the message length reduction profile and the shortened text message;and transmitting the shortened text message to the second text messaging device.
- 11A method in a data processing system comprising:receiving a shortened text message that is a shortened version of a source text message, wherein at least a portion of the shortened text message includes reduced character set text in which only a subset of a character set associated with the source text message is used;receiving a first error-detecting code associated with the shortened text message;retrieving a set of full-length text strings corresponding to the reduced character set text;selecting a full-length text string from the set of full-length text string, wherein the full-length text string is selected on the basis of the full-length text string being a likely expansion of the reduced character set text;expanding the shortened text message using the full-length text string to obtain an expanded text message;calculating a second error-detecting code from the expanded text message;and comparing the first error-detecting code with the second error-detecting code to determine whether the full-length text string is a proper expansion of the reduced character set text.
- 13A computer program product in at least one computer-readable medium for text based messaging using user defined abbreviations, the computer program product comprising functional descriptive material that, when executed by a computer, enables the computer to perform acts including, the computer program product comprising:associating, at a first text messaging device, a message length reduction profile with a source text message;shortening the source text message in accordance with the message length reduction profile to obtain a shortened text message;transmitting to a second messaging device information that denotes a correspondence between the message length reduction profile and the shortened text message;and transmitting the shortened text message to the second text messaging device.
- 22A computer program product in at least one computer-readable medium, the computer program product comprising functional descriptive material that, when executed by a computer, enables the computer to perform acts including:receiving a shortened text message that is a shortened version of a source text message, wherein at least a portion of the shortened text message includes reduced character set text in which only a subset of a character set associated with the source text message is used;receiving a first error-detecting code associated with the shortened text message;retrieving a set of full-length text strings corresponding to the reduced character set text;selecting a full-length text string from the set of full-length text string, wherein the full-length text string is selected on the basis of the full-length text string being a likely expansion of the reduced character set text;expanding the shortened text message using the full-length text string to obtain an expanded text message;calculating a second error-detecting code from the expanded text message;and comparing the first error-detecting code with the second error-detecting code to determine whether the full-length text string is a proper expansion of the reduced character set text.
- 24A data processing system for text based messaging using user defined abbreviations, the data processing system comprising:means for associating, at a first text messaging device, a message length reduction profile with a source text message;means for shortening the source text message in accordance with the message length reduction profile to obtain a shortened text message;means for transmitting to a second messaging device information that denotes a correspondence between the message length reduction profile and the shortened text message;and means for transmitting the shortened text message to the second text messaging device.
- 25A data processing system comprising:means for receiving a shortened text message that is a shortened version of a source text message, wherein at least a portion of the shortened text message includes reduced character set text in which only a subset of a character set associated with the source text message is used;means for receiving a first error-detecting code associated with the shortened text message;means for retrieving a set of full-length text strings corresponding to the reduced character set text;means for selecting a full-length text string from the set of full-length text string, wherein the full-length text string is selected on the basis of the full-length text string being a likely expansion of the reduced character set text;means for expanding the shortened text message using the full-length text string to obtain an expanded text message;means for calculating a second error-detecting code from the expanded text message;and means for comparing the first error-detecting code with the second error-detecting code to determine whether the full-length text string is a proper expansion of the reduced character set text.
Independent claims6
60 paragraphs in 4 sections, as filed
BACKGROUND OF THE INVENTION
P-0001[0001] 1. Technical Field
P-0002[0002] The present invention relates generally to the preparation of text messages for transmission between devices. In particular, the present invention is directed toward the preparation of human-readable compressed versions of text messages.
P-0003[0003] 2. Description of Related Art
P-0004[0004] Text messaging devices, such as two-way alphanumeric pagers, text-enabled mobile telephone, wireless portable digital assistants (PDAs), computers operating instant messaging software, and other like devices allow users to transmit short text messages to other messaging device users. Generally, the size of text messages that may be transmitted is limited to some pre-determined level.
P-0005[0005] Lossless digital data compression techniques, such as Huffman codes or Lempel-Ziv compression, can sometimes reduce the length of a text message, but require that the recipient of the message be capable of decoding the compressed data, as conventional compression renders a text message unreadable to humans. It should also be noted that because of necessary overhead associated with conventional compression algorithms, conventional lossless compression algorithms tend to be less useful for smaller messages.
P-0006[0006] Abbreviations, shorthand, and other human-readable forms of text shortening have been used for centuries to save time or writing space. Acronyms and abbreviations such as PERL (Practical Extraction and Reporting Language) and UML (Uniform Modeling Language) are especially prevalent in the computing arts, for example. The elimination of vowels is another known technique for reducing the length of text in a human-readable fashion. For example, SPEEDWRITING is a trademark for a form of shorthand in which short vowels are generally eliminated from words. The written Hebrew language actually dispenses with vowels altogether, as the Hebrew alphabet consists of only consonants. Words that convey little meaning, such as “the” are often eliminated from newspaper headlines, telegrams, and other media where space is at a premium (e.g., “Dog bites man,” rather than “A dog bit a man”).
P-0007[0007] Computer technology has been applied to the problem of shortening text in a human-readable way. U.S. Pat. No. 6,279,018 to Kudrolli et al. describes a system for abbreviating and compacting text to cope with display space constraints in computer software. Kudrolli et al. describe using a computer algorithm to abbreviate words and phrases in text according to a user-defined dictionary of abbreviations. Kudrolli et al. also describe applying compressive transformations to text, such as eliminating vowels and whitespace to further reduce the size of the text to a level that fits within length constraints.
P-0008[0008] The algorithmic compression and abbreviation provided by Kudrolli et al., however, is adapted for use by a single user specifying rules for displaying text on that user's display. The Kudrolli et al. reference is not directed toward shortening text messages for transport and subsequent interpretation by a recipient. What is needed, therefore, is a compression and abbreviation scheme that is adapted for use in shortening text messages for transport to a second text messaging device associated with a second user.
SUMMARY OF THE INVENTION
P-0009[0009] The present invention provides a method, computer program product, and data processing system for compressing and abbreviating text messages at a first text messaging device for transport and subsequent interpretation at a second text messaging device. A message length reduction profile containing a dictionary of abbreviations and selected compressive transformation rules is associated with a source text message at a first text messaging device. The source text message is then shortened using the abbreviations and transformation rules in the profile. The shortened text message can then be transmitted to a second text messaging device. The profile can be selected from a plurality of profiles based on the intended recipient, so that the text message is shortened according to the intended recipient's preferences. Alternatively, the profile or a portion thereof may be transmitted to the second text messaging device so as to aid the second text messaging device or its user in interpreting the shortened text message.
P-0010[0010] In addition, the compression provided by the present invention, although intended to be human-readable, can be complemented with decompression software to expand the compressed and abbreviated text to its full length version by attempting to reverse the compressive transformations made to the text and verifying, using a checksum or other error detecting code, that the expanded version corresponds to the original text.
BRIEF DESCRIPTION OF THE DRAWINGS
P-0011[0011] The novel features believed characteristic of the invention are set forth in the appended claims. The invention itself, however, as well as a preferred mode of use, further objectives and advantages thereof, will best be understood by reference to the following detailed description of an illustrative embodiment when read in conjunction with the accompanying drawings, wherein:
P-0012[0012]FIG. 1 is a block diagram of a digital messaging device in which the present invention may be implemented;
P-0013[0013]FIG. 2 is a block diagram providing an overall view of the operation of a preferred embodiment of the present invention;
P-0014[0014]FIG. 3 is a block diagram providing an overall view of a process of abbreviating and compressing text messages in accordance with a preferred embodiment of the present invention;
P-0015[0015]FIG. 4A is a representation, in a Perl-like pseudocode, of a personal dictionary of abbreviations in a message length reduction profile in accordance with a preferred embodiment of the present invention;
P-0016[0016]FIG. 4B is a representation, in a Perl-like pseudocode, of a compressive transformation rule implemented as a function in accordance with a preferred embodiment of the present invention;
P-0017[0017]FIG. 5 is a diagram depicting symbols used in entity-relationship (E-R) diagramming;
P-0018[0018]FIG. 6 is an entity-relationship (E-R) diagram of a message length reduction profile in accordance with a preferred embodiment of the present invention;
P-0019[0019]FIG. 7 is a flowchart representation of a process of a messaging device abbreviating, compressing and transmitting a text message in accordance with a preferred embodiment of the present invention;
P-0020[0020]FIG. 8 is an entity-relationship diagram of a data structure for mapping reduced character set strings into full-length words and phrases in accordance with a preferred embodiment of the present invention;
P-0021[0021]FIG. 9 is a flowchart representation of a process of expanding a shortened text message using elimination of a character set subset in accordance with a preferred embodiment of the present invention; and
P-0022[0022]FIG. 10 is a sample display from a recipient messaging device demonstrating how candidate replacement words for a given reduced-character set word can be presented to a user of the recipient device in accordance with a preferred embodiment of the present invention.
DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENT
P-0023[0023]FIG. 1 is an exemplary block diagram illustrating a portable messaging device in accordance with the present invention. As shown in FIG. 1, the portable messaging device <b>100</b> includes a processor <b>102</b>, a main memory <b>104</b>, a wireless communication adapter <b>110</b>, an application memory <b>112</b>, a data memory <b>114</b>, an optional audio adapter <b>116</b>, and a display adapter <b>118</b>, an input adapter <b>120</b>, and a transceiver <b>122</b>. These elements are coupled to one another via the control/data bus <b>106</b>. Although FIG. 1 shows three different memories <b>104</b>, <b>112</b> and <b>114</b>, it should be appreciated by those of ordinary skill in the art that two or more of these memories may be combined into a single memory device capable of storing data corresponding to each memory individually.
P-0024[0024] Portable messaging device <b>100</b> operates by executing programs stored in main memory <b>104</b> using processor <b>102</b>. In addition, the portable messaging device <b>100</b> includes messaging application software stored in application memory <b>112</b>. This application may be executed by the portable digital device <b>100</b> to perform various functions related to sending text messages via the wireless communication adapter <b>110</b> and transceiver <b>122</b>. Wireless communication adapter <b>110</b> and transceiver <b>122</b> are used to send and receive data messages via a wireless communication link to another messaging device, generally relayed through some form of base station or repeater.
P-0025[0025] The present invention is directed toward the compression and abbreviation of a source text message at a first messaging device into a shortened text message for transmission to and subsequent interpretation at a second messaging device. FIG. 2 is a diagram providing a general overview of a text messaging process in accordance with a preferred embodiment of the present invention. User input <b>200</b> provides a first messaging device <b>202</b> with a source text message <b>201</b>. Messaging device <b>202</b> shortens source text message <b>201</b> in accordance with a pre-defined message length reduction profile <b>206</b>, which may contain a personal dictionary of preferred abbreviations, acronyms and/or other compressive transformation rules that reduce the size of source text message <b>201</b> while still allowing the shortened text message (text message <b>204</b>) to be human-readable. It should be noted that throughout this application, when the term “abbreviation” is used, acronyms (which are a form of abbreviation) are also included within the scope of that term.
P-0026[0026] Messaging device <b>202</b> transmits shortened text message <b>204</b> and message length reduction profile <b>206</b> to a second messaging device <b>208</b>. Messaging device <b>208</b> may then use message length reduction profile <b>206</b> expand abbreviations into their full-length text meanings and/or reverse the effects of any compressive transformation rules applied to text message <b>204</b> to yield at least an approximation to the original message.
P-0027[0027] In an alternative embodiment, message length reduction profile <b>206</b> may be known ahead-of-time by both messaging device <b>202</b> and messaging device <b>208</b>. For example, the user of messaging device <b>208</b> may have defined a profile that that user shares with a user of messaging device <b>202</b>, or alternatively, the profile may be made available for download from a server or other form of public repository. In either case, messaging device <b>202</b> will know to use the profile defined by the user of messaging device <b>208</b> whenever transmitting text messages to messaging device <b>208</b>. In such circumstances, transmission of message length reduction profile from messaging device <b>202</b> to messaging device <b>208</b> can be avoided.
P-0028[0028]FIG. 3 is a diagram depicting an overall process of abbreviation and compressing a text message in accordance with a preferred embodiment of the present invention. A source text message <b>300</b> is first shortened by repeated application <b>302</b> (repeated application of a rule being denoted by the symbol →*) of abbreviation rules <b>304</b> from a personal dictionary of abbreviations associated with the message length reduction profile being utilized. In Computer Science, the notation [x/y] generally refers to a function or rule that substitutes a syntactic element “x” for a syntactic element “y” in an expression or string. In FIG. 3, the notation “[abbrev/words]” refers to the fact that abbreviation rules <b>304</b> consist of replacement rules that replace words or phrases in source text <b>300</b> with abbreviations.
P-0029[0029] A personal dictionary of abbreviations may be implemented in the form of an associative array, as is shown in a Perl-like pseudocode in FIG. 4A. Associative array “<b>9</b>dictionary” <b>400</b> comprises name-value pairs mapping a full-length character string (e.g., string <b>402</b>) to an associated abbreviation (e.g., abbreviation <b>404</b>).
P-0030[0030] Returning now to FIG. 3, after repeatedly applying abbreviation rules <b>304</b>, to source text <b>300</b>, an abbreviated text <b>306</b> is obtained. Next, repeated application <b>308</b> of compressive transformation rules <b>310</b> (denoted δ<sub>1</sub>, . . . , δ<sub>n</sub>) obtains a shortened text message <b>312</b>. Compressive transformation rules <b>310</b> consist of rules or computable functions that map a text message into a shorter, but human-readable version of the text message.
P-0031[0031]FIG. 4B is a diagram providing an example of a compressive transformation rule encoded as a function in Perl-like pseudocode. Function <b>410</b> encodes a compressive transformation rule for eliminating vowels from a text message. This is an example of a compressive transformation rule that results in a reduced character set representation of an original text message. It should be noted that in an actual embodiment, different characters may be eliminated, other than vowels. For instance, in other languages, different letters may be eliminated, other than, or in addition to vowels, or a combination of letters may be replaced by a smaller combination of letters. For example, in German, the letter “c” is almost always followed by “h” or “k” unless it is found in a foreign-derived word. Thus, the letter “c” in German is somewhat redundant. A compressive transformation rule intended for use with German might either eliminate the letter “c” or replace “ch” with a single letter, such as “g” or “k,” that has a similar sound (e.g., in German, the word “ich” and the monosyllabic nonsense word “ig” would be pronounced the same way).
P-0032[0032] It should also be noted that when a compressive transformation rule utilizing a reduced character set is used in conjunction with abbreviations or acronyms that may contain characters not found in the reduced character set, it is important that the application of the reduced character set compressive transformation rule does not interfere with the use of abbreviations. For example, if a compressive transformation rule to eliminate vowels is used in conjunction with abbreviations and acronyms that contain vowels, such as “FYI,” it is important that the vowels in the abbreviation or acronym are not eliminated by the compressive transformation rule (e.g., it is important that “FYI” not be compressed to “FY” for proper understanding of the message). This can be prevented in a number of ways. One possible technique that can be used is to apply the reduced character set rule first, then apply abbreviations whose “full length” text is actually a reduced character set representation of the true full length text.
P-0033[0033] Turning now to FIG. 4B, at line <b>412</b>, function <b>410</b> takes a single string containing a text message as an argument. On line <b>414</b>, each substring of one or more consecutive vowels is replaced within the string with an empty string (i.e., the vowels are removed from the string). One line <b>416</b>, the string is returned with vowels removed. One of ordinary skill in the art will recognize that any number of compressive transformation rules encoded as functions mapping a string into a modified string may be applied through function composition to a text message, such as abbreviate text <b>306</b> in FIG. 3, to yield a shortened text message (e.g., text message <b>312</b> in FIG. 3) in accordance with a message length reduction policy comprising a number of compressive transformation rules.
P-0034[0034] Other examples of compressive transformation rules include converting words that represent numbers into numerals, eliminating whitespace, eliminating whitespace while capitalizing the first letter of each word, elimination of less valuable words or phrases, and elimination of words that would be understood according to context (e.g., “She is taller than I am,” can be written as “She is taller than I”, with no loss of meaning.).
P-0035[0035] An additional example of a compressive transformation rule would be to take very commonly used words and replace them with single characters or single character prefixes. Some possible substitutions that can be used while still preserving readability (in the [substitution/original] notation described above)—include, but are not limited to: [T/the), [O/of], [&/and], [<b>2</b>/to], [a/a] (assuming whitespace is eliminated, e.g., [adog/a dog]), and [N/in]. For example, the phrase “the dog” could be replaced with “Tdog” at a savings of four characters.
P-0036[0036] Although exhaustive application of abbreviation rules <b>304</b> and compressive transformation rules <b>310</b> may result in an optimally shortened text message, one of ordinary skill in the art will recognize that such rules may also be applied to a limited degree to achieve a less optimally, but adequately shortened text message. For example, in a preferred embodiment of the present invention, abbreviation rules <b>304</b> and compressive tranformation rules <b>310</b> may be applied to only the extent necessary to reduce source text message <b>300</b> to a length that fits within specified length constraints.
P-0037[0037] A more detailed description of the contents of a message length reduction policy in accordance with a preferred embodiment of the present invention is presented in FIG. 6 in the form of an entity-relationship (E-R) diagram. FIG. 5 describes the symbols used in the E-R diagrams in this document. One of ordinary skill in the art will recognize that the data model represented by the E-R diagram provided in FIG. 6 may be readily implemented in the form of a database (such as a relational database) or data structure(s) (such as hash tables or trees) by following well-known principles of data storage and management within the computing art.
P-0038[0038] The E-R (entity-relationship) approach to database modeling provides a semantics for the conceptual design of databases and data structures. With the E-R approach, database information is represented in terms of entities, attributes of entities, and relationships between entities, where the following definitions apply. The modeling semantics corresponding to each definition is illustrated in FIG. 5. FIG. 5 is adapted from Elmasri and Navathe, <i>Fundamentals of Database Systems, </i>3rd Ed., Addison Wesley (2000), pp. 41-66, which contains additional material regarding E-R diagrams and is hereby incorporated by reference.
P-0039[0039] Entity: An entity is a principal object about which information is collected. For example, in a database containing information about personnel of a company, an entity might be “Employee.” In E-R modeling, an entity is represented with a box. An entity may be termed weak or strong, relating its dependence on another entity. A strong entity exhibits no dependence on another entity, i.e. its existence does not require the existence of another Entity.
P-0040[0040] Attribute: An attribute is a label that gives a descriptive property to an entity (e.g., name, color, etc.). Two types of attributes exist. Key attributes distinguish among occurrences of an entity. For example, in the United States, a Social Security number is a key attribute that distinguishes between individuals. Descriptor attributes merely describe an entity occurrence (e.g., gender, weight). As shown in FIG. 5, in E-R modeling, an attribute is represented with an oval tied to the entity (box) to which it pertains.
P-0041[0041] Relationships: A relationship is a connectivity exhibited between entity occurrences. Relationships may be one to one, one to many, and many to many, and participation in a relationship by an entity may be optional or mandatory. For example, in the database containing information about personnel of a company, a relation “married to” among employee entity occurrences is one to one (if it is stated that an employee has at most one spouse). Further, participation in the relation is optional as there may exist unmarried employees. As a second example, if company policy dictates that every employee have exactly one manager, then the relationship “managed by” among employee entity occurrences is many to one (many employees may have the same manager), and mandatory (every employee must have a manager).
P-0042[0042] As shown in FIG. 5, in E-R modeling a relationship is represented with a diamond. The cardinality ratio (one-to-one, one-to-many, etc.) in a relationship is denoted by the use of the characters “1” and “N” to show 1:1 or 1:N cardinality ratios, or through the use of explicit structural constraints, as shown in FIG. 5.
P-0043[0043]FIG. 6 is an entity-relationship (E-R) diagram depicting the structure of a message length reduction profile in accordance with a preferred embodiment of the present invention. The basic entity of interest is profile entity <b>600</b>, which defines a single message length reduction profile. Each profile stored by a given messaging device must be uniquely identified; thus, profile entity <b>600</b> has an associated “profile id” attribute <b>602</b>, which is designated as a key attribute of profile entity <b>600</b>. An acceptable length attribute <b>604</b> may store a pre-defined constraint on the length of text messages to be satisfied.
P-0044[0044] A message length reduction profile may contain a personal dictionary of abbreviations to be applied to text messages. “Contains abbreviation” relation <b>606</b> relates a single instance of profile entity <b>600</b> to multiple instances of abbreviation entity <b>608</b> to form such a personal dictionary. Abbreviation entity <b>608</b> contains a pair of attributes. Text attribute <b>610</b>, which is preferably a key attribute, represents a string of unabbreviated text to be represented by an abbreviation. Abbreviation text attribute <b>612</b> is a string containing an abbreviation that is intended to stand for the text contained in text attribute <b>610</b>.
P-0045[0045] An instance of profile entity <b>600</b> may also have a number of associated compressive transformation rules, such as removing vowels or whitespace, that may be applied to a source text message. “Contains transformation rule” relation <b>614</b> maps a single instance of profile entity <b>600</b> to one or more instances of transformation rule entity <b>616</b>. Each instance of transformation rule entity <b>616</b> has an associated “rule id” attribute <b>618</b> that may be used to uniquely identify a transformation rule represented by an instance of transformation rule entity <b>616</b>. Having a unique identifier for each transformation rule allows rules to be selected by reference for inclusion into a message length reduction profile (i.e., rules may be included in a profile by referring to them simply by their identifiers). Transformation code attribute <b>620</b> represents a rule definition or program code for performing the compressive transformation represented by an instance of transformation rule entity <b>616</b>. For instance, the pseudocode provided in FIG. 4B is an example of transformation code.
P-0046[0046] Additionally, as was stated earlier, a messaging device may store a number of message length reduction profiles associated with different recipient devices and/or users. “Associated with” relation <b>622</b> is a many-to-many (N-to-N) relation associating instances of profile entity <b>600</b> to devices or users, represented as instances of devices/users entity <b>624</b>.
P-0047[0047] The overall operation of a messaging device abbreviating, compressing and transmitting a text message in accordance with a preferred embodiment of the present invention is depicted in flowchart form in FIG. 7. A message length reduction profile is selected (block <b>700</b>). An appropriate message length reduction profile may be selected by the user of the messaging device or it may be selected on the basis of the intended recipient of the text message to be transmitted. A source text message is received, preferably via user input (block <b>702</b>). If the message fits the applicable length constraints (block <b>704</b>:Yes), the process jumps to label A (block <b>714</b>), which will be described shortly.
P-0048[0048] If the message is not an acceptable length (block <b>704</b>:No), a determination is made as to whether an abbreviation from the personal dictionary of abbreviations associated with the message length reduction profile may be applied to the text message in its current form (block <b>706</b>). If an abbreviation may be applied (block <b>706</b>:Yes), the abbreviation is applied to the text message to shorten the message (block <b>708</b>) and the process cycles to block <b>704</b>.
P-0049[0049] If no abbreviation may be applied (block <b>706</b>:No), a determination is made as to whether a compressive transformation rule from the message length reduction profile may be applied to the text message (block <b>710</b>). If so (block <b>710</b>:Yes), then the compressive transformation rule is applied to shorten the message (block <b>712</b>) and the process cycles to block <b>704</b>.
P-0050[0050] If no compressive transformation rule from the message length reduction profile can be applied (block <b>710</b>:No) or if the text message has been determined to be at an acceptable length (block <b>704</b>:Yes), the process continues to block <b>714</b>. The relevant portions of the message length reduction profile are transmitted to the recipient messaging device (block <b>714</b>). The “relevant portions” of the message length reduction profile may include those rules and abbreviations that were actually applied to the text message or may simply consist of some type of identifier to inform the recipient device of the message length reduction profile used to shorten the text message. Alternatively, the message length reduction profile may be transmitted in its entirety or in a compressed form (e.g., using conventional lossless compression techniques) In yet another alternative embodiment, block <b>714</b> may be omitted altogether, if it can be implicitly understood by the recipient messaging device which profile was used to shorten the text message. Finally, the shortened message is transmitted to the recipient messaging device (block <b>716</b>).
P-0051[0051] Message length reduction profile information may be utilized in a number of ways by a recipient messaging device. For instance, when a message length reduction profile contains a personal dictionary of abbreviations, this personal dictionary may be used by the recipient device to replace the abbreviated forms of words and phrases with their full-length meanings through a reverse-lookup procedure. When the message length reduction profile associated with a text message indicates that one or more compressive transformation rules, such as eliminating vowels (or another subset of the character set or alphabet) or whitespace, have been applied to a text message, the effect of these rules may be reversed. FIGS. <b>8</b>-<b>10</b> depict how message length reduction profile information can be applied by a recipient device to aid in the interpretation of a text message in which a subset of the character set (such as the vowels in English) has been eliminated.
P-0052[0052] In accordance with a preferred embodiment of the present invention, a recipient device that receives a text message in which the vowels have been eliminated may make use of a data structure to map reduced character set words and phrases into full-length text. FIG. 8 is an E-R diagram of such a data structure. Reduced character set text entity <b>800</b> represents words or phrases in which certain characters (e.g., vowels) have been eliminated. The actual reduced character set words and phrases themselves may be stored as an attribute <b>801</b> of reduced character set text entity <b>800</b>. Reduced character set text entity <b>800</b> participates in a 1-to-N “maps” relation <b>802</b> with words/phrases entity <b>804</b>, which represents full-length words and phrases that, through “maps” relation <b>802</b>, correspond to reduced character set versions of those words and phrases (reduced character set text entity <b>800</b>).
P-0053[0053] Words/phrases entity <b>804</b> may have a number of attributes to aid in identifying the correct replacement word or phrase for a given reduced character set string. String attribute <b>805</b> contains the actual full-length text represented by words/phrases entity <b>804</b>. A rank attribute <b>806</b> may include frequency information or other ranking information reflecting the probability that a given reduced character set string corresponds to a particular full-length word or phrase. Additional information attribute(s) <b>808</b> may contain contextual information or conditional probabilities to assist in the determination of which full-length word or phrase corresponds to a given reduced character set string in a text message.
P-0054[0054]FIG. 9 is a flowchart representation of a process of expanding a shortened text message using a data structure such as that described in FIG. 8. The flowchart in FIG. 9 represents what is known in Computer Science as a “while” loop, which is a loop in which the condition for iterating the loop is tested at the beginning of the loop. In FIG. 9 this looping condition is tested in block <b>900</b>. In FIG. 9 it is assumed that the process represented by the flowchart iterates over words (or phrases) in a text message in sequence. Thus, a determination is made as to whether any subsequent words are to be found in the text message (block <b>900</b>).
P-0055[0055] If the end of the text message has not been reached(block <b>900</b>:Yes), the next word (or phrase) in the text message is considered (some type of regular expression pattern matcher may be employed to find the next longest match for a word or phrase, thus allowing both words and phrases to be considered) (block <b>902</b>). If the next word or phrase is a recognized abbreviation (block <b>904</b>:Yes), then the abbreviation is simply replaced with its corresponding full-length text (block <b>905</b>) and the process cycles to block <b>900</b> to consider subsequent words or phrases. If the word or phrase is not a recognized abbreviation (block <b>904</b>:No), but is in reduced character set form (block <b>908</b>:Yes), a lookup operation is performed to find possible words or phrases that the reduced character set string may represent (block <b>910</b>). An appropriate choice of replacement word is then selected and applied to the text message (block <b>912</b>). The process then (following block <b>912</b> or block <b>908</b>:No) cycles to block <b>900</b> to iterate over subsequent words or phrases in the text message.
P-0056[0056] One the end of the text message has been reached (block <b>900</b>:No), a determination is made as to whether the message has been accompanied by an error-detecting code, such as a cyclic redundancy check (CRC) calculated on the original full-length source text (block <b>913</b>). Appending an error detection code to a shortened text message allows the accuracy of decompression to be checked. If no such error-detecting code accompanies the message (block <b>913</b>:No), the process terminates. If an error-detecting code does accompany the message (block <b>913</b>:Yes), then a determination is made as to whether the expanded text message is correct according to the error-detecting code (block <b>914</b>). If so (block <b>914</b>:Yes), then the process ends successfully. If not (block <b>914</b>:No), then a determination is made as to whether all possible expansions have been exhausted (block <b>916</b>). If not (block <b>916</b>:No), the process cycles to step <b>900</b> to try another possible expansion. If so (block <b>916</b>:Yes), however, the process terminates. Thus, if an error-detecting code is included with the text message, the correct expansion for the shortened text message can be found in a generate-and-test fashion.
P-0057[0057] One of ordinary skill in the art will also appreciate that a data structure such as that described in FIG. 8 may also be used to help a human user decode ambiguous reduced character set words using contextual clues. FIG. 10 depicts a sample display for a recipient messaging device in accordance with a preferred embodiment of the present invention. The phrase “the meaning of life” is displayed in shortened, vowelless form as string “th mnng f lf” <b>1000</b>. A pointing device (represented by cursor <b>1002</b>) is used to point to ambiguous reduced character set (in this case, vowelless) words. In response to actuating the pointing device over a reduced character set word, a list <b>1004</b> of possible full-length versions of the word is displayed for the user. The list may be ordered according to frequency, ranking, or other contextual information as described in FIG. 8 to allow more probable candidate words to be displayed first.
P-0058[0058] In addition, other variations on the preferred embodiment are possible without departing from the scope and spirit of the present invention. For example, expanded text messages may be played back as audio speech using speech-synthesis technology. In addition, voice-recognition hardware or software may be employed to convert spoken word into a source text message for compression and abbreviation as needed, and subsequent transmission to a recipient device.
P-0059[0059] It is important to note that while the present invention has been described in the context of a fully functioning data processing system, those of ordinary skill in the art will appreciate that the processes of the present invention are capable of being distributed in the form of a computer readable medium of instructions or other functional descriptive material and in a variety of other forms and that the present invention is equally applicable regardless of the particular type of signal bearing media actually used to carry out the distribution. Examples of computer readable media include recordable-type media, such as a floppy disk, a hard disk drive, a RAM, CD-ROMs, DVD-ROMs, and transmission-type media, such as digital and analog communications links, wired or wireless communications links using transmission forms, such as, for example, radio frequency and light wave transmissions. The computer readable media may take the form of coded formats that are decoded for actual use in a particular data processing system. Functional descriptive material is information that imparts functionality to a machine. Functional descriptive material includes, but is not limited to, computer programs, instructions, rules, facts, definitions of computable functions, objects, and data structures.
P-0060[0060] The description of the present invention has been presented for purposes of illustration and description, and is not intended to be exhaustive or limited to the invention in the form disclosed. Many modifications and variations will be apparent to those of ordinary skill in the art. The embodiment was chosen and described in order to best explain the principles of the invention, the practical application, and to enable others of ordinary skill in the art to understand the invention for various embodiments with various modifications as are suited to the particular use contemplated.
Contents4
6 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| US9766905B2 | Cited by | United States of America | Search report |
| US7376434B2 | Cited by | United States of America | Search report |
| CN111143551A | Cited by | China | Search report |
| WO2014060739A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US11711459B2 | Cited by | United States of America | Applicant |
| US2011135071A1 | Cited by | United States of America | Pre-grant |
| US12143901B2 | Cited by | United States of America | Applicant |
| US9606634B2 | Cited by | United States of America | Applicant |
| US2008114591A1 | Cited by | United States of America | Pre-grant |
| US11349494B2 | Cited by | United States of America | Search report |
| US9772763B2 | Cited by | United States of America | Search report |
| US9204268B2 | Cited by | United States of America | Applicant |
| WO2012166099A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US2010323730A1 | Cited by | United States of America | Pre-grant |
| US2012166554A1 | Cited by | United States of America | Pre-grant |
| US2012060124A1 | Cited by | United States of America | Pre-grant |
| US2006276210A1 | Cited by | United States of America | Pre-grant |
| US9087038B1 | Cited by | United States of America | Search report |
| EP2138942A1 | Cited by | European Patent Office (EPO) | Search report |
| US2011248924A1 | Cited by | United States of America | Pre-grant |
| US2014289616A1 | Cited by | United States of America | Pre-grant |
| US9042921B2 | Cited by | United States of America | Applicant |
| US2016103808A1 | Cited by | United States of America | Pre-grant |
| US2010205272A1 | Cited by | United States of America | Pre-grant |
| US7729688B2 | Cited by | United States of America | Applicant |
| US9116548B2 | Cited by | United States of America | Search report |
| US2019188258A1 | Cited by | United States of America | Search report |
| US2014029750A1 | Cited by | United States of America | Pre-grant |
| US2009075681A1 | Cited by | United States of America | Pre-grant |
| US2007076862A1 | Cited by | United States of America | Pre-grant |
| US2009192786A1 | Cited by | United States of America | Pre-grant |
| US8280419B1 | Cited by | United States of America | Applicant |
| US2010121813A1 | Cited by | United States of America | Pre-grant |
| US8549617B2 | Cited by | United States of America | Search report |
| US2011154363A1 | Cited by | United States of America | Pre-grant |
| US2010211868A1 | Cited by | United States of America | Pre-grant |
| US10534755B2 | Cited by | United States of America | Search report |
| US9116884B2 | Cited by | United States of America | Search report |
| US7366500B1 | Cited by | United States of America | Search report |
| US11792316B2 | Cited by | United States of America | Applicant |
| US8489132B2 | Cited by | United States of America | Applicant |
| US8924340B2 | Cited by | United States of America | Search report |
| US2019065446A1 | Cited by | United States of America | Search report |
| US2012005576A1 | Cited by | United States of America | Pre-grant |
| US2010120456A1 | Cited by | United States of America | Pre-grant |
| US7551935B2 | Cited by | United States of America | Search report |
| US2009327881A1 | Cited by | United States of America | Pre-grant |
| US10303746B1 | Cited by | United States of America | Applicant |
| US2008313534A1 | Cited by | United States of America | Pre-grant |
| US8816976B2 | Cited by | United States of America | Search report |
| US10210147B2 | Cited by | United States of America | Applicant |
| US2007185702A1 | Cited by | United States of America | Pre-grant |
| US2012005476A1 | Cited by | United States of America | Pre-grant |
| US10142292B2 | Cited by | United States of America | Applicant |
| US2005027839A1 | Cited by | United States of America | Pre-grant |
| US9166823B2 | Cited by | United States of America | Applicant |
| US9363235B2 | Cited by | United States of America | Search report |
| US2006259565A1 | Cited by | United States of America | Pre-grant |
| EP3493080A4 | Cited by | European Patent Office (EPO) | Search report |
| US8509827B2 | Cited by | United States of America | Applicant |
| US11314937B2 | Cited by | United States of America | Search report |
| US8275399B2 | Cited by | United States of America | Applicant |
| US2014295898A1 | Cited by | United States of America | Pre-grant |
| US8509826B2 | Cited by | United States of America | Applicant |
| US8112104B1 | Cited by | United States of America | Applicant |
| US2006129633A1 | Cited by | United States of America | Pre-grant |
| US2007067398A1 | Cited by | United States of America | Pre-grant |
| US2014082104A1 | Cited by | United States of America | Pre-grant |
| US8744407B2 | Cited by | United States of America | Applicant |
| US2007074131A1 | Cited by | United States of America | Pre-grant |
| US8374846B2 | Cited by | United States of America | Applicant |
| US8737978B1 | Cited by | United States of America | Applicant |
| EP2138942A1 | Cited by | European Patent Office (EPO) | Search report |
| US10142810B2 | Cited by | United States of America | Applicant |
| US11800329B2 | Cited by | United States of America | Applicant |
| US2006270425A1 | Cited by | United States of America | Pre-grant |
| US2006234734A1 | Cited by | United States of America | Pre-grant |
| US8739031B2 | Cited by | United States of America | Search report |
| US2010069103A1 | Cited by | United States of America | Pre-grant |
| US2007066327A1 | Cited by | United States of America | Pre-grant |
| US7890128B1 | Cited by | United States of America | Applicant |
| US2015303941A1 | Cited by | United States of America | Pre-grant |
| US11019199B2 | Cited by | United States of America | Applicant |
| WO2014060739A1 | Cited by | World Intellectual Property Organization (WIPO) | International search |
| US9736664B2 | Cited by | United States of America | Applicant |
| US8374850B2 | Cited by | United States of America | Search report |
| US11010535B1 | Cited by | United States of America | Applicant |
| US9922015B2 | Cited by | United States of America | Search report |
| US2008274756A1 | Cited by | United States of America | Pre-grant |
| US2008059152A1 | Cited by | United States of America | Pre-grant |
| US2010145702A1 | Cited by | United States of America | Pre-grant |
| US2009215479A1 | Cited by | United States of America | Pre-grant |
| US12079563B1 | Cited by | United States of America | Applicant |
| US10708727B2 | Cited by | United States of America | Applicant |
| US10492038B2 | Cited by | United States of America | Applicant |
| GB2507870A | Cited by | United Kingdom | Search report |
| US10902189B2 | Cited by | United States of America | Applicant |
| US8229733B2 | Cited by | United States of America | Search report |
| US2019188258A1 | Cited by | United States of America | Search report |
| US7580719B2 | Cited by | United States of America | Applicant |
4 members in 1 office; this record represents the family
Members4
| Document | Office | Kind | |
|---|---|---|---|
| US2004122979A1 | United States of America | A1 | |
| US2007299925A1 | United States of America | A1 | |
| US7315902B2 | United States of America | B2 | |
| US7827315B2 | United States of America | B2 |
47 transactions on the USPTO file
Allowed after 3 non-final rejections.
- Non-final rejections
- 3
- Final rejections
- 0
- RCEs
- 0
- Appeals
- 0
Over time
Point at a mark for the transactionTransactions
| Event | Code | |
|---|---|---|
| Expire PatentEXP. | EXP. | |
| Recordation of Patent Grant MailedPGM/ | PGM/ | |
| Patent Issue Date Used in PTA CalculationAllowedPTAC | PTAC | |
| Issue Notification MailedAllowedWPIR | WPIR | |
| Dispatch to FDCD1935 | D1935 | |
| Correspondence Address ChangeC.AD | C.AD | |
| Application Is Considered Ready for IssuePILS | PILS | |
| Issue Fee Payment VerifiedN084 | N084 | |
| Issue Fee Payment ReceivedIFEE | IFEE | |
| Mail Notice of AllowanceAllowedMN/=. | MN/=. | |
| Mail Examiner's AmendmentMEX.A | MEX.A | |
| Notice of Allowance Data Verification CompletedAllowedN/=. | N/=. | |
| Examiner's Amendment Communication | – | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Mail Examiner Interview Summary (PTOL - 413)MEXIN | MEXIN | |
| Interview Summary RecordEXIN | EXIN | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Date Forwarded to ExaminerFWDX | FWDX | |
| Response after Non-Final ActionA... | A... | |
| Interview Summary RecordEXIN | EXIN | |
| Correspondence Address ChangeC.ADB | C.ADB | |
| Correspondence Address ChangeC.AD | C.AD | |
| Change in Power of Attorney (May Include Associate POA)PA.. | PA.. | |
| Mail Non-Final RejectionNon-final rejectionMCTNF | MCTNF | |
| Non-Final RejectionNon-final rejectionCTNF | CTNF | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| IFW TSS Processing by Tech Center CompleteTSSCOMP | TSSCOMP | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Case Docketed to Examiner in GAUDOCK | DOCK | |
| Transfer Inquiry to GAUTI1050 | TI1050 | |
| Application Dispatched from OIPEOIPE | OIPE | |
| Application Is Now CompleteCOMP | COMP | |
| IFW Scan & PACR Auto Security Review | – | |
| Information Disclosure Statement consideredIDSC | IDSC | |
| Reference capture on IDSRCAP | RCAP | |
| Information Disclosure Statement (IDS) Filed | – | |
| Information Disclosure Statement (IDS) Filed | – | |
| Initial Exam Team nnIEXX | IEXX |
7 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Lapsed due to failure to pay maintenance feeLapsedFP | FP | |
| Information on status: patent discontinuationPATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362STCH | STCH | |
| Information on status: patent discontinuationPATENT EXPIRED DUE TO NONPAYMENT OF MAINTENANCE FEES UNDER 37 CFR 1.362STCH | STCH | |
| Lapse for failure to pay maintenance feesLapsedLAPS | LAPS | |
| Maintenance fee reminder mailedREMI | REMI | |
| Fee paymentFPAY | FPAY | |
| Fee payment procedurePAYOR NUMBER ASSIGNED (ORIGINAL EVENT CODE: ASPN); ENTITY STATUS OF PATENT OWNER: LARGE ENTITYFEPP | FEPP |
Numbers
- Application
- 32451602
Titles
- English
- Compression and abbreviation for fixed length messaging
Patent term adjustment
- A delay
- +817 daysthe office missed an examination deadline
- Net adjustment
- 817 days
Classification
- CPC, 2
- G06F40/123
- Y10S707/99934
- IPC, 1
- G06F17 22