System and method for facilitating XML enabled IMS transactions

Information

  • Patent Grant
  • 8190775
  • Patent Number
    8,190,775
  • Date Filed
    Monday, April 7, 2008
    16 years ago
  • Date Issued
    Tuesday, May 29, 2012
    12 years ago
Abstract
A system for facilitating XML enable IMS transactions includes a generic XML processor inside an IMS connect program to facilitate any TCP/IP clients, including WebSphere and non-WebSphere, to send and receive XML documents to and from existing IMS transaction business logic. Translations between XML documents and IMS transaction message data structures occur within the IMS connect program under an XML task to parse and transform XML requests and responses. Further, the generic XML processor within the IMS connect program can provide data translation for both non-formatted and formatted IMS transactional messages in XML.
Description
FIELD OF THE DISCLOSURE

The present disclosure relates generally to computer software, and more specifically to IMS software.


BACKGROUND

A significant portion of corporate data in the United States and abroad resides on mainframe computers, e.g., S/390 mainframes manufactured by International Business Machines. Much of the information stored on mainframe computers is managed using information management systems (IMS).


Typically, an IMS includes an IMS connect program and an IMS application program that can communicate with each other when a request is submitted to the IMS connect program. Many current IMS customers require access to IMS applications from z/OS and non-z/OS environments using XML. As such, extensible markup language (XML) is becoming a core technology to IMS applications. Thus, there exists a need for XML support in IMS Connect programs.


Accordingly, there is a need for a system and method for facilitating XML enabled IMS transactions.


SUMMARY

A method for facilitating XML enabled IMS transactions includes receiving an XML input request at an IMS connect program and creating an input request byte array from the XML input request within the IMS connect program. Thereafter, the input request byte array is transmitted from the IMS connect program to an IMS application program.


In a particular embodiment, an output response byte array is generated within the IMS application program. The output response byte array is transmitted to the IMS connect program. An XML output response is created from the output response byte array within the IMS connect program, and the XML output response is transmitted to a user computer connected to the IMS connect program.


Moreover, in a particular embodiment, the IMS connect program includes a XML processor, and the method further includes transmitting the XML input request to a queue header within the XML processor. An XML server within the XML processor retrieves an XML input request control block from the queue header. Moreover, an XML adapter routine is invoked within the IMS connect program. The XML input request can be parsed and translated to create an input request byte array. Thereafter, the input request byte array is transmitted to the XML server. The XML server transmits the input request byte array to an IMS application program. Based on the input request byte array, an output response byte array is generated within the IMS application program.


In a particular embodiment, the output response byte array is transmitted to the queue header within the XML processor. The XML server within the XML processor retrieves an output response control block from the queue header. Further, an XML adapter routine is invoked within the IMS connect program and the output response byte array is parsed and translated to create an XML output response. The XML output response is transmitted to the user computer.


In another aspect of the illustrative embodiment of the present invention, a system for facilitating XML enabled IMS transactions includes a mainframe server. An IMS connect program and an IMS application program reside in the mainframe server. The IMS application program communicates with the IMS connect program. In this embodiment of the present invention, the IMS connect program includes logic for receiving at least one XML input request. The IMS connect program creates an input request byte array from the XML input request and transmits the input request byte array to an IMS application program.


In yet another aspect a computer program device is disclosed for facilitating XML enabled IMS transactions between a user computer and an IMS application program. The computer program device includes logic for receiving an XML input request from the user computer. The computer program device creates an input request byte array from the XML input request and transmits the input request byte array to an IMS application program.





BRIEF DESCRIPTION OF THE DRAWINGS


FIG. 1 is a block diagram of a system for facilitating XML enabled IMS transactions;



FIG. 2 is a flow chart to illustrate operating logic of the system of FIG. 1; and



FIG. 3 is a flow chart to illustrate a method for facilitating XML enabled IMS transactions.





DESCRIPTION OF THE DRAWINGS

Referring initially to FIG. 1, an information management system (IMS) is shown and is generally designated 10. As shown, the system 10 includes a mainframe server 12 in which an operating system, e.g., OS/390 or zOS, is installed. At least one user computer 14 can access the mainframe server 12 via a web server 16. As shown, plural servlets 18, e.g., Java programs, reside on the web server 16. Additionally, one or more roll-your-own (RYO) clients 20 can access the mainframe server 12 via transmission control protocol/internet protocol (TCP/IP). It is to be understood that RYO clients 20 are those clients that provide their own software to interact with the mainframe server 12.



FIG. 1 further shows that the mainframe server 12 includes an IMS connect program 24 that communicates with an IMS application program 26. It is to be understood that the IMS connect program 24 provides communication linkages between TCP/IP clients, e.g., via one or more user computers 14, and the IMS application program 26. The IMS connect program 24 can also provide communication linkages between one or more RYO clients 20 and the IMS application program 26. During operation, as described in detail below, the IMS connect program 24 communicates with the IMS application program 26 via a byte array.


As shown in FIG. 1, the IMS connect program 24 includes an extensible markup language (XML) processor 28 that includes plural XML servers 30 and plural queue headers 32. The XML processor 28 communicates with a port task control block (TCB) 34 and with several plugins. In an alternative embodiment, the plugins can include an XML initialization routine 36, an XML adapter routine 38, and an XML terminator routine 40. As shown, the XML adapter routine 38 can communicate with one or more data transformers. In the non-limiting exemplary embodiment shown in FIG. 1, the XML adapter routine 38 can communicate with a PL/I transformer 42, a Cobol transformer 44, a C transformer 46, a message format services (MFS) transformer 48, a High Level Assembler (HLASM) transformer 50, and a RYO transformer 52. FIG. 1 also shows that the transformers 42-52 can communicate with an XML metadata interchange (XMI) repository 54.


Referring still to FIG. 1, the IMS application program 26 includes a control region 56 that receives a byte array from the IMS connect program 24. The IMS application program 26 also includes a transactional application program 58. It is to be understood that the transactional application program 58 includes a message processing program (MPP) region, an interactive fast path (IFP) region, and a batch message processing (BMP) region. Further, it is to be understood that the IMS application program 26 is the area in the mainframe server 12 in which user queries or requests are processed in order to determine the corresponding outputs that can be returned via the IMS connect program 24. For example, a user can submit a query or request regarding a bank account, e.g., an online bank statement, in XML to the IMS connect program 24. The IMS connect program 24 can process that request, as described in detail below, and then, submit a processed request to the IMS application program 26, e.g., in a byte array. Further, the IMS application program 26 receives the request, determines the appropriate response to the request, and generates an output response that is returned to the IMS connect program 24, e.g., in a byte array. The IMS connect program 24 can then process the output response, as described in detail below, to create an XML response that, in turn, can be returned to the user computer 14 from which the initial response was received.


It is to be understood that in the system 10 described above, the logic of the present disclosure can be contained on a data storage device with a computer readable medium, such as a computer diskette. Or, the instructions may be stored on a magnetic tape, hard disk drive, electronic read-only memory (ROM), optical storage device, or other appropriate data storage device or transmitting device thereby making a computer program product, i.e., an article of manufacture. In an illustrative embodiment, the computer-executable instructions may be lines of C++ compatible code.


The flow charts herein illustrate the structure of the logic as embodied in computer program software. Those skilled in the art will appreciate that the flow charts illustrate the structures of computer program code elements including logic circuits on an integrated circuit. An implementation includes a machine component that renders the program elements in a form that instructs a digital processing apparatus (e.g., a computer) to perform a sequence of function steps corresponding to those shown.


Referring now to FIG. 2, a particular embodiment of the overall operating logic is shown and commences at block 100 with a do loop wherein during IMS connect startup time, the succeeding steps are performed. At block 102, an XML processor environment is established. Next, at block 104, initialization is performed. Moving to block 106, the XMI repository 54 (FIG. 1) is opened. Thereafter, at decision diamond 108, it is determined whether interpretive marshalling is required. If so, the logic proceeds to block 110 and metadata is loaded. The logic then continues to block 112 and when the IMS connect environment is closed, the XML terminator routine 40 (FIG. 1) is called. Returning to decision diamond 108, if interpretive marshalling is not required, the logic proceeds directly to block 112. Then, at block 114, the XMI repository 54 (FIG. 1) is closed. Moving to block 116, memory used for XML processing is released. Thereafter, logic ends at state 118.


Referring now to FIG. 3, a method for facilitating XML enabled IMS transactions is shown. At block 150, an IMS transaction input request is received at the mainframe server 12 (FIG. 1), e.g., at the IMS connect program 24 (FIG. 1). Next, at decision diamond 152, it is determined whether the IMS transaction input request includes XML data. If not, the logic ends at state 154. If the IMS transaction input request does include XML data, the logic moves to decision diamond 156 and it is determined whether the input request needs to be processed using the IMS connect program 24 (FIG. 1). If not, the logic ends at state 154. On the other hand, if the input request must be processed using the IMS connect program 24 (FIG. 1), the logic moves to block 158 and the input request is sent to one of the queue headers 32 (FIG. 1).


Continuing to block 160, one of the XML servers 30 (FIG. 1) within the IMS connect program 24 (FIG. 1), retrieves the input request control block from the queue header 32 (FIG. 1). Thereafter, at block 162, the XML server 30 (FIG. 1) invokes the XML adapter routine 38 (FIG. 1). Proceeding to block 164, the XML input request is sent to the XML adapter routine 38 (FIG. 1). At block 166 it is determined which transformer, e.g., the PL/I transformer 42 (FIG. 1), the COBOL transformer 44 (FIG. 1), the C transformer 46 (FIG. 1), the MFS transformer 48 (FIG. 1), the HLASM transformer 50 (FIG. 1), or the RYO transformer 52 (FIG. 1), needs to be invoked in order to parse and translate the XML input request. Moving to block 168, the XML input request is parsed and transformed to create a byte array. Next, at decision diamond 170, it is determined whether the transformation process undertaken at block 168 is successful. If not, the logic moves to block 172 and an XML fault message is generated. Thereafter, the logic proceeds to block 174 and the XML fault message is returned as a response to the IMS connect client. The logic then ends at state 154.


Returning to decision diamond 170, if the transformation process at block 168 is successful, the logic moves to block 176. At block 176, when the appropriate transformer completes construction of the byte array, the byte array is returned to the XML server 30 (FIG. 1). Proceeding to block 178, the XML server 30 (FIG. 1) sends the byte array to the IMS application program 26 (FIG. 1), e.g., to the transactional application program 58 (FIG. 1) therein.


Still referring to FIG. 3, at block 180, an output response from the IMS application program 26 is received by a client thread running under the Port TCB 34 (FIG. 1). The client thread running under the Port TCB 34 (FIG. 1) retrieves the control block from the output response at block 182. Moving to decision diamond 184, it is determined whether the output response must be processed using the IMS connect program 24 (FIG. 1). If not, the logic proceeds to block 174 and the response is returned as is to the IMS connect client, e.g., to a user computer 14 (FIG. 1). At decision diamond 184, if the output response must be processed using the IMS connect program 24 (FIG. 1), the logic continues to block 186 and the client thread running under the Port TCB 34 (FIG. 1) sends the output response to one of the queue headers 32 (FIG. 1). Thereafter, an XML server 30 (FIG. 1) retrieves the output response control block from the queue header 32 (FIG. 1) at block 188.


Continuing the description of the logic, at block 190, the XML adapter routine 38 (FIG. 1) is invoked to process the output response. At block 192, it is determined which transformer, e.g., the PL/I transformer 42 (FIG. 1), the COBOL transformer 44 (FIG. 1), the C transformer 46 (FIG. 1), the MFS transformer 48 (FIG. 1), the HLASM transformer 50 (FIG. 1), or the RYO transformer 52 (FIG. 1), needs to be invoked to parse and translate the output response. Then, at block 194, the output response byte array is transformed to an XML output response. Moving to decision diamond 196, it is determined whether the transformation process undertaken at block 194 is successful. If not, the logic moves to block 172 and an XML fault message is generated. Thereafter, the logic proceeds to block 174 and the XML fault message is returned as a response to the IMS connect client. The logic then ends at state 154. Returning to decision diamond 196, if the transformation process at block 168 is successful, the logic moves to block 174 where an XML output response is returned to the IMS connect client. The logic then ends at state 154.


With the configuration of structure described above, it is to be appreciated that the system and method described above provides a means for facilitating XML enabled IMS transactions. The present disclosure provides a generic XML processor inside an IMS connect program to facilitate any TCP/IP clients, including WebSphere and non-WebSphere, to send and receive XML documents to and from existing IMS transaction business logic. Translations between XML documents and IMS transaction message data structures occur within the IMS connect program under an XML task to parse and transform XML requests and responses. Further, the generic XML processor within the IMS connect program can provide data translation for both non-formatted and formatted IMS transactional messages in XML. Non-formatted XML messages can be, for example, COBOL, PL/I, C, or Java payload transactional data. Formatted XML messages are MFS-based XML messages. The present system can also allow a third-party provided data transformer to be plugged into the system to facilitate XML parsing and transformation.


While a particular embodiment of a SYSTEM AND METHOD FOR FACILITATING XML ENABLED IMS TRANSACTIONS has been illustrated and described in detail, it is to be understood that the disclosed embodiment of the present invention is representative of the subject matter which is broadly contemplated by the present invention, that the scope of the present invention fully encompasses other embodiments and that the scope of the present invention is accordingly to be limited by nothing other than the appended claims, in which reference to an element in the singular is not intended to mean “one and only one” unless explicitly so stated, but rather “one or more.” All structural and functional equivalents to the elements of the above-described embodiment that are known or later come to be known to those of ordinary skill in the art are expressly incorporated herein by reference and are intended to be encompassed by the present claims. Moreover, it is not necessary for a device or method to address each and every problem sought to be solved by the present invention, for it is to be encompassed by the present claims. Furthermore, no element, component, or method step in the present disclosure is intended to be dedicated to the public regardless of whether the element, component, or method step is explicitly recited in the claims. No claim element herein is to be construed under the provisions of 35 U.S.C. section 112, sixth paragraph, unless the element is expressly recited using the phrase “means for.”

Claims
  • 1. A system configured to: receive an input request at an information management system (IMS) connect program from a roll your own (RYO) client that provides software access to the IMS connect program independent of a web server;transmit the input request to a queue header of the IMS connect program, if the input request is an extensible markup language (XML) input request;retrieve an XML input request control block from the queue header;invoke a RYO transformer to parse and translate the input request to create an input request byte array;transmit the input request byte array to an IMS application program;receive an output response byte array from the IMS application program;transmit the output response byte array to the queue header;retrieve an output response control block from the queue header;invoke the RYO transformer to parse and translate the output response byte array to create an XML output response; andtransmit the XML output response to the RYO client via a communication path that is independent of the web server.
  • 2. The system of claim 1, further comprising at least one XML server adapted to invoke an XML initialization routine, an XML adapter routine, an XML terminator routine, or any combination thereof.
  • 3. The system of claim 1, further comprising an XML adapter routine adapted to invoke a PL/I transformer, a COBOL transformer, a C transformer, a message format services (MFS) transformer, a high level assembler (HLSAM) transformer, the RYO transformer, or any combination thereof.
  • 4. The system of claim 3, further comprising a mainframe server that includes an XML metadata interchange (XMI) repository that is adapted to communicate with one or more of the PL/I transformer, the COBOL transformer, the C transformer, the MFS transformer, the HLSAM transformer, or the RYO transformer.
  • 5. The system of claim 3, wherein the IMS connect program further includes logic to: retrieve the XML input request control block from the queue header; andinvoke the XML adapter routine.
  • 6. The system of claim 1, wherein the IMS connect program further includes logic to: receive the output response byte array from the IMS application program;transmit the output response byte array to the queue header;parse and translate the output response byte array to create the XML output response; andtransmit the XML output response to the RYO client via the communication path that is independent of the web server.
  • 7. The system of claim 6, wherein the output response byte array is at least partially based on an input request byte array.
  • 8. A method to facilitate extensible markup language (XML) enabled information management system (IMS) transactions, the method comprising: receiving a first input request via a first communication path at an IMS connect program from a roll your own (RYO) client that provides software access to the IMS connect program independent of a web server;receiving a second input request via a second communication path at the IMS connection program, wherein the second communication path is independent of the first communication path;transmitting the first input request to a first queue header of the IMS connect program, if the first input request is an XML input request;retrieving a first input request control block from the first queue header;invoking a RYO transformer to parse and translate the first input request to create a first input request byte array;transmitting the first input request byte array to an IMS application program;receiving a first output response byte array from the IMS application program;transmitting the first output response byte array to the first queue header;retrieving a first output response control block from the first queue header;invoking the RYO transformer to parse and translate the first output response byte array to create a first XML output response; andtransmitting the first XML output response to the RYO client via a communication path that is independent of the web server.
  • 9. The method of claim 8, wherein the first communication path does not include a web server and the second communication path does include a web server.
  • 10. The method of claim 8, further comprising: transmitting the second input request to one of the first queue header and a second queue header included in an XML processor of the IMS connect program; andwherein the first queue header is included in the XML processor of the IMS connect program.
  • 11. The method of claim 10, further comprising: retrieving a second input request control block from the first queue header or the second queue header; andinvoking a second transformer to parse and translate the second input request.
  • 12. The method of claim 11, wherein the second transformer is for a first application language if the IMS application program is associated with the first application language, and the second transformer is for a second application language if the IMS application program is associated with the second application language.
  • 13. The method of claim 11, further comprising: creating a second input request byte array based on the second input request within the IMS connect program; andtransmitting the first input request byte array and the second input request byte array from the IMS connect program to the IMS application program.
  • 14. The method of claim 13, further comprising: receiving the first output response byte array at the IMS connect program from the IMS application program;receiving a second output response byte array at the IMS connect program from the IMS application program; andinvoking the second transformer to transform the second output response byte array to a second XML output response.
  • 15. The method of claim 14, further comprising: transmitting the second XML output response to a second user computer via the second communication path.
CROSS REFERENCE TO RELATED APPLICATIONS

This application is a divisional application and claims priority to and incorporates herein by reference U.S. patent application Ser. No. 10/764,722, filed Jan. 26, 2004 for Daniel M. Haller, Shyh-Mei Ho, Gerald D. Hughes, Jenny C. Hung, Bill T. Huynh, and Steve T. Kuo. By nature of this divisional relationship, this application includes similar subject matter with application Ser. No. 10/764,722, is commonly owned, and/or includes common inventors with applications related to application Ser. No. 10/764,722 including U.S. patent application Ser. No. 10/244,722, U.S. patent application Ser. No. 10/440,779, U.S. patent application Ser. No. 11/494,017, U.S. patent application Ser. No. 11/083,507, U.S. patent application Ser. No. 10/244,711, U.S. patent application Ser. No. 11/934,490, and U.S. patent application Ser. No. 11/970,646.

US Referenced Citations (197)
Number Name Date Kind
4509851 Ippolito et al. Apr 1985 A
4589093 Ippolito et al. May 1986 A
4689739 Federico et al. Aug 1987 A
4740783 Lawrence et al. Apr 1988 A
5384565 Cannon Jan 1995 A
5488648 Womble Jan 1996 A
5745685 Kirchner et al. Apr 1998 A
5761656 Ben-Shachar Jun 1998 A
5781739 Bach et al. Jul 1998 A
5870549 Bobo Feb 1999 A
5899975 Nielsen May 1999 A
5960200 Eager et al. Sep 1999 A
5978940 Newman et al. Nov 1999 A
5987432 Zusman et al. Nov 1999 A
5996001 Quarles et al. Nov 1999 A
6067579 Hardman et al. May 2000 A
6097688 Ichimura et al. Aug 2000 A
6108673 Brandt et al. Aug 2000 A
6128622 Bach et al. Oct 2000 A
6141660 Bach et al. Oct 2000 A
6212550 Segur Apr 2001 B1
6243737 Flanagan et al. Jun 2001 B1
6250309 Krichen et al. Jun 2001 B1
6253200 Smedley et al. Jun 2001 B1
6256676 Taylor et al. Jul 2001 B1
6259447 Kanetake et al. Jul 2001 B1
6289382 Bowman-Amuah Sep 2001 B1
6397253 Quinlan et al. May 2002 B1
6401136 Britton et al. Jun 2002 B1
6446110 Lection et al. Sep 2002 B1
6453343 Housel et al. Sep 2002 B1
6507856 Chen et al. Jan 2003 B1
6507857 Yalcinalp Jan 2003 B1
6510466 Cox et al. Jan 2003 B1
6519617 Wanderski et al. Feb 2003 B1
6529921 Berkowitz et al. Mar 2003 B1
6530078 Shmid et al. Mar 2003 B1
6535896 Britton et al. Mar 2003 B2
6560639 Dan et al. May 2003 B1
6589291 Boag et al. Jul 2003 B1
6591272 Williams Jul 2003 B1
6601071 Bowker et al. Jul 2003 B1
6606642 Ambler et al. Aug 2003 B2
6613098 Sorge et al. Sep 2003 B1
6615383 Talluri et al. Sep 2003 B1
6643825 Li et al. Nov 2003 B1
6665861 Francis et al. Dec 2003 B1
6668354 Chen et al. Dec 2003 B1
6687873 Ballantyne et al. Feb 2004 B1
6697849 Carlson Feb 2004 B1
6728685 Ahluwalia Apr 2004 B1
6738975 Yee et al. May 2004 B1
6753889 Najmi Jun 2004 B1
6772206 Lowry et al. Aug 2004 B1
6775680 Ehrman et al. Aug 2004 B2
6799299 Li et al. Sep 2004 B1
6810429 Walsh et al. Oct 2004 B1
6816883 Baumeister et al. Nov 2004 B2
6826696 Chawla et al. Nov 2004 B1
6850979 Saulpaugh et al. Feb 2005 B1
6859834 Arora et al. Feb 2005 B1
6874146 Iyengar Mar 2005 B1
6889360 Ho et al. May 2005 B1
6901403 Bata et al. May 2005 B1
6901430 Smith May 2005 B1
6904598 Abileah et al. Jun 2005 B2
6907564 Burchhardt et al. Jun 2005 B1
6909903 Wang Jun 2005 B2
6910216 Abileah et al. Jun 2005 B2
6912719 Elderon et al. Jun 2005 B2
6915523 Dong et al. Jul 2005 B2
6948117 Van Eaton et al. Sep 2005 B2
6948174 Chiang et al. Sep 2005 B2
6952717 Monchilovich et al. Oct 2005 B1
6964053 Ho et al. Nov 2005 B2
6971096 Ankireddipally et al. Nov 2005 B1
6980963 Hanzek Dec 2005 B1
6980993 Horvitz et al. Dec 2005 B2
7000238 Nadler et al. Feb 2006 B2
7013306 Turba et al. Mar 2006 B1
7024413 Binding et al. Apr 2006 B2
7043687 Knauss et al. May 2006 B2
7051032 Chu-Carroll et al. May 2006 B2
7054901 Shafer May 2006 B2
7058955 Porkka Jun 2006 B2
7069291 Graves et al. Jun 2006 B2
7080092 Upton Jul 2006 B2
7107285 von Kaenel et al. Sep 2006 B2
7111011 Kobayashi et al. Sep 2006 B2
7120645 Manikutty et al. Oct 2006 B2
7120702 Huang et al. Oct 2006 B2
7124299 Dick et al. Oct 2006 B2
7130893 Chiang et al. Oct 2006 B2
7134075 Hind et al. Nov 2006 B2
7143190 Christensen et al. Nov 2006 B2
7152205 Day et al. Dec 2006 B2
7181493 English et al. Feb 2007 B2
7266582 Stelting Sep 2007 B2
7296226 Junkermann Nov 2007 B2
7296229 Berstis Nov 2007 B2
7398221 Bensoussan et al. Jul 2008 B1
7418508 Haller et al. Aug 2008 B2
7421701 Dinh et al. Sep 2008 B2
7590987 Behrendt et al. Sep 2009 B2
20010014900 Brauer et al. Aug 2001 A1
20010016869 Baumeister et al. Aug 2001 A1
20010032232 Zombek et al. Oct 2001 A1
20010034791 Clubb et al. Oct 2001 A1
20010037358 Clubb et al. Nov 2001 A1
20010047311 Singh Nov 2001 A1
20020010716 McCartney et al. Jan 2002 A1
20020031101 Petite et al. Mar 2002 A1
20020035583 Price et al. Mar 2002 A1
20020038335 Dong et al. Mar 2002 A1
20020038336 Abileah et al. Mar 2002 A1
20020042849 Ho et al. Apr 2002 A1
20020046294 Brodsky et al. Apr 2002 A1
20020049815 Dattatri Apr 2002 A1
20020052968 Bonefas et al. May 2002 A1
20020056012 Abileah et al. May 2002 A1
20020059344 Britton et al. May 2002 A1
20020078010 Ehrman et al. Jun 2002 A1
20020078255 Narayan Jun 2002 A1
20020083099 Knauss et al. Jun 2002 A1
20020099735 Schroeder et al. Jul 2002 A1
20020100027 Binding et al. Jul 2002 A1
20020107915 Ally et al. Aug 2002 A1
20020111989 Ambler et al. Aug 2002 A1
20020116454 Dyla et al. Aug 2002 A1
20020133569 Huang et al. Sep 2002 A1
20020143820 Van Eaton et al. Oct 2002 A1
20020156930 Velasquez Oct 2002 A1
20020160745 Wang Oct 2002 A1
20020160805 Laitinen et al. Oct 2002 A1
20020161801 Hind et al. Oct 2002 A1
20020174340 Dick et al. Nov 2002 A1
20020178031 Sorensen et al. Nov 2002 A1
20020178290 Coulthard et al. Nov 2002 A1
20020178299 Teubner Nov 2002 A1
20020188688 Bice et al. Dec 2002 A1
20020194227 Day et al. Dec 2002 A1
20020198974 Shafer Dec 2002 A1
20030004746 Kheirolomoom et al. Jan 2003 A1
20030007397 Kobayashi et al. Jan 2003 A1
20030040955 Anaya et al. Feb 2003 A1
20030046035 Anaya et al. Mar 2003 A1
20030055768 Anaya et al. Mar 2003 A1
20030065623 Corneil et al. Apr 2003 A1
20030070006 Nadler et al. Apr 2003 A1
20030074217 Beisiegel et al. Apr 2003 A1
20030078902 Leong et al. Apr 2003 A1
20030081002 De Vorchik et al. May 2003 A1
20030093403 Upton May 2003 A1
20030093436 Brown et al. May 2003 A1
20030093468 Gordon et al. May 2003 A1
20030093500 Khodabakchian et al. May 2003 A1
20030097327 Anaya et al. May 2003 A1
20030120730 Kuno et al. Jun 2003 A1
20030126077 Kantor et al. Jul 2003 A1
20030126229 Kantor et al. Jul 2003 A1
20030131142 Horvitz et al. Jul 2003 A1
20030159111 Fry Aug 2003 A1
20030163544 Wookey et al. Aug 2003 A1
20030163585 Elderon et al. Aug 2003 A1
20030167233 Smith Sep 2003 A1
20030191970 Devine et al. Oct 2003 A1
20030204460 Robinson et al. Oct 2003 A1
20030212686 Chu-Carroll et al. Nov 2003 A1
20040006739 Mulligan Jan 2004 A1
20040024820 Ozzie et al. Feb 2004 A1
20040030740 Stelting Feb 2004 A1
20040054969 Chiang et al. Mar 2004 A1
20040054970 Chiang et al. Mar 2004 A1
20040064466 Manikutty et al. Apr 2004 A1
20040103370 Chiang et al. May 2004 A1
20040111464 Ho et al. Jun 2004 A1
20040205536 Newman et al. Oct 2004 A1
20040205731 Junkermann Oct 2004 A1
20040205770 Zhang et al. Oct 2004 A1
20040210469 Jones et al. Oct 2004 A1
20040221292 Chiang et al. Nov 2004 A1
20040230987 Snover et al. Nov 2004 A1
20040237034 Chiang et al. Nov 2004 A1
20050050228 Perham et al. Mar 2005 A1
20050091639 Patel Apr 2005 A1
20050165826 Ho et al. Jul 2005 A1
20050165936 Haller et al. Jul 2005 A1
20050166209 Merrick et al. Jul 2005 A1
20050171970 Ozzie et al. Aug 2005 A1
20050203944 Dinh et al. Sep 2005 A1
20050210414 Angiulo et al. Sep 2005 A1
20050278410 Espino Dec 2005 A1
20060265478 Chiang et al. Nov 2006 A1
20070083524 Fung et al. Apr 2007 A1
20070094283 Fung et al. Apr 2007 A1
20080263641 Dinh et al. Oct 2008 A1
20080271049 Dinh et al. Oct 2008 A1
Foreign Referenced Citations (2)
Number Date Country
2001273177 Oct 2001 JP
WO 0167290 Sep 2001 WO
Related Publications (1)
Number Date Country
20080183879 A1 Jul 2008 US
Divisions (1)
Number Date Country
Parent 10764722 Jan 2004 US
Child 12099044 US