Bedrock Computer Technologies, LLC v. Softlayer Technologies, Inc. et al

Filing 284

Response to CLAIM CONSTRUCTION BRIEF filed by AOL Inc, Inc., Google Inc., Match.Com LLC, MySpace Inc., Softlayer Technologies, Inc., Yahoo! Inc.. (Attachments: # 1 Affidavit, # 2 Exhibit 1, # 3 Exhibit 2, # 4 Exhibit 3, # 5 Exhibit 4, # 6 Exhibit 5-1, # 7 Exhibit 5-2, # 8 Exhibit 5-3, # 9 Exhibit 5-4, # 10 Exhibit 5-5, # 11 Exhibit 5-6, # 12 Exhibit 6)(Chaikovsky, Yar)

Download PDF
Bedrock Computer Technologies, LLC v. Softlayer Technologies, Inc. et al Doc. 284 Att. 10 EXHIBIT 5 PART 5 OF 6 ujb/ TTS6I Richard Nemes Shcct of6 FIG 15 13 FIG BTEX000035O BTEX000035I 08/775 864 Richard Nemcs Sheet of 30 31 32- 3C 33- BTEX0000352 -I Ci ___ _______ 08/775861 Rjchtd Neznes Sheet of FI4SD 5-3 5c cc BTEX0000354 II cK nrc../ _y_ BTEX0000355 08/775884 Richard Nemes Sheet of BTEX0000356 -_% 44 BTEX0000357 US/775864 Richard Nemea Sheet of FIG 90 YES BTEX0000358 el9fli BTEX0000359 08/775864 Richard Nemes Sheet of FIG YES NO 103 BTEX000036O 1/ BTEX000036I 7/ Express Mail No EE661456784US gi9- 08/775864 Art Unit 2771 Hosain Richard Examiner Applicant Alam Michael Nemes August 10 1998 PETITION FOR EXTENSION OF TIME to CT -TI Assistant Commissioner Patents and Trademarks Washington D.C Tn fl 2023 Sir It is respectfully requested for that the time for response of $55 one fee to thc July Office action dated to April 20 1998 be extended period for the month from 20 is 1998 and including August 20 1998 check for this extension enclosed Respectfully submitted eLIscJ Richard 2821 Michael Nemes Apartment Kings Highway 1M Brooklyn New York 11229 U.S.A Telephone 718 6771748 0U13/199 miun 00000103 001751M lFt215 55% BTEX0000362 1Jftq277 Richard Michael Nemes 2821 Kings Highway Apartment Brooklyn New York 11229 1M August 10 1998 Assistant Commissioner of Patents and Trademarks Washington D.C 20231 re Patent Application Np 08/775864 Art Unit 2771 Examiner FLT Alam Dear Sir Find in enclosed 6-page response patent to the Office action In dated April 20 1998 conjunction for with the above application check addition am of enclosing self- petition extension of time along with the in the sum $55 and addressed postcard listing enclosed items address and phone Please note my change of permanent number Richard Michael Nemes Apartment 2821 Kings Highway Brooklyn IM New York 11229 U.S.A Telephone 718 6771748 13 -n 11 Sincerely yours in Richard Michael Nemes BTEX0000363 IN TilL UNITED FATES PATENT AND TRADEMARK JFFICE //tccnskl Application Art Unit Number 08/775864 Express Mail No EE661456784U/3_/14t 2771 Flosain Alani Examiner ant Richard Michael Nemes RESPONSE tCommissioner Washington of Patents and Trademarks D.C 20231 Sir In response to the outstanding extension Office action dated April are 20 1998 enclosed please consider the following remarks petition for of time and payment herewith REMARKS Formal drawings will be submitted after allowance of the application Response to Part III DETAILED ACTION Items 37 Double Patenting The Office states in items 3S that the subject matter claimed in the instant application is fully disclosed in U.S Patent No item 5121495 issued to Nenies hereinafter 495 and claimed in Claim of 495 12 Specifically states that the term chain of records appearing in Claim of 495 col line is equivalent to linked list of pointers/addresses of records and that chaining is equivalent to being linked 495 nowhere teaches or claims linked lists or pointers and is strictly confined to the linear probing technique of hashing as explicitly stated in Claim of 495 which reads An to information storage and retrieval system using hashing techniques to provide rapid access the records of said system and utilizing linear probing technique .. col ii line 67 through col 12 line BTEX0000364 Application Number OS/775$f ..i Unit 2771 Examiner Hoaain Alani Applicant Richard Nemea The linear probing technique is described in pages 506549 of the classic text by Knuth entitled The Art of Computer Programming Volume Sorting and Searching Addison-Wesley Reading Massachusetts 1973 Cite No in the List of Prior Art Cited by Applicant submitted in conjunction with the instant application and is shown there to be applicable only to the open vein addressing method of collision resolution which is nonlinked-list technique In the same in the DETAILED DESCRIPTION section of the disclose in 495 hash table is described as logically contiguous circular list of consecutively numbered fixed-sized storage units called cells each capable of storing single item called record col line 3336 instant This description excludes linked list implementations which are claimed here Since the application claims linked lists not suggested by linear probing of the cited art the subject matter claimed is not dis closed in 495 term The chain of records appearing in 495 is used descriptively and not as term of art In 495 it consistently refers to sequence of consecutively occupied storage locations and makes no sense when interpreted to include linked list implementations col 495 line 6063 col line 1117 17 the The aforementioned text by Knuth at page 527 is cited by in this context col line discussion in that text being limited to linear probing under open addressing strictly nonlinked-list technique In the same vein in the DETAILED DESCRIPTION col lines section of the dis closure in 495 all uses of the term chain e.g hash 10 41 44 col line 39 follow and are consistent with the description of table only as logically contiguous circular list of consecutively numbered fixed-sized storage units called cells each capable of storing single item called record col line 3336. This definition of chain is inconsistent with and does not suggest the linked list technology claimed in the present application Thus 495 does not teach or suggest linked list technology claimed in the instant application BTEX0000365 Application Number 08/7738t Unit 2771 Examiner Hosain T- Alam Applicant Richatti Names Item states that as to claims and 495 does not recite the term linked List but instead recites chain of records it being obvious to person of ordinary skill in the art at the time the invention was made to use linked list of records because chain of records generates linked list In light of the preceding explanation that chain as used in 495 does not suggest linked list this rejection should be withdrawn Item states that as to claims and 495 does not recite the removal based on the deter mination of maximum number or expired records it being obvious to person of ordinary skill in the art at the time the invention was made to group number of records and thus to predeter mine the maximum number in the group to facilitate an efficient processing of records Since claims and are dependent on claims and respectively which have been shown in the previ ous paragraphs to be not suggested by the subject matter of 495 these claims are also patentable The Office states in items 67 that the subject matter of claims 5S is fully disclosed in U.S Patent No 5287499 issued to Nemes hereinafter 499 are and claimed in Claims and of 499 for Specifically item states that Claims and of 499 directed to an apparatus and method information storage and retrieval wherein the memory addresses are hashed by using chain of records having same hash address the chaining of records is external see claim col 17 line It then states that the external chaining of records is equivalent to linked list of pointers/ addresses of records as claimed and the chaining is equivalent to being linked Although it is true that in the instant application external chaining and chaining are each equivalent to being linked 499 does not teach or suggest on-the-fly deletion of at least some records based on automatic expiration of data which is claimed here Item states that as to claim and 499 does not recite the terms linked list insert BTEX0000366 Application Number 081175861 ..i Unit 2771 Examiner llosain Alam Applicant Richard Nemes retrieve or delete but instead recites external chaining and storing and that it would have been obvious to person of ordinary skill in the art at the time the invention was made to use linked list of records because chain of records chained by an external chaining generates linked list sic The499 least patent however does not teach means or methods for identifying and removing at some expired ones of the records from the linked list when is the linked list is accessed see claims and which is taught by the instant application and integral to claims and Thus the rejection should be withdrawn Item states that as to claims and 81 499 does not recite maximum to number of records but instead recites threshold and that It would have been obvious person of ordi nary skill in the art at the time the invention was made to group number or records for detennin ing the threshold and thus to predetermine the maximum number for the threshold to facilitate an efficient processing of records The maximum number of records in the and instant application and threshold in 499 serve different purposes are structured and detennined differently In the instant application the number is single quantity that serves as an upper limit on the num and ber of records removed from the linked list whenever the linked list is accessed see claims whereas in 499 the threshold is pair of coupled quantities an upper threshold and lower threshold that serve as two-way signals indicating when the system should automatically reorga nize group of records that reside in cells of the hash table into linked list and vice versa col lines 4z1.54 and 6165 APPENDIX be learned from the Since neither the maximum number of records nor the upper threshold can other by person of ordinary skill in the art from either 499 or the instant application the rejection should be removed Furthermore the dependent Item reads recite the .. As to claims and The 499 patent to does not recite and should and maximiun read number of records to instead since tlutshold sic This appears be in error As claims and 8.. term maximum number apiars only in claims BTEX0000367 Application Number 08/775564 ..t Unit 2771 Examiner Flosain Alam Applicant Richaid Nemes claims are patentable because the independent claims on which they depend are patentable Item states that there is no apparent reason why claims corresponding to those of the instant application were not presented during prosecution of 499 In light of what has been shown above that the teachings of the instant application are not included in those of 499 the rejection should therefore be withdrawn Response to Part Ill DETAILED ACTION Items 811 Claim Rejections 35 USC 103 Jn items 811 the Office rejects claims 18 under 35 U.S.C 103 obviousness as being unpatentable over U.S Patent No to 5287499 issued to Nemes hereinafter 499 in view of U.S Patent No that 5202981 issued Shackielford hereinafter Shackelford that Specifically item 10 states with respect to claims 18 499 teaches everything is claimed col line 6064 of col line 4951 as with the exception that it does not explicitly indicate the detennination threshold being the maximum line 61 number of records and that Shackeiford teaches maximum number of pointers col through col line Claims 18 list of the instant application address on-the-fly deletion of at least some records from linked based on automatic expiration of data whereas 499 teaches automatic reorgani zation of records from linked list structure to sequential storage structure and vice versa to facili tate system efficiency Nowhere does 499 teach deletion from the system nor does it teach regarding automatically expiring data The instant application teaches and claims claims and means and method for dynamically determining the maximum number of records to be removed on-the-fly from linked list when that linked list is accessed Shackelford on the other hand teaches an unrelated quan 5--- BTEX0000368 Application Number 05/775514 .a Unit 2771 Examiner Hosain Alant Applicant Richard Ncmes tity the existence of stored quantity accompanying the stream class data structure that identifies the maximum number of pointers that are permitted to exist col line 61 through col line Shackelford does not address an application with automatically expiring data nor does he address how many claims items to delete These references separately or in combination do not suggest the of the present application The rejection therefore should be withdrawn Item 11 states that claims 18 and are rejected under 35 U.S.C 103 as being unpatentable over 499 directed to the linked lists the step of removing as set forth in the Double Patenting dis cussion which is item in the Office action Neither 499 nor Shackelford suggest what is recited in claims and for example means and methods for identifying and removing at least some expired ones of the records from the linked list when the linked list is accessed In addition for the reasons explained in detail in the previous discussion rejection of claims and which are directed to dynamically determining maximum number has already been discussed above Thus this rejection should be withdrawn In view of the foregoing remarks this application should be allowed to issue as patent Respectfully submitted Richard Michael Nemes August 10 1998 BTEX0000369 Application No Applicants 08/775.864 Nemes Group Art Unit Notice of Aiowabihty Exam nor Hosain Alam 2771 IIIIIIllIM If All claims being allowable PROSECUTION Notice of ON THE MERITS and IS OR REMAINS Due or CLOSED other in this application not included will herewith mailed in or previously due course mailed Allowance Issue Fee appropriate communication be This communication claims filed is responsive 1-8 to the Response fl/u August 11 1.998 IX The allowed The drawings is/are _____________ are acceptable under of Lii on _____________________ Acknowledgement All is made None of claim of for foreign priority 35 U.S.C 11 9a-d have been Some received received received in the CERTIFIED copies the priority documents Lii Li Application this national No Series Code/Serial from Number ____________________ Bureau in stage application the International PCI Rue 17.2a Certified iii copies not received is ______________________________________________________________ claim for Acknowledgement made of domestic priority under 35 U.S.C 119e noted SHORTENED MONTHS ABANDONMENT THREE Note that PERIOD FOR RESPONSE STATUTORY FROM THE DATE MAILED of this of this to comply Office with the requirements to below 37 is set in to EXPIRE action be Failure timely comply the provisions will result of application Extensions of time may obtained under CFR 1.136a discloses the attached the oath or EXAMINERS declaration is AMENDMENT deficient or NOTICE SUBSTITUTE OATH OR DECLARATION OF INFORMAL APPLICATION P10-i 52 which IS REQUIRED IX Applicant MUST submit NEW FORMAL filed DRAWINGS were declared Notice of because the IX including to originally drawings by the by applicant Patent to be informal changes required Draftspersons Drawing Review PTO-948 attached hereto or Paper No changes by required by the proposed drawing correction filed including approved ii including on ______________ which has been the examiner required by the attached changes indicia Examiners Amendment/Comment Identifying such as the application should number as see 37 CFR 1.84c paper with should be written on the reverse to side of the drawings The drawings be tiled separate transmittal lettter addressed the Official Draftsperson Li Note the attached Examiners comment regarding should If REQUIREMENT right FOR THE DEPOSIT corner OF BIOLOGICAL NUMBER the MATERIAL Any response to this letter include has in the upper hand of the APPLICATION SERIES CODE/SERIAL and NUMBER the NOTICE applicant received should Notice also be Allowance and Issue Fee Due ISSUE BATCH NUMBER DATE of OF ALLOWANCE included Attachments Notice Li of References Disclosure Cited P10-892 Information Notice of Statements Patent PTO-1449 Review Paper Nos _________ Draftspersons Informal Patent Drawing PTO-948 Lii Notice of Application P10-1 52 Li Li Interview Summary PTO-41 Examiners Amendment/Comment Examiners Comment Examiners Statement Regarding of Li IX Requirement for for Deposit of Biological Material Reasons Allowance Patent and Trademk Oftce Plo37 Rev 9-95 Notice of Allowability Part of Paper No BTEX000037O Serial Number 08/775864 2771 Page Art Unit The The fly following art is an Examiners Statement not of Reasons for Allowance for prior does in teach or lists fairly suggest method and apparatus expiration on-the- deletion other of records the linked based on automatic does of not of data as claimed the In words step prior art of record teach or for fairly suggest means or an the equivalent in the method claim expired the means .accessing records in linked list at same time removing ..some of the Although ones art of the the linked list as recited teaches in lines 7-8 of claim prior of record Nemes 495 reference in the the use of chains of records and the deletion of records the Applicant arguments as the to Response of dated August 11 1998 in the Paper No provided is why linked the chain records as taught 495 reference the not the same as list as claimed of the The Applicant also distinguishes claimed invention over the teachings 499 references see page Paper no Any comments than the considered Issue necessary by applicant must be submitted no delays should later payment the of of the Fee and to avoid processing should preferably accompany on Statement Issue Fee for Such submissions Allowance be clearly labeled Comments Reasons Any examiner inquiry concerning this communication or earlier communications from the should be directed to Hosain Alam whose telephone number is 703 308-6662 HA September 28 1998 BTEX000037I copy See of this rflference of Patent no being furnished Procedure with this Oftios action Manual Examining Section 7O7.O5a- Notice of References Cited Pert of Paper No BTEX0000372 111111111111111111111111111 IIJ liii 11111 11111 11111 III 1111 ii iii 11111 liii US00520298 1A United States Patent Shackelford Patent Number of Patent 5202981 Apr 13 1993 Date PROCESS AND APPARATUS FOR MANIPULATING BOUNDLESS DATA STREAM IN AN OBJECf ORIENTED PROGRAMMTNG SYSTEM Inventor Assignee Floyd Shackelford Business In Operating Systems Chapter An Advanced 3.1 39448 Course ed Hager al 1977 Buford Machines Ia Attorney Agent ICulik F4imay ExaminerPaul ar FinnBell Seltzer Park Gibson International Corporation Armonk N.Y process data streams ABSTRACT and in apparatus for oriented Appl Filed Lnt No 425813 manipulating boundless system as an object class list programming which references in the the data Oet.231989 GO6F 364/282.1 7t 15/40 7/i 006F 15/403 395/425 364/283.3 364/246 provides attributes stream an ordered the data of objects of object stored includes to 05 CI selected U.S 39S/60O 364/283.1 364/245 ones of objects storage de 364/DIG Field of vice Methods to first for manipulating to last object include move previ move move as it to next and move to Search 395/600 425 700 62 364/419 ous data which provide bi4irectional user data it stream The in appears to the even though does resides entirely References Cited memory implements though sliding system not in The an stream class window which U.S 4791550 4821220 4853843 PATENT 4/1989 8/1989 DOCUMENTS ci al object oriented programming 395/650 364/737 395/600 permits manipulation size finite of 12/1988 Stevenson Duisbcrg Ecklund any number of lists of virtually physical unlimited when stor remaining within the limitations of age OTHER PUBLICATIONS Gray Notes on Database Operating Systems 50 Calms 14 Drawing Sheets SQL CURSOR STREAM ROW ROW STREAM 01 02 ROW ROW 01 02 rROW ROW 03 04 ROW ROW 03 04 ROW ROW 03 04 _______ ROW 051 ROW ROW 05 06 ROW ROW 05 06 ROWO6J _____ ROW ROWO7 ROWOS ROW ROW 07 08 22 j_ROW BTEX0000373 U.S Patent Apr 13 1993 Sheet of 14 5202981 OBJECT FIG PLOYEE FIG BTEX0000374 U.S Patent Apr 13 1993 Sheet of 14 5202981 PERSON HIRE_DT Uci ----I KIND or PROM OTE1 C- PRINT ISA SOUTTER 1w flPP BLUE AGE HIREJDT QUOTAJ FtC BTEX0000375 U.S Patent Apr 13 1993 Sheet of 14 5202981 14 NONVOLATILE DATA STORAGE DEVICE 15 DISPLAY TERMINAL DASD 12 ____________ VOLATILE OBJECT ORIENTED DATA STORAGE PROGRAM PROCESSOR DEVICE ___________ LDATA RAM 11f HG BTEX0000376 U.S Patent Apr 13 1993 Sheet of 14 5202981 12 FIG BTEX0000377 U.S Patent Apr 13 1993 Sheet of 14 5202981 SQL CURSOR 01 ROW ROW STREAM 02 ROW ROW 11 03 04 FIG ROW ROW 05 06 ROW ROW 07 08 1ROW STREAM ROW ROW 01 02 23 ROW ROW 03 04 FIG ROW ROW 05 06 ROW ROW 07 08 ROW BTEX0000378 U.S Patent Apr 13 1993 Sheet of 14 5202981 MAX_LIST_SIZE FIG MAX_LIST_SIZE NUMBER_TO_READ _____ _____ II FIG MAX_LIST_SIZE NUMBER_TO_READ 02 03 _____ _____ 041 Ioi 06 07 081109 10 11 12 FIG 10 MAXLLIST_SIZE NUMBER_TOJEAD 02 03 101 oi _____ _____ 06 07 081 10 11 12 FIG 11 CURRENT VALUE BTEX0000379 U.S Patent Apr 13 1993 Sheet of 14 5202981 HG 12 12 HG 13 12 101 02 03 041 FIG 14 12 di 02 03 04j CURRENT VALUE FIG 15 BTEX000038O U.S Patent Apr 13 1993 Sheet of 14 5202981 12 FIG 16 12 FIG 17 roi 12 FIG 1. oi 02 03 04j 12 FIG 19 Joi 11 02 03piJ105 12 20 11 02 03 06 07 osj BTEX000038I U.S Patent Apr 13 1993 Sheet of 14 5202981 12 101 020354J 105 06 07 08J 09 FIG 21 12 03 041 05 06 07 08 Jo 10 11 12 FIG 22 12 11 02 03 041 05 06 07 081109 10 11 ifl FIG 23 12 11 101 11 10 11 02 03 04105 06 07 081109 121113 FIG 24 12 FIG 25 11 06 07 081 31 10 11 12j13 14 15 16j BTEX0000382 U.S Patent Apr 13 1993 Sheet 10 of 14 5202981 12 33 06 07 13 10 11 oS 09 12 1113 14 15 16 FIG 26 12 06 07 osj 09 10 11 12 113 14 15 16 17 FIG 27 12 11 0811091011 31 1211131415 16 33 1819 FIG 28 12 13 081109 10 11 13 12 1113 11 14 15 16 1L17 18 19 FIG 29 CURRENT VALUE BTEX0000383 U.S Patent Apr 13 1993 Sheet 11 of 14 5202981 12 II 10506 07 081 10 11 12 14 15 1Qj FIG 30 CURRENT VALUE 12 II 06 07 osl 109 10 11 12 14 15 16 FIG 31 CURRENT VALUE 12 06 07 081 10 11 12 1113 14 15 16 1117 FIG 32 CURRENT VALUE BTEX0000384 U.S Patent Apr 13 1993 Sheet 12 of 14 5202981 12 -- ojj1o111z1ft3141516ft71819 FIG 33 CURRENT VALUE 12 08109 10 11 14 15 j17 18 19 FIG 34 CURRENT VALUE BTEX0000385 US Patent Apr 13 1993 Sheet 13 of 14 5202981 12 06 07iijfO9 10 11 12 ftf4 15 FIG 35 CURRENT VALUE 12 FIG 36 12 1101 FIG 37 12 FIG 38 BTEX0000386 U.S Patent Apr 13 1993 Sheet 14 of 14 5202981 12 .1 @102 03 041105 06 07 08ff 10 11 12 FIG 39 12 11 joi 11 06 02 03 041105 07 0J09 10 11 FIG 40 CtJRRENT VALUE BTEX0000387 5202981 programs need not be written to handle new types of PROCESS AND APPARATUS FOR MANIPULATING BOUNDLESS DATA STREAM IN AN OBJECT ORIENTED PROGRAMMING data or functions illustrates HG rather than the inheritance are property as For ease rectangles of illustration the objects illustrated SYflM FIELD OF THE INVENTION This ming invention relates to object oriented to as circles the with the object below the rectangle methods object frame the object name at the top of name and the to below classes frame Referring for FIG is three are illustrated program method and to in salesperson em kind other systems for and more particularly boundless ployee and person which is where is salesperson apparatus manipulating data stream or employee kind subclass an object oriented words ployee ployee class programming salesperson is is or person of employee is In and system the the superclass subclass of salesperson Similarly the em em three BACKGROUND Oriented OF THE INVENTION 15 of person and person Each class super sales- of Object Programming systems and processes of much investigation and interest have been the subject in state employee Soutter shown and and is includes instancet Tipp Nader instance and Blue are of the art data processing is environments program and persons Object Abraham .1 Yates Moore Reagan to its are are em per by Oriented Programming ing technique computer packag easily ployees an is 20 McEnro words an which provides In contrast reusable ex sons In other related class relationsubclass pandable programs with known are functional Each superclass herits inhezits the for hire as frame and methods of its programming to techniques which not easily adaptable types new new functional oriented requirements and new reusable Thus and as well includes of data example date print objects salesperson frame in object as programs are and ever age also from the employee and all expandable superclass increasing oriented 25 and requirements arise With promote can that methods Sales pay access for the complexity of computer programming vestigation In has based person unique quota instance so attribute systems object attention commission method Each its meth received increased and in ods and frames of Blue can superclass example be promoted oriented to an object focus is oriented programming rather systems than are is system functions the pri In an object system perform one high of its level routine mary oriented on data Object requests an the object object receiving methods object by what by programming of objects composed data oft large and data as 30 number set An sending to message object that telling to the object structure access that do The responds and the message the of operations or functions data structure that can structure The choosing the method this implements may be slots in message control results represented frame contains name to the 35 executing calling method then returning along with the The frame an has many each slot of which attribute primitive of the data i.e is the The high level routine attri of the method Object ployed pable as oriented database bute may be Object instance an integer pointer or string to the or an programming management systems systems may be which are em ca are datais Reference or which objects operation instances defined access the below Each data structure function that can is called 40 method of operating database upon large and adaptable In an object expendable base management of the the and which oriented the database no system the in date in Illustrates schematic is representation within its of an organized instances Similarly set 45 and encapsulated objects terms of objects with the the object in which frame encapsulated meth 1mmOne in being manager data in the database ods no.2 the data her of illustrates an example of an object in which employee this database with structure relates to data and of objects performed database may be organized as management operations from one the object methods surround obtains will data structure being to by sending target object using object messages method for example Each defined object number 1st data the age of an employee be manifested the another on its The performs its requested usually instance action attributes methodi osien database of instances structure for Each contains particu As 50 described syste it is above difficnlt rnam particular example of the object pgement ypicall to For example Joyce Smith Object primary able an object is for iadividual tployee named object However or large database lected the on large databases tfiuIiiHilili manipulate operate an instance of the employee systems These subset of the in database which update results from oriented programming which be developed encapsulation provide two and reus query elements order to view Front or delete se characteristics to allow flexible therefrom datab data stem perspective programs characteristics obect oriented rests is are referred to as and inheritance frame data wall All may be sulated seen from its na by As 53 the has the boundless systems aThocated well stream which or tnto too lar torn hi the set is encap to memory portion systems by methods functions piece of code access been frame placed is around each the of data memory As is data 60 1i to an indtvidual to those user 1km in the volatile having art handled is is surrounding methods because its Data processor often typically to as includes internal access independence data structure thereby provided accessed only the an objects the ory referred random which is memory to the RAM system mem by methods Only data associated methods data know integrity internal structure or simply as for data manipulation is memory available For mulduser systems to memory physical This ensures typically divided among the users Due each user is The to inheritance property of object oriented pro 65 memory size to limitations limited to maximum In granuning systems allows by creating previously written be broadened new objects superclasses are described so that programs and sub by of data stream which can be manipulateti order the allow manipulation of data size streams which must which be exceed classes of objects New objects how new ma.ximum mechanism more memory provided the or appear- they differ from preexisting entirely must be provided creates BTEX0000388 5202981 ance of manipulating the physical boundless limitations data stream without the amount class of memory In available effect to the the user of of the the exceeding of the data processing stream instance create attributes database being to skill envrOnlnent Attempts have been stream class window size into the for the deter- made to in prior art functionally to user with the mined It maŠnum of the window available programmed the database management For systems data the provide by the amount be understood pointer in of memory by those stream the user art di- appearance of access boundless stream by Structured will the to having in the point providing Query cursor example in that the attributes data may to Language SQL database management as system product cursor data to 10 reedy base data i.e directly identify the pointers objects point in the data by IBM number 5470-XYR marketed is file Corporation program Alternatively object-s in may identify as result point in the to the cursor forward pointers is provided The data large data stream In fact produced Each which These provides pointers allow as in tot larger the of to query data to database in thapointers may pointer point to stream forward in be elements class an SQL may database cursor also manipulated data the forward of direction cursor one very large database stream data 15 attribute in the indirectly stream is Operation in an SQL elements which by pointing one stream ele in system base cation described publication entitled Release disclosure IBM IBM Data publi is element includes therein or more data each pointer Version SQL Reference the ments from the the database attribute contains Alternatively number 5C26-4380-0 an of which stream class in may point to to stream element incorporated herein Unfortunately data by reference which boundless turn pointer In one or more data direct SQL cursor only allows elements 20 indirect from the pointing to database other words or stream to be accessed manipulation In other or scrolled often in the forward may be employed the direction scrolling is Data as requires backward scrolling According class is invention user an instance desires to of the stream manipulate space well words user bidirectional created data when stream of pointers only required Moreover one be employed by one large multiuser in database particular at SQL one systems the cursor may re is boundless for 25 The instance the will contain time Unfortu often cursor database for number is maximum number of nately quire management Finally which determined by the of the amount of available man present capability SQL implemented functionally process programmed and apparatus ory The invention data attributes include stream class of of the management rectional system bidi data also pointers an identification the current current one in multiuser in manipulation of oriented database available boundless management of 30 the with uaer pointer changing stream tem an object sys has heretofore not been response to stream class request Thus current set each value instance of the will include in the identification SUMMARY It is OF THE INVENTION of the invention manipulating to of one of the pointers class instance of pointers inthe stream therefore an object for provide data 35 The cludes stream methods to class of the present invention also in- process and apparatus boundless associated therewith In particular are the move It is another object of the for invention process and apparatus in manipulating provide boundless data system to to included pointers next and move to previous The move to next method stream class instance methods changes to in the attributes include current stream It is an object another oriented object programming of the invention the data 40 element and immediately to include following the still provide data element of the maining elements neighboring data elements data process boundless and apparatus for in bidirectionally object oriented scroffing immediately pointers are following element to in the re data the data stream an program- so that in the pointers pointers sequential included stream are Instance When be It is yet another process object of the present for invention to single maximum stream leted number of instance the already present in the provide user to and class before at least apparatus scroll allowing instances oriented one poin must data to de bidirectionally data multiple in of the immediately Similarly the pointers the data following the element same boundless stream an object pro graninsing system and in other objects are may be inserted method changes attributes to move previous in the stream class Stance Immediately pre to include These invention include element and provided database by the present ceding the current data of the element neigh data ele to an object oriented management having an data object boring elements system base ented including data storage stored device and in data ori immediately preceding so that pointers ment quential in the data of data objects database to the thereon remaining pointers elements the are se in are included in the stream manager the data operating processor to the stance connected invention cludes less the When maximum before number of storage oriented device pointers at least According manager time object class database stream is is of objects by Each in bound of already present pointer In the stream class the instauce one must be deleted element immediately pieced data stream stream class ing data may be sliding inserted The stream Stance into the large data manipulated created of the for user an instance thereby provides stream with the sliding window window including desired The stream and be class present invention includes 60 data element are possible and as many consistent attributes methods allowing bidirectionally boundless by one data user surrounding data elements as with the users memory alloca stream to manipulated the tion without exceeding environment elude data physical the limitations of the uts in- The eludes 65 In these stream methods class to of the to present first in invention also to in- In particular stream class attributes which identify move the to and the the move stream first last number of pointers sequential methods are pointers Stance and last objects selected the from the database number and an attribute of pointers is attributes changed include which mitted identifies maximum The maximum number of pointers per limited by stream ing elements respectively and following up to the or remain allowed elements respectively maximum BTEX0000389 5202981 names of pointers defining be read attribute merits to The stream class may also include an the maximum number of data emeach thne the database is need the not object know what the it actual data looks like or how manipulates class the physically In An the object data relate objects and defines action the types and meanings that of the accessed preferred pointers hly an to thereby provide input/output the buffering data requests individual messages objects Classes embodiment the stream multiple class maximum attribute number is of will are to honor The containing generally in instance prefera- called instances of the For class integer of the maximum the number of data time real-world things elements elements which of can be read in by the system at one be part 10 class The data Parts may example slots of part might be type The number function cally accessed elements window which is thereby physi- number number status and part The instances of of the number at of elements time may be this class part represent status individual parts each with its own pro- one BRIEF DESCRIPTION FIG object illustrates OF THE DRAWINGS representation Lthe Object 15 classes classes Subclasses of the and type information requested actions The are called schematic of an can be defined inherit parent all to the be subclasses data of other characteristics FIG example of illustrates schematic representation of an and tional methods data class They can add addi an object the inheritance and methods and they can override rede class the is FIG FiG object ent illustrates illustrates schematic property of objects block of an diagram to the pres20 of the parent fine any data elements or methods While most messages are sent to object instances message sent to that requests class that oriented computer system according block to the new class instance will be created invention an to object The will cause new in identifier FIG object tion illustrates schematic according diagram present of an inven- stance be created that object and will return an object oriented program by which be known request object target to FIG of the illustrates representation of the stream class 25 The sender of an action know the exact class of the the message which it need is not sending defines class present invention representation as it message to As long handle such the class as the the object or either parent FIG of the illustrates of the to stream class user method that defines message then has present invention appears method data the message instance will be the FIG size illustrates representation of the maximum 30 in handled method be using in its in the parent but object class and it of stream class illustrates of the present invention stream or its In fact need not FIG class input/output buffering an immediate of parent may be parents the parent object object no FIG of the Jo present illustrates invention stream elements in etc The sender of the method stream class ID 35 tance the receiving is object called need only have This property of of the present inventionS current value pointer oriented systems is inheritance present The inheri 11 illustrates ina stream property used to in the invention block 10 is class of the 12 present invention 15 illustrate Referring now stream class FIG computer data schematic system processor diagram FIGS present Inst through of the of of an object oriented includes illustrated invention at various stages during operation class The system 10 be mainframe 40 computer mainframe 11 which or may example 16 FIG present of the present invention 29 illustrate stream through at various stages computer databases is minicomputer having personal of the For large computer those multiple users is invention during operation typically skill employed storage As well second example of the 34 present illustrate invention stream class known of the of 45 class sor 10 to having in the art the data proces device for FIGS present third 30 through includes volatile access for data invention at various present stages during operation stream cafly random store in memory active is RAM and 13 typi results providing example of the invention of the of working Data data IntermedIate FIGS present fourth 35 through of the 40 illustrate RAM 13 erased invention at various stages during opcration example present invention processor ii is removed System 10 also includes or when power to the data new user session is begun data storage Device nouvolatile storage storage de 14 disk nnaCRWflOn nt ice .csanw now reference will to 14 for permanent access of objects device disk EMBOwsvann The fully present invention 50 may be file tape direct file DASD-a device an erasable optical data or other well 14 will data be the described more known also device Nonvolatile to herein as storage hereinafter in with drawings vention is which preferred accompanying embodiment of the in- be referred device ciatabaae Volatile to as storage 55 13 will also be referred 15 includIng memory ray tube also shown in This invention may however should be display terminal other cathode is embodied construed rather sure many different to the is forms and not be herein CR1 or An eluding display and keyboard program shown also as limited embodiment provided complete set forth object oriented operating 12 in this embodiment so that this disclo- in data will be thorough and and will fully conskilled in the program 60 12 processor 11 Object may be programmed as or oriented in object operating oriented variations vey the scope Like numbers of the invention refer to like to those art languages thereof auchaa or such in Smailtalk programming or elements throughout conventional or languages OBJECT ORIENTED In COMPUTER computer action SYSTEM work The of the is FORTRAN skilled in BOL The nof en ob programming an object by oriented system to- those 65 the art of object oriented complished object will to sending request messages data to an systems and will only be described to generally below which contains encapsulates action object Referring object now FIG the perform the requested predefined on the data according requester action oriented detailed program description 12 main components of an FIG will be described and operation its methods The more of the design 51 BTEX000039O 5202981 of an object oriented program is provided inObject various well as ways the at including altering read the size of the stream as from the Oriented Software published Construction Hall herein in by is Prentice by Bertrand Meyer of the disclosure 1988 12 amount of data into the memory data against cursor parently one time Furthermore manages multiple the data stream trans the which incorporated to Referring includes three no by reference oriented streams data same the object program cursor amount nipulate the 10 ing In Thus boundless application stream reduces necessary superior to Object Table between ment primary components Table 52 and Management Messenger Loaded 51 an Classes of computer code ma- 53 The Messenger calling cursor 51 controls communication Object Table of while providing interface and called and Loaded 52 messages Classes list Table 52 Manage 53 Object tO an to object oriented programming the system data accordstream Management active contains classes object list Table contains 1nt the present long invention linked list boundless instances The Loaded to all Classes Table 53 is an infinitely of object stream in references The of pointers methods of active object physical structure as of the data in represented illustrated is FIG amount inner memory may be The large outer of memory stream uti boxes 22 Operation of the Object Oriented Program illustrated in 12 will is stream lized box 21 the maximum now in be described for the example FIG by the stream The smaller show The as which message sends to Method Method to block block sends 54 ofan object 55 of an object Method by calling by Method Messenger ntnrofrowsrejfmmthecursor23atany one time The arrows access to the the in the direction in which one message Method may data user stream however cursor logically Messengerslobtainsapointertothedatafranse5of the instance object specified by searching object If appears bi-directional the This is Object the Management instance Table 52 for the instance object illustrated tion in zs in FIG where arrows data show the direc specified cannot the to be which found object its Object to the one may access because stream in the this The rows appear the data will Management table the Table the 52 adds instance In the instance groups of two the example at and calls database Table object materialize table to the data from be read into is two elements be designated time by the This in Once instance the pointer Object Man- number arbitrary and can user agement instance 52 returns materialized order to optimize I/O In an object data oriented programming system by the 31 then obtains the address of Method Messenger Classes Table 53 If the instances class from the Loaded is boundless 30 object stream namely may the be implemented class two classes class data is Stream and is the Stream the not loaded time to the Loaded Classes its Table 53 will load it at Element actual The Stream stored Element the class where this materialize for the address 51 data The Loaded method Classes about individual It data objects Table 33 searches the specified Method 51 it for thing which the and returns of the method to Messenger then calls stream was as developed could be some The Messenger system data by Method the data area Method passing 35 as simple an object appear ID in to ajoin of any number only while the and the parameters the from the call made of objects class These memory are dictate including pointer frame control to 56 to using the the pointer returns control Messenger Method Method 51 Which accesses Stream ated needs them They discarded and recre then returns as memory requirements The Stream class is composed to of linked list of object it Method 40 references those Stream Elements for Additionally has all BOUNDLESS Inherent within is DATA oriented to to STREAM database methods necessary converting database list cursor access list or any other similar unidirectional mediaallows object necessity manage very limitations Sm both eutly user into boundless and all linked This linked and ment large systems amounts the easily the manipulate forward handles just backward the movement transpar of data and its Due physical cursor interfacing Essentially of the limited limits computer to the finite operating system each user in is moves directly amount of data In of storage which to up and down Stream the Stream and the the accesses This in the turn at the data The handles well all all all cursor amount can be memory volume any one accessible moment data order increase of opens closes and management the positioning as for as memory purposes either more memory mechanism of access must be allocated is chores Thus practical to the application the or needed which large Stream is all appears to the the user data within user the as smart it to create linked list provides volume appearance while still to of data remaining within very the physical present That cally Stream appears autoniati The need class only reference allows user limitations of the users environment and apparatus The of the user lists in 55 The Stream of to the lists any number can vention boundless ability to process data manipulating with the based upon the same cursor The user elements move streams any provides number the fisat last neat or previous the In addition manipulate size in of of virtually user can to specify maximum at number of Stream any one time unlimited tion the data finite amount of storage This inven to Elements 60 maintain in memory He I/O expands art on the cursor only known those skilled access the data point in to alsocanspecifythenumberofelementstobeteadwith each buffer physical size access which which permits is uni-directional in at of the user database can so i.e designate the list and non-recursive single user that can in only be used once the Finally the single refresh that the as at any the by any single the time e.g SQL cursor The boundless data steam expands ties time with current 65 instruction value list contains in the upon and capabili updated of the data stored data- of cursor by providing more flexible navigation optimiza to in se i.e tion bidirectional in the the movement Memory I/O Some of class will the attributes and class methods of the of the stream boundless data stream can be customized application and stream element present invention meet requirements of particular now be described in detail BTEX000039I 5202981 10 STREAM CLASSATtRIBUTES Max_List_Size CurrenL_Value_Yointer sometimes referred Current_Value_Pointer attribute in is to as current the OREF list Ma_Li r2Lrred specify to the _ft as to the Current Stream Element the linked nce_flbu attribute permits sometimes the user to Row_Count Row_Count database refers the to the maximum count of the rows in the 1iThX a equal to maximum t number of elements to keep in the ins or in result of the selection criteria any one time Through use the birillThuftementhofa stream are in reduced the list is STREAM CLASSMETHODS The PofkWiEiTnumber Mat_LisL.Size to the of elements and an additional of the list element is to is Current_Value to the current instance method in the returns linked the list be added done for end then Delete_First default OREF 15 Stream Element Move_to_First by the Move_to_Next Max_List_Size is is method The value LONG_MAX to less to than this Where default Maxit _List_Size desirable to reduced is The user Move_to_First first instance in method logical positions list the set the new value multiple It is of the Num to at the element the linked ber._to_Read an integer instance attribute than preferable as 10 use 100 Move_to_Last The user multiple greater such or Move_to_Last last instance in the method logical times Number_to_Read Number_to_Read positions list the at the element linked Move_to_Next referred is Number_to_Read as attribute sometimes attribute to 25 The user Move_to_Next next instance in method logical positions list the Number_to_Read to number the number time i.e be called at at the element the linked of rows the small be read box 22 from the cursor at any one in FIG I/O Move_to_Prey The user This may set also Buffer_Size given By reading number of rows is any Move_.to_Prev instance In method the logical positions linked the list time physical erfonnance optimized at the previous element Nb_Elements The The total three Restart instance Restart method closes It the Nb_Elements of elements physical all data- instance in the attribute logical contains list It the ham 35 linked access link i.e the from cursor and the In deletes stream number states linked elements list memory it clean out the physical instance it Finally resets state stream attri the butes to their original teto stream the to refresh itself other words to forces it without having delete and NbElements just is set to zero when database stream has sc40 create new stream instance been created but the has not been Reopen ceased The reopen method Unknown_Nb.Elem This is 999999999 state since the pointer to the beginning closed cursor reopens of the cursor and sets known have as the unknown the list although the actual elements end the ban cursor Other implement methods the and attributes which will are utilized to read from database been above methods be described in the of the logical linked has not reached it examples which follow end of the bas not been reached STREAM ELEMENT Known This state logical linked the is CLASSAflRIBUTES OREF Object_id in the the actual number of elements comes has been in to existence The Object_id object instance attribute is an to any list This state only only when end it of the cursor assigned to reached and then ean be Nb_Elements 55 STREAM ELEMENT CLASSMETHODS Element object An alternative embodiment actually adds an additional count of the select This method creates new Stream Initialize statement which returns Will the the num This method stores 60 the values in the ber of elements and assign that which value at meet dine selection criteria that Stream Element objects instance attributes CurrentCursor The Current_Cursor Current indicate the instance attribute is is is used to The DETAILED DESCRIPTION OF STREAM AND STREAM ELEMENT CLASS METHODS Examples are which cursor it the active cursor for to define class now presented toillustrate describes the at the the opera to set in last stream instance of cursors can at Although within possible any any 65 tion first of the method current invention which value Example manipulates to point describes move to number particular stream within data the the stream first stream instance ular only use time one cursor partic the the pointer element to stream class cursor Example move BTEX0000392 5202981 11 method current 12 data the which value manipulates pointer to point the at stream last to set the though Class it is implemented by children of the Stream clement to set next the in the cursor which value Example manipulates describes the point at the move to method current data the stream next pointer to element to in the cursor method current in utilization at Memory particular points are also conceptually represented The data stream is illustrated as ples time in flash the Exam box as vertical Example which value describes manipulates the point the data at move the previous to set the shown pied for example in FIG is It and The memory along occu stream by the physical in list illustrated as will horizontal pointer to previous element the box as depicted L.Size elements HG bold at most Max_Lis cursor For purposes chosen for of these examples arbitrary including values are 10 read in various attributes Max_Lis 19 ahown physical The memory occupied by the elements mode from the database will be any one burst short horizontal as box usually within the list t_Size database 12 Number_to_Read the selection is and in to all rows in the the data box as illustrated in FIG Each burst meet criteria to refer examples mode box elements IS will hold maximum of Number_to_Read term database storage used nonvolatile device are 14 used FIG to refer The to terms volatile RAM data and As seen illustrated in within i.e the HG value 10 row numbers are in will often be memory device 13 storage bunt read boxes to demonstrate which time by FIG row The term It row as rows refers the to stream elements memory will the to to at that an entry in database table database is Finally the current vertical 20 illustrated pointer he represented physical the list can represent or the either physical in table times stored row in the memory Thus the to arrowhead in underneath it As ele it used interchangeably with refers term an Stream some Ele ment In this FIG 11 figur it will point current is pointing element 05 ment which within object instance Stream is Element to object instance pointed physical by an object are reference OREF used to in EXAMPLE As 25 first 1MOVE TO assume already physical that FIRST is the list OREFs commonly to are point the example has there stream has is oriented programming systems Elements an My_Stream which yet been created list but not of an object Stream retrieved memory is been in accessed The in memory the first illus images of rows Logical the entire from the database trated FIG 12 are This example which physical to the will load the list Num hold value list logical linked list list or virtual list ber_to_Read elements in the buffer the an as defused by the cursors selection database criteria is Once 30 pointer these is current against the physical to tables This to the list set to point first ekment call which reality set appears is the user not If instance and all at attribute memory but in Max_List_Size were in the then list be user First of My...Stream the issues to the Move_to_ receives method and Move_to_First be represented method as to infinity into rows one from time cursor could the logical Physical to the be list controL This call can placed memory same as would be the the physical list actual 35 My_Stream.Move_to_First The Move_to_First first physical ments size is linked linked is list or actual list list track refer the b-memory This the used to Stream database linked physical Ele Its is method determines accessed that this is the the sliding of window in elements of the this time to the the stream has been number elements of list call 40 number by Maa_list_Size bounded Is the list- invokes element the Load_Next Fetch_Row method to retrieve Fetch_Row controL now receives this is streams Thus it makes method Load_Next stream It deter been Maximum defined is list size or mn-size in refer to the value mines accessed receives 45 the that the first time to the the this stream has by the Max_List_Size number of rows in instance attribute at list list This and issues call Open the maximum the memory any one exceeds must be control and invokes method Open deferred method for to time If the number this of rows first the physical physical appropriate database query can language be open on the number at the row in the stream This deferred operation invocation to method this point stack receives controL illustrated the removed added from memory end before an additional list row may be to The of the physical Number read 50 program as read buffer burst to the value defined certain attribute the by the number mode read or burst read refer Number_to_Read instance of rowa are My_Stream.Move_to_Fust which in turn called read each with I/O time stream must access database the database access corn buffer SELFLoadNext SELF.Fetch_Row 55 which in turn called mands Since most for mechanisms selection the pmvide which in turn called some sort of data read buffering opthnizea of the size for this burst buffering utilization of the databases SELF.Open the the which in turn called The art the reserved examples use As of is word SELF appears throughout well known to those having skill in in SELF.database_query_language_Open SELF in an expression instance having method and object function current denotes the current of of the class denotes The the 60 The and deferred method the actual loads the relevant i.e its search crite cursor 23 in SELF methods the present invention opens It data result cursor code to instance of the Stream Class throughout skill no.6 the in the then returns open by the caller is Assum Deferred ples As deferred is also to is appear those exam art is ing that is the deferred i.e the method successful well known which having by OK 65 returned that to the caller Open method Open and to initializes method defined class but of the only class determines instance implemented by the dependents of the deferred Stream Class children is attributes is the open was successful Cursor Status is set set The fied function method precisely speci Nb_Elements Row_Count to open and Unknown_Nb_Elems The is by the of the present invention al instance attribute set to CL Open then BTEX0000393 5202981 13 returns issues i-c 14 Fetclt_Row to to call its caller the Le Fetch_Row element stack now Fetch The the the List buffer is to daabase_.query_language Fetch can receives databasewill buffer will be read from empty- Another Elements from the front of the physical to get stream invocation control be deleted the until and Elements of the end physical of the from the list buffer will be program be illustrated as added continue to end the This process is will cursor reached to The the My_S am.Move_to_First which in turn called current_Value_Pointer last will then list be set to point element user of in the physical SELF.Load_Next SELF.Fetch_Row SELF.databasell which in turn called Last My_Stream and call issues call to the Move_to._ receives method the Move_to_1.ast be represented method as which in turn called JO control The can query-language_Open Fetch 01 to 15 My_Stream.Move_to__l..ast time the streams The into the the deferred routine fetches cursor issues row call Move_to_Last stream determines that this it is the first appropriate host variables and has been Stream Elements Create method creates the The Stream Ele of the Stream Load_Next Thus method Load_Next to retrieve It accessed calls the the invokes Fetch_ first ments Create method and Invokes stack an instance Row this 20 method stream element that this is Fetch..Jtow the Element Initialize method The pro receives control has determines accessed control time gram invocation can be illustrated as stream been receives and and calls the Open the method ferred deferred Open invokes de This My...StreantMove_to_First which which in turn called database_query.Janguage_Open method The as Open method stack receives control program SELF.Load_Next SELF.Fetch_Row in turn called invocation can be represented which in turn called

Disclaimer: Justia Dockets & Filings provides public litigation records from the federal appellate and district courts. These filings and docket sheets should not be considered findings of fact or liability, nor do they necessarily reflect the view of Justia.

Why Is My Information Online?