`Kraft
`
`USOO6309305B1
`(10) Patent No.:
`US 6,309,305 B1
`(45) Date of Patent:
`Oct. 30, 2001
`
`(54) INTELLIGENT COPY AND PASTE
`OPERATIONS FOR APPLICATION
`HANDLING UNITS, PREFERABLY
`9
`HANDSETS
`
`(75) Inventor: Christian A Kraft, Copenhagen (DK)
`(73) Assignee: Nokia Mobile Phones Limited, Espoo
`(FI)
`Subject to any disclaimer, the term of this
`patent is extended or adjusted under 35
`U.S.C. 154(b) by 0 days.
`
`(*) Notice:
`
`(21) Appl. No.: 09/096,692
`(22) Filed:
`Jun. 12, 1998
`(30)
`Foreign Application Priority Data
`Jun. 17, 1997 (GB) .................................................. 971. 2781
`(51) Int. Cl." .................................................... H04M 11/00
`(52) U.S. Cl. ..................
`465/566; 455/414; 455/575
`(58) Field of Search ..................................... 455/566, 550,
`455/565, 575, 95, 414; 34.5/133; 707/100
`References Cited
`U.S. PATENT DOCUMENTS
`12/1995 Finke-Anlauff ........................ 379/58
`
`5,479,476
`
`(56)
`
`5,765,156
`5,784,001
`5,920,826
`6,044,248
`
`6/1998 Guzak et al. ........................ 707/100
`7/1998 Deluca et al. ....................... 345/133
`7/1999 Metso et al. ......................... 455/556
`3/2000 Mochizuki et al. ................. 455/566
`
`FOREIGN PATENT DOCUMENTS
`
`O 463 856 B1
`
`1/1992 (EP).
`
`* cited by examiner
`
`Primary Examiner Daniel Hunter
`Assistant Examiner Thuan T. Nguyen
`(74) Attorney, Agent, or Firm-Perman & Green, LLP
`(57)
`ABSTRACT
`A phone including a CPU controlling a plurality of
`applications, a working Storage that holds data and programs
`used in Said applications and Storage means acting as a
`clipboard when copying and pasting data from one applica
`tion to another. Via the keyboard of the phone data contained
`in one application may be Selected for copying to a clip
`board. The CPU identifies predetermined types of Subitems
`in the contents of the data copied to the clipboard. When
`pasting, Said types of Subitems may be displayed for indi
`vidual pasting from the clipboard into the position in Said
`another application appointed by the pasting command.
`
`25 Claims, 4 Drawing Sheets
`
`ldle mode
`
`SONOFON
`
`2
`K
`>Messages
`24T Call options
`Phone setting
`
`Woice mail
`--Bag SMS
`24
`Write SMS
`
`--
`20
`21
`
`--
`23
`
`--
`25
`
`>Jacobgnmp.com
`AT John urner
`-45.44994499
`
`--
`26
`
`HiChristian,
`could you callme
`back on...
`
`--
`27
`
`
`
`Adobe - Exhibit 1107, page 1
`
`
`
`U.S. Patent
`
`Oct. 30, 2001
`
`Sheet 1 of 4
`
`US 6,309,305 B1
`
`
`
`Adobe - Exhibit 1107, page 2
`
`
`
`U.S. Patent
`
`Oct. 30, 2001
`
`Sheet 2 of 4
`
`US 6,309,305 B1
`
`ldle mode
`
`22
`
`21
`K
`
`Fig.3.
`-N
`2O
`21
`
`
`
`Call options
`Phone setting
`
`24
`
`
`
`28
`
`
`
`
`
`Voice mail
`>Read SMS
`Write SMS
`
`97.06.21
`>97.06.22
`97.06.23
`
`>Jacob Gnmp.com
`John Turner
`--45.44994499
`
`Hi Christian,
`could you call me
`back On...
`
`New entry
`>Edit
`Delete
`
`John Carlisle
`>John Turner
`Jacob
`
`
`
`
`
`
`
`Adobe - Exhibit 1107, page 3
`
`
`
`U.S. Patent
`
`Oct. 30, 2001
`
`Sheet 3 of 4
`
`US 6,309,305 B1
`
`Hi John, please
`meet me and John
`
`
`
`K
`
`24 Phone settings
`>Calendar
`Ringing setting
`
`Fig.4.
`
`--N
`27
`
`-N
`23
`
`New entry
`
`( Paste
`New entry
`
`Re
`
`-N
`37
`
`
`
`
`
`24
`
`
`
`>New entry
`Edit
`
`--N
`31
`
`>Meet John
`Turner and John
`Carlisle....
`
`-N
`32
`
`Rs
`
`k Paste
`
`Quit
`
`24 Unicom, 21.
`June 1997 at
`10.00 at my...
`
`
`
`
`
`Date
`97.06.21 ?
`
`Adobe - Exhibit 1107, page 4
`
`
`
`U.S. Patent
`
`Oct. 30, 2001
`
`Sheet 4 of 4
`
`US 6,309,305 B1
`
`50
`
`Start
`
`55
`Mark WOrd as a
`Selectable unit,
`delete WOrd,
`delete sign
`
`Enter next
`ASCII sign
`
`
`
`Add sign to
`WOrd
`
`Fig.6.
`
`54
`
`
`
`
`
`
`
`S
`reading
`completed
`
`s
`the sign
`a Space
`?
`
`
`
`
`
`Display full
`message text
`With the CurSOr
`mOVable
`between Words
`having flags
`corresponding
`to the Context in
`the application
`
`60
`Set phone no.
`flag for Word
`
`Set date/time
`flag for word
`
`Set E-mail
`flag for word
`
`
`
`
`
`
`
`
`
`
`
`56
`
`Classify
`WOrds
`
`5
`S
`YES16lassification
`complete
`?
`NO
`Classify next
`WOrd
`
`58
`
`
`
`Remove spec.
`Signs
`
`Adobe - Exhibit 1107, page 5
`
`
`
`1
`INTELLIGENT COPY AND PASTE
`OPERATIONS FOR APPLICATION
`HANDLING UNITS, PREFERABLY
`HANDSETS
`
`BACKGROUND OF THE INVENTION
`The invention relates to a method of transferring data
`from one application to another in an application handling
`unit controlling a plurality of applications. The invention
`furthermore relates to Such an application handling unit and
`especially a handset or a portable phone.
`The copy and paste function is generally known from the
`applications available in Windows(R from Microsoft Corpo
`ration(R). However, the copy and paste function can be used
`to copy text Strings from one application to another or from
`one document in one application to another document in the
`Same application or from one location in a document to
`another location in the same document.
`The CPU of the computer uses a RAM as a primary
`Storage to hold programs and data for all applications-at
`least the open ones. When Selecting a text String and copying
`this String to the clipboard, this String will be Stored in a
`Space in the RAM Specially dedicated as a clipboard
`memory. The cutting operation is basically the Same, but the
`Selected text String will be copied to the clipboard, whereas
`it will be removed from the original file/document.
`Hereby the contents in the clipboard will be present for
`pasting even though the application from which the String
`was copied will be closed. When moving the cursor to a new
`position either in the same file or in another file, the contents
`of the clipboard may be pasted to this position. The contents
`of the clipboard will not be affected by the pasting, whereby
`the pasting may be repeated Several times. This type of
`cut/copy and paste operation is excellent when handling text
`documents by means of e.g. a Personal Computer (PC)
`having a full keypad and a mouse for moving the cursor.
`However, in a portable phone, the number of input key S
`compared with a PC is very low, and cursor navigation keys
`only allow a limited navigation through a text String, e.g. an
`SMS message, so that it will be easier to rewrite a word than
`to use a copy and paste function.
`
`SUMMARY OF THE INVENTION
`In accordance with the invention there is provided a
`method of transferring data from one application to another
`in an application handling unit controlling a plurality of
`applications, Said transfer being handled by copying data to
`and pasting data from clipboard Storage means, Said method
`comprising identifying predetermined types of Subitems in
`the contents of the data copied to the clipboard; and dis
`playing Said types of Subitems for Selection by the user upon
`reception of a pasting request for the data on the clipboard
`into Said another application.
`The transfer is handled by copying data to clipboard
`Storage means as a complex data structure, e.g. a full SMS
`message including all available information e.g. the text
`message and the Sender ID. Then the complex data structure
`is analyzed, and predetermined types of Subitems in the
`complex data Structure are identified. These Subitems may
`be ordinary words, phone numbers or dates. When the user
`requests the pasting of an item in the complex data structure
`into another application, a list of Subitems will be displayed
`and the user may select the item which he finds appropriate
`to paste. The main difference compared with prior art is that
`the transferred item is defined when pasting from the clip
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,309,305 B1
`
`2
`board instead of when copying to the clipboard. The text
`editing facilities on a phone are very poor at present in
`contrast to the menu Selection facilities. An example of the
`menu selection facilities is given in EP 463 856.
`The invention provides a user interface which has a copy
`and paste function for copying data between applications
`and which is easy to use.
`To reduce the length of the list presented when pasting,
`Some analyzing may be performed upon the detection of a
`pasting request. When an SMS message has been requested
`to be pasted into a phone number memory location in a
`phone book, only words allowable according the phone
`number Syntax rules may be presented.
`First, the contents of the complex data Structure are
`divided into Separate words by detecting dividing points as
`Spaces or the like. Then each of the words may be compared
`with the Syntax rules valid for the pasting position.
`The invention furthermore relates to an application han
`dling unit including a CPU controlling a plurality of
`applications, a working Storage that holds data and programs
`used in Said applications and Storage means acting as a
`clipboard when copying and pasting data from one applica
`tion to another. This unit furthermore comprises means for
`Selecting data contained in one application for copying to the
`clipboard, means for identifying predetermined types of
`Subitems in the contents of the data copied to the clipboard,
`and means for displaying Said types of Subitems for Selection
`by the user upon reception of a pasting request for the data
`on the clipboard into Said another application. Hereby the
`Selected unbroken String in one application will be broken
`down to a list of individually Selectable items for pasting
`from the clipboard.
`A handset or a phone comprises information inputting
`means, a display, a controller unit that controls the input
`means and the display and a plurality of applications avail
`able to the user. The controller unit is provided with memory
`means for temporarily Storing data used in Said applications.
`When a data set used in one of Said applications is Selected
`for copying to the clipboard, the controller unit gives this Set
`a status according to which the data Set may be pasted into
`another of Said applications upon request from the user via
`Said input means. In general, all applications available in a
`portable phone are open. Therefore, there is no need for
`making a copy of the Selected data. Instead, a link pointing
`out the data Selected for copying could be provided.
`However, the user does not feel any difference. When a data
`Set has been requested for copying, the controller unit
`analyzes the data Set. The purpose of the analyzing is to
`break the data Set down into Small items, e.g. into words
`when these words were divided by Spaces in the copied data
`Set. When the user requests the paste operation, the control
`ler unit offers the user each of Said Subitems for pasting.
`According to a further embodiment of the invention, the
`memory means for temporarily Storing data includes a
`RAM-like memory in which data for said applications and
`data for the display are Stored. The handset or the phone is
`provided with a menu Structure including a copy and paste
`option, and the controller unit establishes a link to the data
`Set Selected for copying upon the presence of a copy request.
`Upon the presence of a paste request, the controller Splits the
`data Set String into words divided by a Space or the like and
`transferS the words to a display memory for displaying the
`word in the display as individually selectable items for
`pasting. Upon the presence of a Select request, the controller
`unit copies the Selected word into a position in Said another
`application appointed by the paste request.
`
`Adobe - Exhibit 1107, page 6
`
`
`
`3
`Preferably, the controller unit compares said word with
`syntax rules for words allowable in the present context of the
`application when pasting. The controller unit only transfers
`words which are allowable according to Said comparison to
`the display memory for display.
`
`BRIEF DESCRIPTION OF THE DRAWINGS
`The invention will be explained more fully below in
`connection with preferred embodiments and with reference
`to the drawing, in which:
`FIG. 1 shows a handset according to the invention;
`FIG. 2 shows the structure of the handset according FIG.
`1;
`FIG. 3 shows a display picture illustrating a first example
`of copy and paste in accordance with the invention;
`FIG. 4 shows a display picture illustrating a Second
`example of copy and paste in accordance with the the
`invention;
`FIG. 5 shows a display picture illustrating a third example
`of copy and paste in accordance with the invention; and
`FIG. 6 shows a flow diagram for the analyzing algorithm
`used in an embodiment of the invention.
`
`15
`
`DETAILED DESCRIPTION OF THE
`INVENTION
`A preferred embodiment of a handset or a phone 1
`according to the invention is shown in perspective view in
`FIG.1. The blocks in the phone necessary to understand the
`invention are shown in FIG. 2. The phone 1 includes means
`for inputting information, Said means being preferably a
`keypad 3 which comprises a set of alphanumeric keys 4 in
`the shown preferred embodiment. The alphanumeric keys
`have the values 0-9, * and it in numeric mode and all
`normally used letters and a number of Special Signs in
`alphabetic mode. Two call handling keys 5 are used for
`establishing and terminating calls. A key 6 is used for
`Switching between numeric mode and alphabetic mode for
`the keys 4. An erase key 7 is used for deleting the last
`entered digit or letter, and, when long pressed, for bringing
`the phone back to idle mode.
`The keypad 3 furthermore comprises two soft keys 8,
`whose functionality changes in dependence on the mode on
`the phone. The functionality of the soft keys 8 is controlled
`by a controller or a CPU 12 and is displayed in separate areas
`in the display 2, Said areas being adjacent to the two keys 8.
`The soft keys 8 are preferably used to select and execute
`instructions entered by the other keys or Suggested by the
`CPU 12 and displayed in the display 2.
`A scroll key 9 is included in the keypad 3 for moving a
`cursor through the items shown in the display 2 and for
`jumping in the menu structure. The scroll key 9 will advan
`tageously be able to move a display cursor in two directions
`and be able to select items pointed out by the cursor by
`having an integrated click function. The inputting means
`may be Supplemented with means for voice recognition. In
`order to obtain an improved Scrolling, the preSS-activated
`scroll key 9 may be replaced by a pivotal scrolling wheel or
`ball-preferably including a click functionality.
`FIG. 2 shows the parts of the phone 1 essential for the
`understanding of the invention. The CPU 12 is responsible
`for the execution of the terminal program, and the CPU 12
`controls the LCD display 2 via LCD drivers (not shown).
`The information and the instructions inputted by the keys 3
`are supplied to the CPU 12. Based on this input, the CPU 12
`controls various operations including the display operation
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,309,305 B1
`
`4
`and the communication with the cellular network via a
`transceiver provided by a baseband/RF unit 13 and an
`antenna 11.
`The CPU 12 is connected to a ROM 15 for storing the
`terminal operation program and to a RAM 14 used as a
`working memory area by the CPU 12. The CPU 12 uses the
`RAM 14 as a primary Storage used to hold programs and
`data for all applications available in the phone. The appli
`cations may be call handling including handling of an
`electronic phone book, SMS messages including handling of
`an in-tray and an out-tray, and handling of an electronic
`calendar. Other application may be calendar handling, Inter
`net access, access to an electronic mail System and moni
`toring and control taskS.
`According to one embodiment, a part of the RAM 14 acts
`as a clipboard for the copy and paste function for the phone
`according to the invention. The clipboard is reset every time
`the phone is Switched off, and the clipboard is only active
`when the user has copied Some data into it. It is very
`common at present to design the phone in a way So that the
`application cannot be Switched on and off Selectively. In this
`Situation, all applications will be Switched on when the
`phone is Switched on. Therefore, there is no need for
`copying data from an application to the clipboard. It will be
`Sufficient to create a link to the data Selected for copying in
`the active application. When pasting is requested, the copy
`ing is performed.
`However, by replacing the RAM 14 by other memory
`means maintaining the data while powered off, the contents
`of the clipboard may be maintained even though the phone
`is Switched off. Such memory means may be an EEPROM
`or a flash ROM.
`However, in the Communicator 9000 from the applicant,
`a phone and a palm top computer are integrated, and
`applications may be Switched on Selectively. In this case the
`copying of data to the clipboard will be relevant.
`According to a first example shown in FIG. 3, the user
`wants to copy a phone number from a received SMS
`message into a record contained in the electronic phone
`book database of the phone. The idle mode display 20 and
`the displays in general have a display part 21 indicating the
`present functionality of the Soft keys 8 and a display part 22
`indicating the present mode of the phone, e.g. the present
`menu level. The user enters a “Messages' menu 25 via the
`main menu 23 of the phone. The navigation through the
`menu is State of the art and is known from the concept used
`in the applicant's phone, Nokia 8110. The user may navigate
`through the menu with a cursor 24 by using the scroll key 9
`and Select the item pointed out by the cursor 24 by pressing
`the appropriate soft key 8. When the user selects “Read
`SMS via the “messages' menu 25, a submenu list 26 of
`incoming SMS messages will appear on the Screen or the
`display 2. The user may in advance have Selected to display
`unread messages Sorted descending by date and time.
`When the user moves the cursor 24 to a message, and
`presses the soft key 8 having the functionality “Copy' at the
`moment, he will only store a “link' to the selected data in the
`clipboard. He may also Select the message for reading and
`the message will appear on the display 27. Then he may
`Select the full message by pressing the copy Soft key. The
`data comprises the received message and preferably also the
`ID of the Sender, e.g. phone number and name (if recognized
`from the phone book). By pressing "quit', the user may now
`go to the idle mode.
`Via the menu Structure of the phone the user may enter a
`memory called phone book. This phone book may contain a
`
`Adobe - Exhibit 1107, page 7
`
`
`
`S
`number of records each including a name/label and a phone
`number and further optional data. In the phone book menu
`28 the user may select “new entry' to create a new record.
`In the display 29 he is asked to enter the phone number, and
`he may select “Paste” by pressing the soft key 8 having the
`paste functionality. He may escape the “new entry'Submenu
`by pressing the “clear” key 7, whereby the phone will return
`to the idle mode display 20. When the phone is prepared for
`handling Several phone numbers on the same perSon, the
`next number entry may be selected by pressing “next”. The
`functionality of the “next soft key changes to “OK” when
`a number has been entered.
`In general, the SMS message includes a text part in ASCII
`code, an identification (ID) of the sender and some kind of
`a time Stamp. The text part of the present message is: "Hi
`Christian, could you call me back on +4533292.000 or at
`home on +4599887766?”, and the sender ID is defined by
`the Sender defined to be his own E-mail address
`"jacob(GUnmp.com'. According to an embodiment of the
`invention, these parts of the message are Selected by the
`CPU 12 when the user requests copying.
`Upon the presence of a pasting request, the CPU 12 starts
`to analyze the contents of the message. “Hi”, “Christian',
`“could”, “you”, “call”, “me”, “back”, “on”, “or”, “at”,
`“home” and “on” are determined as being ordinary words,
`while “acob(onmp.com” is identified as an E-mail address
`due to the "O' Sandwiched between two continuous word
`having points as spaces. The words “+4599887766” and
`“+4533292000” are recognized as being phone numbers in
`the international + format due to the uninterrupted String of
`digits following the "+". In response to the paste command,
`the copied message will be displayed in the display 30 once
`more, but the cursor 24 highlights whole words and can only
`highlight words fitting into the context of the new applica
`tion Selected when pasting. In the present situation, the user
`may toggle between the two phone numbers by using the
`scroll key 9, until he selects one of the numbers or quits
`pasting by pressing one of the two Soft keys 8.
`If the user wants to store both numbers and the E-mail
`address in the phone book as private and office numbers and
`E-mail address, respectively, he is just to move the cursor to
`the locations Successively. At each location he may preSS
`“paste”, Scroll and Select. There is no need to copy more than
`once even though the copied dates have different destina
`tions. This is advantageous compared with normal copy and
`paste for text editing.
`According to a Second example shown in FIG. 4, the user
`wants to transfer data including time information from an
`SMS message to an electronic calendar contained in the
`phone. Like in the first example, the user has entered a
`“Read SMS' menu 26 and copied the full message text in the
`display 27 to the clipboard. In the present example the
`message text is "Hi John, please meet me and John Carlisle,
`Unicom, Jun. 21, 1997 at 10.00 at my office.” and the sender
`ID is here a name “John Turner, Managing Director, Fox
`Com’.
`According to an embodiment of the phone, the calendar is
`connected to a timer, thereby allowing the items of the day
`and the coming days to be displayed together with the day
`of the week and the time. An item is entered into the calendar
`by entering the date(s) in question, an explaining text and
`optionally beginning and end times.
`Via the menu structure of the phone the user may enter the
`calendar menu. Then he may select “new entry” in the
`calendar menu 31 to create a new item in the calendar. First,
`the calendar asks for a date in the input menu 32. This date
`
`15
`
`25
`
`35
`
`40
`
`45
`
`50
`
`55
`
`60
`
`65
`
`US 6,309,305 B1
`
`6
`is Jun. 21, 1997, and as will be explained with reference to
`FIG. 6, the analyzing algorithm may advantageously include
`an autoconvert functionality to convert this format into the
`format required by the calendar, e.g. 97.06.21. Even though
`“Jun. 21, 1997 will be displayed in the selection menu 33
`upon a pasting request, the Selection of the date will input
`"97.06.21” into the calendar. The user is asked for confir
`mation in the display window 34 upon the autoconversion.
`The autoconvension is language dependent, and therefore
`the autoconversion may advantageously be linked to the
`phone language selected by the user or to the SIM card. The
`date May 21, 1996 is normally expressed as 21.05.96 in
`German and as 96.05.21 in American English.
`When confirmed, the calendar will ask for start and end
`times in the input menu 35 and 36, and the user may paste
`once more. This time he may select “10.00" as the start time.
`If there is no need for inputting Start and end times, the user
`may just preSS the “next Soft key. The calendar now asks for
`Some explanation of the entry in an input display 37. By
`pasting and Selecting the words one by one the following
`text could be constructed “meet John Turner and John
`Carlisle Unicom at FoxCom” in the text entry display 38.
`The created text is of course editable by the editing menu of
`the phone. However according to the invention it is possible
`to copy a complex text Structure and reconstruct a Sentence
`during the pasting/Selecting. A similar possibility is not
`available in normal text editing copy/paste operation. If both
`date and time are present in the copied String, the phone may
`be able to paste both items in the same “shot' if date and
`time are recognized unambiguously.
`According to a third example shown in FIG. 5, the user
`wants to transfer a date included in the calendar into the
`phone book as the birthday of a person already appearing in
`the phone book. The user moves the cursor 24 via the
`calendar menu 39 to the desired date in the calendar list 40
`and selects “Copy”. When the user selects to copy an item
`having Several independent Subitems, the phone may advan
`tageously ask (display image 41) the user whether he wants
`to copy the main item (the date) alone or the main item and
`all Subitems. If he selects to copy the date alone (the main
`item), a link will be established on the clipboard to the date.
`The analyzing algorithm will recognize the date as a date.
`When the user then enters a Specific name into the phone
`book list 43 Supporting multiple phone numbers, addresses,
`and presses "Paste', the phone display 44 Suggests that the
`user pastes the only pastable item as a birthday, because this
`Subitem requires a Syntax corresponding to the word on the
`clipboard.
`In accordance with an embodiment of the invention the
`user is allowed also to copy more complex Structures into his
`clipholder, and afterwards offered an intelligent paste func
`tionality. The copy/paste functionality becomes much more
`powerful, especially because manual highlighting of items
`for copying is too heavy for a Small device like a hand
`portable phone, and because the manually highlighted items
`may not necessarily be in the proper format for pasting into
`the other application. The user interface handling is there
`fore much easier and faster.
`The algorithm for analyzing the copied data is illustrated
`by the flow diagrams shown in FIG. 6. Upon the detection
`of a paste request the algorithm starts to analyze the data in
`step 50. The data is read sign by sign in step 51 until it is
`detected in Step 52 that there are no more data to read. In Step
`53 it is decided whether the last-read sign is a Space or not.
`If the Sign is not a Space, the Sign is added in Step 54 as the
`last sign of a word constituted by Signs read Since the last
`
`Adobe - Exhibit 1107, page 8
`
`
`
`7
`Space, and a new sign is read in Step 51. If the Sign was
`recognized in Step 53 as being a Space or a sign acting as a
`Space, the sign in question is deleted in Step 54. In Step 55
`the Signs contained in the word constituted by Signs read
`Since the last Space are decided to constitute a full word and
`are stored in the RAM 15. Then the algorithm starts to create
`a new word by reading Signs in Step 51. This procedure
`continues until all Signs are read.
`Then the CPU 12 starts to classify the words in step 56.
`The classification is continued until it has been detected in
`step 57 that all the words stored in the RAM 15 during the
`analyzing have been classified. The words for classification
`are entered Successively in Step 58. Words including a String
`of continuous digits are classified as possible phone numbers
`in step 59. The same phone number may appear in different
`formats as will be seen from the table below.
`
`TABLE 1.
`
`--459988.776
`assosri
`3,876
`7766
`
`International + format
`Long international format
`National format
`Local extension number
`
`Some “words” may fit into the syntax of different types of
`words. Therefore, these words may be pastable as dates,
`numbers and phone numbers into an application. Other
`words are difficult to classify as 1610, which could be a date
`(16 October), a time (4.10 pm), but also a product name of
`a phone manufactured by the applicant.
`In Step 65 non-digits starting and ending the String are
`removed. However a "+" sign is maintained to indicate the
`very useful International plus format. If the phone is able to
`detect the Long International format, the national escape
`codes “00” may advantageously be replaced automatically
`by the "+". In step 60 a flag indicating that the word is
`recognized as a phone number is Set. Then the next word is
`analyzed.
`If a word is not recognized as a phone number, the word
`is compared with the possible formats of dates and times in
`Step 61. The same date may be expressed in different ways
`as will appear from table 2.
`
`TABLE 2
`
`21-04-97
`21 April 1997
`97.04.21
`21 April, 97
`21-Apr-97
`
`Combinations of the different ways may be expected.
`Formats 1 and 3 are quite easy to handle-it is just a
`question of finding a word consisting of Substrings divided
`by “.” or “-”. However, formats 2, 4 and 5 may be found by
`looking for the twelve three letter truncations for the month.
`In formats 2 and 4 the adjacent words have to be studied
`before the detection of a date is completed upon the detec
`tion of the letters “apr” for April (language dependent, but
`may be linked to the language Selection). This means that a
`flag Set for a word, e.g. "21", as being a possible phone
`number has to be corrected when it is realized that the word
`is part of a date. When an application, e.g. the calendar,
`requires a certain format, e.g. the format3, as input, the CPU
`may advantageously autoconvert the format, when appro
`priate.
`
`US 6,309,305 B1
`
`8
`By adding Some more complex Syntax rules to the date
`identification part of the algorithm, e.g. a date expressed as
`just day and month (e.g. 2104, 21.0421/4) may be recog
`nized as a possible date-probably the first Succeeding date
`in the same or the next year.
`When one or more words are recognized as a date, a flag
`is Set in Step 62. The autoconvert may be performed in Step
`65.
`In step 61 it is determined whether the word is a point of
`time e.g. 15.30 or 3.30 pm. In this case the syntax rules are
`quite Simple-two digits following a “...' following one or
`two digits. If the word is determined to be a point of time,
`the next word is controlled for being “am” or “pm”. Auto
`convert may be performed in step 65 for converting the
`format into the format Supported by the calendar.
`If the word is not a point of time, the algorithm detects in
`step 63 whether the word may be an E-mail address. The
`Syntax rules for an E-mail address are quite simple-the
`algorithm looks for the “G” sandwiched between two con
`tinuous Strings having points as Spaces. If the word is
`detected to be an E-mail address, a flag is Set for the hole
`string in step 64. If the word does not fit into the different
`Syntaxes, the word is regarded as being an ordinary word
`and no flag is Set.
`When it is detected in step 57 that all words have been
`tested, the full copied text is displayed in the display 2.
`However, when moving the cursor, it jumps between the S or
`aggregate words (dates) fulfilling the Syntax rules which
`apply to the Selected position in the Selected application.
`When the analyzing is completed the result is displayed in
`step 66. The result could correspond to display 33 in FIG. 4.
`Of course, the algorithm could just display the selectable
`words, but when more phone numbers appear in the text, the
`basic non-Selectable text could be a guide when Selecting the
`right one.
`In general, the copy functionality fulfils the requirement
`for the editing in a phone, but in Some situations a cut
`functionality could be useful. This command removes the
`original text when creating a copy on the clipboard.
`Other types of words could be tested in the algorithm
`shown in FIG. 6. These types of word could include Internet
`addresses, e.g. http://www.nokia.com/, and words useful in
`different applications, e.g. names and addresses.
`The described algorithm may be improved by adding an
`extra detection level, whereby the algorithm distinguishes
`between words which unambiguously fulfil the syntax rule;
`words which absolutely do not fit into the syntax; and words
`which may be fit into a given syntax, e.g. 15051997. This
`number can be interpreted as a valid Danish phone number
`or a valid date. Words that unambiguously fulfil the syntax
`rule may be directly Selectable for pasting, while words
`which probably fulfil the syntax rule may be selectable from
`a Second group of words accessible via the Soft keys. The
`Same may apply to the non-fitting words.
`The present invention includes any novel feature or
`combination of features disclosed herein either explicitly or
`any generalisation thereof irrespective of whether or not it
`relates to the claimed invention or mitigates any or all of the
`problems addressed.
`In view of the foregoing description it will be evident to
`a person skilled in the art that various modifications may be
`made within the Scope of the invention.
`What is claimed is:
`1. A method